Skip to content

BrodyHalls is a project that exists as technical practice. The game is A) a mechanical recreation of World of Warcraft's Endless Halls puzzle. B) an aesthetic homage to Neil Cicierega's Music Video, BrodyQuest.

Notifications You must be signed in to change notification settings

ColinSORourke/BrodyHalls

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

26 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hi! This is the README file for Colin O'Rourke's BrodyHalls.

What is BrodyHalls? BrodyHalls is a game developed using Phaser by Colin O'Rourke, spoofing two existing things Colin was a fan of.

Firstly, BrodyHalls is a recreation of the Endless Halls puzzle from World of Warcraft - as described here: https://worldofwarcraft.com/en-us/news/21115833/riddle-me-this-decrypting-the-lucid-nightmare 
My goal was to recreate the puzzle as accurately as possible as a technical exercise. 
Obviously I don't know the exact algorithm the original used, but I believe I made a strong attempt that captures largely the same goals.
The random generation is done by using Blum Blum Shub (https://en.wikipedia.org/wiki/Blum_Blum_Shub)
    on a random seed to deterministically generate the Maze from any said seed. The Maze itself is represented as a mathematical graph in a Javascript Dictionary
    To generate the paths, I go through each 'wall' in the maze (a pair of two nodes), and randomly decide whether that wall is an open path or not.
    After that is done, I run an explore algorithm, and then a connect algorithm to make sure the Maze is one solid connected component.
    All of this is handled in Maze.js
    If you want to view a graph generated by a seed, you can click the Debug button on the menu screen.

Secondly, BrodyHalls is an homage to Neil Cicierega's song & music video, Brodyquest - https://www.youtube.com/watch?v=ygI-2F8ApUM&
Thus, the playable frontend of the maze has that same cutout of Adrien Brody navigating while bouncing to the tune.
    This choice partially informed the perspective, because the Brody cutout is just a torso, and is confined to the bottom edge of the screen.
    The rest of the art is my own crude programmer art to get the point across.
        I considered giving each room a unique location, to match the video, but ran into 
            A) That goes against part of the design of Endless Halls in that the rooms can appear identical
            B) That creates significant difficulty to also convey the possible directions Brody can&can't move in.
    The Brodyquest song is also used as the soundtrack here, albeit cut into smaller chunks that dynamically progress as the players solves parts of the maze.
    This Playable Frontend is almost entirely contained in Play.js - if I were to work on this project any more, my next step would be to clean out Play.js and separate it into more appropriate smaller files.

Note: Brodyhalls was largely tested in the Google Chrome browser on a laptop device. It should work in other browsers, but I have yet to a thorough investigation. This will not work on Mobile as of now.

So what to make of this? This was a technical exercise, I did very little designing and the goal is not to show off my design skills.
The extent of my design consisted of minor choices in Maze Generation, and the initial choice to mashup Mr. Cicierega's absurd music with the disorienting Endless Halls, a joke for which the target audience is: ME.

Some of the technical elements of which I am proud of include:
* The pseudorandom graph generator and explorer that keeps and assigns the non-euclidean properties of WoW's Endless Halls
* The maze exploring front-end which mimics a physical space from a constrained perspective where the player sprite cannot leave the bottom of the screen.
* A dynamic soundtrack which smoothly progresses based on a player's progress.
* Minor animation elements in Phaser, using tweens and other methods.
And that this was all accomplished in the free time of about two weeks.

Thank you for reading & playing, I hope you found this enjoyable or at least informative!
    -Colin O'Rourke
    colin.orourke@icloud.com

About

BrodyHalls is a project that exists as technical practice. The game is A) a mechanical recreation of World of Warcraft's Endless Halls puzzle. B) an aesthetic homage to Neil Cicierega's Music Video, BrodyQuest.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published