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

Star SurferView game page

A scrolling shooter made in 1024 bytes for the PICO-1K jam.
Submitted by Altrix Studios (@ryan_nurse) — 15 days, 21 minutes before the deadline
Add to collection

Play game

Star Surfer's itch.io page

Compressed Bytes used
1001

Source Code (OPTIONAL)
cartdata("sur1k")
c,px,py,h,p=-1,60,60,dget(0),{}
poke(0x5f5d,15)
for i=1,32 do
add(p,{x=rnd(127),y=rnd(127),v=rnd(10)/10})
end
function _update()
for s in all(p)do
s.x-=s.v
if s.x<0then
add(p,{x=128,y=rnd(127),v=rnd()})
del(p,s)
end
end
if c==0and s>h then
h=s
dset(0,s)
end
if c<=0then
if(btn(5))px,py,b,d,t,s,c,c2,i,db=60,60,{},{},30,0,75,30,30,{}
if(c<0)return
end
t-=1
if t<=0then
ap=""
for i=1,4do
ap=ap..tostr(flr(rnd(8999))+1000)
end
add(d,{x=128,y=rnd(96)+16,m=rnd()+0.5,a=ap})
t=rnd(30)+i
end
for v in all(d)do
v.x-=v.m
if c>0and abs(v.x-px)<8and abs(v.y-py)<8then
s-=5
?"\ai6c1c1.a1a1"
del(d,v)
end
if v.x<-8then
del(d,v)
if c>0 then
s-=1
?"\af1e1d1"
end
end
end
for v in all(b)do
v.x+=4
for w in all(d)do
if v.y>w.y-5and v.y<w.y+8and v.x>w.x-5and v.x<w.x+8then
if(c>0)s+=1
?"\ai6c2b1a1"
add(db,{x=w.x,y=w.y,vx=0.5,vy=0.5,l=20})
add(db,{x=w.x,y=w.y,vx=-0.5,vy=0.5,l=20})
add(db,{x=w.x,y=w.y,vx=0.5,vy=-0.5,l=20})
add(db,{x=w.x,y=w.y,vx=-0.5,vy=-0.5,l=20})
del(b,v)
del(d,w)
end
end
if(v.x>130)del(b,v)
end
for b in all(db)do
b.x+=b.vx
b.y+=b.vy
b.l-=1
if(b.l<=0)del(db,b)
end
if(c==0)return
if(btn(0))px-=2
if(btn(1))px+=2
if(px>120)px=120
if(px<8)px=8
if(btn(2))py-=2
if(btn(3))py+=2
if(py>120)py=120
if(py<8)py=8
if(btnp(4))add(b,{x=px,y=py})
c2-=1
if c2==0then
c2=30
c-=1
if c%2==0 and i>0then
i-=1
end
end
end
function _draw()
cls()
for s in all(p)do
z=5
if(s.v>0.3)z=6
if(s.v>0.7)z=7
pset(s.x,s.y,z)
end
?"\^:000000ffff3c0000",px,py+4,10
?"\^:3c3c3c3c00000000",px,py,7
?"\^:000000003c3c3c24",px,py,13
?"\^:0038380000000000",px,py,6
if c==-1then
?"\^w\^t star surfer",14,40,7
?"press x to start",34,80
?"created in 1kb for pico-1k 2023",3,120
return
end
for v in all(db)do
if v.l<10then
?"░",v.x,v.y,2
else
?"░",v.x,v.y,4
end
end
for v in all(d)do
?"\^:"..v.a,v.x,v.y,4
end
for v in all(b)do
?"●",v.x,v.y,8
end
?"score: "..s,1,1,7
?c,120,1
if c==0then
?"time up!",50,40
?[[score: ]]..s..[[
best: ]]..h,48,52
?"x: play again",40,70
end
end

Leave a comment

Log in with itch.io to leave a comment.

Comments

HostSubmitted(+1)

Cool idea for a game - I imagine we'll have to clean up space soon too!
I only got 77, but reckon I could get 80+ at a push.
Nice entry! 👍