Start your journey towards mastering the martial arts of memory!

This is a minimalist game that will challenge your ability to repeat sequences of moves.

KATA is a revamp of the classic game "Genius," where you're tasked with accurately repeating a series of moves as indicated by the Sansei (master). 

Features

  • Memory Challenge: Get ready to exercise your memory as you need to accurately replicate an increasingly longer series of moves.
  • Score: every right move you score a point. Challenge yourself.
  • Belt Progression: As you master each sequence, you'll advance through martial arts skill belts. 
  • Ultra-Compact Game: Kata was created during the Pico-1k game jam, where the challenge was to create a game with compressed code of less than 1 kb (1024 bytes).

Control

  • x: start and eagle
  • left:  block
  • right: punch
  • up: high kick
  • down: duck
  • z: jumping kick

Belt progression

  1. white
  2. orange
  3. blue
  4. yellow
  5. green
  6. brow
  7. black

Code

palt(7,true)palt(0,false)function n(f,n,e,i)e=e or 9c=0for t=0,7do for d=0,3do o=f%8*4o+=d+64*t x=tostr(peek(o))w=i or x\16b=i or x%16k=del(n,c)c+=1y=del(n,c)if k and y then poke(o,"0x"..e..e)elseif k then poke(o,"0x"..w..e)elseif y then poke(o,"0x"..e..b)else poke(o,"0x"..w..b)end c+=1end end end n(1,{11,12,19,20,25,26,27,28,29,33,37,41,42,43,44,45,50,52,58,60},0,7)n(1,{34,35,36})n(2,{11,12,19,20,22,26,27,28,29,30,34,43,44,45,46,51,54,59},0,7)n(2,{35,36,37})n(3,{11,12,19,20,26,27,28,29,30,31,34,43,44,45,51,53,58,61},0,7)n(3,{35,36,37})n(4,{17,18,25,26,27,34,41,4,12,20,28,36,44,52,60},0,7)n(4,{35})n(5,{26,27,24,33,34,35,36,37,38,49,50,51,52,53,54,57,63},0,7)n(5,{42,43,44})n(6,{3,4,10,11,12,17,18,19,21,24,26,27,28,29,30,31,34,35},0,7)n(6,{18,19,20})n(7,{8,11,12,15,17,19,20,22,25,26,27,28,29,36,42,43,44,50,52,58},0,7)n(7,{34,35})function h(n,e)print(e,64-#e/2*4,n)end function l(e)g=e h(20,"new belt")rectfill(26,28,100,32,e)rectfill(98,33,105,37,e)rectfill(21,33,27,37,e)end function m()s={}f={}d=0r=nil u=nil e=1t=1a=1g=6v={"⬅️","➡️","⬆️","⬇️","🅾️","❎"}add(f,rnd{0,1,2,3,4,5})end m()e=0function _update()if(btnp(❎)and(e==0or e==3))m()
if e==1then t+=1if(t%30==0)a+=1r=nil
if(a<=#f)u=f[a]else u=nil s={}a=1e=2
end if e==2then i=nil if(btnp(0))i=0
if(btnp(1))i=1
if(btnp(2))i=2
if(btnp(3))i=3
if(btnp(4))i=4
if(btnp(5))i=5
if(i)add(s,i)r=i t=0if f[#s]~=i then e=3u=f[#s]elseif#f==#s then a=1e=4d+=1end
t+=1end if e==4then t+=1if(t>30)r=nil t=0e=1add(f,flr(rnd(5)))
end cls(7)pal(9,g)color(0)rectfill(0,80,128,80)if(r)sspr(16+8*r,0,8,8,20,50,32,32)print(v[r+1],32,90)else sspr(8,0,8,8,20,50,32,32)
pal(9,5)if(u)sspr(16+8*u,0,8,8,75,50,32,32)print(v[u+1],90,90)else sspr(8,0,8,8,75,50,32,32,0)
pal(9,9)if(e==0)h(20,"kata")h(100,"❎ start")
if(e==1)h(66,a.."")print("sensei",82,40)
if(e==2or e==4)h(66,#s.."/"..#f)print("you",30,40)
if(e==3)h(20,"game over")h(30,"score "..d)
if e==4then if(d==3)l(9)
if(d==6)l(12)
if(d==9)l(10)
if(d==14)l(3)
if(d==19)l(4)
if(d==25)l(5)
end end

Development log

Leave a comment

Log in with itch.io to leave a comment.