Little Games

Royale Escape

I’ve had a fascination for the world of luxury trains for years before making Royale Escape. It’s a short Escape the Room type of game where you play as a luxury train attendant who must stop the train and aid your injured colleagues after the locomotive and Attendant Car explode and catch fire.

The player must find items and solve puzzles within the time limit in order to stop the train before it reaches a bend on the mountain that will derail the train at it’s speed.

This was the second game I’ve made in Unreal Engine, but the first of this genre and it came with it’s own set of challenges to overcome. There is also a lot that I am proud of!

1. The train cars are moving separately along a track

  • For this, I made a spline with an instanced train track mesh and set each train car along it. The train begins at one speed at the beginning of the game and then increases speed once the explosion is triggered.
  • This created the issue of the player clipping through collisions. Blocking volumes, CCD, making collision walls thicker, and other experiments didn’t seem to solve the issue and I think it’s because the spline is moving the train car at certain intervals that can jump “beyond” where the player is standing/walking – allowing them to clip through. I have yet to find a suitable work around, other than keeping the train speed slower – that solves most of the collision issues, but I’d like the train running at a breakneck speed.

2. There’s replayability

  • The game has two main endings – one where you stop the train and one where you don’t (haha)! I also added a side mission to bring aid to your injured colleagues, but this doesn’t affect the main outcomes.
  • The items are randomly generated at different locations each time you play. Since I expected that players might not accomplish stopping the train during their first go, I wanted to make sure they couldn’t speed through it on the following attempts. There were a couple of methods I used to do this – shout out to Noah Fischer who helped figure out one of the ways!

3. It has puzzles!

  • I never knew how hard it could be to come up with a concept for a puzzle. I poured over other puzzle games, escape room concepts, an escape room book (The Do-It-Yourself Escape Room Book by Paige Ellsworthlyman), lots of articles on how train braking works, and how train control panels look before coming up with my three main puzzles. The Simon Says puzzle is based off of a tutorial I found on YouTube by the Game Design Guy.
  • The Simon puzzle is randomly generated and has the capacity to increase in difficulty. I opted not to put in the increasing difficulty for the sake of keeping game scope small, but the player has to remember a succession of six button presses so it’s challenging enough.
  • Take a look at my Simon Puzzle on GitHub!

Ventured

This was my first game in Unreal Engine – it’s a hack and slash adventure where you play as a fae battling the bots that have infiltrated your land.

It features combat, pickups, ability systems, health systems, and a boss with special attacks. I mainly used Megascans and Paragon assets, but I made the terrain in Gaia. Here are some highlights of what I learned making this project.

1. Flying enemy patrols and player sensing

  • I created a BP where the flying enemy would patrol a ranged area and fly in that space until senses the player. I think in the future, I would like to utilize behavior trees more instead, but this was a good experience.

2. Pickups, abilities, and data tables

  • I used a data table for the pickup abilities so I could quickly edit (and increase or decrease) their values in BPs. Being able to edit a Google Sheet and have it update in UE was also a big plus.

3. Animation sharing, retargeting, and blueprints

  • While the project used assets from Paragon, I still needed to customize the characters’ animations and make them my own. This was my first time editing an Animation Blueprint and customizing an Anim Graph, retargeting animations to different skeletons, and sharing animations between different skeletons.

More Tech Art

Shader Examples

Python & C++ Examples

error: Content is protected !!