====== ArmA 2 To ArmA 3 Porting - Character ======
[[https://www.pmctactical.org/forum/viewforum.php?f=68|ArmA 3 Forum]], [[:arma3|ArmA 3]], [[arma3:config|ArmA 3 Config]], [[arma3:missions|ArmA 3 Missions]], [[arma3:modeling|ArmA 3 3D Modeling]], [[arma3:scripting|ArmA 3 Scripting]], [[arma3:terrain|ArmA 3 Terrain]], [[arma3:texturing|ArmA 3 Texturing]], [[arma3:tools|ArmA 3 Tools]]
Howto port ArmA 2 character into ArmA 3
- model.cfg from [[arma3:bis-example-character-model|BIS ArmA 3 example character model]].
- delete old proxies from your arma2 character, import new ones from bis arma3 example character.
- delete old technical LODs from your arma2 character, import new ones from bis arma3 example character.
- delete possible old bare skin meshes from your arma2 character, import new ones from bis arma3 example character.
- update the names of the injury selections in the LODs. The new names are "injury_head, injury_hands, injury_body, injury_legs"
- update the material links (default ArmA 3 path is a3\characters_f\)
- config.cpp changes to have the uniform as cfgWeapons thingy.
You can get arma2 p3d model to work in-game without arma3 crashing with only a model.cfg update, however this is not properly working model since all proxies (like characters weapon) is missing. This is just an small piece of info that if you absolutely must get your character in-game to check the model or textures or whatever, you can do it.
For minimum porting effort you must have p3d changed for arma3 proxy names and model.cfg for arma3 OFP2_ManSkeleton stuff, then some small config tweaks obviously.
====== Resolution LODs ======
P3D model features. Resolution LODs 1-2 no head modeled, LODs 3 and lower head modeled.
A3_character_example.p3d Resolution LODs 1-2 proxy list:
proxy:\a3\characters_f\heads\bysta.001
proxy:\a3\characters_f\proxies\backpack.001
proxy:\a3\characters_f\proxies\binoculars.001
proxy:\a3\characters_f\proxies\equipment.001
proxy:\a3\characters_f\proxies\flag.001
proxy:\a3\characters_f\proxies\glasses.001
proxy:\a3\characters_f\proxies\headgear.001
proxy:\a3\characters_f\proxies\hmd.001
proxy:\a3\characters_f\proxies\launcher.001
proxy:\a3\characters_f\proxies\pistol.001
proxy:\a3\characters_f\proxies\weapon.001
Res LOD 3, removed this:
proxy:\a3\characters_f\proxies\glasses.001
Res LOD 4, removed these:
proxy:\a3\characters_f\proxies\binoculars.001
proxy:\a3\characters_f\proxies\glasses.001
proxy:\a3\characters_f\proxies\hmd.001
View-Pilot, removed these:
proxy:\a3\characters_f\heads\bysta.001
proxy:\a3\characters_f\proxies\glasses.001
====== Config ======
Class replacements:
^ ArmA 2 Original ^ ArmA 3 Replacement ^
| USMC_Soldier_Base | B_Soldier_base_F |
| GUE_Soldier_Base | I_G_Soldier_base_F |
| RU_Soldier_Base | O_Soldier_base_F |
| Mine | ATMine_Range_Mag |
| Pipebomb | SatchelCharge_Remote_Mag |
Replace identityTypes with "LanguageENG_F", "Head_NATO", "NoGlasses" or similar (look from arma3 configs some examples).
Comment out class Wounds for starters (dunno why?).
* in character config, uniformClass property has to contain the name of the uniform class the character is wearing
* in uniform config, uniformClass property in the ItemInfo subclass has to contain the name of one of the characters who are wearing the uniform
Remove "ItemMap", "ItemCompass", "ItemWatch" and "ItemRadio" from weapons/respawnweapons. These are placed through linkedItems now.
If you use hiddenselectionstextures to choose many uniform types for this model, then it must be in uniform and character configs.
Must be in both uniform class and character class:
hiddenSelections[] = { "camo" };
hiddenSelectionsTextures[] = { "namespace\myaddon\data\mytexture_co.paa" };