Because of the limited time available and the knowledge of UE4 I had during production, I opted to create an exciting cutscene using blueprints. Not having any formal models meant I had to do a cutscene in first person in-game. Our game designer wanted the player to start as a human and transform into a wendigo after eating a human. I thought of what it would be like to experience a werewolf-life transformation and tried my best to convey it with both color and motion. I used intense camera shake and a blood red filter to let the player know the something vile was happening to them. At the end of the sequence the player sees their monstrous hands and knows immediately they are no longer what they were before.
Deer Artificial Intelligence
This was my first time working with AI so things got real complicated real fast. Starting with the combat system, this graph checks to see if the deer is edible (dead). If it is, the player gains health, the deer model is destroyed, and a rib cage is spawned in its place. If the deer is alive, it will take damage and be stunned. If it is killed, it will recoil and ragdoll.
This is in the AI controller. A behavior tree is assigned, and Walk and Run are ready to be called. Two pawn sensing nodes are at work here. EnemySense for looking for the player, and HerdingSense for looking for a Buck (pack leader). Both will make a reference for the blackboard up successful sight.
This is the AI Tree for the Doe. Cry is an ability that the player can use to attract roaming deer in order to feast and heal easier, but I will not be covering it. After using AI trees I felt them to be over complicated for the extent at which I used them. Keep in mind that Predator refers to the buck and Prey refers to the doe. This was named so that it could be used with different creatures.
In this tree node "FindClosestPredator", the doe is look at all the bucks(Predator) in the level and figuring out which one it is closest to, and following it. It moves at a walking pace.
In "FollowBuck", now that the Buck(Predator) is found, the deer will continually follow the buck at his updated location. If the doe fails to reach the buck for reasons such as poor pathing or getting stuck, it will attempt to move to a random spot then try again. In the node "Find Escape Route", the deer will attempt to flee and simply keep running to a random location.
The buck has a bit more complicated tree. First he checks if the player is using their cry ability. Instead of being attracted, he is stunned because he is an enemy. Then it checks health. If the player has knocked the buck down to low health, it will attempt to flee. If it is healthy, it will roam free. If the player provokes, it will attack. The graph for combat is similar to that of the doe.