Jump to content
Babylon1984

Steam under the flight deck of the aircraft carrier

Recommended Posts

Hi everyone, 😀


Today, i would like to add a steam effect under the flight deck of the aircraft carrier.

 

I have placed 4 aircraft on the 4 catapults, and I have a trigger that activates a script allowing the aircraft to take off (with the blast deflector panel animation), but...

I would like to add the steam effect under the flight deck of the aircraft carrier on each catapult.


How can I do this?

?imw=637&imh=358&ima=fit&impolicy=Letter

As shown in the image.

The idea would be that after the script starts (which works with the 'go' trigger), another trigger adds the steam effect for all the catapults on the aircraft carrier.

Name of the aircraft carrier variable:
Freedom

Trigger that activates the steam effect:

- Condition :

triggerActivated go

- On Act
??????

Does anyone have an idea?😕

Share this post


Link to post
Share on other sites

I took some times working around this effect. Not a article specialist, but motivated (souvenir!):

 

[] spawn {
  private _pos1 = allMissionObjects "Land_Carrier_01_hull_04_1_F" #0 modelToWorld [-18.3,-3,18.5];
  private _pos2 = allMissionObjects "Land_Carrier_01_hull_04_2_F" #0 modelToWorld [3,-3,18.5];
  private _pos3 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0 modelToWorld [12.7,-17,18.5];
  private _pos4 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0 modelToWorld [-2.6,-37.3,18.5];
 
  private _ps1 = "#particlesource" createVehicleLocal _pos1;  
  _ps1 setParticleParams [  
    ["\A3\Data_F\ParticleEffects\Universal\Universal", 16, 7, 16, 1], "", "Billboard",  
    0, 3, [0, 0, 0], [0,0, 0.0001],0, 1.28, 1, .5, [.5, .7, 1],  
    [[1, 1,1, 0.05], [1, 1, 1, 0.25], [1, 1, 1, 0.05], [1, 1, 1, 0.225], [1, 1,1, 0]],  
    [0], 1, 0.05, "", "", _ps1
  ];  
  _ps1 setParticleRandom [0.5, [0.1, 0.1, 0.1], [1, 1,1], 0.2, 0.3, [0, 0, 0, 0], 0, 0, 45, 0];
  _ps1 setDropInterval 0.03;  
 
  private _ps2 = "#particlesource" createVehicleLocal _pos2;  
  _ps2 setParticleParams [  
    ["\A3\Data_F\ParticleEffects\Universal\Universal", 16, 7, 16, 1], "", "Billboard",  
    0, 3, [0, 0, 0], [0,0, 0.0001],0, 1.28, 1, .5, [.5, .7, 1],  
    [[1, 1,1, 0.05], [1, 1, 1, 0.25], [1, 1, 1, 0.05], [1, 1, 1, 0.225], [1, 1,1, 0]],  
    [0], 1, 0.05, "", "", _ps2
  ];  
  _ps2 setParticleRandom [0.5, [0.1, 0.1, 0.1], [1, 1,1], 0.2, 0.3, [0, 0, 0, 0], 0, 0, 45, 0];
  _ps2 setDropInterval 0.03;
 
  private _ps3 = "#particlesource" createVehicleLocal _pos3;  
  _ps3 setParticleParams [  
    ["\A3\Data_F\ParticleEffects\Universal\Universal", 16, 7, 16, 1], "", "Billboard",  
    0, 3, [0, 0, 0], [0,0, 0.0001],0, 1.28, 1, .5, [.5, .7, 1],  
    [[1, 1,1, 0.05], [1, 1, 1, 0.25], [1, 1, 1, 0.05], [1, 1, 1, 0.225], [1, 1,1, 0]],  
    [0], 1, 0.05, "", "", _ps3
  ];  
  _ps3 setParticleRandom [0.5, [0.1, 0.1, 0.1], [1, 1,1], 0.2, 0.3, [0, 0, 0, 0], 0, 0, 45, 0];
  _ps3 setDropInterval 0.03;
 
  private _ps4 = "#particlesource" createVehicleLocal _pos4;  
  _ps4 setParticleParams [  
    ["\A3\Data_F\ParticleEffects\Universal\Universal", 16, 7, 16, 1], "", "Billboard",  
    0, 3, [0, 0, 0], [0,0, 0.0001],0, 1.28, 1, .5, [.5, .7, 1],  
    [[1, 1,1, 0.05], [1, 1, 1, 0.25], [1, 1, 1, 0.05], [1, 1, 1, 0.225], [1, 1,1, 0]],  
    [0], 1, 0.05, "", "", _ps4
  ];  
  _ps4 setParticleRandom [0.5, [0.1, 0.1, 0.1], [1, 1,1], 0.2, 0.3, [0, 0, 0, 0], 0, 0, 45, 0];
  _ps4 setDropInterval 0.03;
};

 

See also...

 

  • Thanks 2

Share this post


Link to post
Share on other sites

Hi and thank you very much pierremgi for your intervention, your script works very well.

It's a good start!

When my trigger activates, the steam particle effects appear on each catapult of the aircraft carrier. 
Which is exactly what I wanted. 😁

From your script, how can I multiply the steam effect so that it spreads along the entire length of the rails?

Share this post


Link to post
Share on other sites

Test:


 

[] spawn {
  private _shuttle1 = allMissionObjects "Land_Carrier_01_hull_04_1_F" #0;
  private "_ps1";
  for "_i" from 0 to 116 do {
    _ps1 = "#particlesource" createVehicleLocal (_shuttle1 modelToWorldVisual [-18.3+_i/34,-3-_i,18.5]);
    _ps1 setParticleParams [
      ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
      0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
      [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
      [0],0.5,0.2,"","", _ps1
    ];
    _ps1 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
    _ps1 setDropInterval 0.1;
  };

  private _shuttle2 = allMissionObjects "Land_Carrier_01_hull_04_2_F" #0;
  private "_ps2";
  for "_i" from 0 to 116 do {
    _ps2 = "#particlesource" createVehicleLocal (_shuttle2 modelToWorldVisual [3+_i/10.2,-3-_i,18.5]);
    _ps2 setParticleParams [
      ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
      0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
      [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
      [0],0.5,0.2,"","", _ps2
    ];
    _ps2 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
    _ps2 setDropInterval 0.1;
  };

  private _shuttle3 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0;
  private "_ps3";
  for "_i" from 0 to 116 do {
    _ps3 = "#particlesource" createVehicleLocal (_shuttle3 modelToWorldVisual [12.7,-17-_i,18.5]);
    _ps3 setParticleParams [
      ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
      0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
      [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
      [0],0.5,0.2,"","",_ps3
    ];
    _ps3 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
    _ps3 setDropInterval 0.1;
  };

  private _shuttle4 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0;
  private "_ps4";
  for "_i" from 0 to 116 do {
    _ps4 = "#particlesource" createVehicleLocal (_shuttle4 modelToWorldVisual [-2.6+_i/16,-37.3-_i,18.5]);
    _ps4 setParticleParams [
      ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1],"","Billboard",
      0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
      [[1,1,1,0.05],[1, 1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
      [0],0.5,0.2,"","",_ps4
    ];
    _ps4 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
    _ps4 setDropInterval 0.1;
  };
};

You can decrease the setDropInterval (as former script) but may be resource consuming with 4 catapults.

  • Like 2

Share this post


Link to post
Share on other sites

Nice work pierremgi. Very cool looking effect.

Share this post


Link to post
Share on other sites

A big thank you to you pierremgi, it's exactly what I wanted to do. But it's not over, I'm still aiming for the goal. 😁

Here is the result of your second script in images :

LAffEqk.jpeg uNWB1HD.jpeg

Recapitulation, the 4 planes are piloted by IA, I use a script that triggers with the trigger "go", and makes them take off using the deflectors of the aircraft carrier.

Trigger that activates the steam effect :
- variable name : Steam_effect
- Condition :

triggerActivated go

- On Act :
(Putting the second script of pierremgi)

OK.

To recover the system resources. I need the effect of the trigger "Steam_effect" to stop.
I would like to use another trigger that we will call "Steam_effect_stop", which will stop the steam effect after 75 seconds (time needed for all 4 planes to leave the aircraft carrier).

New trigger :
- variable name : Steam_effect_stop
- Condition :

triggerActivated Steam_effect

- On Act :
This is where I have a small problem, I thought I could use this command in the "On Act" :

Steam_effect setTriggerStatements ["FALSE", "", ""];

- Timer Values : 75/75/75

But it doesn't work. 😕

I tried to make a script that deactivates the effect after 75 seconds using "_x" and a "forEach" loop.

Like this :

[] spawn {
  Steam_effect_particles = _particleSources;
  
  sleep 75;

  {
    deleteVehicle _x;
  } forEach Steam_effect_particles;
};

But, it doesn't work...😒

Can you advise me? Is this a good structure to deactivate the steam effect along the rails?

Or should we use "deleteVehicle" on "_ps1", "_ps2", "_ps3", "_ps4"?

Or do you have something else to put in "On Act" of the trigger "Steam_effect_stop"?
 

Thank you in advance for your help.

  • Like 1

Share this post


Link to post
Share on other sites

OK, approaching the real life... but little bit laggy (for me)

The steam is not visible while the deflector is down;
as soon as the deflector rises, the steam appears;
the deflector is retracted;
30 sec sleep;
The steam disappear;
the steam is visible as soon as the deflector rises again.... and so on.
 

private _shuttle1 = allMissionObjects "Land_Carrier_01_hull_04_2_F" #0;
private _shuttle2 = allMissionObjects "Land_Carrier_01_hull_04_1_F" #0;
private _shuttle3 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0;
private _shuttle4 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0;

_shuttle1 spawn {
  params ["_shuttle1"];
  private _partArray1 = [];
  while {TRUE} do {
    waitUntil {sleep 0.5; _shuttle1 animationPhase "deflector_1" > 0};
    private "_ps1";
    for "_i" from 0 to 116 do {
      _ps1 = "#particlesource" createVehicleLocal (_shuttle1 modelToWorldVisual [3+_i/10.2,-3-_i,18.5]);
      _ps1 setParticleParams [
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
        [0],0.5,0.2,"","", _ps1
      ];
      _ps1 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
      _ps1 setDropInterval 0.1;
      _partArray1 pushBack _ps1;
    };
    waitUntil {sleep 0.5; _shuttle1 animationPhase "deflector_1" == 0};
    sleep 30;
    {deleteVehicle _x} count _partArray1;
  };
};
_shuttle2 spawn {
  params ["_shuttle2"];
  private _partArray2 = [];
  while {TRUE} do {
    waitUntil {sleep 0.5; _shuttle2 animationPhase "deflector_2" > 0};
    private "_ps2";
    for "_i" from 0 to 116 do {
      _ps2 = "#particlesource" createVehicleLocal (_shuttle2 modelToWorldVisual [-18.3+_i/34,-3-_i,18.5]);
      _ps2 setParticleParams [
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
        [0],0.5,0.2,"","", _ps2
      ];
      _ps2 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
      _ps2 setDropInterval 0.1;
      _partArray2 pushBack _ps2;
    };
    waitUntil {sleep 0.5; _shuttle2 animationPhase "deflector_2" == 0};
    sleep 30;
    {deleteVehicle _x} count _partArray2;
  };
};
_shuttle3 spawn {
  params ["_shuttle3"];
  private _partArray3 = [];
  while {TRUE} do {
    waitUntil {sleep 0.5; _shuttle3 animationPhase "deflector_3" > 0};
    private "_ps3";
    for "_i" from 0 to 116 do {
      _ps3 = "#particlesource" createVehicleLocal (_shuttle3 modelToWorldVisual [-2.6+_i/16,-37.3-_i,18.5]);
      _ps3 setParticleParams [
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
        [0],0.5,0.2,"","", _ps3
      ];
      _ps3 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
      _ps3 setDropInterval 0.1;
      _partArray3 pushBack _ps3;
    };
    waitUntil {sleep 0.5; _shuttle3 animationPhase "deflector_3" == 0};
    sleep 30;
    {deleteVehicle _x} count _partArray3;
  };
};
_shuttle4 spawn {
  params ["_shuttle4"];
  private _partArray4 = [];
  while {TRUE} do {
    waitUntil {sleep 0.5; _shuttle4 animationPhase "deflector_4" > 0};
    private "_ps4";
    for "_i" from 0 to 116 do {
      _ps4 = "#particlesource" createVehicleLocal (_shuttle4 modelToWorldVisual [12.7,-17-_i,18.5]);
      _ps4 setParticleParams [
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard",
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2],
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]],
        [0],0.5,0.2,"","", _ps4
      ];
      _ps4 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0];
      _ps4 setDropInterval 0.1;
      _partArray4 pushBack _ps4;
    };
    waitUntil {sleep 0.5; _shuttle4 animationPhase "deflector_4" == 0};
    sleep 30;
    {deleteVehicle _x} count _partArray4;
  };
};

 

Don't forget the wind on deck for better effect. Steam subject also to vortex of helo rotor...

  • Thanks 2

Share this post


Link to post
Share on other sites

Yeah, that's exactly it!!! 😀
 

2 hours ago, pierremgi said:

Don't forget the wind on deck for better effect. Steam subject also to vortex of helo rotor..


You are right, I had already noticed that when an airplane flies over it.

Here is the result of your third script in image :

QO9ZaJs.jpeg uC4HX24.jpeg 

3ZxZcGa.jpeg

Your script is a marvel, the steam appears as soon as a deflector panel is raised. When the panel lowers, it disappears (after 30 seconds). 😁

In the last image, we can see that the deflector panels are folded down and the steam effect has completely disappeared. :rthumb:
This will free up system resources during gameplay.

PS: With all this, I don't need to add the 'Steam_effect_stop' trigger. One less trigger to worry about! Yes!!!!

======================================================================================
In summary, the 4 planes are piloted by AI. I use a script that triggers with the "go" trigger and makes them take off using the aircraft carrier's deflectors.

Trigger that activates the steam effect :
- variable name : Steam_effect
- Condition :

triggerActivated go

- On Act :

private _shuttle1 = allMissionObjects "Land_Carrier_01_hull_04_2_F" #0; 
private _shuttle2 = allMissionObjects "Land_Carrier_01_hull_04_1_F" #0; 
private _shuttle3 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0; 
private _shuttle4 = allMissionObjects "Land_Carrier_01_hull_07_1_F" #0; 
 
_shuttle1 spawn { 
  params ["_shuttle1"]; 
  private _partArray1 = []; 
  while {TRUE} do { 
    waitUntil {sleep 0.5; _shuttle1 animationPhase "deflector_1" > 0}; 
    private "_ps1"; 
    for "_i" from 0 to 116 do { 
      _ps1 = "#particlesource" createVehicleLocal (_shuttle1 modelToWorldVisual [3+_i/10.2,-3-_i,18.5]); 
      _ps1 setParticleParams [ 
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard", 
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2], 
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]], 
        [0],0.5,0.2,"","", _ps1 
      ]; 
      _ps1 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0]; 
      _ps1 setDropInterval 0.1; 
      _partArray1 pushBack _ps1; 
    }; 
    waitUntil {sleep 0.5; _shuttle1 animationPhase "deflector_1" == 0}; 
    sleep 30; 
    {deleteVehicle _x} count _partArray1; 
  }; 
}; 
 
_shuttle2 spawn { 
  params ["_shuttle2"]; 
  private _partArray2 = []; 
  while {TRUE} do { 
    waitUntil {sleep 0.5; _shuttle2 animationPhase "deflector_2" > 0}; 
    private "_ps2"; 
    for "_i" from 0 to 116 do { 
      _ps2 = "#particlesource" createVehicleLocal (_shuttle2 modelToWorldVisual [-18.3+_i/34,-3-_i,18.5]); 
      _ps2 setParticleParams [ 
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard", 
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2], 
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]], 
        [0],0.5,0.2,"","", _ps2 
      ]; 
      _ps2 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0]; 
      _ps2 setDropInterval 0.1; 
      _partArray2 pushBack _ps2; 
    }; 
    waitUntil {sleep 0.5; _shuttle2 animationPhase "deflector_2" == 0}; 
    sleep 30; 
    {deleteVehicle _x} count _partArray2; 
  }; 
}; 
 
_shuttle3 spawn { 
  params ["_shuttle3"]; 
  private _partArray3 = []; 
  while {TRUE} do { 
    waitUntil {sleep 0.5; _shuttle3 animationPhase "deflector_3" > 0}; 
    private "_ps3"; 
    for "_i" from 0 to 116 do { 
      _ps3 = "#particlesource" createVehicleLocal (_shuttle3 modelToWorldVisual [-2.6+_i/16,-37.3-_i,18.5]); 
      _ps3 setParticleParams [ 
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard", 
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2], 
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]], 
        [0],0.5,0.2,"","", _ps3 
      ]; 
      _ps3 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0]; 
      _ps3 setDropInterval 0.1; 
      _partArray3 pushBack _ps3; 
    }; 
    waitUntil {sleep 0.5; _shuttle3 animationPhase "deflector_3" == 0}; 
    sleep 30; 
    {deleteVehicle _x} count _partArray3; 
  }; 
}; 
 
_shuttle4 spawn { 
  params ["_shuttle4"]; 
  private _partArray4 = []; 
  while {TRUE} do { 
    waitUntil {sleep 0.5; _shuttle4 animationPhase "deflector_4" > 0}; 
    private "_ps4"; 
    for "_i" from 0 to 116 do { 
      _ps4 = "#particlesource" createVehicleLocal (_shuttle4 modelToWorldVisual [12.7,-17-_i,18.5]); 
      _ps4 setParticleParams [ 
        ["\A3\Data_F\ParticleEffects\Universal\Universal",16,9,16,1], "", "Billboard", 
        0,2,[0,0,0],[0,0,0.0001],0,1.28,1,1,[0.4,0.8,0.2], 
        [[1,1,1,0.05],[1,1,1,0.25],[1,1,1,0.05],[1,1,1,0.225],[1,1,1,0.05]], 
        [0],0.5,0.2,"","", _ps4 
      ]; 
      _ps4 setParticleRandom [0.5,[0.1,0.1,0.1],[1,1,1],0.2,0.3,[0,0,0,0],0,0,45,0]; 
      _ps4 setDropInterval 0.1; 
      _partArray4 pushBack _ps4; 
    }; 
    waitUntil {sleep 0.5; _shuttle4 animationPhase "deflector_4" == 0}; 
    sleep 30; 
    {deleteVehicle _x} count _partArray4; 
  }; 
};

Done.

Note: I took the liberty of fixing something in your script. Eden Editor did not accept it without spacing between }; and _shuttle2 ... 3 and 4😊

I hope this post will help other people. I thank you very much for your help and experience; it was really fun to test.
 

There might still be the addition of landing signal officers. But I'll leave that for later... 
I have some interesting scripts to look at, dissect, and research that deal with this topic.
That's already plenty for now.


See you soon and a big thank you to you, pierremgi.

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

×