Misc. A Tiny TaleMisc. A Tiny Tale is in many ways the spiritual successor to Jurassic Explorer, and so I once again worked under project lead Michael Pearce to help turn his vision into reality (or, more accurately, into lines of code). The award-winning title has been featured on both Unreal Engine and Steams social media, and has released demos while participating in Steam Next Fest twice.
Now having switched to Unreal Engine, we started with a marketplace game template, but quickly realised we'd want to make a lot of modifications. One of the main gameplay elements is collecting gears (collectible) and cogs (coins), so that's the first thing I worked on. A game instance class is used to keep track of these values, and a function library allows updating these values from anywhere as well as saving and loading them to/from a save file. A blueprint was also added to easily place the coins (or any other actors) along splines, rather than adding individual coins manually.
The project was also my first foray into Unreal AI for the enemies. The enemies each have a "home" location, around which they can freely roam. Once they see or hear the player though, they'll run towards the player, even following them over the map, until either losing them out of sight/earshot or catching up and attacking. When attacked, the player loses their coins, spilling them all over the floor to be picked up again. Once the enemy loses the player, they go back to their home location and start roaming around it again.
The player can of course also fight back using a "sword" obtained in a shop in the first level. The sword is part of an extendible ability system. Another ability is cleaning using a brush obtained in the second level. The tool on the players back shows the currently selected ability in a diegetic way, and is automatically switched when using a different ability. Abilities can help the player out in different ways, for example cleaning can award the player coins.
The dialogue system is used to give the players quests, and rewards upon completing them. It's also used to give the player hints in a diegetic way by talking to nearby NPCs who'll mention things to do, and used for the shops. It's set up to easily implement other Blueprint functions, making it easy to switch cameras or trigger events in the level during conversations, as well as rewarding coins or gears when talking to the questgiver of a completed quest. The same system enables the shop to take money and reward new items by simply calling those blueprint function libraries from the NPCs blueprint - allowing easy implementation without needing a programmer to add specific features per conversation.
SOFTWAREUnreal Engine 4
UE4 Shader Blueprints