ā Switch to EXCALIDRAW VIEW in the MORE OPTIONS menu of this document. ā You can decompress Drawing data with the command palette: āDecompress current Excalidraw fileā. For more info check in plugin settings under āSavingā
Excalidraw Data
Text Elements
GameEntity
Damageable
Agent
AgentGOAP
BasicMob
Building
Hero
The basic class that everything else will be
inheriting from. It has a position, an EntityData and
a list of available actions
This class contain all the information referent to
the combat. You will be finding here all the RPG
status that will be needed for a normal character
Those are all the buildings inside
the game. They will not be running an IA for now.
They just provide some actions that the
AgentGOAPs can choose from to interact with.
They also have a flow field that will be
used to guide the agents towards the door.
Those are the mobs present inside the game.
They are will be running a Finate State Machine.
For now they will be just punching bags
Those are the units inside the game that they can move around.
They have a visor that will every tick captures the information around
them. They have a Move(x,y).
This is where the GOAP is being implemented.
The peons are using this class, they canāt fight back.
Only run away, thatās why I created an interface called
IRPGCombat that holds the utility logic.
They have the status for the combat calculated
dynamically. So I had to make some alterations
to accomodate that
IRPGCombat
For now Iām just using on both,
since they are the only two things
Iām considering.
Something that came up was the possibility of a ranged hero take cover inside
a building, a tower for example, and then from inside it use his skills and gain
some defense and range. Problem for future me, if we walk to that path.
As for the common towers, I think they donāt need to have all that we have planned
for the utility AI, since they will be using the same skill/attack.