Бэкап

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

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

Если юнита нет в UnitData, он не попадет в игру ни при каких условиях.

В UnitAbilities нельзя удалять "_" из K4, даже если поле должно быть пустым, иначе фатал.

В UnitBalance нельзя убирать основной атрибут K49, даже если это не герой. Глупый глупый парсер.

UnitUI X22 scale отвечает за размер круга и хп бара.

Если у Aspb AbilityData X25 не указан, абилки рандомно ломаются — то выдаются, то нет.

Если в unitweapons указать мусор в типе атаки, то атака есть, всё есть, но урона вообще нет в принципе

Абилки
AHta — reveal, не прерывает приказы и не использует каст-поинт. таргет граунд-спелл. Если цель вне ренжа, не срабатывает вообще, даже не пытается заставить юнита идти и кастовать.

Spiked Carapace позволяет регулировать мили физ урон, умножая его как угодно.
Defend — ренж/маг урон.

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

AIdd, AIde и прочие базовые способности артефактов работают на юните, даже если недоступна игроку или имеет невыполненные requires.

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

Берсерк с макс уровнем = 1 игнорирует любой сайленс.

Даже если у абилки указано 0 уровней, её хардкодная составляющая может работать без проблем. Пример — Aetl. При этом уровень всегда = 0, согласно игре, и обнаружить этот астрал невозможно.

AEsh мгновенно убивает юнита в ethereal, если base damage = -1.

Разное
В Misc файле работают следующие скрытые параметры:
DefenseArmor[=1]

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


Подключаемые при инициализации юнитов и абилок файлы и поля из них:

"Units\\CampaignUnitStrings.txt",
  "Units\\HumanUnitStrings.txt",
  "Units\\NeutralUnitStrings.txt",
  "Units\\NightElfUnitStrings.txt",
  "Units\\OrcUnitStrings.txt",
  "Units\\UndeadUnitStrings.txt",
  "Units\\UnitGlobalStrings.txt",
  "Units\\CampaignUnitFunc.txt",
  "Units\\HumanUnitFunc.txt",
  "Units\\NeutralUnitFunc.txt",
  "Units\\NightElfUnitFunc.txt",
  "Units\\OrcUnitFunc.txt",
  "Units\\UndeadUnitFunc.txt",
  "Units\\CampaignAbilityStrings.txt",
  "Units\\CommonAbilityStrings.txt",
  "Units\\HumanAbilityStrings.txt",
  "Units\\NeutralAbilityStrings.txt",
  "Units\\NightElfAbilityStrings.txt",
  "Units\\OrcAbilityStrings.txt",
  "Units\\UndeadAbilityStrings.txt",
  "Units\\ItemAbilityStrings.txt",
  "Units\\CampaignAbilityFunc.txt",
  "Units\\CommonAbilityFunc.txt",
  "Units\\HumanAbilityFunc.txt",
  "Units\\NeutralAbilityFunc.txt",
  "Units\\NightElfAbilityFunc.txt",
  "Units\\OrcAbilityFunc.txt",
  "Units\\UndeadAbilityFunc.txt",
  "Units\\ItemAbilityFunc.txt",
  "Units\\CampaignUpgradeStrings.txt",
  "Units\\HumanUpgradeStrings.txt",
  "Units\\NightElfUpgradeStrings.txt",
  "Units\\OrcUpgradeStrings.txt",
  "Units\\UndeadUpgradeStrings.txt",
  "Units\\NeutralUpgradeStrings.txt",
  "Units\\CampaignUpgradeFunc.txt",
  "Units\\HumanUpgradeFunc.txt",
  "Units\\NightElfUpgradeFunc.txt",
  "Units\\OrcUpgradeFunc.txt",
  "Units\\UndeadUpgradeFunc.txt",
  "Units\\NeutralUpgradeFunc.txt",
  "Units\\CommandStrings.txt",
  "Units\\ItemStrings.txt",
  "Units\\Telemetry.txt",
  "Units\\CommandFunc.txt",
  "Units\\ItemFunc.txt",
  "Animnames",
  "AnimnamesCount",
  "Animprops",
  "Attachmentanimprops",
  "Attachmentlinkprops",
  "Awakentip",
  "Areaeffectart",
  "Boneprops",
  "Art",
  "Buffart",
  "Bufftip",
  "Buffubertip",
  "Bulletart",
  "Builds",
  "BuildsCount",
  "Casterart",
  "Casterupgradeart",
  "Casterupgradename",
  "Casterupgradetip",
  "Casterattach",
  "Casterattachcount",
  "Dependencyor",
  "Effectart",
  "Effectattach",
  "Effectattachcount",
  "Effectsound",
  "Effectsoundlooped",
  "Globalmessage",
  "Globalsound",
  "LightningEffect",
  "Makeitems",
  "MakeitemsCount",
  "Missilearc",
  "Missileart",
  "Missilehoming",
  "Missilespeed",
  "Name",
  "Propernames",
  "Description",
  "Requires",
  "Requiresamount",
  "RequiresCount",
  "Requireshad",
  "Requireshadamount",
  "Requireshadcount",
  "Researchart",
  "Researches",
  "ResearchesCount",
  "Researchbuttonpos",
  "Researchhotkey",
  "Researchtip",
  "ResearchUbertip",
  "Revivetip",
  "Revive",
  "Reviveat",
  "Reviveatcount",
  "Scriptname",
  "Sellunits",
  "SellunitsCount",
  "Sellitems",
  "SellitemsCount",
  "Specialart",
  "Specialattach",
  "Specialattachcount",
  "Spelldetail",
  "Targetart",
  "Targetattach",
  "Targetattachcount",
  "Trains",
  "TrainsCount",
  "UnArt",
  "Unbuttonpos",
  "UnHotkey",
  "UnTip",
  "UnUberTip",
  "Upgrade",
  "UpgradesCount",
  "ScoreScreenIcon",
  "MovementSoundLabel",
  "BuildingSoundLabel",
  "LoopingSoundFadeIn",
  "LoopingSoundFadeOut",
  "RandomSoundLabel",
  "XPFactor"

Scriptnames применимо только к способностям и, судя по исходнику, подключает какие-то файлы, но непонятно, какие и зачем и как.

0 комментариев

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