1K Q-Shooter

A mini shoot'em up in 1024 Compressed Bytes of code for PICO-1K Jam 2023  #Pico1k

A fast paced shoot'em up with lots of alien invaders moving very fast. Don't stay in the same place for too long and keep shooting!!!

Difficulty level increases with time. As level goes up, enemies get even faster and more bullets are sent to you.

S = Score

H = Highscore

L = Level

♥ = Lives

Code:

_set_fps(60)h=0cls()?"\^:1818183c3c7e4281\r\fc\^:0000819999818181\n\f3\^:007e7e7e00000000\r\f5\^:3c4281817e244442\r\f9\^:00006c0000000000"
memcpy(0,3*8192,8192)::s::x=64y=90p={}w={}z=0o=0s=0l=1j=0g=8k=0t={}for j=1,200do
r={}a=rnd(.5)add(r,{x=64+90*cos(a),y=64+90*sin(a)})add(r,{x=64+90*cos(a),y=64+90*sin(a)})for i=1,20do add(r,{x=rnd(128),y=rnd(120)})end
a=rnd(.5)add(r,{x=64+90*cos(a),y=64+90*sin(a)})add(r,{x=64+90*cos(a),y=64+90*sin(a)})add(t,r)end::_::cls()?"s:"..s,1,1,12
?"h:"..h
?"l:"..l
?"♥"..g,8
if(k>0)k-=1
if(rnd()<.2)add(w,{x=rnd(128),y=0,u=0,v=1,c=2+rnd(14),l=128})
if #p<11then
j+=1for i=1,10do add(p,{i=1-i/5,j=i,r=t[j],l=1})end
if(j%5<1)l+=1
end
c=btn()a=c\2%2-c%2b=c\8%2-c\4%2x=mid(4,124,x+a)y=mid(4,124,y+b)z-=1if(btn(4)and z<0)z=10add(w,{x=x,y=y-4,u=0,v=-2,c=0,l=128})?"\as4g"
for r in all(w)do
if(r.c>1)pset(r.x,r.y,r.c)
end
for q in all(p)do
q.i+=l*.001+.02i=mid(1,#q.r,q.i)a=i%1b=1-a
i\=1p0=q.r[i]p1=q.r[min(i+1,#q.r)]p2=q.r[min(i+2,#q.r)]q.x=((p0.x+p1.x)/2*b+a*p1.x)*b+a*(p1.x*b+a*(p1.x+p2.x)/2)q.y=((p0.y+p1.y)/2*b+a*p1.y)*b+a*(p1.y*b+a*(p1.y+p2.y)/2)if(k<1and max(abs(x-q.x),abs(y-q.y))<6)g-=1k=60
pal(3,q.j%14+2)spr(16,q.x-4,q.y-4,1,1,q.i%2<1)if(q.l<=0)s+=1for i=1,20do a=rnd()b=rnd(2)add(w,{x=q.x,y=q.y,u=b*cos(a),v=b*sin(a),c=rnd(4)+6,l=20})end del(p,q)?"\as2ceg"
if(q.i>#q.r)del(p,q)
end
o-=1if #p>0then
q=rnd(p)a=x-q.x b=y-q.y
d=sqrt(1+a*a+b*b)if(d>64and o<0)o=50/(1+l/50)add(w,{x=q.x,y=q.y,u=a*1.5/d,v=b*1.5/d,c=1,l=128})?"\as2e"
end
for r in all(w)do
r.l-=1r.x+=r.u
r.y+=r.v
if(r.y!=mid(-4,132,r.y)or r.x!=mid(-4,132,r.x))r.l=0
if r.c<1then
?"!!",r.x-4,r.y-3,11
for q in all(p)do
if(max(abs(q.x-r.x),abs(q.y-r.y))<6)r.l=0q.l-=1break
end
elseif r.c<2then
circfill(r.x,r.y,1,10)if(k<1and max(abs(x-r.x),abs(y-r.y))<4)g-=1k=60
end
if(r.l<=0)del(w,r)
end
if(k\4%2<1)spr(0,x-4,y-4)
if(g<1)h=max(s,h)goto s
flip()goto _
StatusReleased
PlatformsHTML5
Rating
Rated 4.5 out of 5 stars
(4 total ratings)
AuthorSkyBerron
GenreShooter
Made withPICO-8
Tagspico1k, PICO-8

Comments

Log in with itch.io to leave a comment.

This is phenomenal! Well done on this project. Fun to play too.

Well done! 👏

It looks pretty, sounds good and is addictive!

Thanks!!! Moving the enemies so fast makes the game a bit chaotic. There's plenty of action going on and you can't afford to lose focus for a second.