Notes on Mamono Sweeper

Mamono Sweeper or マモノスイーパー is a Minesweeper-like game with some RPG-like elements. However, that does not mean it is a multiplayer game you must play for a long time to get good scores. Instead, it has an experience system, and when you play a board you start at level 1 and level up from there. So, unlike normal Minesweeper, the gameplay changes as you go through a board, and you are not just doing the same thing over and over.

There are a few versions of this, an Android version, an HTML5 web version, and a Flash web version. The Flash version is the oldest but I prefer it because it lets you use the A/D keys to mark numbers more efficiently than the other versions (e.g. marking a 9 in one keypress). The HTML5 version feels easier to get clicks to register though, and I haven't tried the mobile version myself, although I always prefer a mouse anyway.

Game Mechanics

The website explains the game mechanics, but there's a bit of extraneous detail that you don't need to worry about. I will try to just explain what you need to know.

Monsters are of levels 1-9, with a given number of each. You play by opening squares, which either contain a monster or do not. If you touch a monster, you kill it and gain its experience (1 point for level 1, and then doubling for each additional level). If the monster is a higher level than you, though, you also take damage: the monster's level, times (the difference in levels divided by your level, rounded up). For an example, if you are level 5 and you hit a level 7 monster, the part in parentheses is (7-5)/5 rounded up to 1, so you take 7*1 = 7 damage.

Now, you have a certain amount of hit points (HP), which soaks up your damage. You can take hits as long as you kep above 1 HP; as soon as you hit 0 or less, your game is over, and in fact that is the only way to lose the game.

Of course, the experience you gain from monsters adds up and will eventually increase your level. The game displays EX (current total experience) and NE (needed experience to get the next level) along with your HP and level. The game is set up so that as long as there are monsters left there is one you can kill without taking damage (so it's possible to beat each difficulty without taking any damage at all). Since your HP is very limited you will want to kill as many monsters without taking damage as possible. When you kill every monster, the game ends and you win.

Every square that does not contain a monster has a number, which says the total level of the monsters in the 8 spaces around it. If there are no monsters, the program will just open those 8 spaces for you (and so on for any other square with no monsters around it). Also, once you kill a monster, you can click on its space to see how many monsters are around that space (but be careful, that number does NOT include that monster).

In addition to clicking, you can use A and D (or the left and right arrow keys) to mark an unopened square with a number. The numbers wrap around, so a blank space is below 2 and above either 5 or 9 (depending on which difficulty you're playing). Note that you can't mark 1s, because you start out at level 1 and can just kill them immediately.

The two blind levels behave a bit differently. You start out at level 0, which actually means you can't kill any monsters. You also have 1 HP so every monster will kill you immediately. In these levels, you have to open up every space that does not contain a monster. You can still mark monsters, which helps to keep track of what you're doing. However, in this mode you can mark a 1, so the number of keypresses for each number will be a little different than in the other modes.

Difficulties

Here is some info about the difficulty settings. I also included some times for the levels, but it's hard to find other people's times, so the best time listed may be a lot slower than the real record.

Name		Width	Height	Monsters	My time		Best known time
EASY		16	16	30		19		19
NORMAL		30	16	99		104		89 (mikagebaku)
HUGE		50	25	260		387		278 (mikagebaku)
EXTREME		30	16	125		223		165 (mikagebaku)
BLIND		30	16	99		126		126
HUGE x EXTREME	50	25	324		774		774
HUGE x BLIND	50	25	260		599		526 (mikagebaku)

At least with the people I know who play Mamono Sweeper, Normal and Huge are the two most common difficulties. Easy is a bit too easy to be fun; Extreme difficulties tend to be slow-paced, while Blind ones are too hard to complete (there is a lot of luck involved in being able to finish the board). They're all worth competing on, of course, but Normal and Huge are the best suited for races and for casually playing.

Basic Logic

The basic logic you'll use is simple enough. Find a number with only one unknown square next to it (counting squares marked with a number as known); take that number, subtract the monsters around it that you know, and you get the number of that square. If it's low enough, open it immediately; otherwise, mark it and move on.

In fact, you can extend this rule. Find a number with any number of unknowns around it, but so that the difference between that number and the monsters around it is no greater than your level. Then you can open all those unknowns, since any combination of monsters that adds up to at most your level is safe to kill. For instance, if you are level 5, and you see a 11 with a 2-monster and a 4-monster around it, you can open all the rest of the squares around the 11.

It can also be useful to keep track of small groups of squares that add up to a known quantity. Suppose you have the following situation (with 0 being any square with no monster):

  0 0 0
  0 7 0
  ? 8 ?
  ? ? ?

Here it is clear that the top two ?s add up to 7, whatever they are. Using that 8 you can deduce that the bottom three ?s add up to 1, which of course means you can open them all. If the square directly below an 8 is small too, you may be able to open the three below that as well.

Finally, there is some logic based on the difference of two adjacent numbers. Take a case like this:

  0 0 0 0
  0 7 9 0
  ? ? ? ?

The difference between 9 and 7 is 2, so that means the difference between the rightmost ? and the leftmost ? in this picture is also 2. You can prove this by thinking about the sum of the two squares right under the 7 and 9. If you already know the value of one of the monsters in one of those two squares, this automatically gives you the value of the other one. In fact, this logical idea generalizes: whenever you have two adjacent numbers, you can determine the difference between the total of the three squares on one end and the total of the three squares on the other. In this case two of each set of three are 0s, but you could also run into a case like this:

  0 0 ? ?
  0 7 9 ?
  ? ? ? ?

Here, the sum of the rightmost three ?s must be 2 more than the leftmost ?. Remember, just like with a single square, if the sum of a group of ?s turns out to be no greater than your level, you can safely open the whole group. This strategy is particularly useful with large numbers, because it's much easier to think about (say) a difference of 8, than to subtract all the monster values from a square of value around 30.

Playing Quickly

If you're here, you're probably interested in completing the game quickly. Although a lot of this comes down to experience and practice, there are some general tips I can give that will make things go faster. These tips don't really apply to Blind modes, as those play quite a bit differently.

Experience and Damage

Looking at the experience charts for each difficulty (except Blind modes), you will notice that at some point (around level 3-5 - see the table) you start needing to kill every monster of that level or below. That means that by that point the game expects you to have opened up or marked the whole board, and the rest of the time is just spent killing monsters in order. This is fine, but some parts of the board are a lot denser than others, and it can save a lot of time to not have to do those parts at a low level and then come back to clear out the monsters later.

Thus, if you want to get very low times, it is useful to take damage on purpose and allow you to open more of the board at a higher level. Hitting a monster much higher than your level means you get a lot of extra experience (a factor of 2 for each additional level!) and thus lets you get to a given level faster.

You have 30 HP on Huge mode and 10 HP on pretty much everything else; optimally, you will want to use up as much of that as you can while still remaining alive. You also want to get as much extra experience as possible out of your damage, to give you the most leeway when you get to the level where you'd normally have to clear the whole board. Since one more level means a monster gives twice as much experience, this means hitting the highest-level monster you can.

Now, there isn't a single optimal strategy to go as fast as possible, because killing different high-level monsters affects the experience curve differently. Here are some of the strategies I've thought of. I've given the percent of available experience you need to earn (not counting that higher-level monster) to reach the next level, which roughly equates to how much of a board you need to explore to reach that level. Note that sometimes the percentage for one level is less than that of the next, which means progression will either be automatic or can be done by just defeating previously found monsters rather than exploring new area.

                                 Lv2  Lv3  Lv4  Lv5
Easy: no damage                  70   77   100  100 
Easy: 4 on lv2, 5 on lv3         70   46   52   80 
Easy: 2 on lv1, 3&4 on lv2       50   31   84   100 
                                 Lv2  Lv3  Lv4  Lv5
Normal: no damage                30   57   100  100 
Normal: 4 on lv2, 5 on lv3       30   48   86   94 
Normal: 2 on lv1, 3&4 on lv2     24   44   95   100 
                                 Lv2  Lv3  Lv4  Lv5
Extreme: no damage               40   67   100  100 
Extreme: 4 on lv2, 5 on lv3      40   56   86   96 
Extreme: 2 2 on lv1, 5 on lv3    24   67   91   96 
Extreme: 2 on lv1, 3 4 on lv2    32   51   95   100 
                                 Lv2  Lv3  Lv4  Lv5  Lv6  Lv7  Lv8  Lv9
Huge: no damage                  19   63   66   68   100  100  100  100 
Huge: 6 on lv2, 8 on lv3         19   40   14   41   85   93   96   100 
Huge: 6 on lv2, 8 8 on lv4       19   40   56   19   73   86   91   100 
                                 Lv2  Lv3  Lv4  Lv5  Lv6  Lv7  Lv8  Lv9
HugexExtreme: no damage          8    9    60   100  100  100  100  100 
HugexExpert: 3 on lv2, 6 on lv3  8    6    47   94   97   100  100  100 
HugexExtreme: 8 on lv4           8    9    60   53   77   89   95   100 

Blind Mode

The Blind and Huge x Blind difficulties are quite different from the other modes. Instead of needing to kill all monsters, you just need to open up all non-monster squares. Of course, that is easier said than done, because you must play the whole board without being able to kill monsters. This also means you can't use the numbers 'under' a monster square, making the logic more difficult. Just like in regular Minesweeper, you will occasionally run into cases where it is completely impossible to determine which of two squares is safe, and which will kill you.

You do not actually have to mark any monsters in Blind mode, but I recommend marking every one. That will make deductions much easier and also reduce the number of mistakes you make. The game also shows the number of unmarked monsters at the bottom of the game window, so if you have only a few squares left you can see how many monsters of each type are in those squares. Sometimes, this knowledge can make the board solvable, when otherwise you would have had to guess.

Here is one deduction which I have found very useful in Blind modes, but which is not as useful in normal ones. Suppose you have a wall of ?s with three clues like this:

  0 0 0 0 0
  0 x y z 0
  ? ? ? ? ?

and y is equal to x+z. This means that the ?s under the x, y, and z are, respectively, x, safe, and z. You could figure this out based on the logic I have shown above, but it is useful to quickly be able to see it as its own pattern.

Also, if any logic tells you that square A contains more value than square B, then square A must be a monster, although you don't know how big it is. Square B can still be a monster but will be a smaller one.

One final piece of advice: if you get a pattern like this against a wall:

  | 0 0 M
  | ? ? 0
  | ? ? 0
  +------

with M being a monster, then it's best to guess any of the areas other than the one closest to the M, with the one in the corner probably being safest. If the sum of the top two is more than the sum of the right two, the top-left ? must be a monster.