Тут интересовались созданием юнитов разного размера, и мне вопросы задавали, поэтому отпишусь здесь, хоть и с опозданием.
После
(
"undead", 0,
"undead_body", "undead_calf_l", "undead_handL",
"undead_head", undead_face_keys,
[],
[],
[],
[],
[("undeadface_a",0xffffffff,[]),
("undeadface_b",0xffcaffc0,[]),
], #undead_face_textures
[], #voice sounds
"skel_human", 1.0,
),
Добавляем свой мужской или женский скелет, например
(
"dorbeor", 0,
"man_body", "man_calf_l", "m_handL",
"male_head", man_face_keys,
["man_hair_s","man_hair_m","man_hair_n","man_hair_o", "man_hair_y10", "man_hair_y12","man_hair_p","man_hair_r","man_hair_q","man_hair_v","man_hair_t","man_hair_y6","man_hair_y3","man_hair_y7","man_hair_y9","man_hair_y11","man_hair_u","man_hair_y","man_hair_y2","man_hair_y4"], #man_hair_meshes ,"man_hair_y5","man_hair_y8",
["beard_e","beard_d","beard_k","beard_l","beard_i","beard_j","beard_z","beard_m","beard_n","beard_y","beard_p","beard_o", "beard_v", "beard_f", "beard_b", "beard_c","beard_t","beard_u","beard_r","beard_s","beard_a","beard_h","beard_g",], #beard meshes ,"beard_q"
["hair_blonde", "hair_red", "hair_brunette", "hair_black", "hair_white"], #hair textures
["beard_blonde","beard_red","beard_brunette","beard_black","beard_white"], #beard_materials
[("manface_young_2",0xffcbe0e0,["hair_blonde"],[0xffffffff, 0xffb04717, 0xff502a19]),
("manface_midage",0xffdfefe1,["hair_blonde"],[0xffffffff, 0xffb04717, 0xff632e18, 0xff502a19, 0xff19100c]),
("manface_young",0xffd0e0e0,["hair_blonde"],[0xff83301a, 0xff502a19, 0xff19100c, 0xff0c0d19]),
# ("manface_old",0xffd0d0d0,["hair_white","hair_brunette","hair_red","hair_blonde"],[0xffffcded, 0xffbbcded, 0xff99eebb]),
("manface_young_3",0xffdceded,["hair_blonde"],[0xff2f180e, 0xff171313, 0xff007080c]),
("manface_7",0xffc0c8c8,["hair_blonde"],[0xff171313, 0xff007080c]),
("manface_midage_2",0xfde4c8d8,["hair_blonde"],[0xff502a19, 0xff19100c, 0xff0c0d19]),
("manface_rugged",0xffb0aab5,["hair_blonde"],[0xff171313, 0xff007080c]),
# ("manface_young_4",0xffe0e8e8,["hair_blonde"],[0xff2f180e, 0xff171313, 0xff007080c]),
("manface_african",0xff807c8a,["hair_blonde"],[0xff120808, 0xff007080c]),
# ("manface_old_2",0xffd5d5c5,["hair_white"],[0xffffcded, 0xffbbcded, 0xff99eebb]),
], #man_face_textures,
[(voice_die,"snd_man_die"),(voice_hit,"snd_man_hit"),(voice_grunt,"snd_man_grunt"),(voice_grunt_long,"snd_man_grunt_long"),(voice_yell,"snd_man_yell"),(voice_stun,"snd_man_stun"),(voice_victory,"snd_man_victory")], #voice sounds
"skel_human", 0.95,
psys_game_blood,psys_game_blood_2,
[[1.7, comp_greater_than, (1.0,face_width), (1.0,temple_width)], #constraints: ex: 1.7 > (face_width + temple_width)
[0.3, comp_less_than, (1.0,face_width), (1.0,temple_width)],
[1.7, comp_greater_than, (1.0,face_width), (1.0,face_depth)],
[0.3, comp_less_than, (1.0,eyebrow_height), (1.0,eyebrow_position)],
[1.7, comp_greater_than, (1.0,eyebrow_height), (1.0,eyebrow_position)],
[-0.7, comp_less_than, (1.0,nose_size), (-1.0,nose_shape)],
[0.7, comp_greater_than, (1.0,nose_size), (-1.0,nose_shape)],
[2.7, comp_greater_than, (1.0,chin_size), (1.0,mouth_nose_distance), (1.0,nose_height), (-1.0,face_width)],
]
),
Где :
"skel_human", 0.95, - размер юнита с шагом в 0.01;
dorbeor название Вашего скина, которое будет фигурировать в описании юнита, в файле module_troops.py
Теперь вносим дополнительный флаг и разделитель tf_dorbeor| в запись юнитов, рост которых хотим сделать как у dorbeor(0.95)
Изменяем например "Steppe Bandit"
["steppe_bandit","Steppe Bandit","Steppe Bandits", tf_guarantee_boots|tf_guarantee_armor|tf_guarantee_horse|tf_guarantee_ranged| tf_mounted,0,0,fac_outlaws,
[itm_arrows,itm_sword_khergit_1,itm_winged_mace,itm_spear, itm_light_lance, itm_nomad_bow,itm_nomad_bow,itm_short_bow,itm_jarid,itm_leather_steppe_cap_a, itm_leather_steppe_cap_b,itm_nomad_cap,itm_nomad_cap_b,itm_khergit_armor, itm_steppe_armor,itm_leather_vest,itm_hide_boots,itm_nomad_boots, itm_leather_covered_round_shield,itm_leather_covered_round_shield, itm_saddle_horse,itm_steppe_horse,itm_steppe_horse],
def_attrib|level(12),wp(100), knows_riding_4|knows_horse_archery_3|knows_power_draw_3, khergit_face_young_1, khergit_face_old_2],
Получаем
["steppe_bandit","Steppe Bandit","Steppe Bandits", tf_dorbeor|tf_guarantee_boots|tf_guarantee_armor|tf_guarantee_horse|tf_guarantee_ranged| tf_mounted,0,0,fac_outlaws,
[itm_arrows,itm_sword_khergit_1,itm_winged_mace,itm_spear, itm_light_lance, itm_nomad_bow,itm_nomad_bow,itm_short_bow,itm_jarid,itm_leather_steppe_cap_a, itm_leather_steppe_cap_b,itm_nomad_cap,itm_nomad_cap_b,itm_khergit_armor, itm_steppe_armor,itm_leather_vest,itm_hide_boots,itm_nomad_boots, itm_leather_covered_round_shield,itm_leather_covered_round_shield, itm_saddle_horse,itm_steppe_horse,itm_steppe_horse],
def_attrib|level(12),wp(100), knows_riding_4|knows_horse_archery_3|knows_power_draw_3, khergit_face_young_1, khergit_face_old_2],
Или для героев
["npc1","Borcha","Borcha",tf_dorbeor|tf_hero|tf_unmoveable_in_party_window, 0, reserved, fac_commoners,[itm_khergit_armor,itm_nomad_boots,itm_knife],
str_8|agi_7|int_12|cha_7|level(3),wp(60),knows_tracker_npc| knows_ironflesh_1|knows_power_strike_1|knows_pathfinding_3|knows_athletics_2|knows_tracking_1|knows_riding_2, #skills 2/3 player at that level
0x00000004bf086143259d061a9046e23500000000001db52c0000000000000000],
Имейте в виду, что при изменении размера юнита, все вещи из его инвентаря, кроме лошади, также автоматически изменяются пропорционально его размеру.
Для юнитов с нестандартным скелетом посложнее, точно пока сказать не могу, у самого есть некоторые вопросы.