# Sokoban Level 4c

Sokoban Level 4c is one of the new possible maps for the final level of Sokoban in UnNetHack, EvilHack and Hack'EM. In Hack'EM, the level is named "Just Keep Pushing". It has 15 boulders and holes.

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

```            ---------  0 boulder
|..^^^^.|  ^ hole
-------    |..----+-- > starting position/downstairs
|>....-------^|.....| # iron bars
-----.0......|^|.....|
|...|-....--.|^|.....|
|.0.|..--....|^|.....|
|.0.|.0-----.|^|.....|
--.0.0.....|.|^|+----|
|.0..0---.|.|^#...+.|
|.|..0..|.|.|^|...|-|
|.|.|.|...|.|^#...+.|
--.---...|.|.|^|...|-|
|..0..----.|.|^#...+.|
|....0....0....|------
----0..0|.0....|
|....|..-----
---------
```

## 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. 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.

First, make your way to the holes and clear some space to push in the first boulder:

```            ---------  A d
|..^^^^.|  O l
-------    |..----+-- L u
|@....-------^|.....| N urrr rrrr u*
-----.A......|^|.....|
|...|-....--.|^|.....|
|.B.|..--....|^|.....|
|.C.|..-----.|^|.....|
--.E..D....|.|^|+----|
|.G.F.---.|.|^#...+.|
|.|..H..|.|.|^|...|-|
|.|.|I|...|.|^#...+.|
--.---...|.|.|^|...|-|
|..J..----.|.|^#...+.|
|....K....L....|------
----M..N|.O....|
|....|..-----
---------
```

Shift the boulders at the lower left to solve a few more boulders:

```            ---------  K l
|..^^^^.|  J l
-------    |..----+-- K rrrr rrrr rruu*
|>....-------^|.....| O ulll rrrr rrrr uuu*
-----........|^|.....| M urrr rrrr rrru uuuu*
|...|-A...--.|^|.....|
|.B.|..--....|^|.....|
|.C.|..-----.|^|.....|
--.E..D....|.|^|+----|
|.G.F.---.|.|^#...+.|
|.|..H..|.|.|^|...|-|
|.|.|I|...|.|^#...+.|
--.---...|.|.|^|...|-|
|..J..----L|.|.#...+.|
|....K........@|------
----M...|O.....|
|....|..-----
---------
```

Break into the middle area to solve the next boulder:

```            ---------  J r
|..^^^^.|  L uuu
-------    |..----+-- H l
|>....-------^|.....| D u
-----........|^|.....| L dddd durr rruu uuu*
|...|-A...--.|^|.....|
|.B.|..--....|^|.....|
|.C.|..-----.|^|.....|
--.E..D....|.|^|+----|
|.G.F.---.|.|^#...+.|
|.|..H..|.|.|.|...|-|
|.|.|I|...|.|@#...+.|
--.---...|.|.|.|...|-|
|.J...----L|.|.#...+.|
|..............|------
----....|......|
|....|..-----
---------
```

Fill in more holes using the boulders in the upper left chamber:

```            ---------  E l
|..^^^^.|  C r
-------    |..----+-- E dddd dd__ _ rrrr rrrr rrrr uuuu uu*
|>....-------^|.....| B dddd dddd _ rrrr rrrr rrrr uuuu uuu*
-----........|^|.....| G lddd dd__ _ rrrr rrrr rrrr uuuu uuuu*
|...|-A...--.|^|.....| C ddld dddd _ rrrr rrrr rrrr uuuu uuuu u*
|.B.|..--....|^|.....|
|.C.|.D-----.|^|.....|
--.E.......|.|^|+----|
|.G.F.---.|.|.#...+.|
|.|.H...|.|.|@|...|-|
|.|.|I|...|.|.#...+.|
--.---...|.|.|.|...|-|
|..J..----.|.|.#...+.|
|..............|------
----....|......|
|....|..-----
---------
```

Push the remaining boulders into the holes using the leftmost corridor:

```            ---------  F llld ddd_ ____ _ drrr rrrr rrrr ruuu uuuu uuu*
|..^^^^.|  I uuul llld dddd _ drrr rrrr rrrr ruuu uuuu uuuu*
-------    |..----+-- H ruul llld dddd _ drrr rrrr rrrr ruuu uuuu uuuu uur*
|>....-------^|.....| J l___ ____ ____ _ drrr rrrr rrrr ruuu uuuu uuuu uurr*
-----........|^|.....| D dlll lddd dd__ _ drrr rrrr rrrr ruuu uuuu uuuu uurr r*
|...|-A...--.|.|.....| A dddl llld dddd _ drrr rrrr rrrr ruuu uuuu uuuu uurr rr*
|...|..--....|@|.....|
|...|.D-----.|.|.....|
--.........|.|.|+----|
|...F.---.|.|.#...+.|
|.|.H...|.|.|.|...|-|
|.|.|I|...|.|.#...+.|
--.---...|.|.|.|...|-|
|..J..----.|.|.#...+.|
|..............|------
----....|......|
|....|..-----
---------
```

The level is now complete, allowing you to pick up one of the three randomly-chosen Sokoban prizes, each of which is on top of a burnt engraving of "Elbereth".

```            ---------
|....@..|
-------    |..----+--
|>....-------.|.....|
-----........|.|.....|
|...|-....--.|.|.....|
|...|..--....|.|.....|
|...|..-----.|.|.....|
--.........|.|.|+----|
|.....---.|.|.#...+.|
|.|.....|.|.|.|...|-|
|.|.|.|...|.|.#...+.|
--.---...|.|.|.|...|-|
|.....----.|.|.#...+.|
|..............|------
----....|......|
|....|..-----
---------
```