Asylum – Dev Diary 20 – Easter Mega Session

Finally a chance to get stuck in to a multi-day session of development. This Easter weekend has seen a great deal of work being completed on Ascent from Madness. So let’s get stuck in…

Key Pad Doors

One of the first puzzles the player will come across will be the numeric key pad to access the corridor to the women’s wing, and so it was important to work out the logistics for it early. It would also involve a different door. Double doors to be exact, so I would need to trigger multiple objects if the code is entered correctly. You may have read a while back that the key pad engine its self is already done. This did need to be altered as I had used it as a normal GMS room object and that just felt wrong – in fact it is – so I removed it from the room and it is now created and destroyed when it is needed instead. This makes it more portable as well. Then I just needed to tweak the code to trigger 2 objects instead of one. The result is a perfectly operating key code entry door 🙂 The final aspect was to include these new doors as a part of the save game routine to ensure they stayed open if the game is reloaded.


As an additional aspect of the first puzzle I wanted to have the code scrawled on the floor near the door. The idea being the first coded door is given to the player so they know what to expect going forward. This decal is a simple sprite just like the C2 floor indicator was from an earlier blog entry. You should just about be able to see the decal in the screen shot above, next to the papers.

Opening Dialogue

The opening dialogue for the game was a little abrupt. I didn’t like it immediately starting the game like that, and instead decided to switch it to the more subtle message display. This is the same process that happens when the player first ventures into an area that is too dark. The text simply fades in, waits and then fades out. Much softer start.

Door Save States

As well as the new door type I also extended the game save routine to handle the sliding door positions to ensure they stay open between sessions.

Let there be lighting?

One thing that I wanted to do was to see if there were any other lighting engines that might be faster or more suitable for Ascent (from Madness). There are a few that look amazing and are amazingly fast, unfortunately they do not work as I’d like them where walls are concerned. For Ascent I need the walls to be completely solid and the darkness must be total in places outside the players view. My PC is ageing (8+ years old) though so I suspect the frame rate (averages 200 in debug mode) isn’t really a problem. I plan on building a shiny new PC soon so I will see what effect an up-to-date processor and 16Gb ram will make.


In order to make the game world more lived in I have made a start on creating clutter objects. These are simple object that don’t do anything in the game but dress it up. The first of these are loose papers. Mind you with that said the first stack of papers is important to the game. Opps.

Non-collectable Investigation Objects

During the course of the game there will be items that the player can look at but does not need to be picked up. As mentioned above there are loose papers about and the first few of those I wanted to the player to be able to look at. So, I created a sub-system of the inventory examination process so I could attach it to any in game object. When the player steps close to the papers on the floor the usual interaction circle displays and the eye icon shows when the mouse is over it. Clicking displays the examination panels as before. Simple but effective.

Floor 1

Floor 1 is relatively large and although I’ve been building the game using the same route that the player will take I felt it was time to start dressing up the entirety of the map. So, I’ve been through and switched out all the interior walls with the newer thin ones, added in more blocked off areas, and made a start on putting together all the other rooms. There’s still a lot to do on this front but it is looking more complete. And I’m now in a position to actually place the torch for the player to collect – which is very exciting because it will open up the rest of the map for exploration and eventually allow the player to escape the first floor – gulp!

Phew, that was a lot of work.