Men of War: Assault Squad 2

Men of War: Assault Squad 2

45 ratings
Система повреждений и характеристики техники.
By Obiriron
В этом руководстве я вам расскажу как с помощью блокнота и википедии сделать самый исторически реалистичны мод. (на примере PZ IV G)
   
Award
Favorite
Favorited
Unfavorite
1. Характеристики техники.
Файл с характеристиками пазика можно найти здесь:
\resource\entity\-vehicle\tank_medium\pz4g файлов там немного так дофига, нам нужен только pz4g.def открываем его и находим самое главное:

("armor_medium" turret(50 30 30 10) body(50 30 20 22)) - бронирование башни/корпуса лоб/борта/корма/верх соответственно
("armor_engine" t(30 30 20 22)) - бронирование двигателя (не складывается с бронёй корпуса)
("armor_mantlet" t(50)) - броня маски орудия (не складывается с бронёй башни)

дальше идут менее интересные характеристики:

{mass 23500}
{Chassis
("tank_trace" fx("tracks_mid") step(0.52) len(0.7))
{Locomotion ("locomotion")
{MaxSpeed 28}
{maxSpeedAtMaxTurn 12}
{StartTime 14}
{TurnTime 8}
{TurnStart 1.7}
{BrakeTime 1}
{StopTime 2}
{TurnRadius 9}
{TurnStop 0.9}
{Gears 0.2 0.5 1}
{RearGears 0.38}
}
{FuelBag
{volume 470 }
{rate 120 } - расход топлива
{remain 470 }
{fuel "fuel"}
}
{speed
{Normal 10}
{Slow 16}
}
}

{Extension "pz4g.mdl"}

{bone "turret"
{speed 0.008} - скорость вращения башни
}
{bone "gun_rot"
{speed 0.007} - скорость наводки орудия
Тут в принципе почти всё понятно и без пояснений
2. Характеристики орудия.
Все орудия складируются здесь:
\resource\set\stuff\gun
нам нужна 75mm_kwk40 открываем одноимённы файл и смотрим что там:

{from "pattern gun" ; "pz4g"
{filling "bullet75"}
{fireSound "gun/50to76_cal/75mm_kwk40"}
{reloadSound "gun_r03"}
{rechargeTime 6} - скорость перезарядки
("range_short") - "определятор" отвечающий за дальнобойность орудия, все они хранятся а файле .presets в папке с орудиями

("speed" s(740)) - скорость снаряда
("caliber_medium") - определятор калибра
{projectileDamage 114}
("damage" a(114) b(105) c(94) d(83) e(73)) - таблица бронепробития бронебойного снаряда
{parameters "apcr"
("damage" a(139) b(125) c(109) d(93) e(78)) - таблица бронепробития подкалиберного снаряда
}

("accuracy_low") - определятор точности
}

А теперь подробнее:
("damage" a(114) b(105) c(94) d(83) e(73)) - это не те цифры которые написаны в инфокарточке!
это бронепробитие как бы на расстоянии 100, 500, 1000, 1500 и 2000 метров соответственно, о чём свидетельствует файл .presets в папке с орудиями (но на самом деле на 10, 50, 75, 100, 125, 250 игровых метров соответственно).
Так что открываем файл .presets и это:

(define "damage"
{projectileDamageTable {10 %a} {50 %b} {75 %c} {100 %d} {125 %e} {250 (* %e 0)}}
; 100m - 500m - 1000m - 1500m - 2000m

заменяем на это:

(define "damage"
{projectileDamageTable {10 %a} {50 %b} {100 %c} {150 %d} {200 %e} {250 (* %e 0)}}
; 100m - 500m - 1000m - 1500m - 2000m

Так как бронепробитие на расстоянии "С" соответстует реальной бронебойности орудия на расстоянии 1000м
И ведь в википедии даются таблицы бронепробития именно на такие расстояния :)
3. Система повреждений.
Все танки собраны в группы (лёгкие, средние, тяжёлые) и система повреждений не индивидуальна для каждого танка, а общая для всей группы и лежат эти системы здесь:
\resource\set\interaction_entity\tank
пазя у нас средний танк, значит открываем tank_medium.inc - это файл отвечает за то, что будет если средние танки пробьёт снарядами различного калибра.
Посмотрим что будет если средний танк пробьёт православным 85-ым калибром:

;///////////////////////////////////////////////////////// 85to105
("damage_process_pierce"
staff(shell_big)

;Probability component brake\destroy (Name_of_Event__Consequences) for this stuff=========
pierce_gun(1.00) - вероятность поломки орудия при попадании снаряда
pierce_front_back_track(0.60) - вероятность повреждения гусениц при попадании спереди или сзади
pierce_left_right_track(0.50)
pierce_inventory__explosive(0) - по логике вероятность взрыва при пробитии корпуса, но это не работает
;------------------------—
pierce_body__burn(0) - вероятность того что внутри станет жарко, тоже не работает
pierce_body__body_brake(0.20) - вероятность поломки корпуса
pierce_body__body_destroy(0.50) - вероятность уничтожения корпуса
;------------------------—
crew_shock_time(6.00) - время контузии экипажа
;------------------------—
pierce_turret__explosive(0) - вероятность взрыва при пробитии башни, внезапно работает

pierce_turret_front__turret_brake(0.80) - вероятность поломки башни при пробитии в лоб
pierce_turret_back__turret_brake(0.80) - тоже самое, но через зад
pierce_turret_left_right__turret_brake(0.80) - тоже самое при пробитии бортов

pierce_turret_front__gun_brake(0.80) pierce_mantlet__gun_brake(0.80) - вероятность поломки орудия при пробитии через маску орудия
pierce_turret_back__gun_brake(0.70) - ну вы уже поняли
pierce_turret_left_right__gun_brake(0.60)

;-------------------------—
pierce_engine__engine_brake(1.00) - вероятность того, что мехвод расстроится
pierce_engine__engine_burn(0.35) - вероятность того, что расстроится не только мехвод

;Probability crew die - вероятность гибели отдельных членов экипажа при пробитии башни/корпуса (при условии того что танк не взорвался к хренам)
;------------------------—
pierce_body__kill_charger(0.35)
pierce_body__kill_gunner(0.25)
pierce_body__kill_driver(1.00)
pierce_body__kill_commander(0.25)
pierce_body__kill_gunner2(0.25)
;------------------------—
pierce_turret__kill_charger(0.25)
pierce_turret__kill_gunner(1.00)
pierce_turret__kill_driver(0.25)
pierce_turret__kill_commander(0.35)
pierce_turret__kill_gunner2(0.35)
)
P.S.
P.S. В следующий раз я расскажу всё о настройках сетевой игры (например как установить лимиты на отдельных юнитов)
23 Comments
͆N͆͆F͆͆O͆͆R͆ 2 Aug @ 5:53am 
@Retterhalm знаю что не актуально но вдруг кому поможет. сама игра на C++ писалась def это фактически define но это не C++ а внутреигровой язык который собирается через парсера всех файлов...
Retterhalm 23 May, 2021 @ 11:45am 
День добрый!
Подскажите, пожалуйста, синтаксис .def файлов это какой-то язык программирования?
Хочу понять откуда такая структура.
A_NEVSKY_1957 15 Feb, 2020 @ 7:12am 
Проверил на своем моде, изменение в настройках орудий работают. Как сбросить скрин для наглядности руководства?
A_NEVSKY_1957 15 Feb, 2020 @ 7:10am 
Спасибо за работу!:steamhappy:
Pecheneg71 30 Jul, 2019 @ 11:58am 
Парни, помогите, всю голову сломал, где поправить дальность минометам, не могу найти.
Obiriron  [author] 16 Aug, 2018 @ 6:18am 
Это архивы, файлы игры спрятаны в них.
SVIN SPERMA 6 Aug, 2018 @ 2:59am 
Почему у меня в папке "resource" нету ничего, кроме 4-х файлов .pak
[IRN] Conradee 25 May, 2018 @ 1:46am 
По убыванию: Самый топ - ЯгдТигр, КОролевский Тигр, , Элефант, Ис 3, Пантера, Першинги, Ис2, Ягдпартера......
Obiriron  [author] 10 May, 2018 @ 12:26am 
KARPOV, система не поменялась, просто уголы наклона теперь не указаны в карточке юнита.
KARPOV 10 May, 2018 @ 12:06am 
насчет углов наклона брони да тут не все однозначьно,но в предыдущих версиях игры они были в описании юнитов