Study project for 3rd person controller, simple AI system and questing system.
✔3rd Person controller with jump, attacks and attack chain.
✔Complex enemy behaviour with states
✔Cut scene system
The whole goal of the project was to achieve a character controller that feels like an AAA game. I've put a lot of work in it and it was worth it. The player can walk, run, jump, land, recieve damage, die, perform attacks ( normal attacks, special ones, chain and ranged attacks), turn camera around, pick up items, swtich their place inside the inventory window and use them to complete quests. For each one there is an animation set up with a vast animation controller.
The enemies have healthbars above their had rotated towards the camera and use a simple state based system as follow:
⚀ Patrol - they patrol between waypoints
⚁ Alert state - the player gets too close and they start looking after him
⚂ Chase state - when they make eye contact with the player and start to follow him
⚃ Attack state - where they enter a battle state and play a random attack animation damaging the player
Cut Scenes can be set up in the inspector entirely. The starting position and rotation of the camera can be set up in the inspector with some simple buttons. The next points can be set up inside the inspector as well, just be moving the camera to the location and locking it. This way more complex paths can be set up very easily. The story (text) is splled letter by letter inside a coroutine.
Quests were created as Scriptable Objects. Game designers could just right click and add the type of quest they want:
- Walkquest = the player should walk up to a specific place in the game world
- Collecquest = the player should collect an item and have X copies of it inside the inventory.