Puyo Puyo


Command line game






SEP 2017


Puyo Puyo is a famous series of tile-matching video games in Japan. I made my own command line version of the game.


Making the logic of chain reaction was the hardest part. For better UX, I used sleepForTimeInterval so that the user can tell clearly what's going on in the game.


#1 Select / Drop

  • Command | J - Left | K - Right | L - Rotate | D - Drop

Puyo(in my app : 💙) fall from the top of the screen in pairs. The piece can be moved, rotated and dropped by prompting the user. The piece falls until it reaches another Puyo or the bottom of the screen.

In my game, users can decide the position first, then drop them.

#2 Pop / Chain

When four or more Puyo of the same color line up adjacent to each other, they disappear. (Puyo connect horizontally or vertically)
This is called Popping.

A Chain is made when falling Puyo cause a new group of Puyo to Pop, making a chain reaction.
The above gif animation shows the example of a 3 Chain.


#3 Game over

Once Puyo reaches the top of the screen, it's game over


The scoring is based on the formula:

  • The number of Puyo cleared in the chain
  • How many Puyo are in the group
  • The number of chain reaction

In a nutshell, the more you chain and the bigger the amount you clear per chain, the higher the score gets.