Sooo... I was doodling around in pico-8, creating a game for #1GAM, and I needed to create some particle systems, so I started to code one, but carried away a bit, and made a general purpose particle system library... and then carried away a bit more, and made a couple of samples for it, and took the liberty to call it "advanced" :) and here is the end result. :)
Feel free to use it in your projects if you want!
A couple of remarks though:
- I don't know a lot about lua optimalizations, but I guess it is not really optimized for speed. :)
- It is quite big in its current form. I guess. This sample cartridge is hovering on the limits of code size, but the library part is way smaller, and more importantly, quite modular. I plan to look into minifying the code, if there are any interest.
- I don't even know if a "library" is viable concept in pico-8... The size limitations are quite severe, so you only want to include what you absolutely must in your code, which usually means hand-coding everything.
- Ohh, and it is quite possible contains bugs. Use at your own risk. :)
- There are documentation or explanation of the workings of any kind for now, but I will write some later. Just look at the code till then. :)
- download the cart (right-click on the magenta cart name in the first post and save the .p8.png somewhere, that file is the actual cartridge containing code, gfx, music etc...)
- put it in your pico-8 homefolder
- load it from within pico-8 with load ("load 10440" in this case)
changed line 580 from
local e = psystem.emitters[flr(rnd(count(psystem.emiters)))+1]
local e = psystem.emitters[flr(rnd(#(psystem.emitters)))+1]
Use the last cart you see in the thread, it works. I've used it on a few games thus far and it works great. Only suggestion would be to strip out anything you don't need. As-is, it's pretty fat but you can dig through and see which functions are not needed and remove them.
[Please log in to post a comment]