diff --git a/game/engines/default/engine/GameEnergyBased.lua b/game/engines/default/engine/GameEnergyBased.lua
index 4b7c97b1ff191c4fd5eaa1a5e92e5ae58b7cc9d4..fb306cf82c9c789b00c8ec93fac9017d85aac8aa 100644
--- a/game/engines/default/engine/GameEnergyBased.lua
+++ b/game/engines/default/engine/GameEnergyBased.lua
@@ -90,7 +90,7 @@ end
 
 --- Run tick on a level
 function _M:tickLevel(level)
-	local i, e
+	local i, e = 1, nil
 	local arr = level.e_array
 
 	if level.last_iteration then
@@ -105,7 +105,7 @@ function _M:tickLevel(level)
 --		print("=====LEVEL", level.level, level.sublevel_id, "resuming tick loop at ", i, arr[i].name)
 	end
 
-	for i = 1, #arr do
+	for i = i, #arr do
 		e = arr[i]
 		if e and e.act and e.energy then
 			if e.actBase and e.energyBase then