Jump to content
🛡️FORUMS ARE IN READ-ONLY MODE Read more... ×

DarkDruid

Former Developer
  • Content Count

    291
  • Joined

  • Last visited

  • Medals

  • Medals

Everything posted by DarkDruid

  1. You can call by setParticleClass only config-defined effects which doesn't use engine-provided parameters, because these parameters are not defined in any script. In your case you are trying to call a part of sabot impact effect and this effect works with direction and speed of projectile (speed and direction of sparks are set according to these values). But engine doesn't have this information when you call it in script. You need to create a copy of that effect in the config and use numbers instead of all engine-defined parameters (but this will change behaviour of sparks, because they won't be affected by speed and direction of projectile anymore). Or you can compute all these variables in your script and overwrite all parts (which consist engine-provided parameters) of particle definition by script command setParticleParams.
  2. I know about this issue, it is assigned to me on Feedback Tracker. Unfortunately I am not able to tell you the exact time/date when this will be fixed. Fixed, thanks!
  3. This should solve your problem: http://forums.bistudio.com/showthread.php?155866-Arma-3-Particle-Effects-documentation&p=2606740&viewfull=1#post2606740
  4. Description of fire damage related parameters in config added into documentation. They are practically the same as in the script command setParticleFire: http://community.bistudio.com/wiki/Arma_3_Particle_Effects#Definition_of_part-effect Hi, I have reassigned that ticket to me. I have some other tasks on my to-do list right now, but I hope I will be able to look at it soon and improve the fire effect. Thanks for feedback! Yes, we can recompile configs, but recompiling of particle configs has some side effects which weren't completely solved so far. There is MP security risk in config recompiling as well. I can ask our engine programmers about this, but I don't think that we will find free resources to solve all related issues in short time. I am sorry.
  5. From today's dev branch changelog: This change allows you to use parameters available only in configs even in scripted particle effects. How to do it? Create particle emitter. Apply command setParticleClass on it. Apply command setParticleParams on it. All parameters set by config class which are not present in particle array (applied by setParticleParams) stays the same. For example you can set destruction of particles on water surface via config class and then dynamically change size of these particles via script command setParticleParams. Example: _emitter1 setParticleClass "PointBubbles1"; _emitter1 setParticleParams [["\A3\data_f\ParticleEffects\Universal\Universal",16,13,7,0], "", "Billboard", 1, 60, [0, 0, 0], [0, 0, 0.3], 0, 1.2, 1, 0, [0.06],[[1,1,1,-2]], [1000], 0.12, 0.06, "", "", ""]; _emitter1 setDropInterval 1; This creates underwater bubbles which will be destroyed on the water surface. Destruction on water surface is defined in config class PointBubbles1.
  6. Code must be stored in format {code} and if you want to process any code stored in a variable, you need to do it by some function (call or spawn). In your case it should be: anything.sqf: G_arraycall = [false, 0, 5, "Test-%1", true, {player sideChat "Array empty"}] call G_fnc_RandomArray; G_fnc_RandomArray: insertvar = _this select 5; call insertvar; There are other ways how to do this. For example you can store your code as a string and use compile command before call. But if you don't have reasons for doing this, it is better to use the way described above.
  7. Maybe this can help too: http://forums.bistudio.com/showthread.php?155866-Arma-3-Particle-Effects-documentation&p=2605757#post2605757
  8. Part of today's dev branch update are new particle modules. There is smoke, fire and plankton so far. These modules should help you to put some effects in your mission with none or very small knowledge of scripting or particle effects. It should be quick and simple now. You can find them in Editor > Modules (F7) > Category: Effects. Plankton - This module has no parameters. You just need to place it anywhere on map and plankton effect will be created around player when he goes under water. Fire - There is a series of various parameters. You can set color, size, direction and even damage given to unit by fire. The effect is created on module's position. Smoke - There is also a series of various parameters. You can set color, size, speed and some other parameters. The effect is also created on module's position. These modules allows you to set only some parameters of particle effect. Some others are predefined and you can't change them. This basically means that using of particle modules should be faster and easier for user, but there is not so many possibilities as in your own particle effect created directly by scripting or in config. Bug reports or any other feedback will be appreciated. But keep in mind, that there are technical limitations given by modules which can't be just simply changed only for particles and that we want to keep particle modules relatively simple (user-friendly). We don't want to create some very complicated monster with all parameters available in scripts/configs.
  9. DarkDruid

    Scripting Discussion (dev branch)

    You can change particle limits in config by mod. Limits are defined in CfgVideoOptions >> Particles. I guess it can be useful for testing, but I would recommend to use current limits for effects distributed publicly to community. A lot of particles in scene can cause huge frame rate drops. One more thing - there is hard limit defined directly in the engine. You shouldn't be able to have more than 20 000 particles in scene (even with limits in config set to more than 20 000).
  10. 9 000 particles for low particle settings in video options 12 000 particles for medium particle settings in video options 15 000 particles for high particle settings in video options For a frame which is not the first one in a row you need to set count equal to the position of that frame in the row. It is 11 in this case. Then set loop parameter to 0 and animSpeed to some very high value (for example 1000). If you do this, animation will be played only once and after that it stops on the last frame of animation, which is your desired frame. With that high value of animSpeed you won't see any animation at all.
  11. I forgot to document this feature. Thanks for reminder, here it is: http://community.bistudio.com/wiki/Arma_3_Particle_Effects#Refract_.28heat.29_effect
  12. There is currently no way how to do that in scripted particle effects. You can use config-defined particle effects and parameter destroyOnWaterSurface. But I'm not sure if this solution is acceptable for your mission/effect, because you won't be able to change parameters of that effect by script. List of parameters and more info about config-defined particle effects: http://community.bistudio.com/wiki/Arma_3_Particle_Effects#Definition_of_part-effect
  13. DarkDruid

    Scripting Discussion (dev branch)

    I wasn't able to reproduce it before, because I have tried it on player. Thanks for the repro mission, we will look at it. Ticket reassigned to the right person. But I'm not sure when he gets some time for this, he is occupied by something else right now.
  14. DarkDruid

    Development Blog & Reveals

    Wind should be synchronized in MP already: http://forums.bistudio.com/showthread.php?149636-Development-Branch-Changelog&p=2424351&viewfull=1#post2424351
  15. DarkDruid

    Development Blog & Reveals

    It is the team working on this feature. The team working on Arma 3 is much bigger. :)
  16. I will try to look at it with some engine programmer and check our options in the matter of engine optimization of this issue. Better optimization of that particle effect itself is definitely the way which I will try to use as well. Thanks a lot for deep investigation of the issue. :)
  17. There is about 150 small particles with particles on low when you firing full auto. Performance hit should be very small. It is less particles then a single grenade explosion and approximately 5x less than effect of one destroyed vehicle (and these particles are much bigger, so performance hit is even bigger). It is very unlikely that this particle effect has significant impact on your performance. Any performance hit is probably caused by something else. You can report it on Feedback Tracker (attach please a repro mission in that case) if the hit is really significant. :)
  18. These effects were supposed to be a part of the campaign only. That smoke placing on the ground is intended behaviour in this case.
  19. DarkDruid

    Scripting Discussion (dev branch)

    Could you please create that already mentioned ticket on Feedback Tracker and attach there a repro mission? I think it is the fastest way how to find out what is broken. Thanks :)
  20. Yes, it doesn't work with an array. There is documentation of that event handler with more details: http://community.bistudio.com/wiki/Arma_3:_Event_Handlers#HandleDamage
  21. DarkDruid

    Harbour Games MP - Play with the Arma 3 Devs

    We are playing at least until 3PM UTC.
  22. DarkDruid

    Harbour Games MP - Play with the Arma 3 Devs

    We are having lunch break right now, next round is starting at 11:30AM UTC.
  23. DarkDruid

    Harbour Games MP - Play with the Arma 3 Devs

    Please make sure that you are in the stable branch. You can check it by right click on Arma 3 in your Steam library > Properties > Betas. There needs to be selected option NONE.
  24. DarkDruid

    Scripting Discussion (dev branch)

    Attached script works fine for me. Are you sure, that there isn't any error in other scripts in your mission? If you won't be able to find any error in your scripts, then please create a ticket on Feedback Tracker with precise repro or better with your broken mission. Thanks
  25. There are some mistakes in Kerc Kasha's code, but I think his way is exactly what you are looking for. init.sqf: EH_Inv = { _source = _this select 3; _damage = _this select 2; if (isplayer _source) then {_damage} else {0}; }; init of all invincible units (only player can kill them): this addEventHandler ["HandleDamage", {_this call EH_Inv}];
×