====== Port ArmA 2 Vehicles To ArmA 3 Aplion Model.Cfg ====== This is the model.cfg file from [[arma3:port-arma2-vehicles|Port ArmA 2 Vehicles To ArmA 3]] tutorial. #define BULLET_HIDE(x,from,count) class Bullet##x\ {\ type="hide";\ source="revolving";\ sourceAddress="mirror";\ selection=bullet##x;\ minValue=-1.000000;\ maxValue= 0.000000;\ hideValue=((count+x-from-2)/count)+0.00001;\ }; class Rotation { type = "rotation"; memory = 1; minValue = 0; maxValue = 1; angle0 = 0; angle1 = 1; }; class CfgSkeletons { class Default { isDiscrete = 1; skeletonInherit = ""; skeletonBones[] = {}; }; class Vehicle : Default {}; class Car : Vehicle { skeletonBones[]= { "drivewheel","", "wheel_1_1_damper_land","", "wheel_1_2_damper_land","", "wheel_1_3_damper_land","", "wheel_1_4_damper_land","", "wheel_2_1_damper_land","", "wheel_2_2_damper_land","", "wheel_2_3_damper_land","", "wheel_2_4_damper_land","", "wheel_1_1_damper","wheel_1_1_damper_land", "wheel_1_2_damper","wheel_1_2_damper_land", "wheel_1_3_damper","wheel_1_3_damper_land", "wheel_1_4_damper","wheel_1_4_damper_land", "wheel_2_1_damper","wheel_2_1_damper_land", "wheel_2_2_damper","wheel_2_2_damper_land", "wheel_2_3_damper","wheel_2_3_damper_land", "wheel_2_4_damper","wheel_2_4_damper_land", "wheel_1_1_steering","wheel_1_1_damper", "wheel_1_2_steering","wheel_1_2_damper", "wheel_1_3_steering","wheel_1_3_damper", "wheel_1_4_steering","wheel_1_4_damper", "wheel_2_1_steering","wheel_2_1_damper", "wheel_2_2_steering","wheel_2_2_damper", "wheel_2_3_steering","wheel_2_3_damper", "wheel_2_4_steering","wheel_2_4_damper", "wheel_1_1","wheel_1_1_steering", "wheel_1_2","wheel_1_2_steering", "wheel_1_3","wheel_1_3_steering", "wheel_1_4","wheel_1_4_steering", "wheel_2_1","wheel_2_1_steering", "wheel_2_2","wheel_2_2_steering", "wheel_2_3","wheel_2_3_steering", "wheel_2_4","wheel_2_4_steering", "wheel_1_1_unhide","wheel_1_1", "wheel_1_2_unhide","wheel_1_2", "wheel_1_3_unhide","wheel_1_3", "wheel_1_4_unhide","wheel_1_4", "wheel_2_1_unhide","wheel_2_1", "wheel_2_2_unhide","wheel_2_2", "wheel_2_3_unhide","wheel_2_3", "wheel_2_4_unhide","wheel_2_4", "wheel_1_1_hide","wheel_1_1", "wheel_1_2_hide","wheel_1_2", "wheel_1_3_hide","wheel_1_3", "wheel_1_4_hide","wheel_1_4", "wheel_2_1_hide","wheel_2_1", "wheel_2_2_hide","wheel_2_2", "wheel_2_3_hide","wheel_2_3", "wheel_2_4_hide","wheel_2_4", "OtocVez","", "OtocHlaven","OtocVez", "damageHide","", "damageVez","OtocVez", "damageHlaven","OtocHlaven", "ukaz_rychlo","", "ukaz_rychlo2","", "ukaz_rpm","", "mph","", "rpm","", "fuel","", "fuel_1","", "fuel_01","", "fuel_2","", "fuel_3","", "prop_01","", "prop_02","", "prop_2","", "prop_1","", "glass1","damageHide", "glass2","damageHide", "glass3","damageHide", "glass4","damageHide", }; }; class HMMWVSkeleton:Car { isDiscrete=1; skeletonInherit="Car"; skeletonBones[]= { "ammo_belt","OtocHlaven" }; }; class HMMWV_M2_Skeleton:HMMWVSkeleton { isDiscrete=1; skeletonInherit="HMMWVSkeleton"; skeletonBones[]= { "ammo_belt","OtocHlaven_Shake", "OtocHlaven_Shake","OtocHlaven", "bolt","OtocHlaven_Shake", "recoil","OtocHlaven_Shake", "charging_handle","OtocHlaven_Shake", "magazine","OtocHlaven_Shake", "feedtray_cover","OtocHlaven_Shake", "bullet001","bullet002", "bullet002","bullet003", "bullet003","bullet004", "bullet004","bullet005", "bullet005","bullet006", "bullet006","bullet007", "bullet007","bullet008", "bullet008","bullet009", "bullet009","bullet010", "bullet010","bullet011", "bullet011","bullet012", "bullet012","ammo_belt" }; }; }; class CfgModels { class Default { sectionsInherit = ""; sections[] = {}; skeletonName = ""; }; class Vehicle: Default { sections[] = { "cislo", "grupa", "side", "sektor", "clan", "clan_sign", "podsvit pristroju", "poskozeni", "L svetlo", "P svetlo", "zasleh" }; }; class Car: Vehicle { sectionsInherit="Vehicle"; sections[]= { "ammo", "sklo predni p", "sklo predni l", "zadni svetlo", "brzdove svetlo", "spz", "karoserie", "motor", "zbran", "vez", "zbytek", "clan", "clan_sign", "zasleh", "P svetlo", "L svetlo", "palivo", "glass1", "glass2", "glass3", "glass4" }; skeletonName="Car"; class Animations { // destruct START class damageHide { type="hide"; source="damage"; //damage //test selection="damageHide"; hideValue=1.0; }; class damageHideVez:damageHide { selection="OtocVez"; }; class damageHideHlaven:damageHide { selection="OtocHlaven"; }; // Wheels START // Wheels Complete Destruct START class wheel_1_1_destruct { type="hide"; selection="wheel_1_1_hide"; source="HitLFWheel"; minValue = 0; // upravit na 0.99 maxValue = 1; // upravit na 1.0 hidevalue = 0.99; }; class wheel_1_2_destruct:wheel_1_1_destruct {source="HitLBWheel";selection="wheel_1_2_hide";}; class wheel_1_3_destruct:wheel_1_1_destruct {source="HitLMWheel";selection="wheel_1_3_hide";}; class wheel_1_4_destruct:wheel_1_1_destruct {source="HitLF2Wheel";selection="wheel_1_4_hide";}; class wheel_2_1_destruct:wheel_1_1_destruct {source="HitRFWheel";selection="wheel_2_1_hide";}; class wheel_2_2_destruct:wheel_1_1_destruct {source="HitRBWheel";selection="wheel_2_2_hide";}; class wheel_2_3_destruct:wheel_1_1_destruct {source="HitRMWheel";selection="wheel_2_3_hide";}; class wheel_2_4_destruct:wheel_1_1_destruct {source="HitRF2Wheel";selection="wheel_2_4_hide";}; class wheel_1_1_destruct_unhide { type="hide"; selection="wheel_1_1_unhide"; source="HitLFWheel"; minValue = -1; // upravit na 0.99 maxValue = 0; // upravit na 1.0 hidevalue = 0.01; sourceAddress="mirror"; }; class wheel_1_2_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLBWheel";selection="wheel_1_2_unhide";}; class wheel_1_3_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLMWheel";selection="wheel_1_3_unhide";}; class wheel_1_4_destruct_unhide:wheel_1_1_destruct_unhide {source="HitLF2Wheel";selection="wheel_1_4_unhide";}; class wheel_2_1_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRFWheel";selection="wheel_2_1_unhide";}; class wheel_2_2_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRBWheel";selection="wheel_2_2_unhide";}; class wheel_2_3_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRMWheel";selection="wheel_2_3_unhide";}; class wheel_2_4_destruct_unhide:wheel_1_1_destruct_unhide {source="HitRF2Wheel";selection="wheel_2_4_unhide";}; // Wheels Complete Destruct END #define DamageOffset 0.2 // Wheels Damage START class wheel_1_1_Damage:wheel_1_1_destruct { type="translation"; axis="Basic_Damper_Destruct_Axis"; memory=1; selection="wheel_1_1_damper_land"; source="HitLFWheel"; minValue = 0.0; maxValue = 1; offset0 = 0; offset1 = DamageOffset; }; class wheel_1_2_Damage:wheel_1_1_Damage {source="HitLBWheel";selection="wheel_1_2_damper_land";}; class wheel_1_3_Damage:wheel_1_1_Damage {source="HitLMWheel";selection="wheel_1_3_damper_land";}; class wheel_1_4_Damage:wheel_1_1_Damage {source="HitLF2Wheel";selection="wheel_1_4_damper_land";}; class wheel_2_1_Damage:wheel_1_1_Damage {source="HitRFWheel";selection="wheel_2_1_damper_land";}; class wheel_2_2_Damage:wheel_1_1_Damage {source="HitRBWheel";selection="wheel_2_2_damper_land";}; class wheel_2_3_Damage:wheel_1_1_Damage {source="HitRMWheel";selection="wheel_2_3_damper_land";}; class wheel_2_4_Damage:wheel_1_1_Damage {source="HitRF2Wheel";selection="wheel_2_4_damper_land";}; // animace damper smerem nahoru START class wheel_1_1_Damper_Damage_BackAnim:wheel_1_1_Damage {selection="wheel_1_1_damper";offset1 = -1*DamageOffset;}; class wheel_1_2_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLBWheel";selection="wheel_1_2_damper";}; class wheel_1_3_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLMWheel";selection="wheel_1_3_damper";}; class wheel_1_4_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitLF2Wheel";selection="wheel_1_4_damper";}; class wheel_2_1_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRFWheel";selection="wheel_2_1_damper";}; class wheel_2_2_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRBWheel";selection="wheel_2_2_damper";}; class wheel_2_3_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRMWheel";selection="wheel_2_3_damper";}; class wheel_2_4_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {source="HitRF2Wheel";selection="wheel_2_4_damper";}; // animace damper smerem nahoru END // Wheels Damage END // Wheels END //Glass Damage START class Glass1_destruct { type="hide"; selection="glass1"; source="HitGlass1"; minValue = 0; // upravit na 0.99 maxValue = 1; // upravit na 1.0 hidevalue = 0.99; }; class Glass2_destruct:Glass1_destruct{selection="glass2";source="HitGlass2";}; class Glass3_destruct:Glass1_destruct{selection="glass3";source="HitGlass3";}; class Glass4_destruct:Glass1_destruct{selection="glass4";source="HitGlass4";}; //Glass Damage END // destruct END class IndicatorSpeed { animPeriod=0; type="rotation"; source="speed"; selection="ukaz_rychlo"; axis="osa_rychlo"; memory=0; minValue=0.000000; maxValue=16.670000; angle0=0.000000; angle1=2.879793; }; class IndicatorSpeed2 { type="rotation"; source="speed"; selection="ukaz_rychlo2"; axis="osa_rychlo2"; memory=0; animPeriod=0; minValue=0; maxValue=16.670000; angle0=0; angle1="rad -240"; }; class IndicatorRPM { animPeriod=0; type="rotation"; source="rpm"; selection="ukaz_rpm"; axis="osa_rpm"; memory=0; minValue=0.000000; maxValue=1.000000; angle0=0.000000; angle1=2.967060; }; class DrivingWheel: Rotation { source="drivingWheel"; selection="drivewheel"; axis="drivewheel_axis"; minValue=-1; maxValue=1; angle0=(rad -80); angle1=(rad 80); }; class TurnFrontWheelR { type="rotationY"; source="drivingWheel"; selection="wheel_2_1_steering"; axis="wheel_2_1_steering_axis"; memory=1; animPeriod=0; sourceAddress="loop"; minValue="rad -180"; maxValue="rad +180"; angle0="rad +90"; angle1="rad -90"; }; class TurnFrontWheelL: TurnFrontWheelR { selection="wheel_1_1_steering"; axis="wheel_1_1_steering_axis"; }; class TurnFrontWheelR2: TurnFrontWheelR { selection="wheel_2_4_steering"; axis="wheel_2_4_steering_axis"; }; class TurnFrontWheelL2: TurnFrontWheelR { selection="wheel_1_4_steering"; axis="wheel_1_4_steering_axis"; }; class Wheel_1_1 { type="rotationX"; source="wheel"; selection="wheel_1_1"; axis="wheel_1_1_axis"; memory=1; sourceAddress="loop"; minValue=0; maxValue=1; angle0=0; angle1="rad -360"; }; class wheel_2_1: Wheel_1_1 { selection="wheel_2_1"; axis="wheel_2_1_axis"; }; class wheel_1_2: Wheel_1_1 { selection="wheel_1_2"; axis="wheel_1_2_axis"; }; class wheel_1_3: Wheel_1_1 { selection="wheel_1_3"; axis="wheel_1_3_axis"; }; class Wheel_2_2: Wheel_1_1 { selection="wheel_2_2"; axis="wheel_2_2_axis"; }; class Wheel_2_3: Wheel_1_1 { selection="wheel_2_3"; axis="wheel_2_3_axis"; }; class Wheel_1_4: Wheel_1_1 { selection="wheel_1_4"; axis="wheel_1_4_axis"; }; class Wheel_2_4: Wheel_1_1 { selection="wheel_2_4"; axis="wheel_2_4_axis"; }; class Wheel_1_1_Damper { type="translation"; source="damper"; selection="wheel_1_1_damper_land"; axis="posun wheel_1_1"; animPeriod = 1; minValue="0"; maxValue="1"; offset0= "0.5"; offset1= "-0.5"; memory=1; }; class wheel_2_1_Damper: Wheel_1_1_Damper { selection="wheel_2_1_damper_land"; }; class wheel_1_2_Damper: Wheel_1_1_Damper { selection="wheel_1_2_damper_land"; }; class Wheel_2_2_Damper: Wheel_1_1_Damper { selection="wheel_2_2_damper_land"; }; class damageVez: damageHide { selection="damageVez"; }; class damageHlaven: damageHide { selection="damageHlaven"; }; }; }; class HMMWV: Car { sectionsInherit="Car"; sections[]= { "Camo1" }; skeletonName="HMMWVSkeleton"; class Animations: Animations { // Dampers Destruct START class wheel_1_1_Damage:wheel_1_1_Damage {offset1 = 0.20;}; class wheel_1_2_Damage:wheel_1_2_Damage {offset1 = 0.20;}; // class wheel_1_3_Damage:wheel_1_3_Damage {offset1 = 0.20;}; class wheel_2_1_Damage:wheel_2_1_Damage {offset1 = 0.20;}; class wheel_2_2_Damage:wheel_2_2_Damage {offset1 = 0.20;}; // class wheel_2_3_Damage:wheel_2_3_Damage {offset1 = 0.20;}; // Dampers Destruct END // animace damper smerem nahoru START class wheel_1_1_Damper_Damage_BackAnim:wheel_1_1_Damper_Damage_BackAnim {offset1 = -0.20;}; class wheel_1_2_Damper_Damage_BackAnim:wheel_1_2_Damper_Damage_BackAnim {offset1 = -0.20;}; // class wheel_1_3_Damper_Damage_BackAnim:wheel_1_3_Damper_Damage_BackAnim {offset1 = -0.20;}; class wheel_2_1_Damper_Damage_BackAnim:wheel_2_1_Damper_Damage_BackAnim {offset1 = -0.20;}; class wheel_2_2_Damper_Damage_BackAnim:wheel_2_2_Damper_Damage_BackAnim {offset1 = -0.20;}; // class wheel_2_3_Damper_Damage_BackAnim:wheel_2_3_Damper_Damage_BackAnim {offset1 = -0.20;}; // animace damper smerem nahoru END class IndicatorSpeed: IndicatorSpeed { maxValue=16.670000; angle0=-0.174533; angle1=3.141593; }; class IndicatorRPM: IndicatorRPM { angle0=0.000000; angle1=1.483530; }; class fuel { type="rotation"; source="fuel"; selection="fuel_1"; axis="fuel_1_axis"; memory=0; minValue=0.000000; maxValue=1.000000; angle0=-0.087266; angle1=-1.658063; }; class prop_01 { type="rotation"; source="rpm"; selection="prop_01"; axis="prop_01_axis"; memory=0; minValue=0.000000; maxValue=0.360000; angle0=1.396263; angle1=0.000000; }; class prop_02 { type="rotation"; source="rpm"; selection="prop_02"; axis="prop_02_axis"; memory=0; minValue=0.000000; maxValue=0.640000; angle0=0.349066; angle1=-0.349066; }; class Wheel_1_1_Damper: Wheel_1_1_Damper { type="translation"; source="damper"; selection="wheel_1_1_damper_land"; axis="posun wheel_1_1"; animPeriod = 1; minValue="0"; maxValue="1"; offset0= "0.5"; offset1= "-0.5"; memory=1; }; class wheel_2_1_Damper: Wheel_1_1_Damper { selection="wheel_2_1_damper_land"; }; class wheel_1_2_Damper: Wheel_1_1_Damper { selection="wheel_1_2_damper_land"; }; class Wheel_2_2_Damper: Wheel_1_1_Damper { selection="wheel_2_2_damper_land"; }; }; }; class HMMWVTurret: HMMWV { class Animations: Animations { class MainTurret { type="rotationY"; source="mainTurret"; selection="OtocVez"; axis="OsaVeze"; animPeriod=0; minValue="rad -360"; maxValue="rad +360"; angle0="rad -360"; angle1="rad +360"; }; class MainGun: MainTurret { type="rotationX"; source="mainGun"; selection="OtocHlaven"; axis="OsaHlavne"; }; class damageHlaven: damageHide { selection="damageHlaven"; }; }; }; class HMMWV50: HMMWVTurret { skeletonName="HMMWV_M2_Skeleton"; class Animations: Animations { class ammo_belt_rotation { type="rotationZ"; source="ReloadAnim"; selection="ammo_belt"; axis="ammo_belt_axis"; memory=1; sourceAddress="loop"; minValue=0.000000; maxValue=1.0000; angle0=0.000000; angle1=-0.209440; }; class Barrel_recoil:ammo_belt_rotation { type="translation"; selection="recoil"; axis="recoil_axis"; sourceAddress="mirror"; minValue=0.0; maxValue=0.5; offset0=0; offset1=-0.05; }; class Bolt_recoil:Barrel_recoil { selection="bolt"; offset0=0; maxValue=0.5; offset1=-0.25; }; class Turret_shake:Barrel_recoil { selection="OtocHlaven_Shake"; axis="osaveze"; offset0=0; offset1=-0.002; maxValue=0.05; }; class Turret_shake_aside:Turret_shake { axis="osahlavne"; maxValue=0.05*1.3; }; class Charging_handle_shake:Barrel_recoil { type="rotation"; selection="Charging_handle"; axis="Charging_handle_axis"; sourceAddress="mirror"; maxValue=0.005; angle0=0.000000; angle1=-0.1; }; class Feedtray_cover_up { type="rotation"; source="reloadMagazine"; selection="feedtray_cover"; axis="feedtray_cover_axis"; memory=1; minValue=0.1000000; maxValue=0.130000; angle0=0.000000; angle1=-1.570796; }; class Feedtray_cover_down:feedtray_cover_up { minValue=0.860000; maxValue=0.900000; angle0=0.000000; angle1=1.570796; }; class Bolt_reload_begin:Bolt_recoil { type="translation"; sourceAddress="clamp"; source="reloadMagazine"; minValue=0.00000; maxValue=0.0200000; }; class Bolt_reload_end:bolt_reload_begin { minValue=0.050000; maxValue=0.070000; offset0=0; offset1=+0.25; }; class Charging_handle_reload_begin:Bolt_reload_begin{selection="Charging_handle";}; class Charging_handle_reload_end:Bolt_reload_end{selection="Charging_handle";}; class Magazine_hide { type="hide"; source="reloadMagazine"; sourceAddress="mirror"; selection="magazine"; minValue=0.0; maxValue=0.5; hideValue=0.56; }; }; }; };