Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Descr_campaign_ai_db.xml



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

// min threshold for how much we like the target faction to consider them a trusted ally
// min threshold for how much the target faction likes us to consider them a trusted ally
// min threshold for how much the target (human) faction likes us to consider them a trusted ally
// min threshold for how trustworthy we are to consider the target faction a trusted ally
// min threshold for how trustworthy is the target faction to consider them a trusted ally
// flag to indicate if a faction automatically goes to war with a trusted allies enemy

Вполне прилично объяснено, однако, я не соглашусь с тем, как используются эти положения. "trusted ally" является единственной сторонней ссылкой, доступнымй в пределах этого файла, на такие понятия, как "trusted_ally_enemy" и "trusted_ally_protectorate". Это означает, что невозможно получить союзников, отношения с которыми ниже границы "trusted_ally". Я использую "trusted_ally" с этой целью, в то время как ванила и другие моды только идентифицируют целевую фракцию с показателем "trusted_ally", который Вы можете просто создать, сопоставляя эти же самые приоритеты в соответствующее заключение. Делая, так, программисты полностью устраняют любую стороннюю ссылку, а я имею его в наличии для большего взаимодействия.

// modifies the final invade priority for new faction targets by += (faction_standing * modifier) {makes factions more likely to start war with disliked targets}
// modifies the final invade priority for new faction targets by += (global_standing * modifier) {makes factions more likely to start war with untrustworthy targets}
// modifies the final invade priority for new faction targets where military assistance has been asked by += (offset) {makes factions more likely to start war with military assistance targets}

Все говорит само за себя, но важно отметить, что модификаторы "fs" и "gs" не задействованы, когда фракции уже в состоянии войны. В действительности так и должно быть, и использовать их стало бы легче, если бы они отметили это в своем объяснении. Я не уверен, что вполне правильно, если отказ от помощи активирован, в то время как "AtWar" может быть не задействован.

span style="color: blue; ">

// determines if cheat

overrides (force peace with ai, force attack with humans) are

applied

Это важно, в основном все указывает на "сложный активатор" в пределах файла, разрешающий ("true") или запрещающуий ("false"), единственный способ действительно улучшить AI состоит в том, чтобы в строке выставить активатор "false".

Теперь об ограничителях min и max_entry. Если Вы не знаете и не можете выяснить, что обозначают min_entry и max_entry, найдите новое хобби. Я сожалею, если написанное прозвучит грубо или резко, но это значит, что, скорее всего, у вас нет возможности понять материал самостоятельно. Ваши таланты зарыты в другом месте, и, естественно - трата времени для нас обоих.

Я объясню, что каждая фракция вычисляет любую другую фракцию как "цель" каждый ход, прежде чем его сделать. AI тогда атакует иные фракции, когда у него есть самый высокий показатель "invade_priority", но есть исключение (invade_opportunistic), про которое я расскажу позже.

span style="color: blue; ">

frontline_balance="0.0":: ratio of factions frontline military

strength vs the target

На первый взгляд все кажется довольно простым, значение в "2.0" должно быть вдвое сильней на пограничных зонах, и по большей части так и есть. Однако протокол LTGD (я расскажу про него позже) дает интересные показания. Во-первых, важно определить значение параметра "is_neighbour", во-вторых, когда юниты находятся на борту, они создают неучитываемый баланс в пограничных зонах (в пределах от 0.000001 или меньше и до 100000.0 или больше!). Фракция AI может иметь пограничный баланс больше чем 2.0, но фактически не иметь почти никаких войск в пограничном районе, высшим результатом "frontline_balance" может быть патрулирование войсками, когда они на борту, чуть ли не половины игровой карты. Поэтому очень важно определить min и max_entry. Обычно, я использую от 1000.0 до 0.001, поскольку эти числа никогда не будут реалистично воздействовать ни на какие существенные значения, то "frontline_balance" не может быть эффективно считан. "frontline_balance" не может использоваться с несоседними фракциями, значение будет равно 1.0 или нечитабельному и бессмысленному числу.

span style="color: blue; ">

military_balance="0.0":: ratio of factions overall military

strength vs the target

Совершенно простое объяснение, однако имейте в виду, что в этом уравнении рассматривается значение для флота.

span style="color: blue; ">

production_balance="0.0":: ratio of factions overall production

strength vs the target

Достаточно просто, но понимание AI в плане найма полностью ошибочно, я предлагаю свести значение к минимальному эффекту.span style="color: blue; ">

target_num_enemies="0":: the number of enemies the target has

num_enemies="0":: the number of enemies the faction has

Все правильно? НЕТ! Про эти строки,я должен пояснить подробнее, фракция может не иметь условие "AtWar" и воевать 2-я или 3-я "enemies" (врагами), в то время как другая фракция может иметь "AtWar" с 2 или 3 фракциями, но не иметь ни одного "enemies". Вообще это применимо, но не увлекайтесь сильно.

span style="color: blue; ">

has_alliance_against="false":: is the faction part of an

alliance against target

Немного подозрительно. Большинство людей (имеющих понятие, о чем речь) полагают, что это - дипломатическое соглашение атаковать фракцию. ЭТО НЕ ТАК. В двух словах охарактеризовать текущее положение дел можно так: "У меня есть союзники, с которыми не объединяются эти фракции?", тогда нужно выставить"has_alliance_against="true"'. Очень простой параметр, но эффективный.

span style="color: blue; ">

military_balance_plus_enemies="0.0":: ratio of factions overall

military strength vs the target (plus all of its enemies)

В описании точно говорится о данном параметре, но не указаны положения, с ним связанные. Конкретно, это - военный баланс фракции по отношению к соперникам, но не фракции в целом. Будьте внимательны.

span style="color: blue; ">

alliance_military_balance="0.0":: ratio of factions (plus its

allies) overall military strength vs the target

Точно также как и с вышеописанным, но не рассматриваются союзники целевой фракции.

span style="color: blue; ">

strongest_neighbour="false":: is the target the factions

strongest neighbour

Вероятно, вы понимаете, о чем в точности говорится.

span style="color: blue; ">

most_desirable="false":: is the target the factions most

desirable target

Я понятия не имею, как именно AI решает, кто "most_desirable". Я знаю, что не подразумеваются понятия: "кто владеет самыми богатыми землями", "целевая фракция для победы", "самый мощный" или "самый слабый". Возможно, имеется в виду сосед, а может не он. Как я уже говорил, Я ПОНЯТИЯ НЕ ИМЕЮ.

faction_standing="-1.0":: how much does the faction like the target target_global_standing="-1.0":: how trustworthy is the target to the rest of the world target_faction_standing="-1.0":: how much does the target faction like this faction global_standing="-1.0":: how trustworthy is this faction to the rest of the world

Без комментариев (особенно, если вы читали материал из раздела the descr_faction_standing.txt, и поняли о чем речь).

span style="color: blue; ">

target_religion="catholic":: the religion of the target (see

descr_religions.txt)

Довольно ясно.

span style="color: blue; ">

enemy_excommunicated="false":: is the target excommunicated

excommunicated="false":: is this faction excommunicated

Снова понятно. Заметьте, некатолические нации всегда должны иметь условие "false".

num_turns_allied="0":: the number of turns since the faction agreed to an alliance with the target
num_turns_ceasfire="0":: the number of turns since the faction has agreed to a ceasefire with the target (-1 for no agreement)
stance="Allied":: diplomatic stance with the target (Allied, Neutral, AtWar)
target_faction="england":: target faction label (see descr_sm_factions.txt)
target_human="false":: is the target a human player

Все строки соответствуют их описанию.

span style="color: blue; ">

target_is_shadow="false":: is the target this factions shadow faction

Эти строки часто обозначают разными вещами. Наиболее часто их воспринимают за условия победы для короткой кампании. В другом месте вы бы присвоили им еще одно значение. Это - последствие из Rome Total War: Barbarian Invasion, которое касается "Eastern Roman Empire" и "Rebel Eastern Roman Empire" независимо от того, как бы вы еще их не называли. На данный момент эти параметры не используется в M2. Они никогда не будут иметь условие "true", разве что некоторые честолюбивые моддеры не решат возобновить недействующие фракции (Я думаю, что все невостребованные данные все еще существуют, но они должны быть реализованы).

turn_number="0":: the game turn number (starting at 0)
is_protectorate="false":: is the target our protectorate
is_protectorate_of_catholic="false":: is the target a protectorate of a non-excommunicated catholic faction

Все ясно.

free_strength_balance="0.0":: ratio of factions free military strength vs the target

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

borders_all_our_regions="false":: does the target border on all the factions region groups
target_weakest_neighbour="false":: is the faction the targets weakest neighbour
has_ceasehostilities="false":: does the faction have a cease hostilities mission against the target from the papal faction is_neighbour="false":: does the target neighbour on any of the factions regions
trusted_ally="false":: is the target a trusted ally (they like us more than fs_thresh, and their global standing > gs_thresh, and they are allied)

Объяснений не требуется.

trusted_ally_enemy="false":: is the target an enemy of a trusted ally
trusted_ally_protectorate="false":: is the target a protectorate of a trusted ally

Об этом я упоминал ранее. В данном случае это единственные догадки (кроме несколько неопределенного "has_alliance_against" и "is_protectorate_of_catholic"), Если вы хотите, чтобы союзники сотрудничали, понизьте значение "trusted_ally".

span style="color: blue; ">

num_settlements="0":: how many settlements does the faction own

Все понятно.

span style="color: blue; ">

rand="0.0":: a random value

Случайное число создается каждый ход для отдельной фракции. Число варьируется между 0.0 и 1.0, однако нет никакого предела десятичному значению. Число 0.00000127 может выпасть с такой же вероятностью, как и 0.2. Фактически вы можете моделировать любое число. Например:

span style="color: blue; ">

max_entry rand="0.333333333"

Могла бы быть 1-а из 3-х вероятностей. Вы могли бы руководствоваться этим:

span style="color: blue; ">

min_entry rand="0.333333334"

max_entry rand="0.666666666"

И еще один пример:

span style="color: blue; ">

min_entry rand="0.666666667"

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

Регулировки для "faction_attitude" имеют значение, если минимальные и максимальные условия выставлены. Я могу объяснить все другие настройки, но независимо от этого, нужно рассказать о терминах "invade" и "defend".

defend_priority="0":: The defensive priority of achieving stance against this faction (NOT USED AT PRESENT) (additive with previous decisions this turn)

К сожалению, "not used at present" означает, что значение бесполезно и не может использоваться.

invade_priority="0":: priority of achieving invasion against this faction (additive with previous decisions this turn). Compared with priority for decisions against all other factions to choose highest. Value modified internally by faction standing.

Вероятно, этот фактор наиболее важный. Он определяет, кого атакует AI и сколько ресурсов понадобится для нападения. Чем ближе значение к параметру"invade_priority_max", тем больше будет выделено ресурсов. Имейте в виду, что AI способен атаковать нескольких противников, если параметр "invade_priority" выставлен по отношению к ним достаточно высоко, и попытается сфокусировать ресурсы на области, где происходят события, ослабив распределение в общем плане. С должным вниманием вы можете создать эффективный многозадачный AI. Также, если значение "invade_priority" будет меньше, чем у "invade_priority_min", то AI не будет атаковать выбранную фракцию (если "invade_opportunistic" не будет использоваться, но об этом далее).

span style="color: blue; ">

at_war="false":: are we at war with this enemy

Очень странная опция. Она эффективна, только если используется в сочетании с ранее настроенной опцией "continue="true", в таком случае AI может принять "позицию "AtWar", даже не находясь в боевом состоянии. На фактическое положение такие установки не влияют. (т.е.если фракция не атакует предполагаемого противника, то вы еще можете остаться союзниками).

span style="color: blue; ">

want_peace="false":: do we want to be at peace with this faction

AI хочет предложить или принять "перемирие"? К сожалению, в настоящее время нет способа присвоить такое "значение", только банальный ответ да/нет.

span style="color: blue; ">

want_ally="false":: do we want to ally with this faction

Эта настройка была заменена:

pts_alliance="0":: points total for measuring how much we want to be allies with these people (additive with previous decisions this turn)

Она говорит сама за себя. И действительно, она отображает "значение" союза в меню дипломатии.

want_be_protect="false":: do we want to be a protectorate of this faction
want_offer_protect="false":: do we want to offer protectorate status to this nation

Самоочевидное объяснение. Строка позволяет управлять, предложит AI протекторат цели или примет его над ней (по инициативе цели – прим. переводчика). Но такое "значение" также невозможно выставить.

span style="color: blue; ">

force_invade="false":: must we invade now

Если установлено "true", AI атакует с тем, что сразу доступно, независимо от шансов, это также обходит "invade_priority". Будьте внимательны.

alliance_against="0":: how much do we want to have an alliance against this nation (additive with previous decisions this turn)

Довольно посредственное объяснение. Если у AI имеется положительное число в этой строке, оно добавляется к параметру "pts_alliance" по отношению к любой фракции, с которой они не в союзе, и с целью создания альянса против другой фракции. Я не уверен, применимо ли отрицательное значение.

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

Используйте с осторожностью.

pts_desire="0":: points total for measuring our desire for this faction's territory (additive with previous decisions this turn)

Не уверен на этот счет, но я предположил бы, что скрипт связан с настройкой "most_desirable", не решился проверить.

can_force_invade="true":: can naval or forced invasion settings overwrite invade parameters

При условии, установленном на отмену (т.е. "false" - прим. переводчика) в этом параметре, все вторжения, не обусловленные в пределах этого файла, будут не действительны. Кроме того, военно-морские нападения также будут деактивированы, даже если они предусмотрены в данном документе. Не буду настаивать, но думаю, что лучше всего использовать эту настройку в очень ограниченных рамках. На военно-морские вторжения влияет параметр "invade_priority" (снова за исключением "invade_opportunistic").

continue="false"/>:: do we stop evaluating decision entries (false) or continue

По-моему, версия AI 1.2 является отдельной и самой улучшенной. AI прекратит рассмотрение текущей цели и выберет следующую цель, как только будут найдены значения min и max для параметра decision_entry, если continue="true" задействован совместно с предыдущим параметром. Эта опция позволяет добавлять результаты других настроек без их включения в пределах рассматриваемого решения.

Теперь о второстепенном (по-моему), об использовании искусственным интеллектом условия "invade=".

span style="color: blue; ">

invade_buildup

С большой вероятностью, что AI попытается объединить юниты в многочисленный отряд перед атакой, даже если противник слабее. К сожалению, компьютер начинает наступление до объединения армий, таким образом, юниты могут не успеть наняться до момента слияния. Также AI не может эффективно соотвествовать условию "buildup" (не может нарастить боевую мощь - прим. переводчика) в плане военно-морских вторжений..

span style="color: blue; ">

invade_immediate

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

span style="color: blue; ">

invade_raids

Снова, довольно простая стратегия, AI предпримет попытку атаки, но, не навязывая серьезное сражение. Это включает в себя блокаду портов, путем осады в один ход и разорения окрестностей. Такую стратегию можно использовать в своих целях, но не забывайте, что AI не будет даже пытаться сформировать многочисленную армию, уж очень уязвимым все выглядит для решительной контратаки.

span style="color: blue; ">

invade_start

Вкратце о комбинациях "buildup" и "raids".

span style="color: blue; ">

invade_none

Вы можете не придавать значения этому настройке, но она очень полезная, AI будет следовать защитному приоритету. Коротко объясню, параметр "invade_priority" использует определенную команду "defend=", с ее помощью AI может накапливать военную силу для вторжения.

span style="color: blue; ">

invade_opportunistic

Самая хитрая и самая мощная команда для вторжения. Она позволяет использовать AI диверсионную тактику, чтобы наносить удары по слабым местам. Условие "immediate" заставит AI быть "более сильным", чем его противник. Главное положение в такой ситуации - обход параметра "invade_priority", даже если приоритет ниже, чем минимум, и даже если у вражеской фракции приоритет в 10 раз больше (имеется в виду, что даже если фракция противника рассматривается как потенциальная угроза, и AI должен сконцентрироваться на обороне, он все равно попытается наносить ей мелкие удары - прим. переводчика). В действительности этот прием очень мощный, так что используйте его осторожно.

Теперь, по-моему, про еще более важное, чем настройки "invade", наши опции "defend="!

span style="color: blue; ">

defend_minimal

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

span style="color: blue; ">

defend_normal

Используется более широко. С этой установкой AI мог бы даже расположить усиленный гарнизон в нужном поселении, и попытается прервать/снять осаду и т.п. В целом, вероятно, мог бы занять круговую оборону. Но, действие полезно только в комбинации с "invade_immediate" и "invade_buildup", поскольку нет никаких конкретных позиций как для "найма" по обороне, так и для "найма" по нападению, необходимых для этой установки и, "приводящих" к какому-либо результату.

span style="color: blue; ">

defend_raid

Вполне возможно, что даже бесполезнее, чем "минимальная" эта настройка приведет к появлению большого количества армий из 1-2 юнитов, патрулирующих собственные земли.

span style="color: blue; ">

defend_frontline

С большой эффективностью может применяться с "invade_opportunistic", "invade_immediate" и "invade_buildup". Этот механизм подразумевает, что AI попытается встретиться с целевой фракцией на линии фронта. Размер армии определяется типом вторжения и удаленностью противника. Это решение принимает "invade_priority", чтобы обозначить, на чьей границе протянуть линию фронта.

Примечание: Один недостаток - AI не будет "призывать" эти войска для прерывания/снятия осады, если они не смогут прибыть в течение одного хода. МОЖЕТ ИСПОЛЬЗОВАТЬСЯ только против соседних фракций.

span style="color: blue; ">

defend_fortified

Отлично, если AI строит форт. Для "линии фронта" во многих аспектах, включая использование "invade_priority", важно решить, на чьей границе выстроить гибкую линию обороны и, по возможности, совместимую практически с любым типом вторжения, а также способную "предотвратить" опасность для поселений. Дополнительно эта установка определяет дислокацию армий в поселениях, если угрожающая армия близко. Но есть ГЛАВНЫЙ недостаток. ЕСЛИ AI создаст форт, то силы, расположенные в нем, с большой вероятностью "заморозят" AI дополнительным образом по довольно глупой причине. Он предпочтет размещать войска в фортах, а не в поселениях, даже если атакующая армия будет близко, вплоть до последнего города.

span style="color: blue; ">

defend_deep

Это ваша "конечная позиция" среди базовых настроек. AI попытается сохранить свои армии, которые находятся рядом с его поселениями, а потом переместить их в них, если вражеские армии приблизятся. Три главных изъяна: во-первых, AI руководствуется только защитой своих поселений, и никогда не попытается ликвидировать угрозу. Во-вторых, настройка не совместима с любым типом вторжения. В-третьих, AI не в состоянии переместить армию в поселение прежде, чем противник атакует.

И напоследок о протоколе LTGD, это - опция "журнала", доступная для регистрации всей информации и результатов, используемых файлом the descr_campaign_ai_db.xml. Чтобы активировать протокол, напишите:

span style="color: blue; ">

[ai]

ltgd_logging = true

[log]

to = logs/system.log.txt

level = ai.ltgd trace

Для предпочитаемого вами файла M2 (или используемого мода) это отличное средство для диагностики.

Примечание: В начале файла descr_campaign_ai_db.xml упоминается такая формулировка.

Additionally, the ai_labels can be tested through event conditions and set through // a script command, potentially allowing ai behaviour to be changed dynamically in game depending on current game state.

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

span style="color: blue; ">

link_faction_ai england default

Что означает: AI, играющий за Англию, использовал бы значение ai_label для старта из определенной точки "по умолчанию". Эта команда действительно работает, однако, в протоколе LTGD, будет отмечено, что фракция использует ai_label в составе descr_strat, независимо, какое именно обозначение используется.

# Реформа Мария. Активирование Реформ в Medieval 2: Total War.

Это специфическое событие, происходящее при достижении определенных условий. Оно влияет на эффекты построек и телохранителей.
Для внедрения реформ в игру необходимо:
1. Удалить строку 'marian_reforms_disabled' из descr_strat
2. Добавить скрытый ресурс italy любому региону в descr_regions (если скрытый ресурс не определен в верхней части вашего export_descr_buildings, то следует добавить его туда)
код
London_Province
London
england
English_Rebels
232 41 46
atlantic, explorers_guild, woodsmens_guild, italy
5
4
religions { catholic 85 orthodox 0 islam 0 pagan 13 heretic 2 }

код
hidden_resources 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

3. Добавить новую культуру с внутренним названием "roman" (или преименовать существующую) и приписать хотя бы одну фракцию к ней.
Активирование
Реформа произойдет, когда фракция, принадлежащая к римской ("roman") культуре контролирует регион со скрытым ресурсом 'italy' и апгрейдит свое поселение до «huge city». Сообщений о состоявшейся реформе не будет.
Активирование по умолчанию
Можно сделать так, что реформа Мария уже произошла с началом кампании путем добавления следующей строки в верхней части файла desc_strat

код
...
start_date 1080 summer
end_date 1530 winter
timescale 2.00
marian_reforms_activated
rebelling_characters_active
gladiator_uprising_disabled
night_battles_enabled
show_date_as_turns
brigand_spawn_value 20
pirate_spawn_value 28

Эффекты
Реформа может повлиять на капанию следующим образом:
1. Апгрейд юнитов-телохранителей. Этим юнитам надо добавить атрибут "general_unit_upgrade" в export_descr_unit. Эти юниты должны быть перечислены ниже регулярных юнитов-телохранителей фракции. В противном случае движок будет считать их (которые должны апгрейдиться) дефолтными

код
type NE Late Bodyguard
dictionary NE_Late_Bodyguard; General's Bodyguard
category cavalry
class heavy
voice_type General
banner faction main_cavalry
banner holy crusade_cavalry
soldier NE_Late_Bodyguard, 16, 0, 1
mount armoured horse
mount_effect elephant -4, camel -4
attributes sea_faring, hide_forest, very_hardy, can_withdraw, general_unit, general_unit_upgrade
formation 2, 4.4, 3, 6, 2, square
stat_health 2, 0
stat_pri 13, 8, no, 0, 0, melee, melee_blade, piercing, spear, 25, 1
;stat_pri_ex 0, 0, 0
stat_pri_attr no
stat_sec 14, 4, no, 0, 0, melee, melee_blade, piercing, sword, 25, 1
;stat_sec_ex 0, 0, 0
stat_sec_attr no
stat_pri_armour 9, 5, 3, metal
;stat_armour_ex 9, 10, 0, 0, 5, 3, 3, metal
stat_sec_armour 0, 0, flesh
stat_heat 6
stat_ground 0, -2, -4, 0
stat_mental 11, normal, trained
stat_charge_dist 45
stat_fire_delay 0
stat_food 60, 300
stat_cost 1, 870, 250, 120, 95, 870, 1, 210
armour_ug_levels 5, 6
armour_ug_models NE_Late_Bodyguard, NE_Late_Bodyguard_ug1
ownership england, scotland, france, hre, denmark, poland, hungary
era 2 england, scotland, france, hre, denmark, poland, hungary
;unit_info 13, 0, 34

При срабатывании триггера реформы члены семьи каждой фракции сменят своих телохранителей на других, если те доступны.
2. Эффекты построек.
Это может быть достигнуто применением условия "marian_reforms" в export_descr_buildings.
код
recruit_pool "Longbowmen" 1 0.7 6 0 requires factions { england, } and marian_reforms
recruit_pool "Highland Archers" 1 0.7 6 0 requires factions { scotland, } and not marian_reforms

При срабатывании триггера реформы все эффекты построек с условиями становятся активными, в то время как не имеющие условий перестают быть таковыми.

#Консольные команды (КОДЫ, читы) для Medieval 2 Total War и Kingdoms

Ниже размещен список консольных команд – каждая команда имеет строки: описание, если актуально, то дополнительно указан синтаксис команды и пример ее применения (синтаксис и пример указаны в «таких» кавычках, остальной текст строк поясняющий) либо способ применения. Если какая-то из этих строк отсутствует, то это значит что в ней нет необходимости. Команды разделены по тематическим группам, которые выделены подчеркнутым подзаголовком со стрелочкой ().

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

Это обязательное условие для того, чтобы консольная команда была выполнена - иначе игра просто не поймет чего от нее хотят. Например в русской версии игры наименование итальянского города «Рим» соответствует англоязычному «Rome».
основная часть:
add_money
описание: Изменить (увеличить или уменьшить) сумму денег своей или другой фракции. Для уменьшения следует указать отрицательную сумму, например добавить -1000. Для уточнения названий фракций можно просмотреть файл descr_strat.txt
синтаксис: «add_money ±число» - для своей фракции или «add_money название_фракции, ±число» для другой
пример: «add_money 5000» «add_money england, -5000»

add_population
описание: Изменить (добавить или отнять) население указанного города
синтаксис: «add_population, Название_города ±число»
пример: «add_population, London 500» или «add_population London, -500»

auto_win
описание: Победить в следующей (авто)битве
синтаксис: «auto_win сторона_битвы»; возможные стороны: «attacker» (атакующий) или «defender» (защищающийся)
пример: «auto_win attacker» или «auto_win defender»

bestbuy
описание: Неизвестно
синтаксис: особенности или параметры неизвестны

character_reset
описание: Обнулить использованные очки передвижения (movement points) указанного персонажа
синтаксис: «character_reset Имя_персонажа»
пример: «character_reset Rufus»

create_unit
описание: Создать отряд в указанном городе (названия отрядов можно почепнуть в файле export_descr_units.txt)
синтаксис: «create_unit Название_города Название_отряда» если название отряда состоит из одного слова, «create_unit название_города "название отряда"», если больше
пример: «create_unit London, Peasants» или «create_unit London "Mailed Knights"»

give_ancillary
описание: Дать анч (персонаж свиты) указанному персонажу
синтаксис: «give_trait Имя_персонажа название_анча»
пример: «give_ancillary William bard»

give_trait
описание: Дать трейт (черту характера) указанному персонажу
синтаксис: «give_trait Имя_персонажа название_трейта»
пример: «give_trait William Drink»

move_character
описание: Переместить указанный персонаж в координату карты
синтаксис: «move_character Имя_персонажа координата_по_оси_X,координата_по_оси_Y»
пример: «move_character William 6,150»

puppify_my_love
описание: Неизвестно
синтаксис: особенности или параметры неизвестны

process_cq
описание: Построить первое здание в очереди (списке) заказанных построек в указанном городе
синтаксис: «process_cq Название_города»
пример: «process_cq London»

remove_ancillary
описание: Удалить анч (персонаж свиты) у указанного персонажа
синтаксис: «remove_ancillary Имя_персонажа название_анча»
пример: «remove_ancillary William bard»

remove_trait
описание: Удалить трейт (черту характера) у указанного персонажа
синтаксис: «remove_trait Имя_персонажа название_трейта»
пример: «remove_trait William Drink»

show_cursorstat
описание: Получить координаты клетки (tile) стратегической карты под курсором, например координату местонахождения армии на страт. карте, применяется для позиционирования армий, флотов и персонажей при произведении изменений в игре на стратегическом уровне (более подробно о таких измениях можно прочесть в темеСтратегия Страта)

toggle_fow
описание: Отключить "туман войны" - это позволит видеть все города и перемещение армий, флотов и персонажей; для включения ввести команду еще раз

toggle_terrain
описание: Включить один из специальных режимов для редактирования/отладки страт. карты – на обычную страткарту в игре накладываются tga-файлы из папки Base; доступные режимы: region (провинция), tiletype (типы местности groundtypes), climate (климат), choke (непреодолимые преграды), landing (суша), frontier (более выражено показывает границы провинций), features (реки), frontier_defend (места, удобные для засад и обороны стратегических проходов на карте); для отключения режима ввести команду еще раз
синтаксис: «toggle_terrain режим» доступные режимы: region; tiletype, climate, choke, landing, frontier, features, frontier_defend
пример: «toggle_terrain region»
читы (обманные коды):
rogan
описание: Добавить 1 отряд «Орудия на слонах» (Elephant Artillery) к гарнизону или армии, на башнях слона установлены небольшие пушки-серпентины; для добавления еще одного отряда повторно ввести код
применение: выбрать (нажать) город или армию, открыть консоль и ввести код

vindaloo
описание: Добавить 1 отряд «Ракеты на слонах» (Elephant Rocketeer) к гарнизону или армии; для добавления еще одного отряда повторно ввести код
применение: выбрать (нажать) город или армию, открыть консоль и ввести код

madras
описание: Добавить 1 отряд «Слоны» (Elephants) к гарнизону или армии, «экипаж» слона вооружен аркебузами; для добавления еще одного отряда повторно ввести код
применение: выбрать (нажать) город или армию, открыть консоль и ввести код

istanbul
описание: Добавить 1 отряд «Гигантская бомбарда» (Mercenary Monster Bombard) к гарнизону или армии; для добавления еще одного отряда повторно ввести код
применение: выбрать (нажать) город или армию, открыть консоль и ввести код

george
описание: Добавить 1 отряд «Большое органное орудие» (Mercenary Monster Ribault) к гарнизону или армии; для добавления еще одного отряда повторно ввести код
применение: выбрать (нажать) город или армию, открыть консоль и ввести код

houston
описание: Добавить 1 отряд «Ракеты» (Mercenary Rocket Launcher) к гарнизону или армии; для добавления еще одного отряда повторно ввести код
применение: выбрать (нажать) город или армию, открыть консоль и ввести код

команды для хотсита (работают только в хотсит-играх с включенной консолью):
logon
описание: Авторизовать администратора хотсит-игры, войти в администраторский режим; на данный момент нет информации как разрешить использовать этот режим или установить пароль
синтаксис: «logon пароль»
пример: «logon 777»

logoff
описание: Выйти из режима администратора
синтаксис: особенностей или параметров нет

set_email
описание: Установить адрес электронной почты (е-мейл) игрока указанной фракции
синтаксис: «set_email название_фракции адрес@почты.ру»
пример: «set_email poland [email protected]»

set_password
описание: Установить пароль к хотсит-игре для указанной фракции, пишется дважды (второй раз - подтверждение)
синтаксис: «set_password название_фракции пароль пароль»
пример: «set_password poland pass pass»

clear_password
описание: Снять пароль с хотсит-игры для указанной фракции
синтаксис: «clear _password название_фракции»
пример: «clear _password poland»

скриптовые (работают только в скриптах):
capture_setlement
описание: Захват указанного города
синтаксис: «console_command capture_settlement Название_города»
пример: «console_command capture_settlement York»

create_building
описание: Сторительство указанного здания в указанном городе (названия зданий можно почерпнуть в файле export_descr_buildings.txt)
синтаксис: «console_command create_building Название_города название_здания»
пример: «console_command create_building London small_church»

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





Дата публикования: 2015-11-01; Прочитано: 5441 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2024 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.038 с)...