Block Dude
Game by Steven Lambert (straker) · Licensed under CC0-1.0 · Source
© 2026 Pixel Arena · Back to all games
About Block Dude
Block Dude is a tile-based puzzle where you guide a small character through a side-scrolling level using only blocks for elevation. The character can walk left and right, climb up one tile if there is a step, and pick up the block right in front of him. Blocks can be carried over your head and dropped one tile in front of where you stand. The goal is to reach a door at the end of the level.
The character is short. He cannot jump, climb a two-tile-high wall, or fall off ledges higher than one tile without losing control. So you have to use the blocks scattered around the level to build steps, fill gaps, and turn impassable terrain into navigable paths. The level is solvable, but only with the right sequence of pickups and drops.
Block Dude was originally created by Steven Lambert as part of his series of basic single-file HTML5 game examples, released under CC0. The format itself is older. Block-pushing-and-stacking puzzles go back to mainframe games of the 1970s and were a staple of graphing calculator games in the 1990s. The handheld TI-83 calculator had a popular version that students passed around in math class.
The whole game is one screen. There is no level select, no progression, no story. There is one puzzle and you solve it. Solving it might take ten seconds or ten minutes depending on whether you can read the level correctly the first time.
Controls are arrow keys to move and a single key to pick up or place a block. Touch users get on-screen buttons. The character moves one tile per input. There is no momentum, no acceleration, no time pressure. You can think between moves for as long as you want.
The level layout is fixed. Every player sees the same starting state and the same door position. The challenge is figuring out the move sequence, not racing.
Strategy is sequence-planning. You cannot put a block back where you picked it up easily, because you have to face the placement direction. So picking up a block has to be deliberate. Removing a block sometimes opens a path forward but blocks a path back. Plan the entire sequence before committing.
The most common stuck-point is realizing you have placed a block one column too far and now cannot retrieve it. Once a block is placed, the only way to move it is to pick it back up, which requires you to be standing one tile to its side. If the block is on top of a stack you cannot reach, the level becomes unsolvable and you have to reset.
A good habit is to mentally count tiles. Each elevation difference matters. The character climbs one tile up but cannot climb two. So a two-tile-high wall always requires a block placed below the lower tile, which converts it into a tile you can step on. The block on top of the block on top of the floor lets you climb to a tile two units high.
Another habit is to look at the door first, then trace a path backward. Where is the door? What is the last move that delivers the character to the door? What does that require? What does that require? Working backward often makes the puzzle clearer than trying to figure it out forward.
The puzzle has multiple valid solutions, but they tend to differ only in path order rather than in core block placements. The optimal solution uses the minimum number of pickups and placements. Most casual solvers do not bother optimizing for that. Once you reach the door, the level resets to the start and you can try again with a different sequence.
The version on this site is straker's CC0 release, hosted with attribution and a link to the original gist on the game page. Steven Lambert's collection of single-file games is one of the most useful resources on the web for new game developers learning HTML5 canvas, and Block Dude is the cleanest example of how to build a tile-based puzzle in under three hundred lines of code.