Thursday, July 31, 2014

Review: J-Fizo for iPhone and iPad

In what I hope will be the first of a long series, I'm delighted to host a review written by Roberto Canogar, one of the authors of Sky Scramble. Roberto is a mathematician and we have frequent email exchanges about our future games and puzzles in general. I can't wait to read what he has to say about this game. — Nicola

First of all, this is my first post here and I am really happy to contribute.

J-Fizo (Free) was developed by Adam Błaszkiewicz. A couple of weeks ago, Nicola tweeted about this game and compared it to my game Sky Scramble, so I had to try it! Indeed, there is some resemblance but there is a big difference: while my game is geometrical (the distances are important), in J-Fizo the game is topological (distances are not important).

Let's get into business, J-Fizo (Free) was developed by Adam Blaszkiewicz. The game presents us with a network (or graph in mathematics), and on each node of the network we have a black token or nothing at all. The links of the network are colored, and for each color there is a button.
In this game you have to move, split and join the black tokens by pressing any of the colored buttons. Your objective is to leave exactly one token on the network. When you press a colored button, the tokens move to adjacent empty nodes connected by that color. 

As an example, let's consider the three possible moves for the above position:
  • If you press the RED button, the bottom-left token moves up. 
  • If you press the BLUE button, the upper-right token would SPLIT and two tokens would move along the blue links to end up on the two nodes at the left side. 
  • If you press the YELLOW button, the right most token would move to the central node. Note that nothing else moves or splits because tokens block each other.
One last thing, if two tokens move to the same empty node they JOIN. Actually this is the only way you can diminish the total number of tokens. So, in the above example if you press yellow the two tokens join in the center-right node and you win because there in only one token left. So the first trick you learn in this game (and the only I did learn for a long time) is that you have to look for a configuration of two links of the same color that meet at a node (in the above example the two yellow links), we will call them V-configurations. These V-configurations are a sink of tokens so to speak. But V-configurations are also the only ones that create new tokens by splitting (recall that we saw this splitting in the first example when we pressed blue).

The game concept is very interesting and original, these days this is something very valuable in my opinion. The game could not be simpler: there is basically one rule and one objective and things can get difficult with small configurations. Actually too difficult. This must be one of the most difficult games I have tried on the App store.

Let us talk about the levels. You begin with a very clear and easy Tutorial with 5 levels. Then you have the Campaign with three packs of levels: "J-Fizo's ABC" (with 26 levels), "Hexpack" (33 levels) and "Hardcore" (14 levels). But for free you can only play the first 7 levels of the ABC pack, that's it, not very much but it will take you some time to solve those bloody hard levels! Then for a unique In-App-Purchase (the Ultra-Pack $1,99) you can continue playing the rest of the levels. In any pack only two levels that haven't been solved are open to play, so basically you have to solve them in order, except you can skip one level.

The style of the game is amateur. For example, the menus are done with the default style of a very common UI element (UITableView). The playing screen is also lacking. First of all, the background image is always the same. Then there is no information about how many moves you did and how long you are taking to solve the level, but your score depends on both. Talking about buttons, you only have two, and they are difficult to press: the hint button and the restart/exit button. In my opinion "exit" and "restart" should have their own dedicated buttons, and a button to take back moves should be available since in many situations it's impossible to retrace your steps. But one nice feature is that you can drag the nodes around to a configuration you like, this makes it very clear that the distances are not important, what is important is which nodes are connected. Anyway, the UI is too barebones but at least it lets you play the game without a fuss and at the end of the day that's what you really want with a puzzle.

A more annoying problem is that the game should warn you if you get into an unwinnable configuration, the tutorial shows you one and warns that you should restart, the problem is to recognize that you are in one of those configurations. I believe I did get into them a few times, and it is very frustrating because it takes time to realize what is happening.

You can use hints, but a hint is just a clue for only one move. Since solutions of medium levels have at least 10 moves, and you are given initially 10 hints you will run out of hints very quickly, which is a shame for such a hard game. But you earn a free hint for each level you pass, and also you can buy hints with an IAP.

The game prompts you to login to facebook, this is because the leaderboards work through facebook. Sorry, but for me this is not acceptable. Game Center works well, and that should be the default scoring system in my opinion. It's a pity because I would have loved to check my score against others, I have to say.

This game has a fatal flaw. The levels are too hard too quickly. Probably this is because of a lack of play-testing. In this game you are left in the wild from the beginning. What happened to me while playing most of the first 10-12 levels was this: after making some moves I returned to the starting position and this repeated several times (as if I was lost in the desert), then I started to more or less memorize the configurations I had already visited and when some new configuration could be reached I went ahead, many times it failed, but eventually I succeeded. This is a very painstaking process. For a long time I was not learning any tricks, and couldn't find any other strategy. Then half way the ABC pack, things started to change little by little. At long last, after I had built my own toolbox of tricks the game started to make sense and I started to proceeded with a sense of purpose. Now, after solving 30 levels (with the use of the free allotted hints) I do enjoy the game.

For example, a trick that you learn is how important it is to block moves. It often occurs that you have two token that move simultaneously in different parts of the network and when you try to bring them together they move closer just in the wrong way and can do nothing, its a parity problem. Many times the way to get out of the jam is to split one of the tokens so that one side of the network is so crowded that you block moves, while the other part remains empty and the token can move. This way you break the parity problem. Another trick, which is common in puzzles and applies here, is to find a configuration from which the solution follows easily. Then take that configuration as your objective.

To make things more visual and see how difficult a level can be, I analyzed the first level of Hexpack, which looks easy.
So, I encoded the above position with a binary number: 100001. The first 1 indicates the token at 3 o'clock, the next 0 is the empty spot at 5 o'clock and I continue clockwise until the last 1 that corresponds to the token at 1 o'clock. Then I did put all binary numbers in the diagram below (click to enlarge) and where the colored arrows describe the transition from one position to the another by pressing the corresponding color while playing the game. Sometimes when you press a colored button the configuration does not change, that would correspond to an arrow beginning and ending at the same position, I did delete those circular arrows for clarity.

In the diagram below I marked with "Begining[sic]" the initial position and with "End positions"the solution positions.
(click to enlarge)
To get to the "End Positions" you have to go necessarily through any of the two "Gateways" positions, and those gateways have also just one entry each (another position). So basically you have to go through very narrow paths to solve this level, and still there are several chances of doing the "wrong" move and just loose your opportunity because you can not undo your move (although sometimes you can). If you play the level without the diagram, one would typically just go around and around through the center positions, sometimes getting close to the gateways but without even being aware of it. If you don't know how this puzzle really works, if you don't know its tricks it is difficult to solve.

So my conclusion is that this is a very interesting puzzle, with barebones UI, but ruined by a poor level design. If you are patient enough you will be rewarded. But you should take this game as a really tough challenge. I did solve the whole ABC and I feel like a hero. At the moment I have only solved 4 of the Hexpack, but I will continue. The nightmare pack makes honor to its name, I was not able to solve even one of them. If you play this game please write a comment, I am really curious.

Comments: maybe you have noticed the vertical mirror like symmetry in the diagram. It is no coincidence, for any other level you will see the same symmetry. That is, playing from position 100001 or from the complementary position 011110 will be completely equivalent. If you think about it for a while you will understand why, this is the kind of musings that mathematicians like :-)  And for the really mathematical oriented readers, I should say that this game reminds me of a mathematical object used to visually represent groups: Cayley graph. You could play this game in a Cayley graph, but tokens would never split or join, so it wouldn't be very fun.

Logical Reasoning★★★★☆
User Interface★★☆☆☆
Loading Time★★★★★
Saves Partial Progress
Status Bar

©2014 Roberto Canogar. Unauthorized use and/or duplication without express and written permission is strictly prohibited. Excerpts and links may be used, provided that full and clear credit is given to Nicola Salmoria and with appropriate and specific direction to the original content.