# Sokoban Level 4f

Sokoban Level 4f is one of the new possible maps for Sokoban in variants of NetHack. It appears as one of the possible final level maps in GruntHack, UnNetHack, DynaHack, EvilHack, SlashTHEM, and Hack'EM. In Hack'EM, the level map is named "Plinketto". It has 21 boulders and 18 holes, leaving 3 spare boulders.

Behind the holes is the treasure zoo, with the standard set of closets containing the Sokoban prizes. The prizes vary with each variant:

```  -----                         0 boulder
|...------  -----   -------   ^ hole
|.0.0.0..|---...| --|.....|   > starting position
--..--.--.--...0.| |.+.....|   + door
|.0..0.....0.0...| |-|.....|--
--.....--.--..0.--- |.+.....+.|
|.00-----.|----.|   |-|.....|.|
|.....||>.| ---0--  |.+.....|.|
--..0.|--0--|..0.|  --|.....|.|
---..---...|..0.|    ------|.|
|.00...-.0.00.|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|...^^^^^^^^^^^^^^^^^^.|
|...--------------------
-----
```

## Strategy

The following solution may not be very fast or organized. Improvements welcome. Like all Sokoban levels it can be solved without making any boulders 'stick'.

All boulders are replaced by letters so they can be referred to. Letters O and Q are skipped for clarity. Moving the boulders is shortened to r for right, l for left, u for up, d for down. An asterisk is used to denote the last move filled a hole (and thus removed the boulder from the game). So "N ddrr*" means move boulder N two times down and two times to the right into a hole.

The first boulder can be cleared easily:

```  -----                         N dddd drr*
|...------  -----   -------
|.A.B.C..|---...| --|.....|
--..--.--.--...D.| |.+.....|
|.E..F.....G.H...| |-|.....|--
--.....--.--..I.--- |.+.....+.|
|.JK-----.|----.|   |-|.....|.|
|.....||@.| ---L--  |.+.....|.|
--..M.|--N--|..P.|  --|.....|.|
---..---...|..R.|    ------|.|
|.ST...-.U.VW.|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|...^^^^^^^^^^^^^^^^^^.|
|...--------------------
-----
```

The boulders on the left side of the level need to be prepared for pushing:

```  -----                         F l
|...------  -----   -------   E r
|.A.B.C..|---...| --|.....|   K dd
--..--.--.--...D.| |.+.....|   J u
|.E..F.....G.H...| |-|.....|-- M ull
--.....--.--..I.--- |.+.....+.| S u
|.JK-----.|----.|   |-|.....|.|
|.....||>.| ---L--  |.+.....|.|
--..M.|--.--|..P.|  --|.....|.|
---..---...|..R.|    ------|.|
|.ST...-.U.VW.|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|..@.^^^^^^^^^^^^^^^^^.|
|...--------------------
-----
```

The boulders on this side can now be funneled into the holes:

```  -----                         T ____ ____ ____ ____ _rrr dddr rr*
|...------  -----   -------   S d___ ____ ____ ____ rrrr dddr rrr*
|.A.B.C..|---...| --|.....|   M r
--..--.--.--...D.| |.+.....|   K rrdd ____ ____ ____ rrrr dddr rrrr*
|..EF......G.H...| |-|.....|-- M drrd d___ ____ ____ rrrr dddr rrrr r*
--J....--.--..I.--- |.+.....+.| J ddrd rrdd ____ ____ rrrr dddr rrrr rr*
|...-----.|----.|   |-|.....|.| A lddd dddr rdd_ ____ rrrr dddr rrrr rrr*
|.M...||>.| ---L--  |.+.....|.| B llld dddd drrd d___ rrrr dddr rrrr rrrr*
--.K..|--.--|..P.|  --|.....|.| C llll lddd dddr rdd_ rrrr dddr rrrr rrrr r*
---.S---...|..R.|    ------|.| E dldd drrd d___ ____ rrrr dddr rrrr rrrr rr*
|.@T...-.U.VW.|          |.| F lldd ddrr dd__ ____ rrrr dddr rrrr rrrr rrr*
|..--...|.....|          |.|
----|-..------------------.|
|....^^^^^^^^^^^^^^^^^.|
|...--------------------
-----
```

From here, the top-right chamber needs to be broken into from the bottom:

```  -----                         U r
|...------  -----   -------   P l
|........|---...| --|.....|   L uuuu
--..--.--.--...D.| |.+.....|   I l
|..........G.H...| |-|.....|-- H u
--.....--.--..I.--- |.+.....+.|
|...-----.|----.|   |-|.....|.|
|.....||>.| ---L--  |.+.....|.|
--....|--.--|..P.|  --|.....|.|
---..---...|..R.|    ------|.|
|......-.U.VW.|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|............@.^^^^^^^.|
|...--------------------
-----
```

These boulders can be pushed around the level to get them into the holes:

```  -----                         G llll llll l___ ____ dddd rrdd rrrr dddr rrrr rrrr rrrr*
|...------  -----   -------   D dlll llll llll ll__ dddd rrdd rrrr dddr rrrr rrrr rrrr r*
|........|---...| --|.....|   L dlll llll llll l___ dddd rrdd rrrr dddr rrrr rrrr rrrr rr*
--..--.--.--.HLD.| |.+.....|   H rdll llll llll ll__ dddd rrdd rrrr dddr rrrr rrrr rrrr rrr*
|..........G.@...| |-|.....|-- I rrul llll llll lll_ dddd rrdd rrrr dddr rrrr rrrr rrrr rrrr*
--.....--.--.I..--- |.+.....+.|
|...-----.|----.|   |-|.....|.|
|.....||>.| ---.--  |.+.....|.|
--....|--.--|.P..|  --|.....|.|
---..---...|..R.|    ------|.|
|......-..UVW.|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|..............^^^^^^^.|
|...--------------------
-----
```

The last two boulders:

```  -----                         V u
|...------  -----   -------   U l
|........|---...| --|.....|   W l
--..--.--.--.....| |.+.....|   R uuuu u___ llll llll llll dddd rrdd rrrr dddr rrrr rrrr rrrr rrrr r*
|................| |-|.....|-- W ruuu uuu_ llll llll llll dddd rrdd rrrr dddr rrrr rrrr rrrr rrrr rr*
--.....--.--....--- |.+.....+.|
|...-----.|----.|   |-|.....|.|
|.....||>.| ---.--  |.+.....|.|
--....|--.--|.P..|  --|.....|.|
---..---...|..R.|    ------|.|
|......-..UVW.|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|.................@.^^.|
|...--------------------
-----
```

The level is now complete. You may want to check under boulders P and V for items.

```  -----
|...------  -----   -------
|........|---...| --|.....|
--..--.--.--.....| |.+.....|
|................| |-|.....|--
--.....--.--....--- |.+.....+.|
|...-----.|----.|   |-|.....|.|
|.....||>.| ---.--  |.+.....|.|
--....|--.--|.P..|  --|.....|.|
---..---...|.V..|    ------|.|
|......-.U....|          |.|
|..--...|.....|          |.|
----|-..------------------.|
|...................@..|
|...--------------------
-----
```