Привет Все,
Поскольку мода сообщество, похоже, движется полным ходом вперед, и вы уже получили некоторые основные Mods запущен я думал, я объясню, как империя Моддинг система предназначена для работы. Это позволит вам работать с ним, а не против него, и мы надеемся избежать разорвать вещей освобождены CA в будущем.
Прежде всего, ETW данных предназначена для пребывания упакованы. Пакет обновления файловой системы и виртуальной файловой системы, что создает внутри игры имеют решающее значение для исправления и Моддинг систем, поэтому, пожалуйста, не спрашивайте пользователей распаковать свои данные, чтобы запустить с вашим Mods.
Так как вам мод игра? Что ж, это работает как это. Империя загружает файлы типа. Пакет данных в каталоге в определенном порядке, установленном в упаковке типа. Существуют три основных типа - релиз патча и мода. Пятый байт в пакет файл заголовка численные ID, который рассказывает, какие игры батарея, загрузки пакетов 0, выпуск 1 упаковка, пакеты исправлений 2, MOD упаковки 3. Игра загружает релиз пакеты, а затем пакеты исправлений, а затем мода пакеты.
При запуске игры, файл записи все эти пакеты установлены в виртуальной файловой системе, и если игра считает вступление в позднем Pack, которое одно и то же имя и местоположение, как уже существующую запись, новая запись заменяет старую . Это означает, что мод пакет может заменить любой файл в VFS и добавить новые, а, не спрашивая лицо скачали мод для перезаписи файлов на диске, и уничтожить данные.
Для того, чтобы рассказать игры использовать модем, вам нужно кормить игру команды сценария. В настоящее время самый простой способ сделать это состоит в том, чтобы создать пользователя скрипт. Способ сделать это состоит в том, чтобы найти preferences.empire_script.txt ваш файл (это будет в Application Data на машине Windows XP), а также создать текстовый файл рядом с ним призвал user.empire_script.txt. Внутри этого файла, для каждого мода создать линию, которая гласит, что "мода my_pack.pack;" (без кавычек, разумеется). Пользователь скрипт обрабатывается на нагрузку, и будет говорить игру загрузить моды в таком порядке. Пользователь сценарий может быть использован и для многих других вещах, но мы оставить эти на другой день.
Поэтому в основном, мода на то, чтобы быть одной "Mod Pack" файл, и установить мод просто размещению что пакет внутри игры данных каталога и добавление мод команды, и удалить его удалить эти вещи.
Теперь сведения о том, как работать с базами данных. Вы заметили, что в каждой таблице базы данных (БД внутри папки) является папка и файл. Когда игра instantiates данных, которая произойдет после того, виртуальная файловая система построена она сканирует каждый каталог и разбирает все-в бинарные файлы находит. Это означает, что мод пакет можно добавить новые двоичные данные фрагмент внутри дБ / unit_stats_land_table папку, которая добавляет несколько новых подразделений, и игра будет добавить их в свою базу данных земельных единиц. Фрагменты обрабатываются в одном и том же порядке, как пачку файлов, а также каких-либо новых данных записей с тем же именем, что старые записи будут вызывать новые взамен старых. Это означает, что вы можете заменить любой записи в базе данных, не затрагивая остальные данные или изменение CA поставляемыми файлами на диске.
Например, скажем CA пакеты содержат единицы запись для 'french_dragoons', который является одним из вступления сотни внутри поставлен unit_stats_land_table фрагмент данных, который используется для создания подразделения, которое было таблице на старте. Теперь говорю вам создать мод Pack, который создает новые данные фрагмент, скажем призвал my_mods_unit_stats_land внутри дБ / unit_stats_land_table, в котором содержится только одна запись данных для "french_dragoons". Что произойдет, это ваш новый отчет будет в конечном итоге заменить текущую запись для этой группы в данной игре, а все остальное останется, как было первоначально.
Итак ... надеюсь вы теперь имеют хорошее представление о том, как Моддинг система architected, и как нужно строить инструменты для работы с ней. Там же еще один интересный следствием того, как работает система, которая состоит в том, что он открывает двери для Mods построен на вершине моды другие ...
Еще одно дело иметь в виду, заключается в том, что мы еще не закончили тестирование мода полностью поддерживаем - это часть того, что происходит здесь, прежде чем мода Dev пакет получает освобождены. Мы знаем, что в настоящее время верхняя граница около 6000 файлов в единый пакет, хотя и очень возможно создание моды на протяжении нескольких упаковок. Однако следует знать, что существуют некоторые накладные расходы, связанные с монтажными пакет, и данные каталога заполнены десятки из них сделают игру время запуска значительно дольше.
Вторая вещь, я хотел бы упомянуть, - поскольку вы будете экспериментировать с этим, - что игра проверяет целостность данных окончательный после загрузки Mods. Так что если вы добавляете файл пакет, который включает в себя новое подразделение отчете, который не включает в себя дисплей модели или неверен в какой-то другой способ, то игра будет выгрузить что мода Pack (хотя она продолжает отдыха). Это не является основным механизмом проверки ошибок в данных ETW трубопровода, что делается в других странах, но, как modders вы должны знать о ней. К сожалению, в настоящее время не является какой-либо регистрации вывода о причинах, почему мода не удалось загрузить, мы смотрим в добавив, что, когда Моддинг Dev комплект освобождены.
Вооружившись этой информации вы по крайней мере, иметь возможность работать с системой, как она, не дожидаясь мод Dev пакет. Я должен сказать, она отлично видеть вас, ребята внесении вперед так быстро. Пакет и базы данных инспекции инструмент был великим начала, я думаю, и действительно служит хорошим предзнаменованием для будущего империи Моддинг арене.
Удачи!