Все что вы хотели знать о Rules.ini
Углубленное изучение способа модификации игры Red Alert 2 через Rules.ini. Описание основных параметров и примеры использования.
Все что вы хотели знать о Rules.ini
29.02.2024 в 12:11   2705 0
Версия для печати

rules logo
Для начала несколько слов об условных обозначениях. В квадратных скобках жирным шрифтом выделено имя секции. Выглядит это примерно так 
[General]

Некоторые секции настолько объемные, что разработчики поделили их на тематические подразделы. Подраздел выделяется таким образом
•  Repair And Refit

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

LightningDamage=
Сила удара одного разряда молнии

[General]

UiName=
Название ссылки на этот INI файл, которая содержится в CSF. Особого значения не имеет

Name=
Что то я не заметил, чтобы этот параметр слишком уж активно использовался. Скорее всего остался в наследство от предыдущих игр серии.

•  Veteran Factors

VeteranRatio=
Этот параметр влияет на скорость набора опыта юнита для повышения в звании. Формула расчета для каждого юнита такая Повышение=Cost*VeteranRatio

VeteranCombat=
Множитель, который определяет бонус к повреждению юнита после повышения звания

VeteranSpeed=
Множитель, который определяет бонус к скорости юнита при каждом повышении

VeteranSight=
Множитель определяющий бонус к скорости юнита при каждом повышении. По умолчанию равен нулю и я настоятельно не рекомендую повышать его, так как это может повлечеть за собой зависание игры.

VeteranArmor=
Множитель определяющий бонус к броне юнита при повышении

VeteranROF
Множитель определяющий бонус к скорострельности юнита для первичного и вторичного оружия

VeteranCAP
Параметр определяющий максимальное количество повышению для юнитов. Если надумаете изменять, то знайте, что могут возникнуть проблемы с такими параметрами как VeteranAbilities= и EliteAbilities=, ну и еще ElitePrimary= и EliteSecondary=

•  Repair And Refit

RefundPercent=
Процент от стоимости юнита или здания, который будет возвращен при его продаже

ReloadRate=
Время в минутах, которое необходимо юниту, чтобы пополнить боезапас на складе. Например, Хариеру в Штабе командования ВВС.

RepairPercent=
Процент от стоимости юнита, который берется за его починку.

RepairRate=
Время в минутах, которое проходит перед следующим шагом ремонта. Необходимо для того, чтобы ремонт не проходил мгновенно.

RepairStep=
Количество очков жизни восстанавливаемых за один шаг ремонта

URepairRate=
Аналогичен параметру RepairRate, но действует только на технику.

IRepairRate=
То же, но для пехоты

TiberiumHeal=
Время в минутах до того как юнит начнет лечится от тибериума. Первый привет от Tiberian Sun.

(YR) SelfHealInfantryFrames=
Количество фреймов которые пехотинец затрачивает на самолечение

(YR) SelfHealInfantryAmount=
Количество очков жизни, которое пехотинец восстанвливает за один фрейм

(YR) SelfHealUnitFrames=
Количество фреймов которое юнит затрачивает на лечение

(YR) SelfHealUnitAmount=
Количество очков жизни, которое юнит восстанавливает за один фрейм

•  Income And Production

BuildSpeed=
Время в минутах затраченное на производство предмета стоимостью 1000 кредитов

BuildUpTime=
Время в минутах указывающее сколько длится анимация строительства

GrowthRate=
Время в минутах проходящее между ростом тибериума

SeparateAircraft=
Я так до конца и не понял, что значит этот параметр, но по видимому это что то связанное с привязкой самолетов к аэропорту.

SurvivorRate=
Этот параметр указывает какой процент от стоимости здания пойдет на производство выживших при его разрушении. Так если SurvivorRate=0.1, то при разрушении здания стоимостью 1000 кредитов, будет построен юнит за 100 кредитов.

AlliedSurvivorDivisor=
Значение этого параметра может колебаться от 1 до 100. Позволяет более точно манипулировать суммами на производство выживших. Так если значение SurvivorRate=0.2, а AlliedSurvivorDivisor=50, то при разрушении здания стоимостью 1000 кредитов денег на производство выживших будет выделяться не 200, а 100 кредитов.

SovietSurvivorDivisor=
Делает то же самое, что и предыдущий параметр, но уже для Советов

(YR) ThirdSurvivorDivisor=
Теперь регулируем количество выживших у Юры

HarvesterDumpRate=
Время разгрузки харвестера на очистительном заводе

HarvesterLoadRate=
Время полной загрузки харвестера рудой

PlacementDelay=
Время в минутах которое AI пытается разместить объект на карте если обнаружена временная блокировка (Например движущийся юнит). Позволяет регулировать скорость развития базы AI

WeedCapacity=
Количество грязи, которое должно быть собрано для производства химической ракеты. (Еще один привет из Tiberian Sun). Если основательно повозиться, то можно заставить это работать, но из-за глюков с химической ракетой в RA 2 - это скорее всего окажется бесполезной тратой времени

HarvestersPerRefinery=
Это параметр показывает сколько харвестеров должны обслуживать каждый очистительный завод. В YR это список из 3 чисел обозначающих Альянс, Советы и Юрия соответственно.

•  Computer And Movement Controls

CurleyShuffle=
Может быть yes или no. Определяет будет ли вертолет при атаке зависать на месте (no), либо будет летать вокруг цели (yes).

BaseBias=
Множитель определяющий агрессивность юнитов при приближении врага к базе

BaseDefenceDelay=
Время в минутах через которое AI проверяет угрозу собственной базе и организует оборону.

CloseEnough=
Расстояние в ячейках на котором AI начинает обходить объект блокирующий путь

DamageDelay=
Время в минутах после которого здания начинают получать повреждения при недостатке электроэнергии

CloakDelay=
Время после которого юнит становится невидимым (Разумеется если он имее такую способность)

FlightLevel=
Высота на которой перемещаются самолеты и другие летающие юниты

ParachuteMaxFallRate=
Скорость снижения парашюта

NoParachuteMaxFallRate=
Скорость падения юнита без парашюта

GuardModeStray=
Расстояние в ячейках на которое юнит управляемый AI может удалиться от охраняемого объекта

MissileSpeedVar=
Регулирует скорость полета ракет

MissileROTVar=
Процент отклонения ракет от курса

MissileSafetyAltitude=
Высота на которую поднимается ракета прежде чем поразить цель

TeamDelays=
Время в фреймах через которое AI начинает создавать разные команды

AIHatedelays
Время в фреймах через которое AI выбирает себе врага

AIAlternateProductionCreditCutoff=
Количество кредитов достигнув которого AI начинает экономить

AIUseTurbineUpgradeProbability=
Шанс того, что AI модернизирует электростанции. Правда в RA 2 электростанции модернизировать нельзя, но что вам мешает сделать это возможным?

MultiplayerAICM 
Коэффицент производства денег при игре Скирмиш

(YR) AISlaveMinerNumber=
Количество харвестеров у Юры которое будет стремится иметь AI

(YR) AIExtraRefineries=
Количество перерабатывающих заводов которое будет стремится иметь AI

HealScanRadius=
Радиус в ячейках, который проверяют медики и ремонтники в поисках поврежденных юнитов

MinimumAIDefensiveTeams=
Минимальное число групп юнитов, которые AI строит для защиты

MaximumAIDefenciveTeams=
Максимальное число групп юнитов которое AI строит для защиты

TotalAITeamCap=
Максимальное число групп юнитов, которыми AI будет управлять

UseMinDefenseRule=
Будет ли AI применять правило минимальной защиты

DissolveUnfilledTeamDelay=
Время, после окончания которого, группа юнитов не имеющая никаких членов распадется

LargeVisceroid=
Определяет тип юнита в которого могут объединиться 2 визероида. Еще один гость из Tiberian Sun. Насколько мне известно в RA 2 это не работает.

SmallVisceroid=
Определяет тип юнита в который пехотинец превратится после длительного контакта с тибериумом.

AIIonCannonConYardValue=
AIIonCannonWarFactoryValue=
AIIonCannonPowerValue=
AIIonCannonEngineerValue=
AIIonCannonThiefValue=
AIIonCannonHarvesterValue=
AIIonCannonMCVValue=
AIIonCannonAPCValue=
AIIonCannonBaseDefenseValue=
AIIonCannonPlugValue=
AIIonCannonHelipadValue=
AIIonCannonTempleValue=
(YR) AIIonCannonTechCenterValue=
Хотя здесь везде и написано IonCannon, но к ней эти параметры не имеют никакого отношения. Просто они показывают по какому из типов зданий супероружие ударит в первую очередь

•  Ion Storm Control

Опять ленивые разработчики забыли Ion Storm заменить на Weather Storm. Ну да ладно

LightningDeferment=
Задержка в фреймах между объявлением о создании Погодного шторма и его активизацией

LightningDamage=
Сила удара одного разряда молнии

LightningStormDuration=
Время в фреймах, которое будет длится шторм

LightningWarhead=
Боеголовка для удара молнией.

LightningHitDelay=
Как часто прямая цель супероружия будет попадать под удар

LightningScatterDelay=
Задержка в фреймах между ударами молнии. Не советую здесь ставить слишком маленькое значение - тормоза жуткие будут.

LigtningCellSpread=
Радиус поражения для данного супероружия

LightningSeparation=
Расстояние между каждым облаком и молнией, которой оно стреляет

LightningPrintText=
Показывать или нет предупреждение о создании шторма. Сам текст хранится в CSF файлах под этими именами: TXT_LIGHTNING_STORM и TXT_LIGHTNING_STORM_APROACHING

•  Force Shield Control (Yuri's Revenge)

(YR) ForceShieldRadius= 
Радиус действия силового щита

(YR) ForceShieldDuration=
Время действия силового щита

(YR) ForceShieldBlackOutDuration=
Время подсветки зданий попавших под действие силового щита

(YR) ForceShieldPlayFadeSoundTime=
Время после которого будет включен звук деактивации силового щита

(YR) MutateExplosion=
Должен ли генетический мутатор использовать боеголовку Mutate, или просто уничтожить пехоту

•  Prism Cannon Control

PrismType=
Название здания, которое использует технологию призм

PrismSupportModifier=
Процент к урону, который добавляется при поддержке других призма-башень

PrismSupportMax=
Максимальное число лучей поддержки, которое может принять одна башня

PrismSupportDelay=
Задержка между выстрелами лучами поддержки

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

PrismSupportHeight=
Высота на которую нацелен луч поддержки

•  V3 Rocket Control

V3RocketPauseFrames=
Время которое ракета находится на пусковой установке перед запуском

V3RocketTiltFrames=
Количество фреймов которое необходимо ракете для наклона перед запуском

V3RocketPitchInitial=
Начальный угол ракеты перед наклоном. Значение колеблется от 0.00 (горизонтальная плоскость) до 1.00 (вертикальная плоскость)

V3RocketPitchFinal=
Конечный угол наклона ракеты. Опять же его значение колеблется от 0.00 до 1.00

V3RocketTurnRate=
Определяет маневренность ракеты когда она находится в воздухе

(YR) V3RocketRaiseRate=
Определяет насколько поднимается ракета во время процедуры запуска

V3RocketAcceleration=
Значение этого параметра добавляется к ускорению ракеты каждый фрейм ее запуска

V3RocketAttitude= 
Высота, достигнув которую, ракета начинает выравнивание

V3RocketDamage=
Урон наносимый ракетой в эпицентре взрыва

V3RocketEliteDamage=
Урон наносимый ракетой в эпицентре взрыва, когда пусковая установка получает звание Элиты

V3RocketBodyLenght=
Длина ракеты. Этот параметр используется при расчете траектории полета ракеты и лучше без особой на то нужды его не изменять

V3RocketLazyCurve=
Будет ли ракета двигаться по кривой?

V3RocketType=
Игровой объект, который представляет в игре ракету V3

•  Dreadnaught Rocket Control

DMislRocketPauseFrames=
Время которое ракета находится на пусковой установке перед запуском

DMislRocketTiltFrames=
Количество фреймов которое необходимо ракете для наклона перед запуском

DMislRocketPitchInitial=
Начальный угол ракеты перед наклоном. Значение колеблется от 0.00 (горизонтальная плоскость) до 1.00 (вертикальная плоскость)

DMislRocketPitchFinal=
Конечный угол наклона ракеты. Опять же его значение колеблется от 0.00 до 1.00

DMislRocketTurnRate=
Определяет маневренность ракеты когда она находится в воздухе

(YR) DMislRocketRaiseRate=
Определяет насколько поднимается ракета во время процедуры запуска

DMislRocketAcceleration=
Значение этого параметра добавляется к ускорению ракеты каждый фрейм ее запуска

DMislRocketAttitude= 
Высота, достигнув которую, ракета начинает выравнивание

DMislRocketDamage=
Урон наносимый ракетой в эпицентре взрыва

DMislRocketEliteDamage=
Урон наносимый ракетой в эпицентре взрыва, когда пусковая установка получает звание Элиты

DMislRocketBodyLenght=
Длина ракеты. Этот параметр используется при расчете траектории полета ракеты и лучше без особой на то нужды его не изменять

DMislRocketLazyCurve=
Будет ли ракета двигаться по кривой?

DMislRocketType=
Игровой объект, который представляет в игре ракету Дредноуда

•  Cruise Missile Control (Yuri's Revenge)

CMislRocketPauseFrames=
Время которое ракета находится на пусковой установке перед запуском

CMislRocketTiltFrames=
Количество фреймов которое необходимо ракете для наклона перед запуском

CMislRocketPitchInitial=
Начальный угол ракеты перед наклоном. Значение колеблется от 0.00 (горизонтальная плоскость) до 1.00 (вертикальная плоскость)

CMislRocketPitchFinal=
Конечный угол наклона ракеты. Опять же его значение колеблется от 0.00 до 1.00

CMislRocketTurnRate=
Определяет маневренность ракеты когда она находится в воздухе

(YR) CMislRocketRaiseRate=
Определяет насколько поднимается ракета во время процедуры запуска

CMislRocketAcceleration=
Значение этого параметра добавляется к ускорению ракеты каждый фрейм ее запуска

CMislRocketAttitude= 
Высота, достигнув которую, ракета начинает выравнивание

CMislRocketDamage=
Урон наносимый ракетой в эпицентре взрыва

CMislRocketEliteDamage=
Урон наносимый ракетой в эпицентре взрыва, когда пусковая установка получает звание Элиты

CMislRocketBodyLenght=
Длина ракеты. Этот параметр используется при расчете траектории полета ракеты и лучше без особой на то нужды его не изменять

CMislRocketLazyCurve=
Будет ли ракета двигаться по кривой?

CMislRocketType=
Игровой объект, который представляет в игре ракету Бумера

•  Paratroop Drop Control

ParadropRadius=
Указывает радиус территории на которой будет высажен десант

•  Misc

CrewEscape=
Шанс того, что из объекта имеющего параметр Crewed=yes при уничтожении выбежит пехотинец

CameraRange=
Расстояние в ячейках на которое открывается карта при использовании оружия имеющего параметр Camera=yes. Может быть полезен при создании самолета шпиона и т.п.

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

Pilot=
По идее этот параметр должен указывать юнита, который прыгает с парашютом из разрушенной воздушной техники, но мне так и не удалось заставить его нормально работать.

AlliedCrew=
Указывает тип пехотинца, который появляется при разрушении юнита Альянса

SovietCrew=
Указывает тип пехотинца, который появляется при разрушении юнита Советов

(YR) ThirdCrew=
Указывает тип пехотинца, который появляется при разрушении юнита Юрия

Technician=
Пехотинец, который появляется при разрушении гражданского здания

Engineer=
Как вам известно при разрушении строительной площадки из нее обязательно вылезет один инженер. Так вот этот параметр как раз и указывает какой юнит будет считаться этим инженером.

PParatrooper=
Ну во первых в название этого параметра вкралась ошибка. Пишется вообще-то Paratrooper. Во вторых этот параметр в игре не используется. А так по задумке создателей игры из сбитого самолета должен был выпрыгивать парашютист. Вот как раз этот параметр и указывал кто будет этим парашютистом.

•  Reinforcement/Chrono Stuff

ChronoDelay=
Время "разморозки" юнита после телепортирования

ChronoReinfDelay=
В общем тоже самое, что и предыдущий параметр, только используется в сингл кампании

ChronoDistanceFactor=
Наверняка вы уже заметили, что чем дальше телепортируется юнит, тем дольше он будет "размораживаться". Поигравшись с этим параметром вы можете увеличить или наоборот уменьшить время "разморозки"

ChronoTrigger=
А этот параметр определяет будут ли юниты вообще замораживаться после телепорта

ChronoMinimumDelay=
Минимальное время "заморозки" юнита после телепорта

•  Paradrop Special Rules

AmerParaDropInf=
Вид пехоты, которая будет прыгать с парашютом при вызове американского десанта. Может быть указано несколько различных типов пехотинцев через запятую

AmerParaDropNum=
Количество пехотинцев каждого вида прыгающих с прашютом при вызове американского десанта

AllyParaDropInf=
Вид пехоты, которая будет прыгать с парашютом при вызове десанта войсками Альянса. Может быть указано несколько различных типов пехотинцев через запятую

AllyParaDropNum=
Количество пехотинцев каждого вида прыгающих с прашютом при вызове десанта войсками Альянса

SovParaDropInf=
Вид пехоты, которая будет прыгать с парашютом при вызове десанта войсками Советов. Может быть указано несколько различных типов пехотинцев через запятую

SovParaDropNum=
Количество пехотинцев каждого вида прыгающих с прашютом при вызове десанта войсками Советов

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

(YR) Yuri ParaDropNum=
Количество пехотинцев каждого вида прыгающих с прашютом при вызове десанта войсками Юрия

•  Anim To Infantry Conversion (Yuri's Revenge)

(YR) AnimToInfantry=
Определяет тип пехоты в который превращаются люди под воздействием Генетической мутации

•  Secret Lab Section (Yuri's Revenge)

(YR) SecretInfantry= 
Список пехотинцев, один из которых случайным образом становится доступным игроку для строительства при захвате здания с атрибутом SecretLab=yes

(YR) SecretUnits=
Список техники, одна из которых случайным образом становится доступной игроку для строительства при захвате здания с атрибутом SecretLab=yes

(YR) SecretBuildings=
Список зданий, одно из которых случайным образом становится доступным игроку для строительства, при захвате здания с атрибутом SecretLab=yes

•  Spy Stuff

AlliedDisquise=
Вид пехоты под который будет маскироваться шпион Альянса после создания, пока его оружие MakeUpKit не будет использовано

SovietDisguise=
Вид пехоты под который будет маскироваться шпион Советов после создания, пока его оружие MakeUpKit не будет использовано

(YR) ThirdDisguise=
Вид пехоты под который будет маскироваться шпион Юрия после создания, пока его оружие MakeUpKit не будет использовано

SpyPowerBlackOut=
Время в секундах, на которое шпион отключает энергию при проникновении в электростанцию

SpyMoneyStealPercent=
Процент от вражеских денег, который получает игрок при проникновении шпиона в очистительный завод противника

AttackCursorOnDisguise=
Будет ли курсор автоматически меняться на атакущий при наведении на замаскированного шпиона

DefaultMirageDisguises=
Список объектов под которые может маскироваться танк "Мираж"

InfantryBlinkDisguiseTime=
Время в секундах на которое замаскированный юнит становится виден врагу

MaximumCheerRate=
Как часто юнитам разрешается вас приветствовать при нажатии на горячую клавишу

New AI Type Snippets

AISafeDistance=
Расстояние в клетках, которое AI считает безопасной территорией. Отсчитывается от Строительной площадки. При появлении врага на этой территории, активизируются скрипты защиты.

AIMinorSuperReadyPercent=
Шанс того, что после зарядки хроносферы или железного занавеса AI использует его на свою технику, а не пошлет ее через всю карту на базу противника

HarvesterTooFarDistance=
Расстояние от перерабатывающего завода на которое отъедет харвестер прежде чем начнет поиск следующего ближайшего союзного завода. Действует в случае если у игрока больше одного перерабатывающего завода.

ChronoHarvTooFarDistance=
Делает тоже самое, что и предыдущий параметр, но отвечает за Хроно Харвестеры

AlliedBaseDefenseCounts=
Число защитных сооружений, которое собирается строить AI играя за Альянс для каждого уровня сложности. Все это приближенные значения. Для определения точного количества защитных сооружений AI использует следующую формулу 
((Полная стоимость базы - 2000) / 1500 * GDIBaseDefenceCoefficient) + 3 * (Уровень сложности - 1)

SovietBaseDefenseCounts=
Делает то же, что и предыдущий параметр, но уже для Советов. И формула расчета будет несколько иная
((Полная стоимость базы - 2000) / 1500 * NODBaseDefenceCoefficient) + 3 * (Уровень сложности - 1)

(YR) ThirdBaseDefenseCounts=
Отвечает за количество защитных построек у Юрия. Формула расчет та же, что и у Советов

AIPickWallDefensePercent=
Шанс того что AI возводя защитные сооружения построит стены

AiRestrictReplaceTime=
Время, которое AI будет выжидать перед тем как восстанавливать разрушенные здания

ApproachTargetResetMultiplier=
Не знаю точно как он действует, но по видимому это связано с наведением на цель. AI указав юниту цель направляет его к ее местонахождению. Если юнит достиг места и цели в радиусе действия его оружия не оказалось, то AI снова начинает вычислять местоположение цели и соответственно корректировать маршрут юнита. По видимому данный параметр отвечает за частоту проверок нахождения цели в указанном месте.

CapmpaignDeltaEasy=
Количество денег которое добавляется к начальному значению на легком уровне сложности за каждую сторону, которой командует игрок. Как видно из названия используется в Сингле.

CapmpaignDeltaHard=
Количество денег которое добавляется к начальному значению на высоком уровне сложности за каждую сторону, которой командует игрок. Как видно из названия используется в Сингле.

GuardAreaTargetingDelay=
По видимому задержка перед началом защиты AI охраняемой территории

NormalAreaTargetingDelay=
Определяет задержку перед атакой ваших юнитов AI

AINavalYardAdjacency=
Максимальное расстояние в клетках от строительного завода, на котором AI может строить морскую верфь

DisableDisguiseDetectionPercent=
Шанс того что ближайший юнит AI обнаружит стреляющий танк Мираж. Этот праметр действует на каждого юнита поотдельности. То есть у двух юнитов шанс заметить Мираж в 2 раза больше.

AIAutoDeployFrameDelay=
Задержка a фреймах после которой AI начнет окапывать своих GI

MaximumBuildingPlacementFailures=
Сколько раз AI будет пытаться разместить здание в случае если терриория под строительство будет недоступна. После чего действие будет отменено.

(YR) TiberiumShortScan=
Минимальный радиус сканируемой харвестером территории для обнаружения новых залежей руды.

(YR) TiberiumLongScan=
Максимальный радиус сканируемой харвестером территории для обнаружения новых залежей руды.

(YR) SlaveMinerShortScan=
Радиус сканируемой харвестером Юрия территории для обнаружения новых залежей руды.

(YR) SlaveMinerSlaveScan=
Минимальный радиус сканируемой рабом Юрия территории для обнаружения новых залежей руды.

(YR) SlaveMinerScanCorrection=
Расстояние до руды, когда разложенный харвестер Юрия решает подойти к ней поближе

(YR) SlaveMinerKickDelay=
Время после которого раб Юрия, помаявшись от безделья, побежит искать руду.

(YR) AISuperDefenceProbability=
Шанс того, что AI будет использовать супероружие Force Shield.

(YR) AISuperDefenceFrames=
Время, которое будет ожидать AI готовности Force Shield, если он еще не зарядился

(YR) AISuperDefenseDistance=
Расстояние от центра базы на котором AI будет использовать Force Shield

(YR) AICaptureNormal=
Этот параметр определяет что будет делать AI с захваченным Юрием юнитом. 4 числа отвечают за шанс применения какого либо из действий
1 число - Ничего не происходит. 
2 число - Посылает юнита в "мясорубку" для продажи
3 число - Посылает юнита в Био Реактор
4- число - Отправляет юнита в атаку

Материал также доступен на моем канале: Яндекс Дзен и в группе ВК
Категория: Модификация Red Alert 2 | Добавил: :, (30.03.2012)
Просмотров: 2705 | Теги: rules.ini, red alert 2, Мод | Рейтинг: 0.0/0
Поделиться:
Всего комментариев: 0
avatar