top of page
Spooky Tycoon
Silly Goose Studios
ROLE
Lead Programmer
DESCRIPTION
Spooky Tycoon was a 1 month long project created by 7 people. I worked on AI state management and backend systems for the rides to work.
DURATION
October 2024 - November 2024
GENRE
Casual Tycoon
ENGINE
Unity

Spooky Tycoon Credits Background
Spooky Tycoon AI Gameplay

AI State Management
The AI Ghosts in Spooky Tycoon use a state machine in order to make decisions about what to do. They will always start on the EnterPark state and after riding at least one ride they will have the option to enter the LeavePark state. The states for each ghost are stored in a public enum. The AI's currentState is stored and a switch case is used to determine what action should be taken. The AI use the Unity AI Navigation system to move around.
Shows how AI decide lines to wait in




Ride & Line Management System
Each ride is derived from the class LineManager where it stores the information per ride. The ghost AI will communicate with the RideLineManager which is the central hub for all the LineManagers. This allows the AI to get information for each ride by only needing to reference one other script itself rather than eight others.
The LineManager is a dynamic script which allows for each ride to have their own number of line spots, different costs, different amount of seats, etc. LineManagers will also keep track of how many AI and what AI are in its line.
Depending on what upgrade stage the ride is on, it will have a different game object, number of seats, cost for the next upgrade, and price to ride the ride.


Reflection
This was my first project dealing with AI state management and I sure learned a whole lot from it. There were many iterations of the NPC state machine and many issues I had learning how to get the states to work the way I wanted. In the end I was very happy with the amount of variation I had with all the NPCs and how that interconnected with the ride systems I implemented.
bottom of page