New Game: Labyrinth

You have been imprisoned within the labyrinth. You must escape before you die of starvation (6 minutes).
You are on the sixth sublevel of the labyrinth you must search for the stairs to the levels above.
Reach the stairs to the outside world and you shall gain your freedom.
Beware, areas of the labyrinth that are out of sight tend to change.

This is a branch of my DungeonCrawl repo. The sketch is still called DungeonCrawl.ino.

Edit: Be sure to switch to the pivot\labyrinth branch.

Edit: I put Labyrinth in its own repo to simplify things.

5 Likes

I went to try your game but it does not seem to be working as advertised. After seeding the seeder Blink is already green (instructions say they should all be white). Then instructions say to long press to turn green and also long press to reset everything. Clicking fogs changed their color anyway but I was not sure of exactly what I was doing. :slight_smile:

@BGA Be sure to switch to the pivot/labyrinth branch.

I moved the Labyrinth branch to its own repo.

1 Like

Loaded it up and gave it a run. Had fun trying it with 7 Blinks and gather that a larger Labryrinth can feel even more maze-like but was delighted that with 7 it plays just fine. It becomes a game of reshuffling in a bit of hurry (that said, I might have been lucky, I didn’t have to hurry too much).

1 Like

Though not my original intention…

If you are playing with only 7 Blinks instead of reshuffling, the player could simply rotate the cluster 180° and continue moving “forward”. I suppose if all three fog blinks became walls then you might need to reshuffle. Or the player could back track and wait for the walls to become fog again.

I had gotten tired of reshuffling even with 12 blinks, so I introduced a timer in addition to the isAlone check for reverting to fog. 5 secs for walls, 10 secs for paths. On a larger cluster this should give an interesting fading trail effect.

I should update the README to include the timed revert to fog detail.

At first I had tried to maintain a procedurally generated map inside the Avatar and have it sent to the “moved to” blink via datagrams.

Then I realized that the PRNG on each blink was just as good of a procedural source for map generation. Especially helpful is percolation theory as taught to me by Dan.

Any one blink does not need to know the whole map. They just need to know what level the Avatar is on and the approximate time remaining.

It’s almost a feature that the Blink clocks deviate, as it creates this cool fade out effect as time runs out.

Difficulty can easily be tuned by making more levels, or making stairs more rare, or changing time allotted.

Current settings
Time: 6 mins
Levels: 6
Stairs: 5% chance fog becomes stair

Made a few tweaks:

  • fix cloning (avatar can only move to one tile)
  • time remaining shown on avatar instead of fog
  • fog consumes single click
  • other avatars ignore ascend wave
  • bring on the racing
  • revert to fog time shortened to two seconds
  • experiment with claustrophobia mode
  • protoc LEFT renamed to DEPARTED
  • unset heading == 255
  • separate game timer handling

Some more tweaks

  • stairs reveal on timer instead of on adjacency to avatar
  • any blink can become stairs, fog blinks will keep their stair state hidden
  • reverted stairs on single segment experiment