HAZE

Rumour has it that a treasure chest was hidden in an old hedge maze. Many have tried to find it but few have returned, and they only brought back a handfull of gems. They claimed that the maze faded in and out of existance and a ghost chased them relentlessly from dusk until dawn.

Scoffing at their foolishness you decided to try your luck. As soon as you entered the maze the door slammed shut behind you and locked! Was that a maniacal laugh you heard in the distance? Surely it must have just been the wind. No matter, you have no choice now but to venture further into the maze...


Controls

ActionKeyboardXbox controller
Playstation controller
MovementWASD/IJKL/Arrow keysD-padD-pad
Pause/Resume
PB button
Circle button


Objectives

Find all 4 keys to unlock the exit.

Pick up the scattered gems.

Collect all 15 gems to make the treasure chest appear somewhere in the maze.


Scoring

Gem: 10 points

Key: 100 points

Treasure chest: 500 points

Escape the maze: 1000 points

Multipliers:

Easy difficulty: x0.5

Standard difficulty: x1

Hard difficulty: x2

Nightmare difficulty: x3

Night time bonus: x2


Background

HAZE is the result of my experiments with maze generation, field of view calculation, astar path finding and colour gradients in Godot. It was created in my spare time over the course of a couple of weeks. I went with a very simple, stylised look reminisent of old Atari 2600 console games but the gameplay and storyline is somewhat based on the Amstrad CPC 464 title Sultan's Maze.

The mazes are generated using a version of the recursive backtracking algorithm where the ends of cul-de-sacs/dead ends are joined to a neighbouring cell before backtracking.

I implimented the field of view/fading maze by placing a second tile map on top of the one with the maze tiles. It uses a tile set of grey tiles that have opacity ranging from 0 to 100 percent to obscure parts of the maze.

The field of view calculation is very simple as the player can only look along single cell width corridors in each of the 4 cardinal directions. The code checks each direction until it reaches a hedge or the exit, increasing the opacity level each cell. The results of the field of view check are added to the haze tile map each time the player moves or after the haze has been faded one step towards 100 percent opacity, which happens at regular intervals.

Leave a comment

Log in with itch.io to leave a comment.