top of page

 

Statecrafter

(April 2024)

About

This is like a Minecraft fan game or clone.

Statecrafter is a 2D Topdown NPC Playground in the world of Minecraft, for Windows and Android, made in Unity.

Made in April 2024 for Artificial Intelligence for Games assignment. 
(Semester 5)

This project is all about Finite State Machines (FSM) for NPC AI, living in a virtual world and taking care of themselves. It is also all about the transitions between states, how the AI should behave in certain situations.

The approaches I took were: Lots of Dictionaries, Lists, Managers for items, inventory, recipes, stations, buffs, etc. Also making the most use out of game events

How to Play

In this game, Player interaction is completely optional

There are a few NPCs living in this world:

  • Steve

  • Alex

  • Zombie

  • Skeleton

  • Spider

The goals of the Humans are to:

  • Mine Resources

  • Upgrade Tools

  • Defend against Monsters

The humans' states are:

  • Idle

  • Mining

  • Looting

  • Crafting

  • Fighting

  • Fleeing

  • Sleeping

  • Death

 

Some unique behaviours of some of them:

  • Steve prefers swords

  • Alex prefers axes

  • Spiders can dash attack

  • Skeletons can shoot

Player Interactions:

  • Spawn Food to heal humans

  • Flint and Steel to spawn fire

  • Potion of Swiftness for humans

  • Ender Pearl to teleport spectated human

  • Mace to damage and knockback all in an area

  • Herobrine mouse to scare all

Software Used

bg2.png

Credits

  • Unity - Game Engine

  • Visual Studio Code - IDE

  • Minecraft (2011) Mojang Studios

  • C418 Music - Daniel Rosenfeld

  • Excalibur Minecraft Texture Pack - Matt Dillow (Maffhew)

  • Various Video Games – Sound Effects

  • ChatGPT Tutorials (2022) chat.openai.com

  • Kenney.nl (2010) - UI

  • LeanTween (2017) Russell Savage - Dented Pixel

  • Adobe Photoshop - Sprite and Art Editin

  • Audacity - Audio Editing

  • Crystal Pug - Safe Area Helper

Lecturers:

  • Mr Mohamad Faris Zakwan

header
in.png
be.png
itch.png
bottom of page