IPB


Welcome Guest ( Log In | Register )

 Forum Rules Forum Rules
 
Reply to this topicStart new topic
> Stryker M2 and Mk19 - Slat armour, 3D modeller in need of expert help
ExplosiveAids
post Oct 12 2010, 17:46
Post #1


New Member
*

Group: Members
Posts: 9
Joined: 11-October 10
Member No.: 8,381



Hi Everyone,

For the past few weeks I've been making two Stryker variants, both with Slat armour. I'm making good progress but I'm reaching the limits of my knowledge and need to ask some professionals... you guys.

I've only been modding for five weeks, although I have over eight years experience in 3D Studio. Thanks to the wealth of ArmA info available, I was able to find out exactly what I needed to get started and after two weeks I was ready to make something.

Here's what I did:
I started modifying the Strykers that came with the Sample Vehicles file (provided by Bohemia). I made a rudimentary set of Slat armour, unpacked the Wheeled.pbo and saved my file over the original and repacked it. Not very professional but it worked and I was able to test out my creation.



Here's where the problems started though:
- The wheels don't rotate or steer and the suspension doesn't work.
- The weapon system can't be moved and there's a permanently visible muzzle flash.


Is there anyone who can help? I'm hoping someone can point me in the right direction, or maybe even work together to get these models released as a proper addon.



I've taken a bunch of screenshots of my progress so far. I'm still working on it though, so I'll upload more once I've adjusted the following things:
- Folded the mirrors back
- Moved the headlights forward a bit (I moved them way too far back)
- Changed the colour of the Camo net.
- Moved the forward most hard antenna back slightly.
(I'm also working on making Slat armour for the TOW variant)



Anyway that's enough typing, here are some pics...










 
Quote Post
D@V£
post Oct 12 2010, 22:08
Post #2


Gee, I wish we had one of them doomsday machines.
Group Icon

Group: Moderators
Posts: 2,037
Joined: 13-November 06
From: Wales
Member No.: 155



Shoulds like you don't have a model.cfg file. Create a text document called "model.cfg" in your addon folder, then use this code:
CODE
class Rotation;
class CfgSkeletons
{
    class Vehicle;
    class Car: Vehicle
    {
        skeletonInherit="Vehicle";
        skeletonBones[]=
        {
            "volant",
            "",
            "levy predni tlumic",
            "",
            "pravy predni tlumic",
            "",
            "levy dalsi tlumic",
            "",
            "pravy dalsi tlumic",
            "",
            "levy predni zatoc",
            "levy predni tlumic",
            "pravy predni zatoc",
            "pravy predni tlumic",
            "levy dalsi zatoc",
            "levy dalsi tlumic",
            "pravy dalsi zatoc",
            "pravy dalsi tlumic",
            "levy prostredni tlumic",
            "",
            "pravy prostredni tlumic",
            "",
            "levy zadni tlumic",
            "",
            "pravy zadni tlumic",
            "",
            "levy predni",
            "levy predni zatoc",
            "pravy predni",
            "pravy predni zatoc",
            "levy dalsi",
            "levy dalsi zatoc",
            "pravy dalsi",
            "pravy dalsi zatoc",
            "levy prostredni",
            "levy prostredni tlumic",
            "pravy prostredni",
            "pravy prostredni tlumic",
            "levy zadni",
            "levy zadni tlumic",
            "pravy zadni",
            "pravy zadni tlumic",
            "ukaz_rychlo",
            "",
            "ukaz_rychlo2",
            "",
            "ukaz_rpm",
            "",
            "OtocVez",
            "",
            "OtocHlaven",
            "OtocVez",
            "fuel_01",
            "",
            "fuel_1",
            "",
            "prop_01",
            "",
            "prop_02",
            "",
            "prop_2",
            "",
            "prop_1",
            "",
            "damageHide",
            "",
            "damageVez",
            "OtocVez",
            "damageHlaven",
            "OtocHlaven"
        };
    };

    class StrykerSkeleton
    {
        isDiscrete=1;
        skeletonInherit="";
        skeletonBones[]=
        {
            "DriveWheel",
            "",
            "fuel",
            "",
            "rpm",
            "",
            "mph",
            "",
            "wheel_1_1_damper",
            "",
            "wheel_1_2_damper",
            "",
            "wheel_2_1_damper",
            "",
            "wheel_2_2_damper",
            "",
            "wheel_3_1_damper",
            "",
            "wheel_3_2_damper",
            "",
            "wheel_4_1_damper",
            "",
            "wheel_4_2_damper",
            "",
            "wheel_1_1_steering",
            "wheel_1_1_damper",
            "wheel_1_2_steering",
            "wheel_1_2_damper",
            "wheel_2_1_steering",
            "wheel_2_1_damper",
            "wheel_2_2_steering",
            "wheel_2_2_damper",
            "wheel_1_1",
            "wheel_1_1_steering",
            "wheel_1_2",
            "wheel_1_2_steering",
            "wheel_2_1",
            "wheel_2_1_steering",
            "wheel_2_2",
            "wheel_2_2_steering",
            "wheel_3_1",
            "wheel_3_1_damper",
            "wheel_3_2",
            "wheel_3_2_damper",
            "wheel_4_1",
            "wheel_4_1_damper",
            "wheel_4_2",
            "wheel_4_2_damper",
            "turret",
            "",
            "gun",
            "turret",
            "hatch_driver",
            "",
            "hatch_Gunner",
            "",
            "fuel_1",
            "",
            "ukaz_rpm",
            "",
            "ukaz_rychlo",
            "",
            "prop_01",
            "",
            "prop_02",
            "",
            "prop_03",
            "",
            "prop_04",
            "",
            "prop_05",
            "",
            "prop_1",
            "",
            "prop_2",
            "",
            "prop_3",
            "",
            "prop_4",
            "",
            "prop_5",
            "",
            "ukaz_rychlo2",
            "",
            "damageHide",
            ""
        };
    };
};
class CfgModels
{
    class Vehicle;
    class Car: Vehicle
    {
        sectionsInherit="Vehicle";
        sections[]=
        {
            "ammo",
            "sklo predni p",
            "sklo predni l",
            "zadni svetlo",
            "brzdove svetlo",
            "spz",
            "karoserie",
            "motor",
            "zbran",
            "vez",
            "zbytek",
            "levy predni",
            "levy prostredni",
            "levy zadni",
            "pravy predni",
            "pravy prostredni",
            "pravy zadni",
            "clan",
            "clan_sign",
            "zasleh",
            "P svetlo",
            "L svetlo",
            "palivo"
        };
        skeletonName="Car";
        class Animations
        {
            class damageHide
            {
                type="hide";
                source="damage";
                selection="damageHide";
            };
            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="false";
                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
            {
                type="rotation";
                source="drivingWheel";
                selection="volant";
                begin="osaVolantZac";
                end="osaVolantKon";
                memory="false";
                animPeriod=0;
                minValue=-1;
                maxValue=1;
                angle0=-8;
                angle1=8;
            };
            class TurnFrontWheelR
            {
                type="rotationY";
                source="drivingWheel";
                selection="pravy predni zatoc";
                axis="pravy predni";
                memory="false";
                animPeriod=0;
                sourceAddress="loop";
                minValue="rad -180";
                maxValue="rad +180";
                angle0="rad +90";
                angle1="rad -90";
            };
            class TurnFrontWheelL: TurnFrontWheelR
            {
                selection="levy predni zatoc";
                axis="levy predni";
            };
            class TurnFrontWheelR2: TurnFrontWheelR
            {
                selection="pravy dalsi zatoc ";
                axis="pravy dalsi";
            };
            class TurnFrontWheelL2: TurnFrontWheelR
            {
                selection="levy dalsi zatoc ";
                axis="levy dalsi";
            };
            class FrontWheelR
            {
                type="rotationX";
                source="wheel";
                selection="pravy predni";
                axis="";
                memory="true";
                animPeriod=0;
                sourceAddress="loop";
                minValue=0;
                maxValue=1;
                angle0=0;
                angle1="rad -360";
            };
            class FrontWheel2R: FrontWheelR
            {
                selection="pravy dalsi";
            };
            class BackWheelR: FrontWheelR
            {
                selection="pravy zadni";
            };
            class BackWheel2R: FrontWheelR
            {
                selection="pravy prostredni";
            };
            class FrontWheelL: FrontWheelR
            {
                selection="levy predni";
            };
            class FrontWheel2L: FrontWheelR
            {
                selection="levy dalsi";
            };
            class BackWheelL: FrontWheelR
            {
                selection="levy zadni";
            };
            class BackWheel2L: FrontWheelR
            {
                selection="levy prostredni";
            };
            class FrontWheelDamperR
            {
                type="translationY";
                source="damper";
                selection="pravy predni tlumic";
                axis="";
                animPeriod=0;
                minValue=-1000;
                maxValue=1000;
            };
            class FrontWheelDamper2R: FrontWheelDamperR
            {
                selection="pravy dalsi tlumic";
            };
            class BackWheelDamperR: FrontWheelDamperR
            {
                selection="pravy zadni tlumic";
            };
            class BackWheelDamper2R: FrontWheelDamperR
            {
                selection="pravy prostredni tlumic";
            };
            class FrontWheelDamperL: FrontWheelDamperR
            {
                selection="levy predni tlumic";
            };
            class FrontWheelDamper2L: FrontWheelDamperR
            {
                selection="levy dalsi tlumic";
            };
            class BackWheelDamperL: FrontWheelDamperR
            {
                selection="levy zadni tlumic";
            };
            class BackWheelDamper2L: FrontWheelDamperR
            {
                selection="levy prostredni tlumic";
            };
            class damageVez: damageHide
            {
                selection="damageVez";
            };
            class damageHlaven: damageHide
            {
                selection="damageHlaven";
            };
        };
    };
    class Stryker_ICV: Vehicle
    {
        skeletonName="StrykerSkeleton";
        sectionsInherit="Vehicle";
        sections[]=
        {
            "Light_1_1",
            "Light_1_2",
            "Light_brake",
            "Light_back",
            "clan",
            "clan_sign",
            "zasleh",
            "karoserie",
            "vez",
            "motor",
            "palivo",
            "zbran"
        };
        class Animations
        {
            class Fuel: Rotation
            {
                source="fuel";
                selection="fuel_1";
                axis="fuel_1_axis";
                memory=0;
                maxValue=1.000000;
                angle0=1.570796;
                angle1=-1.570796;
            };
            class IndicatorSpeed: Rotation
            {
                source="speed";
                selection="ukaz_rychlo";
                axis="osa_rychlo";
                memory=0;
                maxValue=35.52;
                angle0=1.832596;
                angle1=-1.832596;
            };
            class IndicatorRPM: Rotation
            {
                source="rpm";
                selection="ukaz_rpm";
                axis="osa_rpm";
                memory=0;
                angle0=1.658063;
                angle1=-1.396263;
            };
            class IndicatorOilTemp: Rotation
            {
                source="oil";
                selection="oilTemp";
                axis="oilTemp_axis";
                memory=0;
                maxValue=0.200000;
                angle1="rad 80";
            };
            class DrivingWheel: Rotation
            {
                source="drivingWheel";
                selection="drivewheel";
                axis="drivewheel_axis";
                minValue=-1;
                maxValue=1;
                angle0=4;
                angle1=-4;
            };
            class Steering_1_1
            {
                type="rotationY";
                source="drivingWheel";
                selection="wheel_1_1_steering";
                axis="wheel_1_1_steering_axis";
                memory=1;
                minValue="rad -90";
                maxValue="rad +90";
                angle0=0.900000;
                angle1=-0.900000;
            };
            class Steering_1_2: Steering_1_1
            {
                selection="wheel_1_2_steering";
                axis="wheel_1_2_steering_axis";
            };
            class Steering_2_1: Steering_1_1
            {
                selection="wheel_2_1_steering";
                axis="wheel_2_1_steering_axis";
                memory=1;
            };
            class Steering_2_2: Steering_1_1
            {
                selection="wheel_2_2_steering";
                axis="wheel_2_2_steering_axis";
                memory=1;
            };
            class Wheel_1_1
            {
                type="rotationX";
                source="wheel";
                selection="wheel_1_1";
                axis="";
                memory=1;
                sourceAddress="loop";
                minValue=0;
                maxValue=1;
                angle0=0;
                angle1="rad -360";
            };
            class Wheel_1_2: Wheel_1_1
            {
                selection="wheel_1_2";
            };
            class Wheel_2_1: Wheel_1_1
            {
                selection="wheel_2_1";
            };
            class Wheel_2_2: Wheel_1_1
            {
                selection="wheel_2_2";
            };
            class Wheel_3_1: Wheel_1_1
            {
                selection="wheel_3_1";
            };
            class Wheel_3_2: Wheel_1_1
            {
                selection="wheel_3_2";
            };
            class Wheel_4_1: Wheel_1_1
            {
                selection="wheel_4_1";
            };
            class Wheel_4_2: Wheel_1_1
            {
                selection="wheel_4_2";
            };
            class Wheel_1_1_Damper
            {
                type="translationY";
                source="damper";
                selection="wheel_1_1_damper";
                axis="";
                minValue=-1;
                maxValue=1;
                memory=1;
            };
            class Wheel_1_2_Damper: Wheel_1_1_Damper
            {
                selection="wheel_1_2_damper";
            };
            class Wheel_2_1_Damper: Wheel_1_1_Damper
            {
                selection="wheel_2_1_damper";
            };
            class Wheel_2_2_Damper: Wheel_1_1_Damper
            {
                selection="wheel_2_2_damper";
            };
            class Wheel_3_1_Damper: Wheel_1_1_Damper
            {
                selection="wheel_3_1_damper";
            };
            class Wheel_3_2_Damper: Wheel_1_1_Damper
            {
                selection="wheel_3_2_damper";
            };
            class Wheel_4_1_Damper: Wheel_1_1_Damper
            {
                selection="wheel_4_1_damper";
            };
            class Wheel_4_2_Damper: Wheel_1_1_Damper
            {
                selection="wheel_4_2_damper";
            };
            class MainTurret
            {
                type="rotationY";
                source="mainTurret";
                selection="turret";
                axis="turret_axis";
                animPeriod=0;
                minValue="rad -360";
                maxValue="rad +360";
                angle0="rad -360";
                angle1="rad +360";
            };
            class MainGun
            {
                type="rotationX";
                source="mainGun";
                selection="gun";
                axis="gun_axis";
                animPeriod=0;
                minValue="rad -360";
                maxValue="rad +360";
                angle0="rad -360";
                angle1="rad +360";
            };
            class HatchDriver: Rotation
            {
                source="hatchDriver";
                selection="hatch_driver";
                axis="hatch_driver_axis";
                memory="false";
                angle1="rad -90";
            };
            class HatchGunner: Rotation
            {
                source="hatchGunner";
                selection="hatch_gunner";
                axis="hatch_gunner_axis";
                memory="false";
                angle1="rad -110";
            };
            class prop_1
            {
                type="rotation";
                source="rpm";
                selection="prop_1";
                axis="prop_1_axis";
                memory=0;
                minValue=0.000000;
                maxValue=0.790000;
                angle0=0.698132;
                angle1=-1.221730;
            };
            class prop_2
            {
                type="rotation";
                source="rpm";
                selection="prop_2";
                axis="prop_2_axis";
                memory=0;
                minValue=0.000000;
                maxValue=1.000000;
                angle0=1.396263;
                angle1=0.349066;
            };
            class prop_3
            {
                type="rotation";
                source="rpm";
                selection="prop_3";
                axis="prop_3_axis";
                memory=0;
                minValue=0.000000;
                maxValue=1.000000;
                angle0=1.570796;
                angle1=0.000000;
            };
            class prop_4
            {
                type="rotation";
                source="rpm";
                selection="prop_4";
                axis="prop_4_axis";
                memory=0;
                minValue=0.000000;
                maxValue=1.000000;
                angle0=2.268928;
                angle1=1.745329;
            };
            class prop_5
            {
                type="rotation";
                source="rpm";
                selection="prop_5";
                axis="prop_5_axis";
                memory=0;
                minValue=0.000000;
                maxValue=1.000000;
                angle0=-1.570796;
                angle1=-2.094395;
            };
            class IndicatorSpeed2
            {
                type="rotation";
                source="speed";
                selection="ukaz_rychlo2";
                axis="osa_rychlo2";
                memory=0;
                minValue=0.000000;
                maxValue=16.670000;
                angle0=0.000000;
                angle1=1.570796;
            };
        };
    };
    class MyStrykerModel1: Stryker_ICV
    {
    };
    class MyStrykerModel2: Stryker_ICV
    {
    };
    class MyStrykerModel3: Stryker_ICV
    {
    };
    class MyStrykerModel4: Stryker_ICV
    {
    };
};


You should replace "Mystrykermodel1", "Mystrykermodel2", "Mystrykermodel3" and "Mystrykermodel4" with the names of the models in your folder. Ie, if you're model is called "strykerSLAT.p3d" you'd use:
CODE
    class StrykerSLAT: Stryker_ICV
    {
    };

You could also put this in your config.cpp file, but it's recommended you put it in a seperate model.cfg file, especially if you intend to binarize the addon.


--------------------
The Rules - Nothing too complicated, follow these and we'll have no problems.
Moderation Feedback Thread - Tell everyone how much you hate me love me secretly fear that Mark is watching you while you sleep. secretly wish that Mark is watching you while you sleep.
Site Issues Thread - Complain about site issues here. We might even fix them!
Community Chatter Thread - Furthest Mud-sling gets a free subscription to "JdB Monthly".

QUOTE(Major Mike Shearer)
We can categorically state that we have not released man-eating badgers into the area.
QUOTE(Brace Belden)
A machine gun is like a woman, I don’t understand it, I’m afraid of it, and one day I’ll accidentally be killed by one.
 
Quote Post
ExplosiveAids
post Oct 13 2010, 11:47
Post #3


New Member
*

Group: Members
Posts: 9
Joined: 11-October 10
Member No.: 8,381



Wow, thank you for the ultra-fast reply, D@V£.

I'll get right on it and report back when I've made some progress. I'm a total noob when it comes to making mods for games (this really is my first attempt) so thanks for making it so simple.

You sir, are a legend.
 
Quote Post
ExplosiveAids
post Oct 14 2010, 16:53
Post #4


New Member
*

Group: Members
Posts: 9
Joined: 11-October 10
Member No.: 8,381



Just a quick update.

I've made the TOW variant of the Stryker now (see pics below) and I've also adjusted the basic models slightly: moved the headlights; folded in the side mirrors; changed the colour of the M2's camo net and tidied up the the front of the Slat armour.

As for the config stuff, I tried doing what you suggested, D@V£ but I couldn't get it working for the life of me. To be honest, I'm just not smart enough to figure it out.

Thankfully though, RicoADF has offered to help me out with the programming side things. You guys really are helpful and I appreciate absolutely everything.

For now, here are a few more pics to enjoy. I'll keep you posted on any further developments.





 
Quote Post
ExplosiveAids
post Oct 16 2010, 15:47
Post #5


New Member
*

Group: Members
Posts: 9
Joined: 11-October 10
Member No.: 8,381



Update: RicoADF is awesome, it's official. In about a day and half, he'd written the config files for the Strykers and given them life. We now have a working addon.

I've uploaded the file to filefront so it should be ready to download soon (this is the first time I've used filefront so I have no idea how long it takes for a file to become available to download).

I'm about to post a thread on the Addons - Released forum with the link. Here are a few pics to whet your appetite:




Head over to the Addons - Released forum for more pics and a download link. Oh and if you like the addon, thank RicoADF for all his hard work smile.gif
 
Quote Post

Fast ReplyReply to this topicStart new topic
3 User(s) are reading this topic (3 Guests and 0 Anonymous Users)
0 Members:

 



Lo-Fi Version Time is now: 29th March 2024 - 05:36