Skip to main content

Indie game storeFree gamesFun gamesHorror games
Game developmentAssetsComics
SalesBundles
Jobs
TagsGame Engines
A jam submission

Game Over GlitchView project page

You just ran out of lives on your favorite retro game. Everything seems normal at first, and then the glitches start.
Submitted by beekins — 18 hours, 50 minutes before the deadline
Add to collection

Play project

Game Over Glitch's itch.io page

Compressed Bytes used
918

Source Code (OPTIONAL)
game_over_x={}
game_over_y={}
for _i=1,5 do
add(game_over_x,_i*20-3)
add(game_over_y,50)
end
for _i=1,5 do
add(game_over_x,_i*20-3)
add(game_over_y,66)
end
for _i=1,5 do
add(game_over_x,_i*20-3)
add(game_over_y,82)
end

function _draw()
_set_fps(10)
if (rnd()<0.7) cls()
?"♥♥♥♥♥",44,16,5
?"♥♥♥♥♥",46,16
?"♥♥♥♥♥",45,15
?"♥♥♥♥♥",45,17
?"♥♥♥♥♥",45,16,0
?"score: 000850",39,28,7
for _i=1,#game_over_x do
draw_game_over(game_over_x[_i],game_over_y[_i])
end
local _c=7
if (time()%0.4<0.2) _c=10
?"press",23,109,_c
?"to try again",59,109
?"❎",47,109,8
line(48,109,52,109,14)
line(48,113,52,113,2)
do_glitch(2.9,0.2,cls)
do_glitch(5.8,0.3,draw_run)
do_glitch(4.2,0.3,draw_bars)
do_glitch(1.2,0.1,draw_noise)
do_glitch(1.6,0.2,draw_palswap)
do_glitch(1.5,0.3,draw_hdisplace)
do_glitch(2.8,0.4,draw_vsync)
do_glitch(1.4,0.5,draw_squares)
do_glitch(3.1,0.3,draw_scanlines)
do_glitch(5.1,0.3,draw_score)
end

function draw_game_over(_x,_y)
local _c=8
if ((time()+_x+_y)%0.6<0.3) _c=12
?"game",_x-1,_y,_c
?"over"
?"game",_x+1,_y
?"over"
?"game",_x,_y-1
?"over"
?"game",_x,_y+1
?"over"
?"game",_x-1,_y-1
?"over"
?"game",_x+1,_y-1
?"over"
?"game",_x-1,_y+1
?"over"
?"game",_x+1,_y+1
?"over"
?"game",_x,_y,7
?"over"
end

function do_glitch(_i,_l,_func)
if time()>0.5 then
if (time()%_i>_i-1 and time()%_i<_i-1+_l) _func()
end
end

function draw_bars()
local _y,_yo=rnd(128),rnd(10)
local _c=6
if (rnd()<0.5) _c=0
for _i=0,rnd(4)+1 do
line(0,_y+_i,127,_y+_yo+_i-5,_c)
end
end

function draw_noise()
for _x=0,127 do
for _y=0,127 do
local _c=6
if (rnd()<0.5) _c=0
if (pget(_x,_y)!=0) pset(_x,_y,_c)
end
end
end

function draw_palswap()
if rnd()<0.3 then
pal(rnd(16),rnd(16))
else
pal()
end
end

function draw_hdisplace()
local _y,_h,_xo=rnd(128),rnd(20),rnd(30)-15
for _x=0,127 do
for _y2=_y,_y+_h do
pset(_x+_xo,_y2,pget(_x,_y2))
end
end
end

function draw_vsync()
local _yo=rnd(40)-20
for _x=0,127 do
for _y=0,127 do
pset(_x,_y,pget(_x,_y+_yo))
end
end
end

function draw_squares()
local _x1,_y1,_w,_h,_xo,_yo=rnd(128),rnd(128),rnd(40),rnd(20),rnd(80)-40,rnd(80)-40
for _x=_x1,_x1+_w do
for _y=_y1,_y1+_h do
pset(_x,_y,pget(_x+_xo,_y+_yo))
end
end
end

function draw_scanlines()
local _xo=rnd(4)-2
for _x=0,127 do
for _y=0,126,2 do
pset(_x,_y,pget(_x+_xo,_y))
end
end
end

function draw_score()
rectfill(63,27,89,33,0)
?"nil",67,28,7
end

function draw_run()
rectfill(71,109,105,113,0)
?"run",71,109,8
end

Leave a comment

Log in with itch.io to leave a comment.

Comments

HostSubmitted(+1)

Nice concept, which was fun to watch.
(The intermittent "RUN" was particularly effective! 😳)