Click "Sleep" for a dark background.
Click "sleep" again if text isn't dark.



Puji Full Analysis & Depth Clarification

I've covered many games on this blog that are very complex and/or deep. I define and use these two terms very specifically. To say that a game has a lot of complexities means that it has a lot of game rules, which includes move properties, level elements, and other gameplay rules. Complexities can be grouped by their importance to the core gameplay based on their relevance. Obviously rules like "reload with R," "examine with E," and "you have a double jump" are more helpful to a beginning player than "attack #3 from character #7 has 8 start up frames of animation." To an aspiring master or pro gamer, all complexities are important because knowledge is power. Furthermore, I propose that most games have approximately the same proportion of key complexities to the more nuanced complexities. 

To say that a game is deep, however, isn't as clear of a statement. In "The Depth of Interplay" series I covered gameplay depth in great... detail. In it I explain that there are several different types counters, and that these counters make up a game's interactive depth. The more counters bounce back and forth between players or between the player and the game, the deeper the gameplay. The deepest games have many ways that the pendulum of counters can swing back and forth. It is here that I must make a clarification. 

It is is important to consider concepts like depth and interplay from the base level, which is gameplay mechanics or actions. The player uses mechanics to interact with the game, and it is emergent use of mechanics that compose tactics, strategies, gambits, and matrices. Unfortunately, the descriptor "deep" can refer to a game with a a single core loop of interplay, a game with many loops, a game with many mechanics that counter each other naturally, or a game with many back and forth counters. So to clarify, I will use the term "deep" for games with many back and forth counters only. All the other levels of depth must be described in more words.

To be clear, "back and forth" counters describes encounters when mechanics, tactics, or strategies are used initially to achieve some kind of functional advantage and then used to counter the opponent (and visa versa) without repeating or resetting the gameplay conditions back to the state defined by the initial conditions. Only applies to reactionary counters.Decay and cause & effect counters provide some of the clearest examples back and forth depth. This is why many understand Chess to be a very deep game. The turn based design facilitates back and forth gameplay to begin with. Additionally, when pieces are captured, the whole game changes. ie. the available space increases and the viable strategies shift for both players. Elaborate traps, setups, and checkmates that take many turns to complete are possible because of this design.

Many gamers love many popular multiplayer games because they require lots of skill, feature many complexities, and are fairly deep. Street Fighter, Call of Duty, Star Craft, Smash Bros, Halo, Team Fortress, and Mario Kart are all examples of such games. Gamers put in the hours of practice, teach themselves how to play better, and compete on that next-level that's far beyond the imagination of less dedicated players. From a critical perspective that takes advantage of every lesson and facet of game design covered on this blog, we know that it's possible for a game to have a high skill ceiling and be fairly deep while featuring very few complexities. Puji, an indie game by Alexander Jhin, Matt McKnett, and Pat Kemp, is a perfect example. (You may remember Pat Kemp from my analysis on Station 38)


The following is the full analysis of Puji.

The basic rules are very simple. They're so simple, in fact, that I'll simply show you the in game instructions. 


Here are all the game's complexities that I bothered to measure roughly ranked in order of importance:

  • The stage has boundaries.
  • You can only move in the 4 directions. 
  • All monks move at the same speed.
  • While STRIKING you can't change directions of motion. 
  • STRIKE is only dangerous at the very beginning of the animation.
  • The STRIKE hitbox is an instant rectangle that encompasses your entire character. 
  • 22 monks in the field
  • The monks move and stop randomly.
  • 1 minute matches then its sudden death.
  • Monks sleep and at random don't wakeup at sudden death.
  • Monks sleep for 5 seconds
  • The STRIKE hitbox is the size of the whole monk sprite.
  • STRIKE takes approximately .4 seconds.
  • There's no buffer frames for the STRIKE.
  • When monks wake up they face the same direction that they were in before being attacked. 
  • The field is approximately 33 monks wide by 13 monks tall. 
  • The controls for each player have priority when held. In order W,S,A,D.
  • Holding right and STRIKE locks the STRIKE mechanic away from other players. 
  • A sleeping monk in sudden death can be woken up by STRIKING their fallen body. After 5 seconds they will randomly wake and then randomly fall asleep again.


That is not a lot of complexities. Puji has the following skill spectrum categorized using the DKART system.



  • The placement of the STRIKE button can make moving and attacking a tad awkward. Ultimately, this game is very simple to control. 


  • There's not a lot to learn (see complexities above), and there's not a lot to analyze. Everything is presented for all players to see. 


  • Tier.1Adapting to the constantly changing "moving monk cover" is about as effortless as keeping up with traffic. With all the random NPC monk motion, a semi watchful eye will allow you to move with the flow. 


  • Puji stresses reflex skills unlike any other multiplayer game I've ever played. The entire game is designed around the idea of blending into the crowd and recognizing subtle changes in movement.  Outside of sudden death there are always a few monks moving around on the screen. 
  • Reflex: The only time you need sharp reflex skills is when narrowly avoiding a STRIKE from an opponent. Because the attack is only active at the very beginning of the animation, keeping your distance (to a pixel of accuracy) and then reacting to close in for a kill is a very effective counter strategy. 
  • DVA: Keeping track of specific monks (whether they're players or not) requires a keen eye. Because the monk sprites (images) overlap so easily, sometimes the difference between tracking your target and losing it is a difference in a few pixels of positioning. 
  • Peripheral Vision: Seeing the whole field at once is key to locating your character without becoming a target by making obvious and erratic movements. After you find your character, it's important to keep up with the way all the monks move to spot any irregular individuals. This requires lots of peripheral visual acuity. 
  • Eye Movement: As good as your peripheral vision is, you'll most likely use your hard focus to track suspects. If you're not careful, you may lose track of your own character when you focus on other targets for too long. To keep this from happening, you'll have to to rapidly switch focus between your character and all suspect targets.  


  • Repeatedly STRIKING is the only action that requires any notable timing skills. Because there are no buffer frames, to maximize your attack time you must use the static timing of the STRIKE to minimize your vulnerability


So with so few complexities and a skill spectrum that mainly stresses reflex skills what does the interplay look like for Puji? Surprisingly, there's a lot here. Counters and strategies listed below:


  • Slaughter & Escape: To counter a player hiding in a group, you can attempt this strategy. As quickly and effectively as possible, STRIKE every monk in your surrounding area. If you hit your opponent, great! Otherwise, you can run for the nearest group. 
    • Patiently waiting in the group someone seeks for cover can be the best way to counter the above strategy. 
  • Seismic Scouting: Because all players share the same keyboard to play Puji. You can definitely hear and feel when others are pressing keys. Normally, it's difficult to pick out human targets simply based on when you feel keyboard vibrations. However, you can use the lack of vibrations to know that your opponent's are not moving and quickly narrow down the possibilities.  
    • Seismic Scouting can be countered with Wall Hugging. If your opponent is looking for moments when you're not pressing the keyboard to find you, walk up against a wall and continue pressing in that direction. Your opponent(s) won't be able to tell if you're moving or standing still. 
    • You can also press the non active buttons on the keyboard to create vibrations with no actions. 
  • Early STRIKE: If your opponent is closing in on you, try throwing out an early STRIKE to scare them into reacting with a KICK. If you time it correctly, they'll move into your range right when you can STRIKE again. This strategy works on beginning Halo players. If you MELEE them first and scare them into MELEEing in return, you'll have the timing advantage to MELEE them again for the kill. 
  • The Blend: Because the monk sprites can layer up perfectly with each other, you can create a solid look-alike mixupby blending in with the NPC(s). When they randomly move from you or you from them, even an opponent focused on your position will have to guess your exact position. 
  • In a 3-for-all, waiting for one of your opponents to track down and attack the other opponent can be the perfect opportunity to strike. The hard focus players tend to use to locate their final targets is a sort of tunnel vision. 
  • Safety STRIKE: If you want to STRIKE a target but you don't want to stick around in case an opponent is secretly lurking nearby, you can use this technique. Just move away from all other monks while STRIKING and you can hit a target while increasing the distance between you and potential danger. 
  • Eyes on Me: When you expose yourself by STRIKING an innocent NPC, sometimes the safest place to hide is not among the camouflaging monks but out in the open. Think about it. If everyone knows where you are, the danger for you comes from every other monk in the field. You don't know which is an NPC or a player, so keep them all back. Anything that even makes a meandering B line to your location will either be easily avoided (because all movement is slow and uniform) or killed. If your opponents don't move in on you soon (at their own risk) then you can easily use "the blend" technique to cover your escape even more securely. 
    • To counter this strategy, just approach the target player with a group of other monks. You'll have to be patient because the NPC movement is random. But as long as you get one other monk to close in, you can really put the target player at the disadvantage.
    • To counter this counter, players can use the safety STRIKE technique. However, this will push them closer to the sides of the stage where more monks are most likely gathered. 
  • Zombie Cover: After a bit of time in sudden death, all the NPC will fall fast asleep. If you want to throw in a few more factors into the mix, you can actually wake up fallen NPCs by STRIKING their downed bodies. After 5 seconds they'll wake up, walk around, and fall. Of course, these zombies can be knocked out with another STRIKE to reset their "walking deadness."


Warning: We love to scream when we play. 

Also, watch with annotations. 

Puji is a surprisingly deep and strategically interesting game. Puji shows us that efficient and elegant design is what makes games so interesting even through the rigors and stresses that multiplayer puts on a game system. With so few complexities Puji challenges players to use a unique range skills and strategies. Because the dynamic moving monk "cover system" is the product of random AI, every match is different and all players must adapt. The biggest drawback to Puji is that by holding down different combinations of keys you can lock out your opponent's movement and STRIKE mechanics. I call this keyboard locking. This is without a doubt a game breaking feature. If Puji was a tournament game (in some kind of hilarious yet still interesting alternate universe) there would probably be a rule forcing participants to play with a single finger to prevent keyboard locking.

On a final note, another group of indie designers are creating a sort of 3D version of Puji called SpyParty. Already this game features more complexities than Puji and is taking years to program. It's only 2 players, and from the look of things, it'll probably be less deep than Puji. Only time will tell. 

« Mario & Luigi 3 Boss Analysis | Main | X-Scape Review & Repair »

Reader Comments (2)

I hate keyboard locking, it is the main reason why I don't play shmups since I bought a laptop and my converter doesn't work with it. This could answer some questions:

September 9, 2010 | Unregistered CommenterAva Avane Dawn

@ Right on.

I got an email back from one of the creators, and he confirmed my suspicions. Keyboard locking is the result of a hardware limitation that would be difficult for any developer to get around.

Your link is actually very interesting. It makes me think about common typing errors. I wonder if some common issues are a combination of keyboard locking and the design/limitations of our hands.


September 9, 2010 | Registered CommenterRichard Terrell (KirbyKid)

PostPost a New Comment

Enter your information below to add a new comment.

My response is on my own website »
Author Email (optional):
Author URL (optional):
Some HTML allowed: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <code> <em> <i> <strike> <strong>