Advertisement

Author Topic: CSL Particle Parameter Utility V2.1I (ACCEPTED)  (Read 2409 times)

0 Members and 1 Guest are viewing this topic.

CSL Particle Parameter Utility V2.1I (ACCEPTED)
« on: 31 Mar 2007, 06:09:48 »
*****updated v2.1_I*****

Get CSL Particle Parameter Utility V2.1_I


Full Size

This utility is, in essence, a particle effect editor that allows you to edit
the 55 or so parameters associated with particle effects with a series of
dialogs, and see the results first hand in real time.

This comes in the form of an ingame single mission.  It's not a mission in the
true sense however.  The scripts inside are not meant to be imported into your
own mission and there is no enemy to fight.

It's goal is simply to let you manipulate particle effects to enable you, as an
addon maker or mission designer, to acheive the desired effect quickly, and use
the settings you came up with in your mission/addon/script/whatever.


Compatibility:
     - Tested in ARMA 1.05.  V2.01 has not been tested in ARMA v1.02.


Multiplayer:
     - Not a true mission, just a tool.  Multiplayer is irrelevant.


Features:
     - Full manual.  It includes notes about the controls and how my utility handles them, where
     appropriate.  In addition, it includes information as to what the parameters
     actually do, and a tip here and there.  It is recommended that advanced
     scripters read this as well for information pertaining to the dialogs and how
     specific things are handled.

     - You manipulate the parameters of the particleParams, particleCircles,
     dropInterval, and particleRandom commands through a series of dialogs
     accessable through the action menu.

     - You can import and export code via a copy+paste functions.

     - You can edit up to 5 particle effects at the same time to enable you to
     more easilly manage more complex effects.

     -Both PBO versions and an non PBO versions are included.  Unless you want
     to edit something (like for example, you wish to do your edits directly on
     an addon vehicle or something, you can drop it in.  Totally unsupported.),
     stick with the PBOs.

     -A version for both the intro island and Sahrani are included in order to
     minimise load times for the end user.

     -A very simple usage demo mission is included to help set people who are
     new to particle effects on the right path.


Known issues:
     - When importing code, do not use single quotes ( ' ).  It *will* cause an
     error.  This issue, is for all practicle purposes at the time of this
     release, unfixable.  Double quotes are fine however.

     - The import function may fail if you use a character that is not
     accepted.


Small warning:
     - This tool does not check for valid parameters beyond what the game
     engine checks for itself.  You can set parameters for some particle
     effects that will cause the game to crash.  The few I've seen have all
     been related to setting shapeName 0 and shapeName 1 - 3 to an invalid
     combination.  I consider this problem to be minor at worst.

     - There is also very little validity checking on the import feature.  Make
     sure your code is valid.  Only numbers and exactly correct text is
     accepted.  Ran is not.


There are only 4 parameters you cannot set:
     - Animation Name: There isn't enough concrete information for me to figure
     out what options to give the editor.

     - On Timer: Executes a script, therefore beyond the scope of this tool.

     - Before Destroy: Executes a script, therefore beyond the scope of this
     tool.

     - Object: Sets the target object of the script.  Not relevent for the
     purposes of this utility.


Installation:
     - The PBOs go in:
     (yourArmaDirectory)\missions\

     - The Non PBOs (whole folder) and usage demo go in:
     (Your arma user directory)\(your user name)\missions


Home Thread:
     BIS Thread


Hosting:
     You can host this anywhere you want, but if you let me know via PM on the
     BIS forums, I'll add a link in the download thread and let you know if I
     patch it.  I'd also prefer if you included a link back to this thread, as
     this is where I'll be posting updates, answering questions etc.


Acknowledgements:
     A big thank you goes out to Sanctuary of the BIS forums for inspiring the
     copy and paste method and to bk1276 of the BIS forums for suggesting
     multiple particle effects.

     Another one goes to Mandoble of the ofpec forums for suggesting adding the
     ability to attach a particle effect to your squadmate and for pointing out
     that I had done all the render parameters wrong.

     A HUGE thank you aimed at Kegetys, Kronzky, & T_D (apologies if I missed
     someone) for their efforts in putting together a working method of
     manipulating strings.  The whole import function would not have been
     possible had it not been for these people.

     Also, to those who have helped support this project by hosting the files,
     including: Old Bear, El nino Foxhound, Big, Stavanger and Imutep.
     Apologies if I missed somebody, too many to keep easilly track of ;) .



Version History:
V2.1:
     - Render parameters reworked to support 10 of each; size, color, and
     animation phase

     - Ability to attach the particle effect to the squadmate, or any vehicle
     the squadmate is in

     - Added the manual

     - Fixed a small bug when importing a drop interval of 2 or more.

V2.0:
     - Squadmate, HMMWV, and MH-6 added to facilitate viewing the effect from
     different angles, positions, etc.

     - Moveable Dialogs

     - Dialogs Cleaned up and made very consistant with the arma dialog look.
     The BIS ARMA UI gradients and settings are actually used now.

     - Internal Script Reorganization (subfolders and such)

     - Problem with Chance of Dialogs Automatically Closing Under Certain
     Conditions Fixed

     - Particle Effect Imports

     - Multiple Particle Effects

     - Intro Island Version Added.  Identical to the full island version,
     except for location.

     - Simple Example Particle Effect Usage Mission

V1.1:
     - Code Export Added.

     - Small Bug fixed.

V1.0:
     Release

License:
     Unlimited rights (including editing and rereleasing) so long as it's non-
     commercial and adheres to the BIS terms of use.  Any derivitive work
     cannot be more restrictive than this with respect to what rights an end
     user has.



Note:
     Have you made a great particle effect you would like to share with the
     world?  Please do!  Add your custom particle effects to the Bohemia
     Interactive Community Wiki's Particle Effects page found at:
     http://community.bistudio.com/wiki/ParticleTemplates


Some More Screen Shots:

Full Size


Full Size


Full Size


Full Size


Mandoble 2009-06-02: Resource accepted with some "home-made" modifications to avoid some crash scenaries and easier usage.
« Last Edit: 06 Feb 2009, 23:23:06 by Mandoble »
Everything I have released for ARMA can be found here.

Offline h-

  • OFPEC Site
  • Administrator
  • *****
  • Formerly HateR_Kint
    • OFPEC
Re: CSL Particle Parameter Utility V2
« Reply #1 on: 31 Mar 2007, 09:53:40 »
 :clap:
Good stuff..  :good:

One minor thing is that I personally would have preferred all in one dialog instead of many smaller ones, but that's just me I guess..
Project MCAR   ---   FWW2 - Finland At War 1939-1945
INFORMATIVE THREAD TITLES PLEASE. "PLEASE HELP" IS NOT ONE..
Chuck Norris can divide by zero.

Re: CSL Particle Parameter Utility V2
« Reply #2 on: 31 Mar 2007, 09:57:40 »
I felt that a single dialog would be too crowded.  Besides which, they would have likely taken up the whole screen, and that would have made editing the effects more tedious since you would have to constantly open and close the dialog to view the effect.

I suppose if you care to personalise it so that it's all on one page, you can.  It's not something I'm likely to do myself though.
Everything I have released for ARMA can be found here.

Offline h-

  • OFPEC Site
  • Administrator
  • *****
  • Formerly HateR_Kint
    • OFPEC
Re: CSL Particle Parameter Utility V2
« Reply #3 on: 31 Mar 2007, 11:00:26 »
Quote
Besides which, they would have likely taken up the whole screen, and that would have made editing the effects more tedious since you would have to constantly open and close the dialog to view the effect.
True, true..


Don't get me wrong, this is great 'tool' and will be getting usage from me, that is 100% sure, but just sharing some thoughts:

The apply button is somehow cumbersome.
Back in the 'OFP days' there was a similar 'tool' for OFP particles and IIRC it allowed the things to change in real time without having to apply them each time. Now to think of it you must have used it as a base idea for this.. :scratch:

But I think that was possible because all the changeable values were manipulated with sliders instead of inputting numerical data.. :dunno:
Which is a bit crappy since the sliders aren't that precise..

Quote
if you care to personalise it so that it's all on one page, you can
Well, dialogs aren't really my thing so that's not going to happen.. ::)

Which is why I'm crossing all possible limb extensions that someone writes a dialog creation tool for ArmA  :whistle:
There was one in developement for OFP but it never got finished and the latest beta it evolved into has some major bugs in it that make it quite unusable for bigger projects..
Project MCAR   ---   FWW2 - Finland At War 1939-1945
INFORMATIVE THREAD TITLES PLEASE. "PLEASE HELP" IS NOT ONE..
Chuck Norris can divide by zero.

Re: CSL Particle Parameter Utility V2
« Reply #4 on: 31 Mar 2007, 11:20:55 »
Quote
Besides which, they would have likely taken up the whole screen, and that would have made editing the effects more tedious since you would have to constantly open and close the dialog to view the effect.
True, true..


Don't get me wrong, this is great 'tool' and will be getting usage from me, that is 100% sure, but just sharing some thoughts:

I understand, and feedback is welcome of course.

The apply button is somehow cumbersome.

I think you're probably right here.  I may see if I can do something to rectify that.  I'll consider the ramifications of making it more of an autoupdate when the value is changed type of thing.  That could have a negative impact.  Not to mention that it may be difficult to implement at all, depending on what functions we have.  I'll look into it in any case.

Back in the 'OFP days' there was a similar 'tool' for OFP particles and IIRC it allowed the things to change in real time without having to apply them each time. Now to think of it you must have used it as a base idea for this.. :scratch:

Believe it or not, I didn't even know about that until after I made version 1.0 of this util.  After I released V1, someone mentioned it.  I had released several scripts for ofp, but I never actually got around to playing with particle effects, so it never came up before that.

This tool really came about when I started playing with particle effects myself.  I was tinkering with a burning building app for arma (you can find it on the bis forums, same user name) and thought, "hey, it would be nice if someone made tool that would let us see what these parameters all do in real time."   I already knew dialogs, and just figured, "what the hell."  You know how that goes.

Quote
if you care to personalise it so that it's all on one page, you can
Well, dialogs aren't really my thing so that's not going to happen.. ::)

Which is why I'm crossing all possible limb extensions that someone writes a dialog creation tool for ArmA  :whistle:
There was one in developement for OFP but it never got finished and the latest beta it evolved into has some major bugs in it that make it quite unusable for bigger projects..

Dialogs are actually pretty easy.  In fact, I'd say that dialogs themselves are easier to make than about 1/2 to 3/4 of the script's I've written.  The only difficulty with them is tweaking the positions, widths, and heights of all the elements is pretty tedious after a while.  The basics are very simple though.

Unfourtunatly, as far as I know, there's no arma oriented dialog tutorials.  You just have to learn how to make them yourself, or learn by example.

Perhaps myself or someone else will make a similar tool sometime.  I probably won't be able to any time soon.  But maybe I will in the future.


That would be some fun code to write though huh? A dialog that creates dialogs...
« Last Edit: 31 Mar 2007, 11:37:52 by ColonelSandersLite »
Everything I have released for ARMA can be found here.

Offline Mandoble

  • Former Staff
  • ****
    • Grunt ONE and MandoMissile suite
Re: CSL Particle Parameter Utility V2
« Reply #5 on: 31 Mar 2007, 12:39:07 »
Nice work CLS, reminds me the old OFP dropEngine tool.

You may change it a bit according to the following:
Sape name 1 -> Anim divisor (6 for a 6x6, 8 for a 8x8, etc)
Sape name 2 -> Anim starting row
Sape name 3 -> Number of frames to play

Note that for all non animated shapes (cl_fired, cl_basic, for example) these values must be [1,0,0], else you would get pretty weird and undesired effects. Note also that a [0,0,0] would make ArmA to crash. You may try to protect these two cases.

Animation Phase is, in fact, a vector of animation speeds along the life-time of the particle. A [0,1] for a life-time of 5 means that animation is "still" at second 0 and maximum animation speed is reached after 5 seconds. With [0,1,0] the particle animation will start accelerating (frames/sec) and then decelerating till particle dissapears.

Then you may "attach" the particle source to the player's team mate vehicle position instead of having it in a fixed position. This way you would be able to test particles comming out of the rotor of a flying chopper, for example. You order that soldier to move into a jeep and you'll see the particles comming out that jeep and so on.

As said, all in all, nice work  :good:

Offline h-

  • OFPEC Site
  • Administrator
  • *****
  • Formerly HateR_Kint
    • OFPEC
Re: CSL Particle Parameter Utility V2
« Reply #6 on: 31 Mar 2007, 12:54:07 »
Quote
Believe it or not, I didn't even know about that until after I made version 1.0 of this util.
It's funny how these things sometimes go.. :)

Quote
That would be some fun code to write though huh? A dialog that creates dialogs
I was talking more a software (should've been more clear about that), the OFP dialog maker was a separate software that would create description.ext as an output..
It had graphical GUI, worked basicly like some photoshopping tool..
Project MCAR   ---   FWW2 - Finland At War 1939-1945
INFORMATIVE THREAD TITLES PLEASE. "PLEASE HELP" IS NOT ONE..
Chuck Norris can divide by zero.

Re: CSL Particle Parameter Utility V2
« Reply #7 on: 31 Mar 2007, 20:21:46 »
You may change it a bit according to the following:
Sape name 1 -> Anim divisor (6 for a 6x6, 8 for a 8x8, etc)
Sape name 2 -> Anim starting row
Sape name 3 -> Number of frames to play

I just named them, along with every other parameter, what they where named by BIS in the BIKI.  I think perhaps it would be better to just document it so it doesn't break that scheme?  One thing's for certain though, the BIKI entries need to be rounded out a little I'll see about adding that bit of info later.

Note that for all non animated shapes (cl_fired, cl_basic, for example) these values must be [1,0,0], else you would get pretty weird and undesired effects. Note also that a [0,0,0] would make ArmA to crash. You may try to protect these two cases.

I already knew that from hard experimenting, and maybe it should also be documented further too.  I don't care to limit what the user can and can't set these parameters to.  Just when that happens is when 1.06 rolls out with an exception to the rule...

Animation Phase is, in fact, a vector of animation speeds along the life-time of the particle. A [0,1] for a life-time of 5 means that animation is "still" at second 0 and maximum animation speed is reached after 5 seconds. With [0,1,0] the particle animation will start accelerating (frames/sec) and then decelerating till particle dissapears.

So it should be a 3 element array, not a 2 element.  I'll definatly fix that soon.

Then you may "attach" the particle source to the player's team mate vehicle position instead of having it in a fixed position. This way you would be able to test particles comming out of the rotor of a flying chopper, for example. You order that soldier to move into a jeep and you'll see the particles comming out that jeep and so on.

That is a damn fine idea.  Easy to implement too, just needs to be an action menu toggle.



Quote
That would be some fun code to write though huh? A dialog that creates dialogs
I was talking more a software (should've been more clear about that), the OFP dialog maker was a separate software that would create description.ext as an output..
It had graphical GUI, worked basicly like some photoshopping tool..

Ah, you're meaning something akin to the Visual Basic Winforms editor, drag and drop interface elements in a standalone application.  Just thinking about it off the top of my head, I think VB.net would be the language I would prefer to write that in.  ATM though, I just don't have the time to undertake another project.  I probably would do it if I did though.
Everything I have released for ARMA can be found here.

Offline Mandoble

  • Former Staff
  • ****
    • Grunt ONE and MandoMissile suite
Re: CSL Particle Parameter Utility V2
« Reply #8 on: 31 Mar 2007, 21:44:16 »
So it should be a 3 element array, not a 2 element.  I'll definatly fix that soon.

Not 3, but as may as you need. Just consider the meaning of the anim phase, each value deternines the rate of the animation at the corresponding particle life-time. 0 = still image, no animation at all, 1 -> quick animation rate. So, for animations to be fuild, you may use, at last 0.2 as default value for the first number [0.2, ?, ?,  ?]

You may also change your ValidShapeNamesArray to include complete shapenames in arrays of 2 elements [shape name array, spaceship/billboard], so when you select a shapename, the correct default values are set for it. Else some user would be intrigued why is that the selected parameters result in nothing visible or with quite weird effects. The shape name would be [Real Shapename, Anim divisor, Anim starting row, Number of frames to play]

For cl_basic: [["\Ca\Data\cl_basic", 1, 0, 1], "Billboard"]
For a fire: [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\FireAnim.p3d", 8, 0, 8], "Billboard"]


Re: CSL Particle Parameter Utility V2
« Reply #9 on: 01 Apr 2007, 07:29:41 »
Not 3, but as may as you need. Just consider the meaning of the anim phase, each value deternines the rate of the animation at the corresponding particle life-time. 0 = still image, no animation at all, 1 -> quick animation rate. So, for animations to be fuild, you may use, at last 0.2 as default value for the first number [0.2, ?, ?,  ?]

Ok, I understand now.  Since you seem to be intametly familiar with particle effects, let me ask you something here.  How many animation speed changes is a particle effect author likely to use?  I mean for most things, you'd probably just want a constant, but I can see using maybe 4 (initial speed and 3 changes).  See, there's going to have to be some practical limitation to the number the user can use in this tool, just because of the nature of the dialogs and such.

Unless I can think of a clever workaround, and I just may have a thing or 2 to try upstairs...

This new info is likely to do a number on the import function though.  Hmmm....  :scratch:


You may also change your ValidShapeNamesArray to include complete shapenames in arrays of 2 elements [shape name array, spaceship/billboard], so when you select a shapename, the correct default values are set for it. Else some user would be intrigued why is that the selected parameters result in nothing visible or with quite weird effects. The shape name would be [Real Shapename, Anim divisor, Anim starting row, Number of frames to play]

For cl_basic: [["\Ca\Data\cl_basic", 1, 0, 1], "Billboard"]
For a fire: [["\Ca\Data\ParticleEffects\FireAndSmokeAnim\FireAnim.p3d", 8, 0, 8], "Billboard"]

I'm not quite sure how you're meaning this, but I see it meaning one of 2 things.
1: Make the whole shapename bit one drop down that contains all the valid combos.
2: Use some sort of autocomplete function.  When the user changes shapename0, shapename1-shapename3 automatically fill in the reccomended values.

The first option I don't like, for a number of reasons.  Tops three reasons in order of priority: Firstly, it takes freedom to experiment with different settings out of the hands of the end user. Second, it will fill the dropdown with a whole bunch of redundant features that would be a pain to navigate.  Third, the testing and coding overhead for doing that is a little much compared to the time I have available to invest in the project.

The second interpretation, I kinda like.  There's some potential trickyness in detecting changes, and getting the values right, but I don't think that's that big a deal.
Everything I have released for ARMA can be found here.

Re: CSL Particle Parameter Utility V2
« Reply #10 on: 02 Apr 2007, 04:45:40 »
Just a quick post. I thought some of you would like to know what's planned, so:

Planned features/changes so far in order of likelyhood:
     Ability to attach the particle effect to the squadmate, or any vehicle the squadmate is in.  (Easy as pie to do)

     Render parameters (size, color, AnimationPhase) reworked, as of now, they are too inflexible.  This will require a bit of work and creative thought and will probably take longer to do than everything else in this list combined. (very likely)

     When the user changes shapename0, shapename1-shapename3 automatically fill in with reccomended default values. (likely)

     Moving away from the apply buttons with some kind of auto-update feature (maybe).




I'm also open to further suggestions.  I'm not planning on working with this utility much more (it's taking up time I should be using for paying work), so probably the next version, or the version after will be the final, short of bug fixes.

Basically, wether any ideas you suggest get in or not is going to depend on:
     A: If it's a major feature that *really* should be present. For example, the planned Render Parameters rework.

     B: It's a minor feature that could be implemented easilly. For example, the bit about attaching the effect to your squadmate.
Everything I have released for ARMA can be found here.

Re: CSL Particle Parameter Utility V2
« Reply #11 on: 12 Apr 2007, 13:02:00 »
Updated V2.1.

See the features list, version history and acknowledgements section of the original post for complete details.

Short of a major feature oversite that I just can't live without or bug fixes, this version will be final.
Everything I have released for ARMA can be found here.

Offline Ironman

  • Former Staff
  • ****
    • {GSF} Home Page
Re: CSL Particle Parameter Utility V2 (DELAYED)
« Reply #12 on: 06 Feb 2009, 18:54:22 »
is this ever gonna be updated?
TS3 IP: tor.zebgames.com:9992

Offline Mandoble

  • Former Staff
  • ****
    • Grunt ONE and MandoMissile suite
Re: CSL Particle Parameter Utility V2 (DELAYED)
« Reply #13 on: 06 Feb 2009, 19:53:37 »
Since this seems discontinued, I will. Just give me few hours.

Offline Ironman

  • Former Staff
  • ****
    • {GSF} Home Page
Re: CSL Particle Parameter Utility V2.1I (ACCEPTED)
« Reply #14 on: 07 Feb 2009, 06:56:08 »
well thanks mandoble.
TS3 IP: tor.zebgames.com:9992