If this project has sparked your interest, feel free to download the build, or the project files:
Download: Camp Monster Build
Download: Camp Monster Work in Progress
Currently I am working on this project again to free it from bugs and change the base from blueprint to C++, while upgrading the engine to version 4.25. You can download the WIP Project here: Download: WIP CampMonster Project
The rules of this game are relatively simple: Disarm the traps, but don’t get caught. Kind of like a reverse Hitman where Agent 47 has to save his targets, rather than killing them.
My tasks where the programming of the game and the sound (Wwise) and animation implementation as well as the game design. Most interesting and challanging was the games AI which I realised with the use of unreals blackboard technology and some C++ coding.
For most interactions the concept is: is the player standing in this trigger and pressing a button? Check for the right ingredients in the hands and do something. For example when the player holds the monster radio and stand within reach of the human radio, you can exchange it.
The combination of items is simmilarly easy: the items itself have an item declared within their data, that shows with which item it can be combined. As soon as the player tries to combine the items the right hand item is compared to the combination of the left hand item and viola, the new item is born.
By far the most complex system in this game is the AI. The AI is built to walk a spline while in normal mode and trigger animations. These animations lead to their death, or not if the player has disarmed the trap that is triggered. The triggers are positioned on the splines the AI walks on.
The splines are cut in parts, so the AI can wait for each other if they loose one another. Since the AI stays in place when the monster is seen this is a better solution than just letting them walk.
With Unreal’s sense system I managed to get the AI to recognise the player by hearing and seeing. The AI then turns around to have a look at the player. The player has to move fast to get out of sight, or hide in a bush.
Animations are triggered when a character passes a trigger. The agent then performs the animation through the Montage for that agent while standing if the bool Character Needs To Stop is true, or walking if it is not.
If the Is Death Animation bool is true, the game gets reset after the animation is done. If there is a Partner Animation Trigger however, the animated agents will wait for each other to be ready, before performing their actions.
Pick up the monster radio at the peer and exchande it with the radio Chad has put down near the fire.
Pick up the hairspray at the tent and the lighter that Chad looses when he smokes a cigarette. Combine these items and kill the mosquitoes at the hut.
Pick up the tampon in the right toilet and go to the car. Use it on the gasoline tank in the back of the car.