Jump to content
Sign in to follow this  
Jack-UK

Configs..

Recommended Posts

Hey all, im *attempting* to learn how to make addons, im making some good progress, but i have no idea where to start in terms of configs...

Im following this set of OFP tutorials which are really great: http://ofp.gamepark.cz/_hosted/brsseb/tutorials.htm

But the configs for some of the tutorials (for example the Car tutorial) give error messages. Im assuming that they will require completely different configs due to the changes from OFP -> ArmA.

Therefore im wondering whether there are any basic guides to configs anywhere for ArmA. I can find some stuff for OFP but nothing for ArmA. I just dont have a clue where to start.. I've tried fiddling with some things (i changed the class Jeep in car tutorial config to UAZ and managed to get it in game, but it brings an error message, so obviously i need to do a lot more to work in ArmA).

I would like to try and learn how to write configs myself too, instead of just converting them from OFP, but i dont know where to start, so if anyone can give me some good links for ArmA configs or tutorials or anything like that i would be much appreciative smile_o.gif

Thanks!

EDIT: After doing some more googling i found GranQ's sample configs/vehicles so im taking a look at them, its a lot to take in though! Thanks GranQ if you read this smile_o.gif

Share this post


Link to post
Share on other sites

Yes, you have hit on the best method I know of learning Configs ..... un-PBO and read other peoples (including looking as BIS own and including looking at named areas in the p3d models) and try to understand whats happening.

But if you have specific configs you can't seem to find good examples of, ask here again and we'll see what we can do.

Share this post


Link to post
Share on other sites

It's not that hard to wright config. it's just a bit boring. main difference with ofp - model config needed.

If you want "to learn how to make addons" better learn max and photoshop - somebody helps you if you'll make good model wink_o.gif

Share this post


Link to post
Share on other sites

CHow to learn config... have a good luck finding tutorial because there is none. Best way is to look atl already working configs, especially the ones that are already ni the games, in wheeled.pbo, or tracked.pbo. But best way to learn it is when making actuall addon, it can be frustrating but its best way. Since you actually begin to understand how things work, which you might never get when someone makes configs for you. And also i would recomend to start making simple things and them moving up, for example first make building, or some other static object, then vehicle, simple one such as car. You could make something complex, but you will learn the configing the hard way.... smile_o.gif

Share this post


Link to post
Share on other sites

Hey guys, thanks for the replies.

Yeah im taking a look at all these different configs, seeing what they do, GranQ made some example ones, and i've modelled a *very* basic car and im just finding out how to get it to work with the config, im gradually understanding a little more, and using the wiki to help me understand certain things smile_o.gif

@bdfy: What do you mean by model config? You mean like where the different wheels are defined within the config? Cause i noticed that was a difference between an OFP and ArmA config... i think lol

Cheers thumbs-up.gif

Share this post


Link to post
Share on other sites

Yep, pretty sure what bdfy means is the section like the below example. The many named sections and axis memory points !!

Always remember the class name has to exactly match your p3d file name.

Also as an example, the other important bit is the corresponding Skeleton. This links all the moving bits, but is really only complicated for Aircraft undercarriage .... per the sample.

CFGMODELS

<table border="0" align="center" width="95%" cellpadding="0" cellspacing="0"><tr><td>Code Sample </td></tr><tr><td id="CODE">class CfgModels

{

class Plane;

class rkt_tu22m3_mesh: Plane

{

skeletonName = "BackFireBones";

sectionsInherit="";

sections[] = {"num1", "num2"};

class Animations

{

class LeftGear

{

type ="rotation";

source = "gear";

initPhase=1;

animPeriod =2;

selection ="left wheel";

axis ="axis left wheel";

angle0 =0;

angle1 =-1.57;

};

class RightGear

{

type ="rotation";

source = "gear";

initPhase=1;

animPeriod =2;

selection ="right wheel";

axis ="axis right wheel";

angle0 =0;

angle1 =1.57;

};

class NoseGear

{

type ="rotation";

source = "gear";

initPhase=1;

animPeriod =2;

selection ="nose wheel";

axis ="axis nose wheel";

angle0 =0;

angle1 =-1.92;

};

class NDL

{

type ="rotation";

source = "gear";

initPhase=1;

animPeriod =4;

selection ="ndl";

axis ="axis ndl";

angle0 =0;

angle1 =-1.57;

};

class NDR

{

type ="rotation";

source = "gear";

initPhase=1;

animPeriod =4;

selection ="ndr";

axis ="axis ndr";

angle0 =0;

angle1 =1.57;

};

class LeftWing

{

type ="rotation";

animPeriod =2;

source = "speed";

memory = true;

sourceAddress = "clamp";

minValue = 84;  //meter per second

maxValue = 167;

selection ="leftwing";

axis ="axis left wing";

angle0 =0;

angle1="rad -40";

};

class RightWing

{

type ="rotation";

animPeriod =2;

source = "speed";

memory = true;

sourceAddress = "clamp";

minValue = 84;

maxValue = 167;

selection ="rightwing";

axis ="axis right wing";

angle0 =0;

angle1 ="rad 40";

};

class SW1

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw1";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

class SW2L

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw2l";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

class SW2R

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw2r";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

class SW3L

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw3l";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

class SW3R

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw3r";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

class SW4L

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw4l";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

class SW4R

{

      type = "rotationX";

      source = "wheel";

animPeriod =.001;

selection ="sw4r";

axis = "";

memory = true;

sourceAddress = "loop";

minValue = 0;

                  maxValue = 1;

                    angle0 = 0;

      angle1 = "rad -360";

};

  class BF_Rudder

{

      type = "rotation";

      source = "rudder";

selection = "leva smerovka";

axis = "osa leve smerovky";

memory = true;

sourceAddress = "clamp";

minValue = -1;

                  maxValue = 1;

                    angle0 = "rad 25";

      angle1 = "rad -25";

  };

  class BF_ElevRight

{

      type = "rotation";

      source = "elevator";

selection = "prava vejskovka";

axis = "osa prave vejskovky";

memory = true;

sourceAddress = "clamp";

minValue = -1;

                  maxValue = 1;

                    angle0 = "rad 35";

      angle1 = "rad -35";

  };

  class BF_ElevLeft

{

      type = "rotation";

      source = "elevator";

selection = "leva vejskovka";

axis = "osa leve vejskovky";

memory = true;

sourceAddress = "clamp";

minValue = -1;

                  maxValue = 1;

                    angle0 = "rad 35";

      angle1 = "rad -35";

  };

};

};

};

CFGSKELETONS

Quote[/b] ]class CfgSkeletons

{

  class Plane; //Define base class.

  class BackFireBones: Plane

{

isDiscrete=1;

skeletonInherit = "";

skeletonBones[]=

{

"bbl","",

"bbr","",

"left wheel","",

"sw2l","left wheel",

"sw3l","left wheel",

"sw4l","left wheel",

"right wheel","",

"sw2r","right wheel",

"sw3r","right wheel",

"sw4r","right wheel",

"leftwing","",

"rightwing","",

"leva smerovka","",

"leva vejskovka","",

"lwd","",

"rwd","",

"ndl","",

"ndr","",

"nose wheel","",

"sw1","nose wheel",

"prava vejskovka","",

"SW2","",

"SW3","",

"SW4","",

};

};

};

Share this post


Link to post
Share on other sites
Quote[/b] ]Yep, pretty sure what bdfy means is the section like the below example. The many named sections and axis memory points !!

Always remember the class name has to exactly match your p3d file name.

nope. serach the biki - all info in there. it's usually separate file

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  

×