vastiny 21 Posted July 13, 2016 I've been trying to spawn a smoke screen on an invisible helipad, problem is I'm having trouble finding the correct classname for it. I started off by trying to use like 50 invisible helipads in a circle and create a normal SmokeShell at each of them - turns out you need a LOT of those to make a convincing smoke screen :blink: After that I tried the "SmokeLauncher" classname which I tracked down to be the smoke screen you can deploy from vehicles such as Ifrits, etc. However it seems to be incorrect as no smoke screen appears I've googled for the Smoke screen's classname and "SmokeLauncher" is all I've came up with, but clearly it doesn't want to work that way Share this post Link to post Share on other sites
Grumpy Old Man 3547 Posted July 13, 2016 If you know the center position where to launch the smoke from you can easily use BIS_fnc_relpos to spawn smoke in a circle around that position, or in semicircle, in a line, basically whatever geometrical shape you want. Cheers Share this post Link to post Share on other sites
kylania 568 Posted July 13, 2016 "Smoke_120mm_AMOS_White" and "Smoke_82mm_AMOS_White" should be good ones to use, but I'm just getting the shell and not the smoke from it. In researching this issue I found this IED script that has some fantastic looking custom smoke you might wanna use. Share this post Link to post Share on other sites
Grumpy Old Man 3547 Posted July 13, 2016 That's because "SmokeShellArty" is the submunition createing the smoke, spawned by both ammo types. Cheers 1 Share this post Link to post Share on other sites
kylania 568 Posted July 13, 2016 How'd you figure that out? :huh: Share this post Link to post Share on other sites
Grumpy Old Man 3547 Posted July 13, 2016 Reading the ammo configs. Cheers Share this post Link to post Share on other sites
vastiny 21 Posted July 13, 2016 Thank you all, incredibly helpful :) I hope to actually release something, so I'm working on a simple and concise 3 player "Escape from Tanoa" thing - where the player's team gets ambushed by a Viper team in a burning village, and it kicks off by disorienting the player with a smoke screen enveloping the perimeter Share this post Link to post Share on other sites
vastiny 21 Posted July 13, 2016 That's because "SmokeShellArty" is the submunition createing the smoke, spawned by both ammo types. Cheers Creating this on an invisible helipad seems to stick it in midair with a single trail of smoke coming out of it, and not actually detonate into a donut-shaped smoke screen that vehicles use If you know the center position where to launch the smoke from you can easily use BIS_fnc_relpos to spawn smoke in a circle around that position, or in semicircle, in a line, basically whatever geometrical shape you want. Cheers How do I actually use this? In the flare spiral example provided I can't really make out what determines the shape, only distance Share this post Link to post Share on other sites
Grumpy Old Man 3547 Posted July 13, 2016 Did you actually look at example 1? Cheers Share this post Link to post Share on other sites
vastiny 21 Posted July 13, 2016 Did you actually look at example 1? Cheers Yes? let me rephrase what I said then: I'm not an advanced scripter and don't know what to make of the strange math in "_distance" and "for "_x" from 0 to 1440 step 30 do{" If you could explain what both of those mean and what they do I'd be grateful Share this post Link to post Share on other sites
kylania 568 Posted July 13, 2016 for "_x" from 0 to 1440 step 30 do{ This is a simple for loop. _x will be the current value during the following do code block. It's saying "Starting at 0, count by 30 till you reach 1440 and let _x be the current value each time". Basically do this 48 times and add 30 to the value of _x each time. If you wanted to run a loop 10 times you could do: for "_i" from 1 to 10 do { They added in the step 30 in order to get larger numbers for the distance adjust they are about to do. _distance = (_x/100)*2; This takes the current value of _x (so, 0 first loop, 30 second loop, 60 third loop and so on), divides it by 100 then doubles it. Giving you a distance from the player for the flares of: First loop (_x = 0): 0 Second loop (_x = 30): 0.6 Third loop (_x = 60): 1.2 So basically adding 0.6 meters each time to the distance. If they just did for 1 to 48 those values would be much smaller: Second: 0.02 Third: 0.04 So all that math is basically just saying "Pop 48 flares and each one should be 0.6m farther away than the last." _targetPos = [(getPos player), _distance, _x] call BIS_fnc_relPos; This line selects a point that is _distance away from the player in the direction of _x. So first loop it's right on the player, second loop it's 0.6m away at 30 degrees, third loop it's 1.2m away at 60 degrees and so on. _targetPos set [2,0]; This might be a little confusing, but it's setting the 3rd value of the _targetPos array to 0. Basically "change the height to be on the ground" 2 Share this post Link to post Share on other sites
Grumpy Old Man 3547 Posted July 13, 2016 Very good explanation right there. Should be everything one needs to know for the creation of simple smoke circles up to Bezier or Fibonacci shaped smoke lines. Cheers Share this post Link to post Share on other sites
vastiny 21 Posted July 13, 2016 Thank you Kylania, I actually learned something today, even if the maths are complicated as hell to me I'll be looking at this for a while to see if I can get my head around it ^_^ Share this post Link to post Share on other sites