Jump to content
Sign in to follow this  
waffendennis

Help needed on anims

Recommended Posts

Hello.

I Need some help with my config on a anim.

I made a new driver anim for Frandsen his spjeder jeep with M3, but now I want to use them in game:

As far as what i have made is:

The {; things arent right here but in the config they are.

( just a forum problem )

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

// some basic defines

#define TEast 0

#define TWest 1

#define TGuerrila 2

#define TCivilian 3

#define TSideUnknown 4

#define TEnemy 5

#define TFriendly 6

#define TLogic 7

#define true 1

#define false 0

// type scope

#define private 0

#define protected 1

#define public 2

class CfgPatches

{

class SpejderGD1

{

units[] = {SpejderGD1};

weapons[] = {};

requiredVersion = 1.30;

};

class mg62

{

units[] = {mg62};

requiredVersion = 1.01;

};

};

class CfgModels

{

class Default {};

class Car: default {};

class jeep: Car {};

class JeepMG: Jeep {};

class SpejderGD1: JeepMG {};

};

class CfgAmmo

{

class Default {};

class BulletSingle : Default {};

class mg62Ammo: BulletSingle {

hit=12;indirectHit=0.1;indirectHitRange=0.1;

minRange=20;minRangeProbab=0.80;

midRange=500;midRangeProbab=0.95;

maxRange=3000;maxRangeProbab=0.05;

cost=30;

};

};

class CfgWeapons

{

class Default{};

class MGun: Default{};

class MachineGun7_6: MGun{};

class MachineGun12_7: MachineGun7_6{};

class Browning: MachineGun12_7{};

class mg62: Browning

{

  ammo=mg62Ammo;

  displayName="mg62";

  displayNameMagazine="mg62";

  shortNameMagazine="mg62";

  count=1000;

  initSpeed=600;

  reloadTime=0.100000;

  dispersion=0.0015;

  sound[]={"\SpejderGD1\mg62\mg62.wav",db0,1};

                  soundContinuous=0;

  maxLeadSpeed=865;

aiRateOfFire=0.001; // delay between shots at given distance

aiRateOfFireDistance=1000; // at shorter distance delay goes lineary to zero

};

};

class CfgVehicles

{

class All {};

class AllVehicles: All {};

class Land: AllVehicles {};

class LandVehicle: Land {};

class Car: LandVehicle {};

class Jeep : Car {};

class SpejderGD1: Jeep

{

displayName="Spejder GD";

model=\SpejderGD1\SpejderGD1.p3d;

vehicleclass="Danish Army - Car";

picture="\SpejderGD1\Icons\inIcon";

icon="\SpejderGD1\Icons\icon.paa";

sensitivity=3.00;

maxSpeed=118;

side=TWest;

accuracy=0.50;

transportSoldier = 2;

armor=20; // total armor

armorStructural=6.0; // very low structural dammage

armorEngine=1.6

class IndicatorSpeed

{

selection = "ukaz_rychlo";

axis = "osa_rychlo";

angle = 188;

min = 0;

max = 40;

};

cost=30000;

fuelCapacity=50;

Crew="SoldierW";

cargoAction[]={"ManActjeepcodriverback","ManActjeepcodriverback"};

class TransportWeapons

            {

                class SGDWP2_WP1

                {

                Weapon="CarlGustavLauncher";

                count=1;

                };

                class SGDWP2_WP2

                {

                Weapon="Binocular";

                count=1;

                };

                class SGDWP2_WP3

                {

                Weapon="LAWLauncher";

                count=1;

                };

            };

class TransportMagazines

            {          

                 class SGDWP2_AM1

                 {

                 magazine="CarlGustavLauncher";

                 count=4;

                 };  

                 class SGDWP2_AM2

                 {

                 magazine="LAWLauncher";

                 count=2;

                 };

                 class SGDWP2_AM4

                 {

                 magazine="M4";

                 count=6;

                 };

                 class SGDWP2_AM5

                 {

                 magazine="Pipebomb";

                 count=4;

                 };

                 class SGDWP2_AM7

                 {

                 magazine="GrenadeLauncher";

                 count=10;

                 };

                 class SGDWP2_AM8

                 {

                 magazine="SmokeShellRed";

                 count=5;

                 };

         class SGDWP2_AM9

                 {

                 magazine="SmokeShellGreen";

                 count=5;

                 };

};

gunnerAction="ManActJeepCoDriver";

               driverAction = ManActGDDriver;

hasGunner=1;

castGunnerShadow=1;

castDriverShadow=1;

driverIsCommander=1;

scope=2;

weapons[]={"MG62"};

magazines[]={"MG62"};

gunnerOpticsModel="optika_empty";

class Turret

{

gunAxis="OsaHlavne";

turretAxis="OsaVeze";

soundServo[]={};

gunBeg="usti hlavne";

gunEnd="konec hlavne";

minElev=-12;

maxElev=40;

minTurn=-36;

maxTurn=36;

body="OtocVez";

gun="OtocHlaven";

};

class ViewGunner

{

initAngleX=5;

minAngleX=-30;

maxAngleX=30;

initAngleY=0;

minAngleY=0;

maxAngleY=0;

initFov=0.700000;

minFov=0.420000;

maxFov=0.850000;

};

class WeaponCloudsGun

{

cloudletDuration=0.300000;

cloudletAnimPeriod=1.000000;

cloudletSize=1.000000;

cloudletAlpha=1.000000;

cloudletGrowUp=1;

cloudletFadeIn=0.010000;

cloudletFadeOut=1;

cloudletAccY=0.400000;

cloudletMinYSpeed=0.200000;

cloudletMaxYSpeed=0.800000;

cloudletShape="cl_basic";

cloudletColor[]={1,1,1,0};

interval=0.050000;

size=3;

sourceSize=0.500000;

timeToLive=0;

initT=0;

deltaT=0;

class Table

{

class T0

{

maxT=0;

color[]={1,1,1,0};

};

};

};

class WeaponCloudsMGun: WeaponCloudsGun

{

cloudletGrowUp=0.050000;

cloudletFadeIn=0;

cloudletFadeOut=0.100000;

cloudletDuration=0.050000;

cloudletAlpha=0.300000;

cloudletAccY=0;

cloudletMinYSpeed=-100;

cloudletMaxYSpeed=100;

interval=0.020000;

size=0.300000;

sourceSize=0.020000;

};

class MGunClouds: WeaponCloudsMGun { };

};

class CfgVehicleActions

{

Driver="GDDriver";

};

class CfgMovesMC

{

class Default {};

class DefaultDie: Default {};

       class StandBase: Default {};

       class States

       {

class GDDriver : Default

{

actions = CfgVehicleActions;

file = \SpejderGD1\Anim\.rtm;

speed = -0.00; // negative - time is given

looped = false;

soundEnabled = false;

disableWeapons = false;

interpolateTo[]={CivilDying,0.1,CivilDyingVer2,0.1};

};

};

};

Well the problem now is:

The anim doesnt works, the player just floats in mid air ( the normal standing anim )

So could any one help me on fixing it?

Thnxs smile_o.gif

Share this post


Link to post
Share on other sites

probably something in the animation? I had the same problem where my guy was standing stiff in the ground... like he was buried...

Anyway why is that such a big cpp for just one animation?

crazy_o.gif

Share this post


Link to post
Share on other sites

For starters the path your anim is not referring to a file:

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

class GDDriver : Default

{

actions = CfgVehicleActions;

file = \SpejderGD1\Anim\.rtm;

speed = -0.00; // negative - time is given

looped = false;

soundEnabled = false;

disableWeapons = false;

interpolateTo[]={CivilDying,0.1,CivilDyingVer2,0.1};

};

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

file = \SpejderGD1\Anim\mynewanim.rtm;

Share this post


Link to post
Share on other sites

I also think by using the anim as a new driver animation you might need to define the new driver proxy

And prolly config'd as cfgvehicleactions

Share this post


Link to post
Share on other sites

Before you ask..take a look at the biscamel.cpp if you can ..heres a clip:

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

class CfgVehicleActions

{

BIScamelDriver="camelDriver";

BIScamelCargoRight="camelCargo";

BIScamelCargoLeft="camelCargo2";

};

class CfgMovesMC

{

class Default

{

};

class DefaultDie: Default

{

};

class States

{

class Driver: Default

{

};

class CamelDriver: Driver

{

file="\BIScamel\camelpilotstat.rtm";

speed=10000000000.000000;

looped=1;

variantsAI[]={"CamelDriverV1",0.700000,"CamelDriver"};

interpolateWith[]={"CamelDriverV1",0.500000};

equivalentTo="CamelDriver";

interpolationSpeed=1;

connectTo[]={"CamelDriverDying",1};

interpolateTo[]={"CamelDriverDying",0.100000};

};

class CamelDriverV1: CamelDriver

{

file="\BIScamel\camelpilot.rtm";

speed="- 4";

looped=1;

interpolateTo[]={"CamelDriverDying",0.100000};

};

class CamelDriverDying: DefaultDie

{

actions="NoActions";

file="\BIScamel\camelpilotsmrt.rtm";

speed="- 1";

looped=0;

soundEnabled=0;

connectFrom[]={"CamelDriver",1};

};

class CamelDriverDead: CamelDriverDying

{

actions="DeadActions";

file="\BIScamel\camelpilotsmrt2.rtm";

speed=10000000000.000000;

terminal=1;

connectFrom[]={"CamelDriverDying",1};

connectTo[]={"DeadState",1};

};

class Camelcargo: Driver

{

file="\BISCamel\camelcargo.rtm";

speed=10000000000.000000;

looped=1;

};

class Camelcargo2: Driver

{

file="\BISCamel\camelcargo2.rtm";

speed=10000000000.000000;

looped=1;

};

class CamelGrenadeThrow: Driver

{

file="\BISCamel\camelgranat.rtm";

speed=10000000000.000000;

looped=0;

};

};

};

class CfgModels

{

class Default

{

};

class Vehicle: Default

{

};

class BIScamel: Vehicle

{

sectionsInherit="Vehicle";

sections[]={"vrtule staticka","vrtule blur"};

};

class BIScamel2: BIScamel

{

};

class Man: Default

{

};

class BIScamelpilot: Man

{

};

class BIScamelpilot2: Man

{

};

};

Share this post


Link to post
Share on other sites

Now I have this: And it's still not working:

Quote[/b] ]

class CfgVehicleActions

{

WFD_CarDriver="WFD_CarDriver";

};

class CfgMovesMC

{

class Default {};

class DefaultDie: Default {};

class StandBase: Default {};

class States

{

class Driver: Default {};

class WFD_CarDriver: Driver

{

file = "\SpejderGD1\Anim\GDdriver.rtm";

speed=10000000000.000000;

looped=1;

variantsAI[]={"WFD_CarDriverV1",0.700000,"WFD_CarDriver"};

interpolateWith[]={"WFD_CarDriverV1",0.500000};

equivalentTo="WFD_CarDriver";

interpolationSpeed=1;

connectTo[]={"WFD_CarDriverDying",1};

};

class WFD_CarDriverV1: WFD_CarDriver

{

file="\SpejderGD1\Anim\GDdriver.rtm";

speed=-4;

looped=1;

};

class WFD_CarDriverDying: DefaultDie

{

actions="NoActions";

file="\SpejderGD1\Anim\smrt.rtm";

speed=-1;

looped=0;

soundEnabled=0;

connectFrom[]={"GDdriver",1};

};

};

};

Share this post


Link to post
Share on other sites

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

{

WFD_CarDriver="WFD_CarDriver";

}; // CfgVehicleActions

class CfgMovesMC

{

class Default {};

class DefaultDie: Default {};

class StandBase: Default {};

class States

{

class Driver: Default {};

#define VEH_DIE_CONN(Name,anim,time) \

class Name##Dying: DefaultDie \

{ \

actions = NoActions; \

file=anim##smrt.rtm; \

speed=-time; \

looped=false; \

soundEnabled=false; \

connectFrom[]={Name,1}; \

}; \

class Name##Dead: Name##Dying \

{ \

actions = DeadActions; \

file=anim##smrt2.rtm; \

speed=SPEED_STATIC; \

terminal = true; \

connectFrom[]={Name##Dying,1}; \

connectTo[]={DeadState,1}; \

}

#define VEHIN_MOVES_VAR(Name,anim,vartime) \

class Name: Driver \

{ \

file=anim##stat.rtm; \

speed=SPEED_STATIC; \

looped=true; \

variantsAI[]= {Name##V1,0.7,Name};\

interpolateWith[]={Name##V1,0.5};\

equivalentTo=Name; \

interpolationSpeed=1; \

connectTo[]={Name##Dying,1}; \

} \

class Name##V1: Name \

{ \

file=anim.rtm; \

speed=-vartime; \

looped=true; \

}

#define VEH_MOVES_VAR(Name,anim,time,vartime) \

VEHIN_MOVES_VAR(Name,anim,vartime); \

VEH_DIE_CONN(Name,anim,time)

VEH_MOVES_VAR(WFD_CarDriver,\SpejderGD1\Anim\GDdriver,1,8);

};

}; // CfgMovesMC

important are the lines

WFD_CarDriver="WFD_CarDriver"

and

VEH_MOVES_VAR(WFD_CarDriver,\SpejderGD1\Anim\GDdriver,1,8);

all the rest has to stay exactly the same

also you need the files:

GDdriver.rtm <-- animation

GDdriverSTAT.rtm <-- static version of first frame of GDdriver.rtm

GDdriverSMRT.rtm <-- dying animation

GDdriverSMRT2.rtm <-- dead state animation (last frame of dying animation)

if you use any special addon compiler like col. klinks, be sure if *.rtm files are included in the PBO

Share this post


Link to post
Share on other sites

try unPBO your file and look if the *.rtms are in it

I had the same error like you until I found out *.rtm files weren't included

Share this post


Link to post
Share on other sites

The .rtm's are included in the file, which leads me to believe that there's something messed about the .cpp. Here's the code in its entireity.

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

// some basic defines

#define TEast 0

#define TWest 1

#define TGuerrila 2

#define TCivilian 3

#define TSideUnknown 4

#define TEnemy 5

#define TFriendly 6

#define TLogic 7

#define true 1

#define false 0

// type scope

#define private 0

#define protected 1

#define public 2

class CfgPatches

{

class SpejderGD1

{

units[] = {SpejderGD1};

weapons[] = {};

requiredVersion = 1.30;

};

class mg62

{

units[] = {mg62};

requiredVersion = 1.01;

};

};

class CfgModels

{

class Default {};

class Car: default {};

class jeep: Car {};

class JeepMG: Jeep {};

class SpejderGD1: JeepMG {};

};

class CfgAmmo

{

class Default {};

class BulletSingle : Default {};

class mg62Ammo: BulletSingle {

hit=12;indirectHit=0.1;indirectHitRange=0.1;

minRange=20;minRangeProbab=0.80;

midRange=500;midRangeProbab=0.95;

maxRange=3000;maxRangeProbab=0.05;

cost=30;

};

};

class CfgWeapons

{

class Default{};

class MGun: Default{};

class MachineGun7_6: MGun{};

class MachineGun12_7: MachineGun7_6{};

class Browning: MachineGun12_7{};

class mg62: Browning

{

ammo=mg62Ammo;

displayName="mg62";

displayNameMagazine="mg62";

shortNameMagazine="mg62";

count=1000;

initSpeed=600;

reloadTime=0.100000;

dispersion=0.0015;

sound[]={"\SpejderGD1\mg62\mg62.wav",db0,1};

soundContinuous=0;

maxLeadSpeed=865;

aiRateOfFire=0.001; // delay between shots at given distance

aiRateOfFireDistance=1000; // at shorter distance delay goes lineary to zero

};

};

class CfgVehicles

{

class All {};

class AllVehicles: All {};

class Land: AllVehicles {};

class LandVehicle: Land {};

class Car: LandVehicle {};

class Jeep : Car {};

class SpejderGD1: Jeep

{

displayName="Spejder GD";

model=\SpejderGD1\SpejderGD1.p3d;

vehicleclass="Danish Army - Car";

picture="\SpejderGD1\Icons\inIcon";

icon="\SpejderGD1\Icons\icon.paa";

sensitivity=3.00;

maxSpeed=118;

side=TWest;

accuracy=0.50;

transportSoldier = 2;

armor=20; // total armor

armorStructural=6.0; // very low structural dammage

armorEngine=1.6

class IndicatorSpeed

{

selection = "ukaz_rychlo";

axis = "osa_rychlo";

angle = 188;

min = 0;

max = 40;

};

cost=30000;

fuelCapacity=50;

Crew="SoldierW";

cargoAction[]={"ManActjeepcodriverback","ManActjeepcodriverback"};

class TransportWeapons

{

class SGDWP2_WP1

{

Weapon="CarlGustavLauncher";

count=1;

};

class SGDWP2_WP2

{

Weapon="Binocular";

count=1;

};

class SGDWP2_WP3

{

Weapon="LAWLauncher";

count=1;

};

};

class TransportMagazines

{

class SGDWP2_AM1

{

magazine="CarlGustavLauncher";

count=4;

};

class SGDWP2_AM2

{

magazine="LAWLauncher";

count=2;

};

class SGDWP2_AM4

{

magazine="M4";

count=6;

};

class SGDWP2_AM5

{

magazine="Pipebomb";

count=4;

};

class SGDWP2_AM7

{

magazine="GrenadeLauncher";

count=10;

};

class SGDWP2_AM8

{

magazine="SmokeShellRed";

count=5;

};

class SGDWP2_AM9

{

magazine="SmokeShellGreen";

count=5;

};

};

gunnerAction="ManActJeepCoDriver";

driverAction=ManActWFD_CarDriver;

hasGunner=1;

castGunnerShadow=1;

castDriverShadow=1;

driverIsCommander=1;

scope=2;

weapons[]={"MG62"};

magazines[]={"MG62"};

gunnerOpticsModel="optika_empty";

class Turret

{

gunAxis="OsaHlavne";

turretAxis="OsaVeze";

soundServo[]={};

gunBeg="usti hlavne";

gunEnd="konec hlavne";

minElev=-12;

maxElev=40;

minTurn=-36;

maxTurn=36;

body="OtocVez";

gun="OtocHlaven";

};

class ViewGunner

{

initAngleX=5;

minAngleX=-30;

maxAngleX=30;

initAngleY=0;

minAngleY=0;

maxAngleY=0;

initFov=0.700000;

minFov=0.420000;

maxFov=0.850000;

};

class WeaponCloudsGun

{

cloudletDuration=0.300000;

cloudletAnimPeriod=1.000000;

cloudletSize=1.000000;

cloudletAlpha=1.000000;

cloudletGrowUp=1;

cloudletFadeIn=0.010000;

cloudletFadeOut=1;

cloudletAccY=0.400000;

cloudletMinYSpeed=0.200000;

cloudletMaxYSpeed=0.800000;

cloudletShape="cl_basic";

cloudletColor[]={1,1,1,0};

interval=0.050000;

size=3;

sourceSize=0.500000;

timeToLive=0;

initT=0;

deltaT=0;

class Table

{

class T0

{

maxT=0;

color[]={1,1,1,0};

};

};

};

class WeaponCloudsMGun: WeaponCloudsGun

{

cloudletGrowUp=0.050000;

cloudletFadeIn=0;

cloudletFadeOut=0.100000;

cloudletDuration=0.050000;

cloudletAlpha=0.300000;

cloudletAccY=0;

cloudletMinYSpeed=-100;

cloudletMaxYSpeed=100;

interval=0.020000;

size=0.300000;

sourceSize=0.020000;

};

class MGunClouds: WeaponCloudsMGun { };

};

class CfgVehicleActions

{

WFD_CarDriver="WFD_CarDriver";

}; // CfgVehicleActions

class CfgMovesMC

{

class Default {};

class DefaultDie: Default {};

class StandBase: Default {};

class States

{

class Driver: Default {};

#define VEH_DIE_CONN(Name,anim,time) \

class Name##Dying: DefaultDie \

{ \

actions = NoActions; \

file=anim##smrt.rtm; \

speed=-time; \

looped=false; \

soundEnabled=false; \

connectFrom[]={Name,1}; \

}; \

class Name##Dead: Name##Dying \

{ \

actions = DeadActions; \

file=anim##smrt2.rtm; \

speed=SPEED_STATIC; \

terminal = true; \

connectFrom[]={Name##Dying,1}; \

connectTo[]={DeadState,1}; \

}

#define VEHIN_MOVES_VAR(Name,anim,vartime) \

class Name: Driver \

{ \

file=anim##stat.rtm; \

speed=SPEED_STATIC; \

looped=true; \

variantsAI[]= {Name##V1,0.7,Name};\

interpolateWith[]={Name##V1,0.5};\

equivalentTo=Name; \

interpolationSpeed=1; \

connectTo[]={Name##Dying,1}; \

} \

class Name##V1: Name \

{ \

file=anim.rtm; \

speed=-vartime; \

looped=true; \

}

#define VEH_MOVES_VAR(Name,anim,time,vartime) \

VEHIN_MOVES_VAR(Name,anim,vartime); \

VEH_DIE_CONN(Name,anim,time)

VEH_MOVES_VAR(WFD_CarDriver,\SpejderGD1\Anim\GDdriver,1,8);

};

}; // CfgMovesMC

What happens is that once you put the pbo into your addons folder and try to start up OFP 'The Countdown Begins...' and then OFP crashes to desktop.

Any ideas?

Anton

Share this post


Link to post
Share on other sites

driverAction=ManActWFD_CarDriver;

to

driverAction="ManActWFD_CarDriver"; ?

Share this post


Link to post
Share on other sites

I was looking in another addon that has a custom driver, but I saw the manact with no quotes...i'll try it anyway...

Thanks Hardrock!

Anton

Share this post


Link to post
Share on other sites

No, that doesn't seem to be the problem....which makes me think that maybe (unless there's an error which all of us have skipped) that the problem isn't in the cpp...

What else can it be?

Anton

[Edit: I seem to say 'leads me to believe' a lot...like I'm Sherlock Holmes or something...] biggrin_o.gif

Share this post


Link to post
Share on other sites

Well I'm not sure but...The 'places' where your units is placed doesn't seem defined.Like in the BISCamel

Quote[/b] ]

class CfgVehicleActions

{

BIScamelDriver="camelDriver";

BIScamelCargoRight="camelCargo";

BIScamelCargoLeft="camelCargo2";

Share this post


Link to post
Share on other sites

I'm pretty sure we did that right here:

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

class CfgVehicleActions

{

WFD_CarDriver="WFD_CarDriver";

Anton

Share this post


Link to post
Share on other sites

So nobody has any ideas?

Can anyone even tell me if the cpp is alright in its current state?

Anton

Share this post


Link to post
Share on other sites

Can you post your whole current config?

Its hard to say with all that weapon clouds stuff,i cant say if thats all right

But I dont think you did look at the biscamel config yet because I think we are at a point of defining your new driver proxies as cfgnonaivehicles

and making sure the driver/cargo actions match the proxies

I would need to see your current config and the p3d names of the proxies that you placed as vehicle positions in o2

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  

×