47th GM48
script

Very Simple Particle Effects

Create a very simple particle effect that you can call from just one script!
Very Simple Particle Effects
Tydecon Games
Patron
Tydecon Games Level 46
· 2 min read · 977 views

Particle Systems can be complicated, but if you want a nice, simple effect that you can call and customise from just one script, here's the solution

1
Import the Sprite
Make a simple sprite, called sParticles, the sprite can have as many frames as you'd like but each frame will be a particle. Make each possible particle white or greyscale - in my example below, I'd used 9 frames with a 6x6 sprite as follows:

image
2
Create the Object
Next, create an object called oParticles and assign it the sprite above, with the following code:

CREATE

/// @description Set-Up
image_speed = 0
image_index = irandom(image_number)
direction = random(360)
alarm[0] = 30+random(20)
friction = 0.1
image_alpha = 0.8+random(0.2)
fade = false

STEP

/// @description Fade
if fade = true then image_alpha -= 0.05
if image_alpha < 0 then instance_destroy()

ALARM 0

/// @description Time-Out
fade = true

3
Create the Script
Finally, create a script called particles as follows:

/// @function particles(x,y,amount,speed,colour,scatter)
/// @param {real} x
/// @param {real} y
/// @param {real} amount
/// @param {real} speed
/// @param {real} colour
/// @param {real} scatter
function particles(_xx,_yy,_amount,_speed,_colour,_scatter){
repeat(_amount) {
with(instance_create_depth(_xx-(_scatter)+random(_scatter*2),_yy-(_scatter)+random(_scatter*2),depth-1,oParticles)) {
image_blend = _colour
speed = _speed-0.5+random(1)
}}}


4
Using the Script

And that's it! Now, whenever you want a nice, simple particle effect, just call:

  particles(<X>,<Y>,<AMOUNT>,<SPEED>,<COLOUR>,<SCATTER_AMOUNT>)

and it'll look like this:

image

Easy! Enjoy!

Browse these game resources from the community

script

My tower defense EnamyFactory constructer function

With this script you will be able to easily create new enemy types for tower defense games using just one calling object.

script

Super Easy Screen Shake

A little screen-shake effect can make all the difference, here's a super easy way to add one to your game!

script

The Most Simple Movement Code

Very simple collision code.

Official resource

Why Join a Game Jam

Looking for a new challenge as a game developer? Consider participating in a game jam!

From Idea to Game in 48 Hours

Join thousands of GameMaker developers who have discovered the joy of game jams.

No experience? No problem. GameMaker developers of all skill levels and backgrounds use the gm(48) game jam to create games, learn new skills, and connect with the community.

Ready to start your game development journey? Create an account and join the next gm(48) game jam!