Skip to content

Toby's Terror is a Unity-based horror game featuring an AI enemy, Toby, who interacts with both the environment and player. Using Finite State Machines and NavMesh, Toby adapts behavior dynamically, navigating obstacles and adjusting actions based on player proximity. This project demonstrates skills in AI, Game-design, and C#.

Notifications You must be signed in to change notification settings

Dhruvbam/Tobby-s-Terror

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Toby's Terror

Toby's Terror

About

Toby's Terror was developed as a team project for the Introduction to Artificial Intelligence (CS-3368) class. The project explores AI techniques in a gaming environment, focusing on an AI-driven enemy, Toby, who interacts dynamically with the player and environment. Toby’s behavior adapts based on player proximity and actions, demonstrating skills in AI programming, C# scripting, Finite State Machines (FSM), Navigation Mesh (NavMesh) pathfinding, and raycasting within Unity’s 3D environment.

Description

Toby's Terror is an immersive horror game where the player is pursued by an AI enemy named Toby, designed to simulate complex, reactive behavior. Using Finite State Machines (FSM) and Navigation Meshes (NavMesh), Toby can navigate through obstacles, detect the player's location, and adapt its actions dynamically, creating a suspenseful and unpredictable experience. The AI’s behavior changes based on triggers, such as distance from the player, allowing for realistic transitions between actions like searching, chasing, and attacking. These mechanics add depth to the gameplay, making Toby a challenging and engaging opponent.

Built With

  • Unity Unity: The game engine used for development.
  • C# C#: The programming language for scripting the game's logic.
  • Finite State Machine (FSM): The architecture used to control Toby's AI behavior.
  • Navigation Mesh (NavMesh): Used for pathfinding in the game's dynamic environment.
  • Raycasting: Implemented to improve Toby's navigation and prevent getting stuck in obstacles.

Installation

  1. Clone the repository:
    git clone https://github.com/your-repo/tobys-terror.git
  2. Open the project in Unity.
  3. Ensure all necessary packages are installed via Unity Asset Store:
    • Modular First Person Controller
    • POLYGON Dungeons
  4. Build and run the game from Unity.

Contributions / References

This project was a collaborative effort by the members of Team Skynet Dev Club:

  • Dhruv Maniar
  • Hunter King
  • Taylor Dobson
  • Sebastian Baglo

References:

  • Sindhu, R. M., et al. "Development of a 2D Game using Artificial Intelligence in Unity." 2022 6th International Conference on Trends in Electronics and Informatics (ICOEI), 2022, pp. 1031-1037.
  • Toll, Wouter G. van, et al. “A Navigation Mesh for Dynamic Environments.” Computer Animation and Virtual Worlds, vol. 23, no. 6, Wiley, June 2012, pp. 535–46.

Learning Outcomes

Working on Toby's Terror provided valuable experience in AI-driven game development:

  • AI & NPC Behavior: Developed a deeper understanding of Finite State Machines (FSM) for controlling complex NPC behaviors, enhancing realism through dynamic state transitions.
  • Pathfinding and Navigation: Applied NavMesh for real-time pathfinding, allowing Toby to navigate challenging 3D environments smoothly and effectively.
  • Raycasting Techniques: Used raycasting to improve Toby’s navigation, ensuring it avoids obstacles and can follow the player effectively.
  • Collaborative Game Development: Improved project planning, communication, and version control practices, utilizing Unity and GitHub to enhance productivity and maintain cohesion.
  • Problem-Solving in Game AI: Refined problem-solving skills in AI behavior design, navigation challenges, and player interaction, leading to an engaging, interactive experience.

This project sharpened my skills in creating intelligent, immersive gameplay elements using modern game development tools.

Screenshots / Demo

Screenshot 1
Watch the video

About

Toby's Terror is a Unity-based horror game featuring an AI enemy, Toby, who interacts with both the environment and player. Using Finite State Machines and NavMesh, Toby adapts behavior dynamically, navigating obstacles and adjusting actions based on player proximity. This project demonstrates skills in AI, Game-design, and C#.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published