Теги:

Автор Тема: Создание полнофункциональных стандартных поселений в версии 1.011  (Прочитано 1778 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Я столкнулся с проблемой поиска кратких мануалов по этой теме и, героически ее освоив, предлагаю создать небольшой конкретный мануальчик.

Сделать поселения без модульки сложно и не нужно по причине сдвига ID партий. Настройка и первичное обучение модульке возьмут меньше времени, чем отлавливание блох даже после добавления деревни. Добавить же в конец файлов строчки нельзя, так как игровая логика делит их по классам, а классам отведено конкретное место в файле. Есть параметры типа чтототам_end, при нарушении которых игра не работает.
_____________________________________________________
Самое главное - меняйте номер населенного пункта. Деревня 200, старшина деревни 200, также со всем народом. Это самое нудное, но малейшая ошибка - и работать ничего не будет.

деревня -

module_troops.py - старшина с новым номером
module_scenes.py - копировать строчки сцен с новым номером плюс скопировать сцену с новым именем в папке sceneobj
module_parties.py - копировать партию и изменить чуть чуть координаты

замок -

module_troops.py - сенешаль с новым номером
module_scenes.py - копировать строчки сцен с новым номером плюс скопировать сцены с новым именем в папке sceneobj
module_parties.py - копировать партию и изменить чуть чуть координаты
module_scripts.py - добавить соответствие замка фракции. Учти, могут переназначиться ближайшие деревни, в том числе поменять фракцию. Строчка такого типа:
      (call_script, "script_give_center_to_faction_aux",
Скрипт атаки замка с осадной башней для соответствующих сцен. Строчка такого типа:
      (party_set_slot,"p_castle_1", slot_center_siege_with_belfry,

город - самое нудное -

module_troops.py - сенешаль, мастер арены, бронник, оружейник, тавернщик, торговец, гильдмастер (майор) с новыми номерами. У мастера арены, держателя таверны и магазина нужно заменить номер сцены в этой же строчке.
module_scenes.py - копировать строчки сцен с новым номером :центр, крепость с сенешалем, таверна, магазин, арена, тюрьма, стены, аллея - плюс добавить файлы сцен в папке sceneobj
module_parties.py - копировать партию и изменить чуть чуть координаты
module_scripts.py - добавить соответствие города лорду. С деревнями те же пироги. Строчка такого типа:
      (call_script, "script_give_center_to_lord",
Аренный скрипт тоже дописать надо. 7 строк, первая такого типа:
     (party_set_slot,"p_town_18", slot_town_arena_melee_1_num_teams,   2),
Город тоже может быть атакован с башней. Скрипт такого типа
  (party_set_slot,"p_town_1", slot_center_siege_with_belfry,
Караванные пути добавить (я вообще советую сменить логику караванных путей. Четвертая часть городов - торговые центры, каждый посылает по десятку караванов. Остальные только принимают и отправляют назад. Если добавляешь много городов - так проще редактировать). Строчка такого типа:
(call_script, "script_set_trade_route_between_centers"
_____________________________________________________

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

Возможные баги и адреса решения:

1.Если город появляется нейтральный - ошибка в скриптах.
2. Нет действующего лица (торговца, старейшины) - ошибка в troops.py
3. Здания торчат над землей/под землей - код земли в scenes.py не соответствует высоте расположения зданий в файле sco в папке sceneobj.

Автор: High_priest_of_Ru
« Последнее редактирование: 09 Августа, 2017, 15:28 от MasterLichLord »
There is no emotion, there is peace.
There is no ignorance, there is knowledge.
There is no passion, there is serenity.
There is no chaos, there is harmony.
There is no death, there is the Force.

работает на Варбанде. должен

Теги: