Get ready to blast off for a spookily extraterrestrial
experience! An overly ambitious scientist’s experiment has gone
horrifically wrong, and his mansion has been transported into
space. It is your duty to rid the mansion of a horde of restless
ghosts.
Astrohaunt is a third-person shooter where you have to remove
all the ghosts from a haunted mansion in space. Three different
types of ghost exist in the mansion, all with different special
abilities. The player can take over a ghost's special ability by
trapping them in a fast-paced and immersive minigame. Clear as
many floors of the mansion of ghosts as possible and de-haunt
the cosmos!
This is a student project made in my 1st year at Breda
University of Applied Sciences and marked the first time that I
worked on a game project with a team.
My contributions to the project
During this project, I mostly worked on the enemies and
implementing their different AI behaviors. My biggest
contributions will be listed below:
Three different enemies with unique behaviors and
attacks:
The game contains three enemies, all three with
different AI behaviors and attacks. I implemented all
three enemy types and, in the process, learned a lot
about AI development in Unreal. All three ghosts and
their behaviors will be described below:
Lord enemy:
The lord is a ghost that uses a ranged attack to damage
the player. For this, the lord uses a gun that shoots
three bullets at once. In order for the lord to shoot
its gun, it needs to stay a certain distance away from
the player. If the player gets too close to the lord, it
will try to back up. If the player is too far from the
lord, the lord will try to sneak up to the player to get
within a shooting radius. When the player catches the
lord, they receive the Lord's ability to shoot three
bullets for a short period of time.
Lady enemy:
The lady is a ghost that attacks the player when they
get too close. When the player gets too close to the
lady, it'll uses a scream attack, which damages the
player if they are within the screaming radius. After
performing the attack, the lady will enter a cooldown
phase where it'll try to hide from the player. For this,
Unreal Engine's EQS system was used, to find a location
that is both far away from the player and out of view.
When the player catches the lady, they receive the
lady's screaming attack for a short period of time.
Chef enemy:
The chef is a ghost that uses a melee attack to
damage the player. If the player is too close to the
chef, it'll use its butcher knife to stab the player.
When the player catches the chef, they receive extra
health.
The video below demonstrates the three different enemy types.
First prototype:
I created the first prototypes in order to explore
some of the ideas that the designers on our team came up
with. This prototype contained very basic shooting,
enemy AI chasing, minigame functionality (which can be
started when enemies are on low health) and third person
camera controls. Some of the features in this prototype
were used in the final game.
The player being attacked by two lord enemies and one
lady enemy.
Quick overview
Project Type: Game Project
Platform: Windows (itch.io)
Tools: Unreal Engine 5.0
Role in Team:
Enemy and AI programmer
Project Duration:
8 weeks
Release Date: July 1, 2023
Team size: 13
Role in Team:
Engine programmer and Lead
Now available!
Like what you see and want to try it out yourself? Astrohaunt is
now available for free on Itch.io!
Astrohaunt on Itch.io