Ingvarr 25 April 2020, 23:19
Ну для начала скажу, что юниты можно делать только из предметов, которые есть в игре. Инструментария для подргуза в игру кастомных моделек и текстурок, как я понял, пока нет
Нам понадобится:
- Notepad++ (далее просто ноутпад) для редактирования xml файлов.
- любой мод на войска, дабы не портить оригинальные файлы игры. Могу посоветовать NobleTroops.
Адреса хранения файлов:
1) Mount & Blade II Bannerlord\Modules\SandBoxCore\ModuleData\spnpccharacters
оригинальный файл с войсками
2) Mount & Blade II Bannerlord\Modules\NobleTroops\ModuleData\spnpccharacters
файл с войсками из NobleTroops
3) Mount & Blade II Bannerlord\Modules\SandBoxCore\ModuleData\spnitems
файл с вещами из оригинальной игры
4) Mount & Blade II Bannerlord\Modules\RussianByCommando.com.ua\ModuleData\Languages\
SandBoxCore\std_spnpccharacters_xml
файл с русифицированными названиями, может понадобится для русификации юнитов, если вдруг захотите перевести зарубежные моды (подробнее по русификации писал выше в этой теме)
Если все же решили редактировать оригинальный файл, сделайте его бекап. Далее открываем его ноутпадом. И ищем стандартные юниты, т.к. с самого начала идут не они. (ctrl + f, вбиваем Troops)
Первое, что мы видим - Азерайский рекрут, на его примере и разберем параметры:
<NPCCharacter id="aserai_recruit" id юнита, не путайте с названием и цифровым кодом
default_group="Infantry" базовая группа, в нашем случае пехота, есть еще Cavalry, HorseArchers итд, при желании найдете
level="6" уровень, от него зависит тир юнита, точных значений я не знаю, но 6 уровень - 1 тир, 31 уровень - 6 тир
civilianTemplate="NPCCharacter.aserai_troop_civilian_template_t1" как я понял, шаблон тела юнита, сам лично не трогал
name="{=H5HJUejD}Aserai Recruit" название юнита в игре и цифровой код, для новых юнитов надо делать НОВЫЙ цифровой код
occupation="Soldier" с этим параметром и ниже я пока не разбирался
is_basic_troop="true"
culture="Culture.aserai"> культурная принадлежность
<face>
<face_key_template value="NPCCharacter.villager_aserai" /> шаблон лица юнита
</face>
<skills> навыки юнита
<skill id="Athletics"
value="20" />
<skill id="Riding"
value="5" />
<skill id="OneHanded"
value="20" />
<skill id="TwoHanded"
value="10" />
<skill id="Polearm"
value="20" />
<skill id="Bow"
value="10" />
<skill id="Crossbow"
value="0" />
<skill id="Throwing"
value="5" />
</skills>
<equipmentSet> набор экипировки #1 (на превьюшке в энциклопедии и в окне отряда будет именно он)
<equipment slot="Item0"
id="Item.eastern_spear_1_t2" />
<equipment slot="Head"
id="Item.aserai_civil_e_hscarf" />
<equipment slot="Body"
id="Item.aserai_civil_e" />
<equipment slot="Leg"
id="Item.eastern_leather_boots" />
</equipmentSet>
<equipmentSet> набор экипировки #2
<equipment slot="Item0"
id="Item.eastern_spear_1_t2" />
<equipment slot="Head"
id="Item.aserai_civil_c_head" />
<equipment slot="Body"
id="Item.aserai_civil_c" />
<equipment slot="Leg"
id="Item.eastern_leather_boots" />
</equipmentSet>
<equipmentSet> набор экипировки #3
<equipment slot="Item0"
id="Item.eastern_spear_1_t2" />
<equipment slot="Head"
id="Item.aserai_civil_e_hscarf" />
<equipment slot="Body"
id="Item.aserai_civil_e" />
<equipment slot="Leg"
id="Item.eastern_leather_boots" />
<equipment slot="Gloves"
id="Item.buttoned_leather_bracers" />
</equipmentSet>
<upgrade_targets> То, во что прокачивается юнит. По личным наблюдениям заметил, что если прокачка идет в 3 и более юнита, некорректно отображается менюшка в энциклопедии и возможно будет некорректной сама прокачка. Потому больше 2 юнитов я не ставил
<upgrade_target id="NPCCharacter.aserai_tribesman" />
<upgrade_target id="NPCCharacter.aserai_mameluke_soldier" />
</upgrade_targets>
</NPCCharacter>
Код выше - полноценный юнит
Cоответственно для редактирования имеющихся юнитов, играемся с этими параметрами, для создания новых ctrl c + ctrl v код и редактируем уже его.
Внимательно следите за правильностью вводимых айди, наличием открывающих/закрывающих параметров. Делайте 1 юнит, заходите в игру и проверяйте, иначе запаритесь потом ошибки в коде искать
Ниже примеры того, что я сам наварганил