на главную страницу


На internetwars.ru

ЭНЦИКЛОПЕДИЯ МОДЕЛИРОВАНИЯ
 

 

СОДЕРЖАНИЕ

ПЕРЕНОС ЮНИТОВ ИЗ RTW В MTW-2

Источник www.twcenter.net
(english)


ИНСТРУМЕНТАРИЙ

Unpacker

Strings bin
converter

Grumpy Old
Man's

 


НАШ ФОРУМ

Здесь можно задать вопрос по этому тутору. м
Активно обсуждаем военные игры, историю, МОДы, и новинки
игрового мира.

Модинг серии TW для многих людей стал настолько обыденным занятием, что некоторые вещи, в ручную, становится делать просто лень. Самое трудоемкое и время сжигающее занятие- это создание модели юнита. Сейчас скопилась такая база моделей, что просто сложно кого-то и чем-то удивить, а времени ой как жалко. А если еще учесть, что самое новомодное направление сейчас это скриптин- тобишь создание  модов с умным АИ, и не линейным- линейным сценарием, то создание новых моделей сдвигается на третий план. А бывает и иначе - уж очень хочется облюбованные модели с движка RTW  перенести на более мощные рельсы MTW-2. Если человек потратил дни на создание римской модельки, ему проще подправить конвертированную на MTW-2. Чем заново создавать, то, что однажды было уже сделано на отлично! Тутор, с которым вы познакомитесь, поможет разобраться не только в переносе юнитов с движка RTW в M2TW, а и освежит ваши знания, по базовым характеристикам и параметрам моделей. Поможет понять, как верно прописать новую модель в игру!

 

Шаг 1.
Откройте файл .cas из RTW, используя плагина GrumpyOldMan's CAS_to_M2TW и переведите ее в специальный файл формата TXT.

Шаг 2.
Откройте Milkshape и импортируйте текстовый файл в Milkshape

 

Шаг 3.
Зайдите в Menu/Vertex/Fix Underweighted Bones (пофиксить «недовешенные» кости):

Далее Menu/Edit/Select None to unselect (выбрать «Не с чего снимать выделение»).

Шаг 4.
Нам нужно организовать группы моделей солдат в формат, который понимает M2TW. Идите Tabs/Groups:

 

Шаг 4.1. Доспехи.
Каждая модель MTW2 разделена на группы. Каждая группа имеет следующий вид записи:

Legs
Greaves_01
0

Первая строка обозначает часть тела (башка, грабли, клешни ) В нашем случаи-нога(Legs).
Вторая часть обозначает название этой группы в Milkshape; игровой движок собирает все объекты (Greaves_01, Greaves_02.. etc), означающие одну и ту же часть тела и комбинирует их в игре.
Третья строка обозначает, опциональный ли это объект (некоторые модели имеют вещи вроде опционального мешочка с порохом, который есть не у каждого солдата).
Выбираем все группы, относящиеся к ногам, делаем их выделенными красным в Milkshape; жмем Regroup, затем переименовываем в Greaves_01, и, наконец, в Comments размещаем 3 указанные выше строчки. Ctrl+Shift+A для снятия выделения.
Затем выделяем все группы, относящиеся к телу, вышеуказанным способом обзываем их "Principus_Body_01", и пишем 3 строчки в Comments: "Body" как часть тела, "Principus_Body_01" как имя группы, и 0, чтобы не делать это опциональным. Ctrl+Shift+A для сброса выделения.
Наконец проделываем все то же самое с шлемом – "Head", "Monteforino_Helmet_01", и 0.

Важно насчет частей тела. Эти группы могут быть организованы почти любым способом, каким Вы хотите, так что разные юниты, вроде пращников, могут быть без шлема, штанов (!!!) или щита.
Минимум, который требуется движку – это 3 части тела. Туловище, Оружие (primaryactive0), и щит (shield0). Если у юнита нет щита, сойдет и только туловище с оружием (о, Аллах, нафига он тогда выше писал про минимум?). Все остальное опционально.
Откройте некоторые модели из оригинального M2TW для понимания, какие виды частей тела доступны. Например, некоторые солдаты имеют группы "Arms", "Hands", "Teeth" (руки, кисти рук и зубы), что означает наличие у таких юнитов разных рук, кистей рук и движущихся ртов во время разговоров в бою.

 

Шаг 4.2. Оружие.

Первое оружие нужно отметить в Comments как "primaryactive0", второе - как "secondaryactive0", щит - "shield0". Таким образом, Ваша запись Comments будет выглядеть так:

primaryactive0
gladius_01
0

В этом туторе пилум сделан как "primaryactive0". Затем мечи сгруппированы с ножнами, чтобы всегда показывались вместе, это все зовется группой "gladius_01" и обозначено как "secondaryactive0". Щит назван "scutum_01" и обозначен как категория shield0

:

Если у солдата только один вид оружия, то "secondaryactive0" можно пропустить. То же самое относится и к щиту.

Шаг 5.

Окончательные данные по модели. Зайдите в Tabs/Model, и поставьте следующие важные значения в Comment:

Это «ограничивающая сфера» бойца, определяющая, как далеко он находится от врага.
ВАЖНО: используйте те значения, которые указаны в М2TW для этого класса войск (тяжелая пехота, копейщик, лучник, и т.д.).
Вот как это выглядит для разных родов войск:

 

Dismounted Feudal knights (мечники)
0.00506956
0.305949
0.197468
1.33967
/


Order Spearmen (копейщики)
0.473152
0.433303
0.110927
1.70019
/


Pikemen (пикинеры)
0.781002
0.453829
1.75084
2.59527
/


Javelinmen (мечники с метательным оружием)
0.099021
0.0356579
0.26782
1.18666
/


Prussian archers (лучники)
0.0888542
0.276755
0.137675
1.292
/


Teutonic knights (кавалерия с мечами и копьями)
-0.012837
0.539137
1.24987
2.04588
/


Lithuanian cavalry militia (кавалерия с мечами и дротиками)
0.127913
0.0254918
0.281477
1.15366
/


French mounted archers (конные лучники с мечами)
0.0934042
0.267797
0.146907
1.2842
/

Все это тоже нужно прописать в Tabs/Model/Comment для соответствующей модели, чтобы на поле боя солдаты выполняли правильную роль.

 

Шаг 6. Материалы.

Пришло время перенести текстуры. Зайдите в Tabs/Materials, выберите Figure, и жмите первый пункт <none> для присоединения текстуры (Milkshape не распознает .dds так что Вам придется все время указывать .tga версии Ваших текстур):

Теперь жмем Attachments и указываем файл текстуры. (можно использовать тот же, что указали в меню Figure). Теперь Вам надо сообщить Milkshape, какие из Ваших групп будут использовать текстуру Figure texture, а какие – текстуру Attachments. В Tabs/Groups, двойной клик и выделить все группы моделей, относящиеся к фигуре солдата: Principus_Body_01, Monteforino_Helmet_01, и Greaves_01. Потом в Tabs/Materials, убедитесь, что выбрана Figure и нажмите Assign:

Теперь выбранные Вами группы будут иметь правильные текстуры, но оружие будет оставаться серым. Дабы исправить это, зайдите в Menu/Edit/Выберите None (или нажмите Ctrl+Shift+A) для снятия отовсюду выделения, и повторите описанный выше шаг для групп, связанных с оружием: gladius_01, scutum_01, pilum_01, используя текстуру Attachments. Теперь все должно быть в порядке и с оружием.

Шаг 7.

Модель сделана, и пришло время перевести ее обратно в формат MTW2 .mesh. Сохраняем наш файл, сделанный в Milkshape, как "Romani_Principes_lod0.m3sd". Далее открываем конвертер GrumpyOldMan's converter и переводим его .mesh:

 

Шаг 8

Теперь нужно поместить файлы модели в нужную папку, поправить текстовики, и все.

 

Шаг 8.1.

Помещаем .mesh в /data/unit_models/_units/roman/ folder, и .texture в /data/unit_models/_units/roman/textures/:

 

Шаг 8.2.

И, далее, прописываем в /data/unit_models/battle_models.modeldb:

16 Romani_Principes
1 4
51 unit_models/_Units/Roman/Romani_Principes_lod0.mesh 121
51 unit_models/_Units/Roman/Romani_Principes_lod0.mesh 900
51 unit_models/_Units/Roman/Romani_Principes_lod0.mesh 2500
51 unit_models/_Units/Roman/Romani_Principes_lod0.mesh 6400
1
6 romani
58 unit_models/_Units/Roman/textures/Romani_Principes.texture
55 unit_models/_Units/Greek/textures/hoplites_norm.texture
56 unit_sprites/merc_Dismounted_Frankish_Knights_sprite.spr
1
6 romani
58 unit_models/_Units/Roman/textures/Romani_Principes.texture
55 unit_models/_Units/Greek/textures/hoplites_norm.texture 0
1
4 None
17 MTW2_Fast_Javelin
19 MTW2_Fast_Swordsman 2
20 MTW2_Javelin_primary
14 fs_test_shield 2
18 MTW2_Sword_Primary
14 fs_test_shield
16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002

Напомню, что первая цифра в строке всегда обозначает число букв после нее.
Я использовал Romani_Principes.texture и для юнита и для аттачментов, и hoplite_norm.texture для всяких металлических бликов, и т.д.
Также, поскольку спрайтов мы тоже не понаделали, то использовался ванильный спрайт Feudal Knight sprite.

17 MTW2_Fast_Javelin
19 MTW2_Fast_Swordsman 2
20 MTW2_Javelin_primary
14 fs_test_shield 2
18 MTW2_Sword_Primary
14 fs_test_shield

Первые две строки относятся к оружию. Юнит сначала будет использовать скелетон MTW2_Fast_Javelin, а потом переключится на MTW2_Fast_Swordsman.
Следующие 4 строки означают, что когда юнит будет использовать метательное оружие, у него будет щит, как и в случае, когда у него будет оружие ближнего боя.

16 -0.090000004 0 0 -0.34999999 0.80000001 0.60000002

Эта строка определяет местоположение факела в ночных битвах. Значение стандартно для всех юнитов.

 

Шаг 8.3.

Вот запись юнита в файле /data/export_descr_unit.txt:

type Principes Romani
dictionary Principes_Romani ; Principes Romani
category infantry
class heavy
voice_type Heavy
banner faction main_infantry
banner holy crusade
soldier Romani_Principes, 48, 0, 1.2
attributes sea_faring, hide_forest, hardy, can_withdraw
formation 1.2, 1.2, 2.4, 2.4, 3, square
stat_health 1, 0
stat_pri 6, 1, javelin, 55, 8, thrown, missile_mechanical, piercing, spear, 25, 1
stat_pri_attr ap, thrown
stat_sec 13, 3, no, 0, 0, melee, melee_blade, piercing, sword, 25, 1
stat_sec_attr no
stat_pri_armour 7, 8, 6, metal
stat_sec_armour 0, 0, flesh
stat_heat 5
stat_ground 1, -2, 3, 2
stat_mental 9, normal, trained
stat_charge_dist 30
stat_fire_delay 0
stat_food 60, 300
stat_cost 1, 570, 225, 90, 70, 570, 4, 140
armour_ug_levels 3, 4
armour_ug_models Romani_Principes, Romani_Principes
ownership romani
era 0 romani
era 1 romani
;unit_info 13, 0, 21

 

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

ВСЕ

 

© Автор тутора - SigniferOne. Перевод с английского WOO DOO.
©Запрещается любая перепечатка и копирование без согласия  Internetwars.ru .