Actors, Players, NPCs

How to organize our actors

Using game modules, all things that might have stats, conditions, give conditions, have an inventory, and so on, will benefit from having an actor class which inherits from GameModulesInventoryActor. Just because it has an actor class on it, does not mean it's going to walk around and do things in the world.

Entity

All entities will be interactable, implementing IAmInteractable. They will have to decide for themselves what happens when they are interacted with. And all will have a public actor Actor on them. Actor is a class which inherits from GameModulesInventoryActor, and may have additional functionality on it in the future, shared by all Entity objects.

An entity can be the Player, or a townsperson, or a dragon. It can also be a treasure box, a secret wall that can be destroyed, or a barrel that explodes causing massive damage.

Player

This is one of the main player characters. These are special. For Legend of the Stones, there will be 4 players, each of whom does not have an in-game body. Instead, we have a first person view with four portraits. However, each player will be a monobehaviour (inheriting from Entity), and can do things with Update() and other similar methods.

Character

This is an Entity which can move around the world. It doesn't mean that it's an NPC, it just means that it may wander around the world in some way. While it can be interacted with, it does not have all the engagement mechanics that an NPC would have.

NPC

This is a Character which engages with the player. It may be an enemy or a friend. NPCs will also be able to join the party as a "hireling" or follower.

Last updated

Was this helpful?