diff --git a/game/modules/tome/data/gfx/particles/ball_fire.lua b/game/modules/tome/data/gfx/particles/ball_fire.lua
index aa8fb106cdcf20730102c16e6ba7b1fb1ea15e22..fbb917aff7baa08446790e20fb0a34403bb285f0 100644
--- a/game/modules/tome/data/gfx/particles/ball_fire.lua
+++ b/game/modules/tome/data/gfx/particles/ball_fire.lua
@@ -17,6 +17,46 @@
 -- Nicolas Casalini "DarkGod"
 -- darkgod@te4.org
 
+--------------------------------------------------------------------------------------
+-- Advanced shaders
+--------------------------------------------------------------------------------------
+if core.shader.active(4) then
+use_shader = {type="shockwave", shockwaveSpeed=7*16/10}
+base_size = 64
+
+local nb = 0
+local radius = radius or 6
+
+return {
+	generator = function()
+	return {
+		life = 10,
+		size = 2.1*64*radius, sizev = 0, sizea = 0,
+
+		x = 0, xv = 0, xa = 0,
+		y = 0, yv = 0, ya = 0,
+		dir = 0, dirv = dirv, dira = 0,
+		vel = 0, velv = 0, vela = 0,
+
+		r = 1, rv = 0, ra = 0,
+		g = 1, gv = 0, ga = 0,
+		b = 1, bv = 0, ba = 0,
+		a = 0.8, av = -0.02, aa = 0,
+	}
+end, },
+function(self)
+	if nb < 1 then
+		self.ps:emit(1)
+	end
+	nb = nb + 1
+end,
+1, "particles_images/flamesshockwave"
+
+
+--------------------------------------------------------------------------------------
+-- Default
+--------------------------------------------------------------------------------------
+else
 local nb = 12
 local dir
 local radius = radius or 6
@@ -57,3 +97,5 @@ function(self)
 end,
 30*radius*7*12,
 "particle_cloud"
+
+end
\ No newline at end of file
diff --git a/game/modules/tome/data/gfx/particles/fireflash.lua b/game/modules/tome/data/gfx/particles/fireflash.lua
index c1a44039ee44245ac7c0300d334ae12f2c2485e8..940c7f19d376e05dbd440da3d9551268ea880dd5 100644
--- a/game/modules/tome/data/gfx/particles/fireflash.lua
+++ b/game/modules/tome/data/gfx/particles/fireflash.lua
@@ -41,7 +41,7 @@ return {
 		r = 1, rv = 0, ra = 0,
 		g = 1, gv = 0, ga = 0,
 		b = 1, bv = 0, ba = 0,
-		a = 0.7, av = 0, aa = 0,
+		a = 0.8, av = -0.02, aa = 0,
 	}
 end, },
 function(self)