Current time: 23.03.2024, 10:09 Hello There, Guest! (LoginRegister)
Language: english | russian  

Post Reply 
Threaded Mode | Linear Mode
Мод «Расширенные Жилища»
» Инструмент для всех и каждого!
Author Message
Berserker Offline
Administrators

Posts: 16449
Post: #1
Радуга 
Image: c35d373a59a7.png

«Расширенные Жилища»

Автор: Berserker
Версия: 1.0.0
Требует: Era 2.9.9+
Скачать: Extended Dwellings

Мод позволяет настроить до 4-х слотов на каждое городское жилище.
Каждый слот может быть как альтернативным существом, так и дополнительным.

Альтернативное существо использует тот же счётчик населения, что и родное. Однако может быть задано произвольное соотношение между оригинальным числом существ и альтернативным.
Например, 1 голем может быть куплен взамен населения в 12 гремлинов. Такие слоты называются альтернативными, так как невозможно купить максимум существ из всех альтернативных слотов. Покупка существ в одном из слотов пропорционально снижает число существ в остальных.

Дополнительные слоты не связаны с основным населением жилищ. Их население может быть установлено вручную через ЕРМ
или может расти автоматически еженедельно, как это происходит с родными обитателями жилищ.

Используйте следующие документированные ЕРМ функции:
"dex_DwellingPopulation" чтобы установить/изменить население в дополнительном слоте.
"dex_SetDwellingSlotByTownType" для настройки слота для всех городов определённого типа.
"dex_GetDwellingSlotByTownType" для получения настройки слота для всех городов определённого типа.
"dex_SetDwellingSlotByTownId" для настройки слота в конкретном городе (имеет приоритет над dex_SetDwellingSlotByTownType).
"dex_GetDwellingSlotByTownId" для получения настройки слота в конкретном городе (имеет приоритет над dex_GetDwellingSlotByTownType).

Для старых модов, зависящих от плагина battery.dll, есть функция "dex_CA_D" с почти идентичным CA:D синтаксисом.
Рекомендуется по возможности всё же использовать новое API для более точной и упрощённой настроки слотов, включая альтернативы и
авторастущее население.

Пример:
Для каждого типа города назначает в неулучшенное жилище 1-го уровня дополнительный слот с авторастущим населением в 7 псих. элементалей в неделю (14 с замком, 21 с Граалем).
То же самое, но элементали являются АЛЬТЕРНАТИВАМИ родным существам и могут быть наняты в соотношении 1 элементаль вместо 20 родных существ (5% = 1/20).


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
06.02.2020 04:55
Find all posts by this user Quote this message in a reply
igrik Offline
Administrators

Posts: 2807
Post: #2

Наконец то! Теперь можно по человечески запилить скрипт найма 8-уровня в городах Spiteful


game bug fixes extended.dll || My Plugins || My GitHub
06.02.2020 11:27
Visit this user's website Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3880
Post: #3

Клёво, но ложку дегтя вынужден сунуть:

1. Было бы шикарно, если б в окошках под именем города тоже отображались измененные существа (существо из слота с макс. номером, например).

2. Как ИИ покупает существ из расширенных жилищ? По максимально возможному FV*количество? Учитывает ли имеющихся у него в армии?
Т.к. существа альтернативны и не грейдятся друг в друга, это может стать причиной серьезного ослабления ИИ - тупо не соберёт максимально сильную армию.

3. Появление альтернатив же никак не связано с имеющимися постройками? Т.е. как раньше необходимо было построить грейд здания для появления грейженных существ в жилище. Т.е. да, для нормального добавления существ 8го уровня все есть (хотя и там я уже вижу несколько подводных камней), а вот полноценный 3й грейд (типа Фанатики) еще под вопросом - там надо запиливать функционал для полноценной работы с деревом отстройки.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
06.02.2020 15:46
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #4

Algor, это понятные ложки, мод — не самоцель, скорее инструмент, который занял макс. отведённое время и дал определённый результат.
1. В окошке отображается существо из 0 слота, так как оно же назначается основным через UN:T.
2. ИИ покупает только основных существ, улучшенных, если построено улучшенное строение.
3. К постройкам привязано только в плане обычное жилище — улучшенное. Дерево построек и структура зданий в виде бит оригинальная. Мод целиком на ЕРМ.

igrik, да, можно.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
06.02.2020 16:07
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3880
Post: #5

Не, это понятно, что мод лишь демонстрирует возможности нового функционала, просто уточняю механику.

1. При отстроенном грейде здания картинка будет браться из 1го слота, как я понимаю?
2. 2-3 слоты просто не использует?
3. Постройка улучшенного автоматически раскрывает 1й слот? А если там уже были назначенные альтернативные существа, перезатирает? Или в таком случае отстройка просто бесполезна?
4. Что будет если назначить существ только в 0й и 3й слоты? Я про графическое отображение.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
06.02.2020 16:23
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #6

1. Из 0-го. В оригинале же улучшенных всегда слева, то есть в слоте 0. Просто это уже слот 0 улучшенного жилища.
2. ИИ их не видит, они именно в диалоге, да. Но в теории с хуком на ЕРМ может и начать видеть однажды.
3. Скажем так, настройка слотов для обычного жилища и улучшенного никак не пересекается. То есть у тебя может быть только 3-й слот в обычном жилище и 1, 2 в улучшенном. И с разными монстрами. Потому лучше настраивать сразу обычное и улучшенное, если нужно, чтобы один и тот же монстр присутстовал и там и там.
4. Всё, как с !!RD. Пустые слоты игнорируются, а видимые отображаются слева-направо.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
06.02.2020 16:58
Find all posts by this user Quote this message in a reply
XEPOMAHT Offline
Moderators

Posts: 2265
Post: #7

Протестировал с ERA+. Работает некорректно - ERM-мом невозможно установить количество (там всегда либо 0, либо 1, правильные значения только у тех, которые в городах ставит Тифон). Сами добавленные монстры в добавленных городах появляются. Но если нанять добавленного монстра, то у основного изначальное количество тоже сбрасывается на 0 или 1. Так же, если ставить монстра в слот апгрейда основного, то установленный апгрейд почему-то замещает основного (т.е. происходит раздвоение монстров сразу в двух слотах, соответственно, максимум можно установить 3 слота, 4 - не получится). В общем, пока что заглушка в ERA+, выключающая эровское окно найма, остаётся - для использования "Расширенных Жилищ" вместе с Тифоном 3.1 необходимо править все эти баги в окне найма монстров ЭРА.

Image: OQpbi9gRv_g.jpg
06.02.2020 18:29
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4333
Post: #8

(06.02.2020 11:27)igrik Wrote:  Наконец то! Теперь можно по человечески запилить скрипт найма 8-уровня в городах Spiteful

Предвкушаю этот же моментAb

Но есть вопрос:
менять основной портрет существа в левом нижнем окне состояния города надо будет вручную, или мод предусмотрит этот момент и подхватит сам номер кадра CrSmall.def, соответсвующего номеру существа?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
15.02.2020 04:27
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #9

daemon_n, в нижем левом окне автоматом из CrSmall.def показываются монстры, назначенные в 0-й слот. Я ничего не трогаю.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.02.2020 04:50
Find all posts by this user Quote this message in a reply
daemon_n Offline
Administrators

Posts: 4333
Post: #10

Berserker, меня смутила 1-ая картинка в шапке - там всё-таки не Горынычи.

UPD: а как будут влиять на прирост внешние жилища, артефакты легиона и грааль(с ним всё просто, по идее).

Имеем по 12 нычек эльфов и кентавров -
в замке оба стоят на 1-ый слот в соотноешении 1 эльф = 3 кентавра
Как будет увеличен прирост?
по +12 к каждому после рассчёта 1 к 3 или прсто +12 к кентаврам, так как нычка эльфов увеличит лишь прирост 3 уровня существа оплота?


Image: widget.png?style=banner2

Новейший Heroes 3 Launcher
15.02.2020 04:51
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #11

daemon_n, это потому, что я там использовал функцию установки не альтернативных, а дополнительных монстров. Так что в жилище копятся гоблины, но набрать их нельзя. Все 4 слота отображаются доп. существа со счётчиками, не привязанным к жилищам.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
15.02.2020 05:12
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3880
Post: #12

Berserker, вроде полностью выкурил changelog на предмет RD и Recruit-событий, но не нашел ответа.
Задача: до покупки существа требуется:

1. Получить id и количество покупаемых существ. RD - не позволяет получить текущий слот? OnOpenRecruitDlg дает только слот, который был при открытии диалога? OnRecruitDlgRecalc тоже слот не возвращает?

2. При нажатии на кнопку "купить" запросить подтверждение найма, и на основании ответа купить или не купить существ.


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
29.02.2020 00:54
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #13

1. !!RD:I?$dialogId[/?$townId/?$dwellingId/?$selectedSlot];
Не проверял?

"OnRecruitDlgAction" при покупке
   x1 - number of hired creatures.

2. Событие возникает уже после расчётов, его нельзя отменить. А в каких случаях нужно?


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
29.02.2020 01:40
Find all posts by this user Quote this message in a reply
Algor Away
Administrators

Posts: 3880
Post: #14

1. Не проверял. Написано !!RD:C#slot/$type...
2. Надо перед покупкой проверить кой-чего по типу и кол-ву покупаемых существ и запросить доп.подтверждение. Т.е. по хорошему нужно отловить момент после клика на кнопке купить, но до списания и с возможностью отменить нажатие по типу CM:R. Какой-нить OnRecruitMouseClick


BattleHeroes Rus/Eng | ERA scripts (+ReMagic) Rus/Eng
29.02.2020 01:58
Visit this user's website Find all posts by this user Quote this message in a reply
Berserker Offline
Administrators

Posts: 16449
Post: #15

OnRecruitDlgMouseClick есть и работает, но текущее выбранное число монстров пока не получить, насколько я помню.
C - configure, настройка слотов
I - info, 4-й параметр должен подходить.
Могу для 3.0.0 посмотреть число выбранных монстров.


Скачать Герои 3 Эра и всё, что с ней связано / ERA 2.46f для старых модов
Поддержать проект
29.02.2020 02:45
Find all posts by this user Quote this message in a reply
« Next Oldest | Next Newest »
Post Reply 


Forum Jump:

Powered by MyBB Copyright © 2002-2024 MyBB Group