Dementor's Lament

Dementor's Lament is a game made by Rage Tank Games for the 25th quarterly gm48 game jam.

In Dementor's Lament, play as the sorcerer, Gif, who has been trapped deep within a terrible cavern full of ghosts and traps. Solve puzzles as you attempt to escape the dungeon using the only spell you know!

Controls:

Movement: Left/Right Keys
Jump: Space Bar
Cast Spell: "Z" Key

You can also cast upwards if you hold the Up Key while casting!

What I Learned:

Because DilapidatedMeow's "Learn Something New" jam and gm48 both started at roughly the same time, and because the work put into the original gm48 version inspired me to continue working on "Dementor's Lament" beyond what we created within the alotted 48 hours, I decided to learn how to and therefore implement a music and sound option menu and appropriate music/sound player object into the game.

Originally, all sounds were held within the default audio group in GM:S, which would have required that each sound have their volume adjusted individually. The first thing implemented was a new audio group to separate music and sfx, allowing for a simpler and faster method of reducing music group and sfx group volumes independently of each other while. Ended up being a lot simpler than I expected, but still required various functions I was not familiar with.

Another issue arose after attempting to run as an html5 game. GM:S is known for having issues when it comes to html5 and how GML is handled in that format. Because of that, the system used for sound management in Windows would not work in html5, and I ended up having to create a new system (not a more complicated one, though certainly a bit longer in code), which basically does what I mentioned above, and manipulates volume on each sound in the game individually.

This ended up being annoying, but ultimately a very good thing to have happen, as I ended up learning how to implement a system that would check to see if the game was being run in-browser (html5) or not. This wasn't completely necessary, but I threw it in anyway to see if I had a grasp on how various OS type functions and variables work.

Lastly came implementing a pause menu with these volume options. A pause feature was already put into the game for the gm48 version, but all it did was deactivate everything. Now, the same is done with the added benefit of a UI declaring the game is paused and allowing the player to adjust music and sfx volume. This was my first attempt at making a functioning UI outside of a basic "start" button, so it isn't necessarily pretty, but it works, and I'm happy with that for now.

Was definitely a good learning experience. I think the extra things I learned along the way will end up becoming invaluable development tools in the future!

Credits:

Kilven Deneras - Programming; SFX; Writing

DillonSemaj - Art Design; Music; Writing

Leave a comment

Log in with itch.io to leave a comment.