You are the kingdom's new rookie rook recruit. Determined, you decide to depart on an adventure to establish your honor. Are you skilled enough to slide through the pesky pawns, precarious pitfalls, and perplexing puzzles in your path?


  • X to start
  • Arrow keys to move
  • Z to undo
  • R to restart


Published 4 days ago
Tags2D, chess, jam, pawn, Pixel Art, PuzzleScript, rook, rookie


Log in with your account to leave a comment.

It's been a while since I found such a well designed game made with Puzzlescript. The puzzle design is very enjoyable, some of the game mechanics were quite surprising (especially, when a game element has two different functions in the aftermath), so yup, a great entry for the Chess Jam! :) I wrote a little recommendation article about your game and also uploaded a playthrough video. <3 That was fun, thank you very much!

Best wishes,

Hey! Could I email you about this game?

Of course! Email me at:


That was a good game!


Nice game! Not much of a real challenge but had a good time nevertheless.

(Edited 1 time)

Thank you! I'll take note of that as I try to find the balance between challenging but not impossible


solid puzzle game!


Amazing!  I really like the use of "pawns". Great little mechanic.


Great game!


this was super fun! 


Great work, I put you on the fresh games section on the homepage.


Hi, any chance you could publish the game's source code? I want to make a game in PuzzleScript and it would be great help.


I won't publish the whole code, but is there anything specific you want? (ex. rules, levels)

I would like to know how the playe's sprite moves and how it collides with the existing blocks with the board, thanks a lot!


Ok, here's the segment of code I used for the player's movement. "Cursor" is a transparent object which leads the player, and "Blocks" is a group of objects that the player cannot move through

(------------ Player sliding movement ------------------)
[ Player | Cursor ] -> [ > Player | ] (If the cursor is adjacent, the player moves to the cursor and deletes it)
[ > Player | no Blocks | ] -> [ > Player | | Cursor ] again (If the player moves, and nothing blocks it, the cursor is added back)
[ Cursor Blocks ] -> [ Blocks ] (When the cursor is on something that blocks the player, it is deleted)

This is great help, thanks a lot!