diff --git a/game/engines/default/engine/interface/ActorTemporaryEffects.lua b/game/engines/default/engine/interface/ActorTemporaryEffects.lua
index 08710c542029fde8ed66bb8b02ad48898678dd23..80fb4ec664722621ba23df7324aa8b406b8645d8 100644
--- a/game/engines/default/engine/interface/ActorTemporaryEffects.lua
+++ b/game/engines/default/engine/interface/ActorTemporaryEffects.lua
@@ -121,8 +121,7 @@ function _M:setEffect(eff_id, dur, p, silent)
 	if dur <= 0 then return self:removeEffect(eff_id) end
 	dur = math.floor(dur)
 
-	p.__orig_params = table.clone(p, true)
-
+	p.__orig_params = table.clone(p, true, {__orig_params=true})
 	local ed = _M.tempeffect_def[eff_id]
 	for k, e in pairs(ed.parameters) do
 		if not p[k] then p[k] = e end