top of page
My role in making Redhood
Overview:
Redhood was a game developed as part of a game project during my education at future games. it was developed in 7 weeks.
My Responsibilities:
-
Enemy behavior
-
Animation Blueprints
Challenges Faced:
-
Inexperience with the engine
Engine: unreal 5
Programming language: c++
Itch.io link: https://futuregames.itch.io/redhood
Parent script for the enemies
Contents:
This script contains the shared functionality that all enemies have in common.
The enemies where supposed to be able to:
-
Patrol
-
Attack the Player
-
Search an area for the player
-
perform scripted movements
Solutions:
I decided to use a state machine for the enemies behavior. In the base script it mostly serves to limit the actions that can be taken for the enemies while in or out of certain states.
For example calling the patrol function would do nothing unless the enemy is in the patrolling state and being in the scripted movement state prevents any behaviors from occurring.

The wolf script
Contents:
This script contains the functionality of the wolf. The wolf will attack the player when entering they enter their line of sight. they will pursue the player until they get scared by the players lantern. The wolf can either despawn or return to patrolling after getting scared depending on designers preferences
Solutions:
The wolfs sight is handled by the blueprint using unreals AI perception.

BabaYaga
Contents:
Baba Yaga is supposed to patrol between her various workstations, if the player uses their lantern they allert Baba Yaga to their precence. if the player uses their lantern to much they will get attacked by Baba Yaga.
Solutions:
The work station class consist of a point at which Baba Yaga will stand when working. It also contains a bool for the players presence.
On the blueprint side various things can trigger the detecting player function either directly or via the LOS function.
I decided to handle the circumstances of when the player detected function is ran entirely in the blueprint due to the increased flexibility. The designers wishes regarding Baba Yagas detection were not entirely set when implementing the functionality so being able to quickly change things and allowing the designers to access it was important.

bottom of page