Jump to content
Sign in to follow this  
takealready

Arma 1 soldiers sucessfully ported to arma2

Recommended Posts

I was able to port over my arma1 models (soldier models) by just replacing the cfgskeleton and cfgmodels. I hope this thread will help the community in some way.

I'd like to thank Norus for starting that post and T D for posting that config http://forums.bistudio.com/showthread.php?t=74887.

I DID NOT RENAME ANY OF THE SELECTIONS OF MY MODEL. All the work I did was in my config.cpp

NONE OF THE MODELS WERE DEFORMED IN ANYWAY. They move perfectly fine. The only problem is with the hand signals. But as you can see from the pictures below this method of just editing the config.cpp will keep the community happy until BIS decides to release some mlod's and some examples.

Sorry for the bad pics. I had to use my camera phone because none of my screenshot programs wanted to work.

123 kb

125 kb

122 kb

120 kb

144 kb

This is part of what my config.cpp look like...

=========================================================

class cfgSkeletons
{
class default;
class OFP2_ManSkeleton : default
{
 SkeletonBones[]=
 {
  "pelvis","",
  "spine","pelvis",
  "spine1","spine",
  "spine2","spine1",
  "spine3","spine2",
  "neck","spine3",
  "neck1","neck",
  "head","neck1",
  "headcutscene","head",
  "jaw","head",
  "chin","head",
  "jaw_rf","head",
  "jaw_rm","head",
  "jaw_rs","head",
  "jaw_lf","head",
  "jaw_lm","head",
  "jaw_ls","head",
  "ear_r","head",
  "ear_l","head",
  "lip_lc","head",
  "lip_lwlb","head",
  "lip_lwlf","head",
  "lip_lwm","head",
  "lip_lwrf","head",
  "lip_lwrb","head",
  "lip_rc","head",
  "lip_uprb","head",
  "lip_uprf","head",
  "lip_upm","head",
  "lip_uplf","head",
  "lip_uplb","head",
  "nose_tip","head",
  "nose_r","head",
  "nose_l","head",
  "zig_lt","head",
  "zig_lm","head",
  "zig_lb","head",
  "zig_rt","head",
  "zig_rm","head",
  "zig_rb","head",
  "cheek_r","head",
  "cheek_l","head",
  "eyebrow_lb","head",
  "eyebrow_lm","head",
  "eyebrow_lf","head",
  "corr","head",
  "eyebrow_rf","head",
  "eyebrow_rm","head",
  "eyebrow_rb","head",
  "eye_upr","head",
  "eye_lwr","head",
  "eye_upl","head",
  "eye_lwl","head",
  "cheek_rf","head",
  "cheek_rm","head",
  "cheek_rb","head",
  "cheek_lf","head",
  "cheek_lm","head",
  "cheek_lb","head",
  "forehead_l","head",
  "forehead_m","head",
  "forehead_r","head",
  "l_eye","head",
  "r_eye","head",
  "l_pupila","head",
  "r_pupila","head",
  "neck_t","head",
  "neck_b","head",
  "neck_r","head",
  "neck_l","head",
  "tongue_b","head",
  "tongue_m","head",
  "tongue_f","head",
  "leftshoulder","spine3",
  "leftarm","leftshoulder",
  "leftarmroll","leftarm",
  "leftforearm","leftarmroll",
  "leftforearmroll","leftforearm",
  "lefthand","leftforearmroll",
  "lefthandring","lefthand",
  "lefthandring1","lefthandring",
  "lefthandring2","lefthandring1",
  "lefthandring3","lefthandring2",
  "lefthandpinky1","lefthandring",
  "lefthandpinky2","lefthandpinky1",
  "lefthandpinky3","lefthandpinky2",
  "lefthandmiddle1","lefthand",
  "lefthandmiddle2","lefthandmiddle1",
  "lefthandmiddle3","lefthandmiddle2",
  "lefthandindex1","lefthand",
  "lefthandindex2","lefthandindex1",
  "lefthandindex3","lefthandindex2",
  "lefthandthumb1","lefthand",
  "lefthandthumb2","lefthandthumb1",
  "lefthandthumb3","lefthandthumb2",
  "rightshoulder","spine3",
  "rightarm","rightshoulder",
  "rightarmroll","rightarm",
  "rightforearm","rightarmroll",
  "rightforearmroll","rightforearm",
  "righthand","rightforearmroll",
  "righthandring","righthand",
  "righthandring1","righthandring",
  "righthandring2","righthandring1",
  "righthandring3","righthandring2",
  "righthandpinky1","righthandring",
  "righthandpinky2","righthandpinky1",
  "righthandpinky3","righthandpinky2",
  "righthandmiddle1","righthand",
  "righthandmiddle2","righthandmiddle1",
  "righthandmiddle3","righthandmiddle2",
  "righthandindex1","righthand",
  "righthandindex2","righthandindex1",
  "righthandindex3","righthandindex2",
  "righthandthumb1","righthand",
  "righthandthumb2","righthandthumb1",
  "righthandthumb3","righthandthumb2",
  "weapon","spine1",
  "launcher","spine1",
  "camera","pelvis",
  "leftupleg","pelvis",
  "leftuplegroll","leftupleg",
  "leftleg","leftuplegroll",
  "leftlegroll","leftleg",
  "leftfoot","leftlegroll",
  "lefttoebase","leftfoot",
  "rightupleg","pelvis",
  "rightuplegroll","rightupleg",
  "rightleg","rightuplegroll",
  "rightlegroll","rightleg",
  "rightfoot","rightlegroll",
  "righttoebase","rightfoot",
 };
};
};
class OFP2_ManSkeleton
   {
       isDiscrete = 0;
       skeletonInherit = "Head";
       skeletonBones[] =
       {
  "pelvis","",
  "spine","pelvis",
  "spine1","spine",
  "spine2","spine1",
  "spine3","spine2",
  "neck","spine3",
  "neck1","neck",
  "head","neck1",
  "headcutscene","head",
  "jaw","head",
  "chin","head",
  "jaw_rf","head",
  "jaw_rm","head",
  "jaw_rs","head",
  "jaw_lf","head",
  "jaw_lm","head",
  "jaw_ls","head",
  "ear_r","head",
  "ear_l","head",
  "lip_lc","head",
  "lip_lwlb","head",
  "lip_lwlf","head",
  "lip_lwm","head",
  "lip_lwrf","head",
  "lip_lwrb","head",
  "lip_rc","head",
  "lip_uprb","head",
  "lip_uprf","head",
  "lip_upm","head",
  "lip_uplf","head",
  "lip_uplb","head",
  "nose_tip","head",
  "nose_r","head",
  "nose_l","head",
  "zig_lt","head",
  "zig_lm","head",
  "zig_lb","head",
  "zig_rt","head",
  "zig_rm","head",
  "zig_rb","head",
  "cheek_r","head",
  "cheek_l","head",
  "eyebrow_lb","head",
  "eyebrow_lm","head",
  "eyebrow_lf","head",
  "corr","head",
  "eyebrow_rf","head",
  "eyebrow_rm","head",
  "eyebrow_rb","head",
  "eye_upr","head",
  "eye_lwr","head",
  "eye_upl","head",
  "eye_lwl","head",
  "cheek_rf","head",
  "cheek_rm","head",
  "cheek_rb","head",
  "cheek_lf","head",
  "cheek_lm","head",
  "cheek_lb","head",
  "forehead_l","head",
  "forehead_m","head",
  "forehead_r","head",
  "l_eye","head",
  "r_eye","head",
  "l_pupila","head",
  "r_pupila","head",
  "neck_t","head",
  "neck_b","head",
  "neck_r","head",
  "neck_l","head",
  "tongue_b","head",
  "tongue_m","head",
  "tongue_f","head",
  "leftshoulder","spine3",
  "leftarm","leftshoulder",
  "leftarmroll","leftarm",
  "leftforearm","leftarmroll",
  "leftforearmroll","leftforearm",
  "lefthand","leftforearmroll",
  "lefthandring","lefthand",
  "lefthandring1","lefthandring",
  "lefthandring2","lefthandring1",
  "lefthandring3","lefthandring2",
  "lefthandpinky1","lefthandring",
  "lefthandpinky2","lefthandpinky1",
  "lefthandpinky3","lefthandpinky2",
  "lefthandmiddle1","lefthand",
  "lefthandmiddle2","lefthandmiddle1",
  "lefthandmiddle3","lefthandmiddle2",
  "lefthandindex1","lefthand",
  "lefthandindex2","lefthandindex1",
  "lefthandindex3","lefthandindex2",
  "lefthandthumb1","lefthand",
  "lefthandthumb2","lefthandthumb1",
  "lefthandthumb3","lefthandthumb2",
  "rightshoulder","spine3",
  "rightarm","rightshoulder",
  "rightarmroll","rightarm",
  "rightforearm","rightarmroll",
  "rightforearmroll","rightforearm",
  "righthand","rightforearmroll",
  "righthandring","righthand",
  "righthandring1","righthandring",
  "righthandring2","righthandring1",
  "righthandring3","righthandring2",
  "righthandpinky1","righthandring",
  "righthandpinky2","righthandpinky1",
  "righthandpinky3","righthandpinky2",
  "righthandmiddle1","righthand",
  "righthandmiddle2","righthandmiddle1",
  "righthandmiddle3","righthandmiddle2",
  "righthandindex1","righthand",
  "righthandindex2","righthandindex1",
  "righthandindex3","righthandindex2",
  "righthandthumb1","righthand",
  "righthandthumb2","righthandthumb1",
  "righthandthumb3","righthandthumb2",
  "weapon","spine1",
  "launcher","spine1",
  "camera","pelvis",
  "leftupleg","pelvis",
  "leftuplegroll","leftupleg",
  "leftleg","leftuplegroll",
  "leftlegroll","leftleg",
  "leftfoot","leftlegroll",
  "lefttoebase","leftfoot",
  "rightupleg","pelvis",
  "rightuplegroll","rightupleg",
  "rightleg","rightuplegroll",
  "rightlegroll","rightleg",
  "rightfoot","rightlegroll",
  "righttoebase","rightfoot",
       };
   };

class CfgMovesMaleSdr;
class BlendAnims;
class SOR_PeopleMoves : CfgMovesMaleSdr // lod Geometry 
{
   skeletonName = "OFP2_ManSkeleton"; // nom du .p3d Skeleton 
   collisionVertexPattern[] = {"1a", "2a", "3a", "4a", "5a", "6a", "7a", "8a", "1c", "2c", "3c", "4c","5c", "6c", "7c", "8c", "1f", "2f", "3f", "4f", "5f", "6f", "7f", "8f"};
   collisionGeomCompPattern[] = {1, 3, 6}; // lod Geometry DU .P3D SOLDAT (component).
};

class CfgModels
{
class Default;
class flag_vojak : Default
{
       sections[] = {"latka"};
   };
class Head: Default
{
       skeletonName = "Head";
       sections[] ={"swap_hhl","hide_eyewear"};
   };
class Regiment: Default
{
   skeletonName = "OFP2_ManSkeleton";
   sections[] ={"swap_hhl","swap_wound_head","swap_wound_body","swap_wound_legL","swap_wound_armL","swap_wound_armR","swap_wound_legL","swap_wound_legR","hide_eyewear","hide_medic","swap_bdu", "hide_teamcolor"};
   };
class CounterT: Default
{
   skeletonName = "OFP2_ManSkeleton";
   sections[] ={"swap_hhl","swap_wound_head","swap_wound_body","swap_wound_legL","swap_wound_armL","swap_wound_armR","swap_wound_legL","swap_wound_legR","hide_eyewear","hide_medic","swap_bdu", "hide_teamcolor"};
   };

Edited by W0lle
Images > 100 kb

Share this post


Link to post
Share on other sites

There are a few references in there I wasn't aware of, should come in handy. I've had my SAS Units ingame for quite some time now. The main (read: only) problem I've experienced is when you attempt to use a weapon that has 'new' weapon-specific holding animations e.g. the MK48. That was the only time I noticed any distortion. Could you possibly check that your unit doesn't warp all over the place, or at least his arms anyway, when holding the MK48? Upon having checked this myself, using your above code sample as a basis, it still shows as having massive distortion when using the MK48 and other affected weapons. Shame :/ I thought we (and by we, I mean you) has cracked it.

Edited by Jackal326

Share this post


Link to post
Share on other sites

I'll try to use some of the static weapons (and all the other weapons). To see how things look. The handgun, assault riffle & rocket launchers animations and hand positions are fine with my characters.

Also, I was messing around with the settings and also noticed that the hand signals are working just fine on my character. The one thing I've noticed so far that is odd is that my characters are larger than the other characters in the game.

I'll post some pictures to show the differences between my character and the game. I don't know if BIS also scaled down) the size of the characters. I haven't figured out how to have my characters speak. Many times the villagers

would say something to me, but I don't have the option of speaking back to them.

Share this post


Link to post
Share on other sites

Hmm. I still get major distortion with the MK48 when I lower the weapon (when my character is in the "patrol" type animation, walking with the weapon lowered). The left forearm becomes quite distorted and twisted still.

With regard to getting the characters to talk, I've made some slight progress, though its a little hap-hazard.

Add the following into your unit within cfgvehicles:

identityTypes[] = {"USMC_Glasses", "Head_USMC"};

languages[] = {"EN"};

class TalkTopics;

class SJB_SAS_TalkTopics: TalkTopics

{

core_en = "Core_Full";

core_ru = "Core_Degenerated";

core_cz = "Core_Degenerated";

};

class SpeechVariants

{

class Default

{

speechSingular[] = {"veh_officer"};

speechPlural[] = {"veh_officers"};

};

class EN : Default {};

};

I'm not entirely sure

identityTypes[] = {"USMC_Glasses", "Head_USMC"};

is required, but I added it anyway.

Share this post


Link to post
Share on other sites

Well I had to dig up my fraps just to get some clerer screenshot (rather than using my cameraphone)..ANYWAY!!

1) I still can't get my soldiers to talk, even though I added that identityTypes[] = {"USMC_Glasses", "Head_USMC"}; to my config.cpp.

2) The hand signals are working just fine on my soldiers.

7b_e7291_ab7eb75a_oJ.jpg.thumb

3) Like you said I still have these strange distortions with the forearms. I've noticed that it doesn't happen to anywhere else on the soldiers body. So that must mean BIS has done something to the forearms in there config.

Distorted forearms

78_e7294_1845165_oJ.jpg.thumb

77_e7295_ca7d68ab_oJ.jpg.thumb

7a_e7292_a911535a_oJ.jpg.thumb

With the forearms I have noticed that it'll happen randomly during while the soldiers are standing still or when you're healing them.

Sorry about the low quality of my multicam soldiers (my soldiers aren't up to SJB standards :(), I never got around to making better looking models. Once BIS released there examples (for arma1) and I finally understood how to make my own soldiers. I went berzerk on my cinema 4D and just quickly merged my "addons" with the examples BIS released.

So far everything else works just fine. The hand position for weapons, the hand singnals and the ability to jump over things when you press "v". Once again until BIS releases some examples, I'll just accept these quirks.

Share this post


Link to post
Share on other sites

With my US Army units that are WIP I have the same problem with the forearm distortion. We'll just have to wait and see when they release the Sample MLOD's which should have the proper sections etc.

Share this post


Link to post
Share on other sites
With my US Army units that are WIP I have the same problem with the forearm distortion. We'll just have to wait and see when they release the Sample MLOD's which should have the proper sections etc.

:mad: yeah waiting is the worst part. I see that they have announced an expansion called operation arrow head. I thought the sample models would be released the same time as the new editing tools. :mad:

I also noticed that when I do a fireman's carry , the animation doesn't look right. But when it gets to the part when I have the soldier on my shoulders, the solider is properly placed. Dragging a soldier works just fine, though from time to time the screen would shake (just like when you open a parachute after a HALO jump).

Share this post


Link to post
Share on other sites

That come from the types of weapons or of animation because for the snipers there is no problem of distortion.

Edited by ADOGMC

Share this post


Link to post
Share on other sites

How can you see your own face in arma 2 ?

My idiot character keeps turning his head away :o

Share this post


Link to post
Share on other sites

3) Like you said I still have these strange distortions with the forearms. I've noticed that it doesn't happen to anywhere else on the soldiers body. So that must mean BIS has done something to the forearms in there config.

Distorted forearms

With the forearms I have noticed that it'll happen randomly during while the soldiers are standing still or when you're healing them.

Did you mean this, I have the the problem too and didn't found a solution. It's only the M5A5 gun animation that have this.

policee.jpg

..and found out the MP5 gun has an extra entry see code:

class MP5SD: Rifle
{
 scope = 2;
 fireLightDuration = 0;
 fireLightIntensity = 0;
 dexterity = 1.75;
 model = "\ca\weapons\HKM5_SD6";
 picture = "\CA\weapons\data\equip\W_HKM5_SD6_CA.paa";
 UiPicture = "\CA\weapons\data\Ico\i_regular_CA.paa";
 magazines[] = {"30Rnd_9x19_MP5SD"};
 displayName = "$STR_DN_MP5SD";
 drySound[] = {"Ca\sounds\Weapons\rifles\dry",0.00316228,1,10};
 reloadMagazineSound[] = {"ca\sounds\weapons\rifles\reload-m16-3",0.0562341,1,25};
 distanceZoomMin = 50;
 distanceZoomMax = 50;
 [b]handAnim[] = {"OFP2_ManSkeleton","\Ca\weapons\data\Anim\HKMP5.rtm"};[/b]
 value = 1000;
 initSpeed = 400;
 modes[] = {"Single","Burst","FullAuto"};
 class Single: Mode_SemiAuto
 {
  begin1[] = {"ca\sounds\weapons\rifles\MP5_SD_single2",1.77828,1,300};
  soundBegin[] = {"begin1",1};
  reloadTime = 0.07;
  recoil = "recoil_single_primary_1outof10";
  recoilProne = "recoil_single_primary_prone_1outof10";
  dispersion = 0.003;
  minRange = 2;
  minRangeProbab = 0.25;
  midRange = 20;
  midRangeProbab = 0.7;
  maxRange = 50;
  maxRangeProbab = 0.05;
 };
 class Burst: Mode_Burst
 {
  begin1[] = {"ca\sounds\weapons\rifles\MP5_SD_single2",1.77828,1,300};
  soundBegin[] = {"begin1",1};
  soundContinuous = 0;
  soundBurst = 0;
  reloadTime = 0.1;
  ffCount = 1;
  recoil = "recoil_auto_primary_1outof10";
  recoilProne = "recoil_auto_primary_prone_1outof10";
  dispersion = 0.003;
  minRange = 1;
  minRangeProbab = 0.3;
  midRange = 10;
  midRangeProbab = 0.7;
  maxRange = 20;
  maxRangeProbab = 0.05;
 };
 class FullAuto: Mode_FullAuto
 {
  begin1[] = {"ca\sounds\weapons\rifles\MP5_SD_single2",1.77828,1,300};
  soundBegin[] = {"begin1",1};
  soundContinuous = 0;
  reloadTime = 0.1;
  ffCount = 1;
  recoil = "recoil_auto_primary_1outof10";
  recoilProne = "recoil_auto_primary_prone_1outof10";
  aiRateOfFire = 0.001;
  dispersion = 0.003;
  minRange = 0;
  minRangeProbab = 0.2;
  midRange = 7;
  midRangeProbab = 0.7;
  maxRange = 15;
  maxRangeProbab = 0.05;
 };
 class Library
 {
  libTextDesc = "$STR_LIB_MP5SD";
 };
 descriptionShort = "$STR_DSS_MP5SD";
};

Language

You can also write this in the config

languages[] = {"EN"};
identityTypes[] = {"GermanHead", "Head_CIV", "Civ_Glasses", "[b]Language_EN[/b]"}; 
genericNames = "GermanMen";

languages[] = //here you can choose "EN", "CZ", "RU"

identityTypes[] = here also and female speech

Language_EN,

Language_RU,

Language_CZ or

Language_w_RU,

Language_w_CZ

genericNames =The people have names from their country (here German names like Peter Müller, it's a feature of BWMod)

Edited by Marseille77

Share this post


Link to post
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
Sign in to follow this  

×