Jump to content
Sign in to follow this  
alexboy

Help with FLARE ANIMATION / Pattern

Recommended Posts

I have been making a C-130 for Arma 2 co, and i was wondering if anyone out there could help me make a flare pattern called "Angel" flare pattern, its what C-130 / AC-130 use , its a T shaped flare pattern

an example ==>

any help will be appreciated.

=========================== EDIT =====================

this is in flarelauncher.sqs

_plane = _this select 0

?(not alive _plane) or (not isengineon _plane): exit

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[10 + random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-10 - random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[10 + random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-10 - random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[10 + random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-10 - random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[10 + random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

~0.2

drop["\Ca\Data\kouleSvetlo","","Billboard",0.05,10,[0,-10,1],[-10 - random 10,speed _plane,50 + (speed _plane)/2],0,2.8,1,0.1,[3],[[1,1,0.3,1]],[0,1],0.1,0,"\c130kJ\scr\smokes.sqs","",_plane]

_plane say "nzdf_c130_flarelaunch"

#flareoff

exit

it gives error, but wont tell me whats the errors......

Edited by alexboy

Share this post


Link to post
Share on other sites

Ok, just a thought mate, instead of bothering with extra scripts why not use ARMA 2 built in flare launcher and just alter it’s fire sequence and direction. To do that in your model add three sets of memory points:

flare_launcher1, flare_launcher2, flare_launcher3

flare_launcher1_dir, flare_launcher2_dir, flare_launcher3_dir

flares_momory_points_zpsdbf907b9.jpg

where flare_launcher1 for example is the point where flare will originate, and flare_launcher1_dir will be the direction of flare fired.

In your addons config.cpp add following lines to tell game engine flare launch position and direction.

memoryPointCM[] = {"flare_launcher1", "flare_launcher2", "flare_launcher3"};

memoryPointCMDir[] = {"flare_launcher1_dir", "flare_launcher2_dir", "flare_launcher3_dir"};

Also since we want 3 flares/chaffs fired we will need to alter launcher as well since original ARMA 2 flarelauncher fires two flares/chaffs at the time. To do that in your config.cpp add custom flarelauncher inheriting all weapon and magazine settings from ARMA 2 original flarelauncher just with slight changes to fire 3 instead of two flares at once.

Hope this helps mate

Share this post


Link to post
Share on other sites

oh.... ok ill do this its much easier..... i was trying to create a custom flare pattern called the angel flare system... its what

C-130/AC-130 gunships use as their defense systems... its a T / J with a _ it the top shape flare it looks amazing but its easier to do this way and not go so indepth so i can work on other models...

thanks for your reply it helped a lot

Share this post


Link to post
Share on other sites

also if you choose to go with scripted flare drop animation then you also need a script that reacts/is trigered when incoming missile is close and captures the nearest object and redirects it. othervise you will have just visual flares/chaff droped but no effect to spoof the missile (so it will hit your aircraft anyway). Also about how the final flare pattern can look - i'll disagree a BIS flare system might be adjusted so its suits your needs and looks as good as scripted one, play with memory points and directions how they are placed and also look in cmflarelauncher config in weapons_e for more adjustable patter (like flare drop speed, sequence) you can model your own flare dispenser weapon using BIS ammo and that will also work to dodge the actual incoming missile. At least worked for me on FA18.

John

Share this post


Link to post
Share on other sites

so you manipulated the BIS ammo / weapons_e to make the flare go the way you wanted ???

===edit=====

so i checked weapons_e and i cant find cmflarelauncher.config..... :/ in there

Edited by alexboy

Share this post


Link to post
Share on other sites

ArmA 2 Ca\Data\ParticleEffects\SCRIPTS\muzzle\flares.sqf is how they are generated in game. Like John_Spartan says, if you add/edit the number of flare_launcher%1 points in your model, it will be created for you. Or you can do what MMA does, and create your own flare patterns. Check out Mandochaffflaredraw_c130.sqf if interested. Of course Mando's works as a deterrent to missiles, using the whole MMA system

Share this post


Link to post
Share on other sites

Ok, just tested with on my plane it works so, in case someone else is looking for similar solution.

- first add all three sets of memory points for flare position and dir (put them in T shaped pattern like you want)

flare_launcher1, flare_launcher2, flare_launcher3

flare_launcher1_dir, flare_launcher2_dir, flare_launcher3_dir

THE WAY THEY ARE PLACED WILL DETERMINATE HOW FLARES ARE FIERED DIRECTION VISE

- then in your config cpp for your units config class add following lines:

memoryPointCM[] = {"flare_launcher1", "flare_launcher2", "flare_launcher3"};

memoryPointCMDir[] = {"flare_launcher1_dir", "flare_launcher2_dir", "flare_launcher3_dir"};

and add cfg weapons aswell in your config cpp

class CfgWeapons

{

class Default; // External class reference

class MGunCore; // External class reference

class LauncherCore; // External class reference

class CannonCore; // External class reference

class GAU12 : CannonCore {};

class MissileLauncher : LauncherCore {};

class SidewinderLaucher : MissileLauncher {};

class HellfireLauncher : MissileLauncher {};

class RocketPods : LauncherCore {};

class BombLauncher : RocketPods {};

class CMFlareLauncher; // External class reference

class Alex_CMFlareLauncher : CMFlareLauncher

{

scope = public;

//add whatever name you want for your weapons dispay name

displayName = "Chaff/Flare launcher";

magazines[] = {"240Rnd_CMFlare_Chaff_Magazine"};

magazineReloadTime = 0.2;

simulation = "cmlauncher";

modes[] = {"Single", "Burst", "AIBurst"};

class Mode_SemiAuto; // External class reference

class Single : Mode_SemiAuto {

//this value here is the delay between single flares fiered change it to archive better visual match to desiered pattern

reloadTime = 0.35;

//this number here is how meny flare instances are fiered

burst = 5;

sound[] = {"\Ca\sounds\Weapons\cannon\grenadelauncher_1", db-10, 1, 300};

showToPlayer = true;

// changed from 2 to 3 to simulate 3 flares at once (so 5 instances multiplied on 3 = 15 at once)

multiplier = 3;

minRange = 0;

displayName = "Single";

maxRange = 200;

soundBurst = 0;

recoil = "recoil_empty";

};

class Mode_Burst; // External class reference

class Burst : Mode_Burst {

reloadTime = 0.35;

burst = 5;

displayName = "Burst";

sound[] = {"\Ca\sounds\Weapons\cannon\grenadelauncher_1", db-10, 1, 300};

showToPlayer = true;

// changed from 2 to 3 to simulate 3 flares at once (so 5 instances multiplied on 3 = 15 at once)

multiplier = 3;

minRange = 0;

maxRange = 0;

soundBurst = 0;

recoil = "recoil_empty";

};

class AIBurst : Burst {

burst = 5;

displayName = "Burst";

showToPlayer = false;

minRange = 200;

maxRange = 10000;

soundBurst = 0;

recoil = "recoil_empty";

};

};

};

and final touch in your plane weapons in config cpp add:

weapons[] = { "Alex_CMFlareLauncher"};

magazines[] = {"240Rnd_CMFlare_Chaff_Magazine"};

try it out might need some adjustments but in general it works and also it works for AI and it dodges the actual incoming missile

Share this post


Link to post
Share on other sites

@Batchlahawk

man there is a BI tools set for basic editing of ARMA sries games. Oygen 2 PE is a BI released modelling program within this pack. But what mostly is done, mod designers create HD models in any 3D software and latter port to .p3d format. In O2 model is finalized and prepared for ARMA engine to be used in game.

Regarding modelling itself search the forums there are plenty of tutorials and explanaitions available. A2 and A3 models are quite similar, with few additions [as fasr as we know at this moment].

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  

×