Paradox
©
Fisana

Перейти к содержимому


"); //]]>
Фотография

M2TW: ТУТОРИАЛЫ [ АРХИВ ]

моддинг туториалы

Сообщений в теме: 213

#131 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 19 Май 2014 - 07:31

ВиО [класс № 29, пан Delabras, кодинг / скриптинг]

Вопрос №110

Как редактировать характеристики персонажа и добавлять новые ?

Для того чтобы отредактировать / создать характеристику (трейт) персонажа, необходимо работать со следующими файлами:

1. export_descr_character_traits.txt

Рассмотрим пример трейта:

Trait GoodCommander Characters family AntiTraits BadCommander Level Promising_Commander Description Promising_Commander_desc EffectsDescription Promising_Commander_effects_desc GainMessage Promising_Commander_gain_desc LoseMessage Promising_Commander_lose_desc Threshold 1 Effect Command 1 Level Aspiring_Commander Description Aspiring_Commander_desc EffectsDescription Aspiring_Commander_effects_desc GainMessage Aspiring_Commander_gain_desc LoseMessage Aspiring_Commander_lose_desc Threshold 2  Effect Command 2
Теперь подробнее:

Trait GoodCommander - название характеристики перснажа;
Characters family - тип персонажа, у которого может быть использован данный трейт;
AntiTraits BadCommander – характеристики, которые при наличии данной черты не могут появиться у персонажа, либо при наличии последней не может появиться исходный трейт;

Level Promising_Commander - первый уровень характеристики персонажа (каждый трейт имеет как минимум один уровень);
Description Promising_Commander_desc - ссылка на описание данного уровня трейта в файле локализации (папка text);
EffectsDescription Promising_Commander_effects_des - ссылка на описание эффектов данного уровня трейта в файле локализации (папка text);
GainMessage Promising_Commander_gain_desc - ссылка на описание условий получения данного уровня трейта в файле локализации (папка text);
LoseMessage Promising_Commander_lose_desc - ссылка на описание условий потери данного уровня трейта в файле локализации (папка text);
Threshold 1 - этот параметр определяет, сколько пунктов должен набрать персонаж для получения данного уровня.
Effect Command 1 – эффект, который добавляется при наличии данного трейта у персонажа;
Level Aspiring_Commander - здесь всё аналогично, только это уже второй уровень трейта;

После этого разберемся с условиями появления данного трейта, прописанными в соответствующем нашей характеристике триггере:

Trigger V0090_Standard_Battle_Any_Victory_VnV_Trigger WhenToTest PostBattle Condition IsGeneral and WonBattle and BattleOdds Продолжаем комментарии строк :

Trigger V0090_Standard_Battle_Any_Victory_VnV_Trigger - название триггера (обязательно должно быть уникальным!);
WhenToTest PostBattle – выполнение триггера рассчитано на игровой отрезок, который случится после битвы;
Condition IsGeneral - условие, указывающее что действие триггера сработает только в том случае, если тип персонажа - генерал;
and WonBattle - условие, проверяющее победу персонажа в битве;
and BattleOdds Affects GoodCommander 1 Chance 100 при выполнении данных условий персонажу дается 1 уровень черты good commander (т. е. promising commander) с вероятностью 100%.


2. export_descr_vnvs_enums.txt

В этом файле необходимо указать ссылки на описание каждого уровня трейта, а также его условий и эффектов.

Promising_CommanderPromising_Commander_descPromising_Commander_gain_descPromising_Commander_lose_descPromising_Commander_effects_desc
3. export_VnVs.txt

Данный файл представляет собой список локализации предыдущего файла, т.е. отображение текстовых описаний в свитке персонажа во время игры.

{Promising_Commander} Promising Commander название{Promising_Commander_desc} описание This man has shown at least a basic grasp of field tactics.{Promising_Commander_gain_desc} получениеThis man has gained a Command star thanks to his battle tactics.{Promising_Commander_effects_desc} эффекты +1Command
Примечание: следует принимать во внимание, что в игре существует определенный лимит трейтов, поэтому при добавлении собственных черт вполне полезно редактировать уже имеющиеся стандартные характеристики.

Вопрос №111

Возможно ли написать скрипт, который бы управлял перемещением командира на стратегической карте, без участия в этом игрока (по принципу пролога в RTW) ?

Реализация подобного скрипта вполне возможна, очень похожий образец существует в моде ОиМ.
Рассмотрим основные моменты, полезные для составления необходимого нам скрипта:

- Задание срабатывания скрипта на конкретном ходу

console_command date 1608console_command season summer
- Задание условия, проверяющего местонахождение персонажа рядом с назначенными координатами

and I_CharacterTypeNearTile sassanids named_character, 131, 21
- Задание отключения курсора, консоли и т.д.

disable_cursor disable_shortcuts trueinhibit_camera_input truedisable_shortcuts advisor_portrait_button falsesuspend_unscripted_advice truefilter_all_ui_commands off
- Задание перемещения стратегической камеры

move_strat_camera 96, 138zoom_strat_camera 0.3wait 2
- Настройки подсветки

ui_indicator 0 circle 585 505 colour 0 0 255 scale 0.7 ui_indicator 1 arrow_up_left 110 727 colour 255 0 0 scale 0.3
- Задание включения курсора / интерфейса

enable_cursordisable_entire_uidisable_shortcuts options_button false


- Задание отключения советов

disable_shortcuts advisor_dismiss_button falsedisable_shortcuts dismiss_advice falsedisable_shortcuts advisor_portrait_button false
- Задания запуска исторического события

dismiss_advicewhile I_AdvisorVisibleend_whileadvance_advice_thread Carth_General_Intro_1_Thread
- Задание счетчика времени

restart_timer Campaign_Map_Timerwhile I_AdvisorVisible monitor_conditions I_TimerElapsed Campaign_Map_Timer > 30000ui_indicator_remove 1ui_flash_start advisor_dismiss_button terminate_monitorend_monitorend_while
- Задание передвижения персонажа и отображения его пути

ui_flash_stopui_indicator_remove 0ui_indicator_remove 1disable_cursormove OiM-Mikhail OiM-Pozharskij, 95, 138enable_cursorwhile I_AdvisorVisibleend_while
- Задание другого исторического события

dismiss_advicewhile I_AdvisorVisibleend_whileadvance_advice_thread Carth_Mission_1_Intro_Threadsuspend_unscripted_advice true
- Задание спауна (появления) персонажа (в данном скрипте - полководец с отрядами) и его передвижения с отображением пути

spawn_armyfaction empire_eastcharacter Oim-Pavel-vkl OiM-Zolkiewski, named character, command 5, influence 5, management 1, subterfuge 1, age 36, , x 92, y 138unit rp general exp 2 armour 1 weapon_lvl 1unit rp winged hussar late exp 1 armour 0 weapon_lvl 0unit rp pushka exp 1 armour 0 weapon_lvl 0 0endconsole_command give_trait "Oim-Pavel-vkl OiM-Zolkiewski" GoodCommander 3move Oim-Pavel-vkl OiM-Zolkiewski, 94, 138ui_indicator 0 circle 420 225 colour 0 0 255 scale .7; Isto
- Дальнейшее задание проверки счетчика времени

restart_timer Campaign_Map_Timer; Dismiss to continue. If not dismissed after 10 seconds, show hint.while I_AdvisorVisiblemonitor_conditions I_TimerElapsed Campaign_Map_Timer > 10000 счетчикui_flash_start advisor_dismiss_buttonterminate_monitorend_monitorend_while
ui_indicator_remove 0

- Дальнейшее задание передвижения персонажа с подсветкой пути

point_at_strat_position 96, 138character_flash_start Oim-Pavel-vkl OiM-Zolkiewskiconsole_command mp "OiM-Mikhail OiM-Pozharskij" 55 move OiM-Mikhail OiM-Pozharskij, 96, 138character_flash_stop Oim-Pavel-vkl OiM-Zolkiewskiui_flash_stop
- Включение ранее отключенного интерфейса игры

enable_entire_uidisable_shortcuts false inhibit_camera_input falsefilter_all_ui_commands on
- Задание скриптового сражения между персонажами

if I_CharacterTypeNearTile sassanids named_character, 1 131,21 engage_armies Oim-Pavel-vkl OiM-Zolkiewski, OiM-Mikhail OiM-Pozharskij битваend_if
Примечание: в данном скрипте целесообразноосуществлять запуск исторических событий в качестве запланированных советов.

Для этого нужно редактировать следующие файлы:

1. export_descr_advice.txt

AdviceThread Season_Year_Turn15_ThreadGameArea CampaignItem Season_Year_Turn15_Text_01UninhibitableVerbosity 0 Threshold 1MaxRepeats 0 RepeatInterval 1 Attitude NormalPresentation DefaultTitle Season_Year_Turn15_Text_01_TitleText Season_Year_Turn15_Text_01_Text1
Здесь уточним самые основные моменты:

- Название совета:

AdviceThread Season_Year_Turn15_Thread
- Упоминание файла из папки text, первая строка - ссылка на заголовок, вторая - на текстовое описание совета:

Title Season_Year_Turn15_Text_01_TitleText Season_Year_Turn15_Text_01_Text1

Стоит отметить, что стандартный совет имеет еще и триггер, однако в рассматриваемой ситуации имеет место запланированный совет, поэтому можно обойтись и без триггера.

2. export_descr_advice_enums.txt

В этом файле приводятся ссылки на локализацию текстовых описаний вышеуказанных советов:

Season_Year_Turn15_Text_01_TitleSeason_Year_Turn15_Text_01_Text1
3. export_advice.txt (каталог data / text)

В этом файле размещается локализация текстовых описаний игровых советов:

{Season_Year_Turn15_Text_01_Title} Восстание Болотникова собственно говоря, сам текст совета и заголовок{Season_Year_Turn15_Text_01_Text1}Беглый холоп князя Трубецкого Иван Блотников поднял восстание в 1606 году. Дон этого он был взят в плен татарами, продан в Турцию и был гребцом на турецкой галаре. В одном из сражений с венецианцами Болотникова спасли, и он через Германию и Польшу попал в Россию. Есть сведения, что по пути мятежник встречался с Молчановым, выдающим себя за чедом спасшегося царя Дмитрия, т. е. с будующим тушенским вором. На Руси обстановка в то время была нескопойная. После свержения боярами Леджмитрия I на престол вошел Василий Шуйский, не пользовавшейся в стране большой популярностью. В южных уездах собралось много недовольных. От правительства отложился князь Трубецкой, засевший в Путивле. В это время Болотников провозгласил себя "воеводой царя Дмитрия" и поднял восстание против боярского царя.
Теперь поговорим о способах запуска запланированного совета.

Для запуска созданного нами совета используем команду advance_advice_thread Season_Year_Turn15_Thread в сочетании с условием хода, которую необходимо внедрить в скриптовый монитор после прописи всех команд.
Либо можно использовать альтернативный вариант годового скрипта следующей конструкции:

console_command date 1598console_command season winterdeclare_counter Season_Year_Turn0_Threadwhile I_TurnNumber = 0 monitor_conditions I_CompareCounter Season_Year_Turn0_Thread = 0if I_CompareCounter Season_Year_Turn0_Thread = 0advance_advice_thread Season_Year_Turn15_Threadinc_counter Season_Year_Turn0_Thread 1wait 1select_ui_element advisor_portrait_buttonsimulate_mouse_click lclick_downsimulate_mouse_click lclick_upend_ifend_monitorsuspend_unscripted_advice trueend_while

  • 0

#132 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 20 Май 2014 - 08:08

Вопрос №112

Как редактировать свиту персонажа и добавлять новую ?

Для того чтобы отредактировать / создать свиту (анч) персонажа, необходимо работать со следующими файлами:

1. export_descr_ancillaries.txt

Рассмотрим пример анча:

Ancillary bodyguardType SecurityTransferable 1Image security_eliteguard.tgaExcludedAncillaries lorien_harpExcludeCultures middle_eastern, eastern_european, gondor, southern_european, northern_europeanEffectsDescription bodyguard_effects_descEffect PersonalSecurity 2Effect LocalPopularity -1
Теперь подробнее:

Ancillary bodyguard - название свиты (анча).
Type Security - тип анча.
Transferable 1 - параметр, определяющий возможность переноса данного анча от одного персонажа к другому (1 – анч можно переносить, 0 – анч нельзя переносить).
Image security_eliteguard.tga - ссылка на графическое изображение свиты для игрового интерфейса.
ExcludedAncillaries lorien_harp - параметр, определяющий, что при указанной свите данный анч не появится у персонажа (лимит анчей здесь – не более 3, далее - вылет).
ExcludeCultures middle_eastern, eastern_european, gondor, southern_european, northern_european - параметр, определяющий, что у фракций, представляющих указанные культуры, рассматриваемый анч не появится.
Description bodyguard_desc - ссылка на текстовое описание анча в файле локализации (упомянуто далее).
EffectsDescription bodyguard_effects_desc - ссылка на текстовое описание эффектов данного анча в файле локализации (упомянуто далее).
Effect PersonalSecurity 2 - эффект (бонус), который начисляется персонажу при появлении у него данной свиты (здесь рассмотрен эффект "Личная безопасность").
Effect LocalPopularity -1 - эффект (бонус), который начисляется персонажу при появлении у него данной свиты (здесь рассмотрен эффект "Прирост населения").

После этого разберемся с условиями появления данного анча, прописанными в соответствующем нашей свите триггере:

Trigger agents12 WhenToTest SufferAssassinationAttemptCondition IsGeneraland Trait HighPersonalSecurity Продолжаем комментарии строк :

Trigger agents12 - название триггера (должно быть уникальным).
WhenToTest SufferAssassinationAttempt - триггер срабатывает в момент, тестируемый после неудачной попытки самоубийства персонажа.
Condition IsGeneral - условие срабатывания триггера, требующее, что персонаж, который получит анч, должен быть типа "Генерал".
and Trait HighPersonalSecurity - дополнительное условие срабатывания триггера, требующее наличия указанной характеристики (трейта) HighPersonalSecurity у персонажа, получающего данный анч, не более уровня "1" (т.е. трейт HighPersonalSecurity должен быть уровня "0").
AcquireAncillary bodyguard chance 50 - персонаж получит указанный анч (bodyguard) с вероятностью, равной 50%.

2. export_descr_ancillary_enums.txt

В этом файле необходимо указать ссылки на описание каждого анча, а также его условий и эффектов.

bodyguardbodyguard_descbodyguard_effects_desc
3. export_ancillaries.txt

Данный файл представляет собой список локализации предыдущего файла, т.е. отображение текстовых описаний в свитке персонажа во время игры.

{bodyguard}Bodyguard{bodyguard_desc}Even the most able sword-arm can use someone to cover his back.{bodyguard_effects_desc}+2 to personal security (improves the chances of detecting and foiling assassination attempts), -1 from popularity (has a negative effect on public order)
Примечание: следует принимать во внимание, что в игре существует определенный лимит трейтов, поэтому при добавлении собственных черт вполне полезно редактировать уже имеющиеся стандартные характеристики.

4. Задание изображения анча

Иконку, которая будет отображать текущый анч в списке свиты персонажа, ужно поместить в каталог data / ui / ancillaries в формате tga.
Здесь стоит отметить, что обязательно соответствие имени графического файла с названием самого анча в export_descr_ancillaries.txt.
  • 0

#133 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 21 Май 2014 - 10:21

Вопрос №113

Как редактировать / добавлять постройки в поселениях ?

Рассмотрим пример прописи постройки:

1. export_descr_buildings.txt

building music{levels theatre conservatorium{theatre city requires factions { gondor, northern_european, greek, }{capability{happiness_bonus bonus 2}material woodenconstruction 5cost 6000settlement_min large_cityupgrades{conservatorium}}conservatorium city requires factions { gondor, northern_european, greek, } {capability{happiness_bonus bonus 4}material woodenconstruction 8 аналогично.cost 9600 settlement_min huge_cityupgrades{}}}plugins {}}
Прокомментируем каждую строку этой записи:

building music - название постройки.
levels theatre conservatorium - уровни данной постройки (в рассматриваемом случае 2 уровня - theatre (1-й) и conservatorium (2-й)).

theatre city requires factions { gondor, northern_european, greek, }

theatre -название 1-го уровня постройки.
city - указатель соответствия постройки городскому типу поселений (city - "город", castle - "замок", без указания - возведение доступно в любом типе поселений).
requires factions { gondor, northern_european, greek, } - условие возведения данного уровня постройки, определяющее возможность строительства лишь у определенных культур / фракций (и, возможно, также религий).

capability
{
happiness_bonus bonus 2
}


capability - строка, отвечающая за открытие списка возможностей данного уровня постройки.
happiness_bonus bonus 2 - накопительный бонус (могут быть самые различные бонусы, особого внимания им уделять не станем) применительно к текущему уровню здания (в данном случае - "Увеличение общественного порядка (благополучие) на 10 %").

material wooden - параметр, определяющий строительный материал для данного уровня здания (wooden - деревянное строение, stone - каменное строение), отвечает за склонность постройки к разрушению (особенно на тактике).
construction 5 - время возведения данного уровня постройки (в нашем случае - 5 ходов).
cost 6000 - стоимость возведения данного уровня постройки (в нашем случае - 6000 золотых).
settlement_min large_city - минимальный уровень поселения, в котором возможно строительство данного уровня здания (в нашем случае это large_city (городской тип поселения) - "Большой город").

upgrades
{
сonservatorium
}


upgrades - дальнейшее улучшение (апгрейд) постройки.
сonservatorium - переход ко 2-му уровню постройки, обязательно для указания, за исключением последнего уровня (upgrades не должен оставаться пустым).

conservatorium city requires factions { gondor, northern_european, greek, }
{
capability
{
happiness_bonus bonus 4
}
material wooden
construction 8
cost 9600
settlement_min huge_city
upgrades
{
}


Алгоритм прописи следующего уровня здания аналогичен предыдущему, рассматривать его не имеет смысла.

} ;1
} ;2
plugins ;3
{
}
}


На закрытие кода тегами следует обратить особое внимание:

1) } - закрытие последнего уровня здания:

conservatorium city requires factions { gondor, northern_european, greek, } {...}
2) } - закрытие блока уровней данной постройки:

levels theatre conservatorium{...}
plugins
{
}
}


Закрытие самой постройки.

2. export_descr_buildings_enums.txt

В этот файл следует добавить ссылки на текстовые описания постройки для игрового интерфейса (важно само наличие этих записей):

musictheatretheatre_desctheatre_desc_shortconservatoriumconservatorium_descconservatorium_desc_short
Здесь:

music - отвечает за название ветки строительства в окне доступных построек в поселении.
theatre - название уровня постройки.
theatre_desc - полное описание данного уровня здания (в окне подробностей).
theatre_desc_short - краткое описание данного уровня здания (в отчете о проделанном строительстве).


3. export_buildings.txt ( data / text )

Файл локализации, содержащий текстовые описания для построек:

{music_name}Фортификации{theatre_northern_european} Theatre{theatre_northern_european_desc}Now that musicians have truly begun to explore the effects of polyphony, where different melodies combine to wonderful effect, music is becoming progressively more popular. Lords who wish to establish this art as a higher form of entertainment may construct a Theatre, where the people may savour the sweet tapestries of sound in unison. {theatre_northern_european_desc_short}A Theatre improves public happiness throughout the settlement it graces.
music - название постройки.
_name - указатель прописи ветки строительства (в окне доступных строений в поселении).
theatre - название уровня постройки.
northern_european - культура, использующая данное текстовое описание для текущей постройки (можно использовать также и код фракции).
_desc - указатель полного описания.
_desc_short - указатель полного описания.

И так далее - в данном файле указываются ссылки в тегах на тот или иной тип описания объекта, после чего следует сам текст, отображаемый в игре.
Следует отметить, что для каждого уровня постройки возможно использование различных текстовых описаний - для разных фракций или культур - с единственным условием, что ссылки на них должны упоминаться в обоих предыдущих исполнительных файлах.

4. Задание изображений для постройки.

Каждое здание требует для своего корректного отображения в игре два отдельных графических файла:

1) Иконка для игрового интерфейса.

Месторасположение иконок зданий - каталог ui / / buildings / consctuction

2) Инфокартинка для окна подроностей.

Месторасположение инфокартинок зданий - каталог ui / / buildings

Здесь стоит отметить, что:

- для каждой культуры (или фракции), для которой используется здание, необходимо прописывать отдельные изображения.
- названия графических файлов следует начинать с символа #, после чего следует обозначение уровня постройки (должно соответствовать коду в export_descr_buildings.txt и остальных файлах).
- формат используемых изображений - tga.
- ссылка на инфокартинку или иконку для зданий не требуется, графический контент автоматически подбирается по соответствию названий объекта в текстовых файлах.
  • 0

#134 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 22 Май 2014 - 09:58

Вопрос №114

Возможно ли составить триггер, который изменял бы характеристику персонажа каждый ход и начислял последующий уровень трейта (есть 4 навыка - "Зимний", "Весенний", "Летний", "Осенний" - как привязать их к определенному времени года?

Прежде всего, следует отметить, что в M2TW лишь 2 времени года - "Лето" (summer) и "Зима" (winter).
Однако скриптинг предоставляет возможность задействовать 4 времени года, добавив фиктивные "Весну" и "Осень", которые, оставаясь на карте прежними временами года, будут меняться в зависимости от числа ходов.
Например, скрипт, разделяющий время года на 4 сезона, которые сменяют друг друга на протяжении 4 ходов игры:

...console_command date 1657console_command season summerwhile I_TurnNumber = 164suspend_unscripted_advice trueend_while console_command date 1657console_command season summerwhile I_TurnNumber = 165suspend_unscripted_advice trueend_while console_command date 1657console_command season winterwhile I_TurnNumber = 166suspend_unscripted_advice trueend_while console_command date 1657console_command season winterwhile I_TurnNumber = 167suspend_unscripted_advice trueend_while...
Вопрос №115

Как переместить рекрутинг юнитов какой-либо фракции из поселения типа "замок" в поселение типа "город" ?

Для этого нужно внести изменения в файл export_descr_buildings.txt :

1. Найти необходимую строку найма юнита в списке бонусов здания, доступного к возведению в поселении типа "замок" (пометка castle после названия уровня постройки).
2. Переместить / скопировать нужную строку найма юнита в список бонусов требуемого здания, доступного к возведению в поселении типа "город" (пометка city после названия уровня постройки).

Примечание: если пометка castle / city после уровня строения не указывается, это значит, что текущий уровень здания доступен к возведению в обоих типах поселений.

Вопрос №116

В каком файле прописывается лимит населения для того или иного уровня города / замка ?

Ограничение численности населения в разных уровнях города или замка прописывается в файле descr_settlement_mechanics.xml в следующем блоке:

              

Сообщение отредактировал Master_TW_DAR: 22 Май 2014 - 09:58

  • 0

#135 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 23 Май 2014 - 06:40

Вопрос №117

Какие бонусы можно прописать юнитам, нанимаемых / переобучаемых в постройках ?

Для увеличения характеристик боевых единиц в списке возможностей постройки (параметр capability) файла export_descr_buildings.txt можно использовать следующие команды:

- Бонусы улучшения боевого оружия:

weapon_melee_simple - возможность улучшения простого оружия ближнего боя.
weapon_melee_blade - возможность улучшения клинкового оружия.
weapon_missile_mechanical - возможность улучшения стрелкового оружия.
weapon_artillery_mechanical - возможность улучшения осадных орудий.
weapon_missile_gunpowder - возможность улучшения ручного огнестрельного оружия.
weapon_artillery_gunpowder - возможность улучшения артиллерийских орудий.
weapon_projectile - возможность улучшения орудий и огнестрельного оружия.
weapon_naval_gunpowder - возможность улучшения корабельной артиллерии.

- Бонусы дополнительного опыта для войск:

archer_bonus - увеличение опыта стрелков.
cavalry_bonus - увеличение опыта всадников.
heavy_cavalry_bonus - увеличение опыта рыцарей.
gun_bonus - увеличение опыта войск с огнестрельным оружием.
navy_bonus - увеличение опыта корабельной артиллерии.

- Бонусы снижения стоимости строительства / переобучения войск:

recruits_bonus_naval - снижение стоимости строительства кораблей.
retrain_cost_bonus - снижение стоимости переобучения войск.


Вопрос №118

Существует ли бонус для увеличения опыта сухопутных войск или всех войск вообще ?

Да, подобный бонус в export_descr_buildings.txt существует - recruits_exp_bonus bonus ("Увеличение опыта всех подготовленных здесь войск" ), например:

...capability{recruits_exp_bonus bonus 2}faction_capability{recruits_exp_bonus bonus 1}...
Здесь:

capability - список региональных бонусов для постройки (распространяется на конкретное поселение, где возведено данное здание).
faction_capability - список глобальных бонусов для постройки (распространяется на все подвластные поселения при возведении данного здания в каком-либо одном поселении).

Возвращаясь к бонусам опыта юнитов, следует отметить, что боевые единицы в поселении при наличии указанной постройки будут получать при найме / переобучении суммарный бонус к опыту +3, где :

+2 - результат действия регионального бонуса recruits_exp_bonus bonus 2 ;
+1 - результат действия глобального бонуса recruits_exp_bonus bonus 1 ;

Поселения без указанной постройки при условии существования данного здания в каком-нибудь другом поселении фракции будут обучать / переподготавливать юнитов как минимум с опытом уровня +1 за счет действия глобального бонуса, приведенного выше (не говоря о том, что в других поселениях могут быть теоретически собственные возможности для улучшения опыта).


Вопрос №119

Как прописать доступ к строительству какого-либо здания только в определенном поселении ?

1. descr_regions.txt

Прописываем требуемой провинции скрытый ресурс, например:

Averheim_Province legion: Averheim    Averheim        venice  Empire_Rebels   255 255 0       river, jihad, empire, capital, merc     5       5       religions { catholic 90 orthodox 0 islam 0 pagan 0 heretic 10 dwarven 0 chaos 0 vampire 0 dark_elf 0 }
Здесь river, jihad, empire, capital, merc - названия доступных в указанной провинции скрытых ресурсов.

Примечание: количество скрытых ресурсов в M2TWK ограничено числом 64.

2. export_descr_buildings.txt

2.1. В верхней строке файла указываем использующиеся скрытые ресурсы в строке параметра hidden_resources, например:

hidden_resources  border akend brovs vidovd zenres Karak_Kadrin Blood merc haifling marienburg mordheim norsk guard empire capital large_city dollar city large_town reik river never mountain_province kislev_capital empire_castle middenheim sparta rome italy america atlantic explorers_guild swordsmiths_guild woodsmens_guild teutonic_knights_chapter_house knights_of_santiago_chapter_house crusade jihad arguin horde_target no_pirates no_brigands
2.2. Добавляем условие, требующее наличие того или иного скрытого ресурса для возведения постройки / выполнения определенного бонуса, например:

watermill_1 city requires factions { eastern_european, southern_european, }   and hidden_resource river
and hidden_resource - команда-условие, проверяющее наличие скрытого ресурса, river - наименование скрытого ресурса.

Теперь указанный уровень здания watermill_1 будет доступен для строительства исключительно при наличии в поселении вышеуказанного скрытого ресурса.
  • 0

#136 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 24 Май 2014 - 11:47

Вопрос №120

Как сделать, чтобы на старте кампании в определенной провинции в указанной точке был каменный форт ? И возможно ли дать такому форту название ?

Форт можно задать на старте кампании, добавив запись форта с указанием требуемых координат в descr_strat.txt, например:

region Elven-Mirkwood_Provincefarming_level 0famine_threat 0fort  243 283 stone_fort_e culture northern_european
Здесь:

farming_level 0 и famine_threat 0 - рудиментарные строки, сохранившиеся со времен RTW (не имеют функционального назначения).
fort 243 283 stone_fort_e culture northern_european - координаты расположения форта на карте, тактическая модель, используемая для форта и тип культуры соответственно.

Добавлять уникальное название для такого форта нельзя, т.е. он создается безымянным.

Вопрос №121

Как сделать так, чтобы форт не исчезал спустя ход, после того его покинули все гарнизонные войска ?

Вышеназванные настройки форта редактируются в файле descr_campaign_db.xml :

- Форт не исчезает по истечение хода, после того как все отряды покинут его:

- После захвата форт переходит к фракции-победителю, а не уничтожается:

Вопрос №122

Как изменить стоимость строительства форта ?

Стоимость строительства форта определяется параметром fort_cost в файле descr_cultures.txt, например:

fort_cost 500
Вопрос №123

Как заменить стратмодель форта ?

1. Размещение стратмодели

Стратмодель форта располагается в каталоге data / model_strat / residences.

2. Привязка объекта к стратмодели

Привязка модели рассматриваемому объекту, в данном случае форту, осуществляется в файле descr_cultures.txt (параметр fort), например:

fort      data/models_strat/residences/SE_fort_buildings.CAS,     fort_roman
Вопрос №124

Как заменить тактическую модель форта ?

1. Размещение тактической модели

Тактическая модель форта располагается в каталоге data / settlements / / ambient_settlements, где далее необходимо разместить отдельную папку для расположения исполнительных файлов, название которых должно совпадать с наименованием их специальной папки.

2. Привязка объекта к тактической модели

В случае, если нам необходимо задать форт на старте кампании, в descr_strat.txt в записи конкретного объекта указывается тип тактической модели, например:

region Elven-Mirkwood_Provincefarming_level 0famine_threat 0fort   243 283 stone_fort_e culture northern_european
Здесь stone_fort_e - название тактической модели, используемой для приведенного в примере форта, оно же совпадает с названием папки stone_fort_e директории ambient_settlements, в которой соответсвенно лежат графические файлы тактической модели.

Вопрос №125

Можно ли сделать так, чтобы возведенная постройка создавала скрытый ресурс ?

Нет, на движке M2TWK такое неосуществимо. Скрытый ресурс может выступать разве что в качестве условия-привязки для потенциального возведения здания.

Сообщение отредактировал Master_TW_DAR: 24 Май 2014 - 11:40

  • 0

#137 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 26 Май 2014 - 11:35

Вопрос №126

В каких файлах прописывается стратмодель для агентов ?

Стратмодели агентов необходимо указывать в файлах descr_character.txt и descr_model_strat.txt

Примечание: инфокартинки для агентов прописываются в файле descr_cultures.txt.
  • 0

#138 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 27 Май 2014 - 09:57

Вопрос №127

В каком файле редактируются настройки стен и башен на тактике ?

Изменение параметров стен и башен на тактике производится в исполнительном файле descr_walls.txt.

Вопрос №128

Как побороть вылет при просмотре инфоокна постройки в ситуации, если в данном строении требуется реализовать найм юнита в зависимости от другого здание ?

recruit_pool "Byzantine Cavalry"  1   0.34   3  0  requires factions { byzantium, } and building_present_min_level missiles practice_range
(and building_present_min_level missiles practice_range - условие открытия доступа к найму юнита, осуществляющее проверку на наличие в поселении указанного строения missiles уровня practice_range )

Для того чтобы предотвратить системную ошибку при тестировании игрового интерфейса данного строения, необходимо в списке capability текущей постройки (export_descr_buildings.txt), задающей возможность найма с вышеуказанным требованием, отключить прочие бонусы (во время тестирования установлено, что при одновременном наличии с уже имеющейся строкой рекрутинга таких общеигровых бонусов, как "справедливость", "счастье" и многие другие, происходит подобный вылет).
если помимо перечня предоставленных к найму войск в постройке еще приписать к примеру бонус закона то следствием будет вылет...

Вопрос №129

Для чего используется указанная ниже строка в файле tooltips.txt ?

{TMT_SLAVES_TOOLTIP_SINGLE}Рабы ценный товарnРаспространяется по всем поселениям с наместниками. До исчерпания ресурса остался 1 ход.

Ресурс "Рабы" - это, по всей вероятности, пережиток RTW, где подобный ресурс использовался для увеличения прироста населения в случае порабощения какого-либо поселения в случае захвата, после чего примерно через 10 ходов исчезал в данной провинции.

Вопрос №130

Как создавать события (ивенты) ?

Для создания событий, появляющихся непосредственно в процессе игры на определенном ходу, редактируются следующие файлы игры:

1. data / world / maps / campaign / imperial_campaign / descr_events.txt

Здесь прописывается само событие и игровое время его появления.

2. data / text / historic_events.txt

Здесь размещаются текстовые описания событий.

3. ui / / eventpics / .tga

Здесь размещается инфокартинка, соответствующая событию.

Примечание: название инфокартинки должно обязательно совпадать с названием события - это своего рода "привязка" между текстовым и графическим файлами.

Сообщение отредактировал Master_TW_DAR: 27 Май 2014 - 09:57

  • 0

#139 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 28 Май 2014 - 09:31

Вопрос №131

Как с помощью скрипта прописать условие захвата определенной фракцией конкретного поселения ?

Проверку фракции на наличие определенного поселения можно выполнить с помощью следующей скриптовой конструкции:

monitor_event PreFactionTurnStart FactionType milanif I_SettlementOwner Ryazangrd = milanset_counter ryazanrus 1end_ifend_monitor
Здесь I_SettlementOwner Ryazangrd = milan - команда, осуществляющая проверку того, является ли владельцем поселения Ryazangrd фракция milan.

Вопрос №132

Какие файлы игры отвечают за настройку заданий (получаемые игроком от гильдии, верховного совета, Папы Римского) ?

Для редактирования стратегических заданий (миссий / квестов) требуется обратить внимание на следующие файлы:

1. descr_missions.txt

Здесь сосредоточены главные настройки заданий (алгоритм - условия и действия).

2. missions.txt , expanded.txt

В этих файлах локализованы текстовые описания заданий и применяемый к ним текст игрового интерфейса.

Сообщение отредактировал Master_TW_DAR: 28 Май 2014 - 09:39

  • 0

#140 Master_TW_DAR

Master_TW_DAR

    Мододел

  • Мастер
  • 2 705 сообщений
  • Откуда:РФ, Нижний Новгород
  • Награды:
Регистрация: 30.сен.12
Слава: 124

Отправлено 31 Май 2014 - 08:39

Вопрос №133

Какие файлы нужно редактировать, чтобы добавить новую ребельскую группировку в пределах фракции повстанцев (т.е. создать новый вид ребелов с их собственным флагом и названием) ?



1. descr_rebel_factions.txt

Содержит записи о локальных ребелах, ссылку на текстовое описание их названий и список задействованных юнитов.

2. rebel_faction_descr.txt

Локализация текстовых описаний названий группировок ребелов.

3. descr_regions.txt

Привязка ребельских группировок к провинциям страткарты.

4. data / banners

Указанная директория используется для размещения графических файлов символики фракций.

Примечание: при добавлении новой символики группировкам внутри фракции ребелов следует обратить внимание на параметр

rebel_standard_index 1
в файле descr_cultures.txt, где 1 - номер символа, используемого для ребелов той культуры, к которой относится рассматриваемая фракция.

Здесь надо помнить, что количество ребельных символов максимально может быть равно количеству культур, задействованных в игре.

Вопрос №134

Какие файлы нужно редактировать, чтобы удалить здания гильдии из игры ?

1. export_descr_guilds.txt

Здесь необходимо выполнить отключение / удаление записей о гильдии, привязки гильдии к определенному строению из export_descr_buildings.txt (рассмотрено далее) и уровнях гильдии, а также триггеры, которые начисляют данной гильдии бонусные очки.

2. descr_missions.txt

Здесь необходимо выполнить отключение / удаление записей тех квестовых заданий (миссий), в которых используется упоминание об определенных интересующих нас гильдиях (как правило, гильдии выдают игроку задания в процессе кампании).

3. export_descr_buildings.txt

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

4. export_descr_buildings_enums.txt

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

5. export_buildings.txt

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

6. descr_strat.txt

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

Примечание: при удалении записей о гильдии из игры могут возникнуть ошибки в связи с наличием в файлах export_descr_ancillaries.txt (файл анчей) и export_descr_character_traits.txt (файл трейтов) остаточных ссылок на эту гильдию внутри тел триггеров.

Вопрос №135

Где в файлах игры осуществляется привязка к стратмоделям растительности ?

1. data / terrain / aerial_map / tree_models

В этой директории размещаются CAS-файлы стратмоделей растительности.

2. descr_climates.txt

В этом текстовом файле выполняется привязка стратмоделей растительности, визуализируемых в игре, к указанным выше исполнительным CAS-файлам.

Вопрос №136

Какие способы начисления накопительных очков существуют у гильдий в игре ?

Накопительные очки используются гильдиями для перехода на новый (усовершенствованный) уровень.
Начисление накопительных очков при определенных условиях происходит в результате срабатывания триггера файла export_descr_guilds.txt.

За начисление (и его способ) бонусных баллов отвечает строка Guild, например:

Guild swordsmiths_guild s  10
Guild merchants_guild a  1
Guild explorers_guild o  5
Здесь стоит обратить внимание на общую структуру строки

Guild   
Итак, рассмотрим пошагово конструкцию строки:

1.

Осуществляет привязку эффекта триггера к определенной гильдии.

Доступный синтаксис:

- действие триггера связывается с указанным кодом гильдией.

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

all - действие триггера связывается с любой гильдией, где в текущий момент произошло выполнение условий триггера, накопительные баллы прибавятся только ко всем уже возведенным гильдиям.

2.

Имеется в виду воздействие срабатываемого триггера на поселения фракции в процессе игры.

Доступный синтаксис:

s - количество баллов для перехода гильдии на новый уровень изменится только в том поселении, для которого выполняются условия триггера.
o - количество баллов для перехода гильдии на новый уровень изменится как в поселении, для которого выполняются условия триггера, так и в других поселениях фракции, имеющих данную гильдию.
a - количество баллов для перехода гильдии на новый уровень изменится во всех поселениях фракции при выполнении условий триггера.

3.

Численное значение, выражающее интенсивность накопления баллов для перехода гильдии на новый уровень может выражаться как положительными (то есть получаем увеличение очков), так и отрицательными (соответственно уменьшение очков) числами.

Сообщение отредактировал Master_TW_DAR: 31 Май 2014 - 10:45

  • 0





Темы с аналогичным тегами моддинг, туториалы

Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных

Total War: WARHAMMER

Мы ждали, мы верили. И наша вера была вознаграждена! Анонс Total War: WARHAMMER состоялся! Скептики были посрамлены, а вахоманы возликовали! Но разработчики на форумах успели уже рассказать немало подробностей. Во первых стало известно? что это будет не одна игра, а трилогия сдобренная целым сомном аддонов и дополнительного платного и бесплатного контента. Во-вторых фракций будет только четыре (Империя Сигмара, Зеленокожие, Гномы и Графы-Вампиры) но обещают сделать их максимально проработанными, богатыми на юниты и реально отличающимися друг от друга по геймплею. В третьих - главы фракций теперь не просто генералы которых не жалко потерять в бою. Теперь это Легендарные Лорды (Карл Франц, Гримгор, Торгрим и Маннфрэд фон Карштайн), герои со уникальным оружием, верховым животным, шмотками и набором квестов. Еще обещают такие новинки как летающие юниты, магию, танки, пушки и мущкеты... в общем вкуснятинка! В общем ждем больше информации и надеемся, что игра станет прорывом в серии.

Ну а апологетам историчности спешим успокоить - над Вархаммер трудится отдельная команда. Исторические игры Тотал Вар производство фэнтэзийной игры не тормозит.

Подробней о Total War: WARHAMMER

Total War: Attila

Анонс Total War: Attila с одной стороны немало удивил нас, а с другой еще раз доказал, что СА идет проторенной дорожкой. Ведь Аттила по сути это сиквэл аддона "Вторжение варваров" для Рима 1. Правда на этот раз они не стали скромничать и назвали его "новой игрой". Ок, мы не будем спорить. Отдельная игра про нашествие варварских племен на цивилизации античного мира - это прекрасно. Нужно отметиьт что разработчики действительно поработали на славу. По мнению большинства игроков, Аттила действительно оказался достойным продуктом, позволившим окунутся в мрачные эпохи.

Подробней о Total War: Attila Часть 1 и Часть 2

Total War: Rome 2

Анонс Rome II Total War состоялся 2 июля и это вызвало настоящую бурю восторга нашего сообщества! Настолько люди истосковались по рукопашному бою и легионерам, что анонс сиквела восприняли как настоящее чудо и "сбычу мечт". Снова вести в бой скованные железной дисциплиной легионы, непоколебимых греческих гоплитов и македонских сариссофоров, топтать врагов слонами и забрасывать отрубленными головами - это ли не счастье! Но ведь новые игры Total War это еще и морские баталии. И тут уж будет море фана, ведь разработчики обещают активное взаимодействие между сухопутными и военно-морскими силами. Обоюдный обстрел между береговыми укреплениями и боевыми кораблями на рейде даст новую степень свободы "стратегосам" античного мира.

Подробней о Total War: Rome II