The third Game Project I worked on at Futuregames. I primarily worked with player movement, the combat, checkpoint system and Fmod sound implementation.
Team Size: 18
Engine: Unreal Engine
Time: 7 weeks
|
|
|
You play as a farmer waking up from a car crash. Nature has begun reclaiming the cities of man. Your only hope of survival is finding Save Haven base and joining the rest of the survivors.
Armed with nothing but your old revolver to defend yourself from the animated plantlife, you try to make your way to Safe Haven base, solving puzzles and navigating mazes along the way.
WASD movement set up with Shift to sprint. That, alongside shooting, reloading and interacting were all implemented using Unreal's Input Mapping Contexts and Input Actions. If you hold down right click to aim your gun more precisely it will force you to move at a non-sprinting pace.
Looking around and by extension aiming the gun was handled by Unreal Engines Input Actions. Shooting is handled in c++ and functions by casting a ray that damages enemies, assuming you have bullets in your cylinder. If you don't have any or if you press R you begin reloading the gun, reducing the amount of ammo you have in your Inventory. These all broadcast events so that designers could assign them appropriate animations to the actions. Shooting is normally done from the hip, making aiming very difficult, but holding down right click will raise up the gun so that its iron sights can be used to aim. In addition, firing while aiming like this will reduce the recoil of the gun making repeated accurate shots way easier.
For this game I decided to use Unreal Engines inbuilt Save Game Object to store all the data we needed, current and max Ammo, Keys picked up, location. I created an object that, when entered, saves all our current information Upon death we simply load the game scene with the last Saved Game Data.
I worked very closely with our sound designer Fuad Shahmuradov on this, helping set up Fmod for our project. When setup was done we split the work such that he made the sounds and I implemented them where they were needed.
Appropriate VFX where you hit with your gun that changes on what material you hit.
Function to determine what material the Player is currently walking / running on to play appropriate sounds
Change volume on sound when you walk or sprint
Objects that change what Index on an FMod track is played when entered, allowing for rapid changes to it or smooth transitions with multiple objects placed.
This was my first experience working with a team in Unreal Engine. To alleviate the pains of designers who might have wanted to tweak anything the majority of my coding was done in Blueprints, something they had received training in. And through that I have come to realize that I find Blueprints weird.
Many complex features in Blueprints are just drag and drop nodes which makes it really easy to follow what is happening, but on the other hand simple things like an If-statement take up so much space that it quickly becomes hard to get an overview quickly. All in all, as a programmer I prefer standard code.
Phone number: +46-73 073 85 80
Work Email: SimonMikaelAgren@gmail.com