Please enable JavaScript.
Coggle requires JavaScript to display documents.
Hobbit People, gameplay loop - Coggle Diagram
Hobbit People
coding
use tilemaps for biomes
All entity approaches
Deep Inheritance Hierarchy Approach
Have a class such as a squirrel and then add more classes to it such as flying squirrel for separate entities
Monolithic Class Approach
create one class which contains all the things all entities can do and each behavior and use it for each of them
Entity Component Approach
have a class such as entity which all entities will have, then create side behavior scripts for being able to move, fly, unique behavior patterns and etc.
ECS or Entity Component System
Components wills store the data while functionality is provided by external systems
I will use the Entity Component Approach, for the behavior scripts and such, I wont need to store them in a variable but just attach it to the entity and give the entity an id. Other scripts from the same entity or other entities will need to use get component to use the script
each behavior script will contain a variable for which contains the main script (get; private set;)
List of behavior scripts
Damageable:
Give health variable and is capable of dying. Will play given death animation
controllable:
Allows it to be controlled by the player, player is able to override behaviors such as movement, AI behaviors and etc.
Moveable:
Allows other behavior scripts to give a destination and it will move to it at a given speed. Also has an intelligence variable which will determine its pathfinding capabilities.
Armor:
Will create a child object which contains a sprite and animation to overlay on top of the entity. Armor will also negate damage based off info from a file
Equipment:
Stores info on mainHand, offHand and back. Will play proper animations or create child object.
Not sure whether it should be a separate game object or the art should be apart of the entity, the problem with this is combining stuff such as mainHand, offHand and back items
HobbitAI:
Will attack if attacked, run away when about to die and keeps distance with ranged weapons. If animals get too close, it will yell and attract attention of ally hobbits and attack if the animal gets too close. It also speaks its own language and speaks during events such as seeing aggressive or passive animals, talking to others and etc.
Inventory:
Will be able to store stuff in inventory. Hobbits will have 1 slot and hold items above their head or can equip backpacks to increase inventory count and allow use of weapons while carrying stuff
Megalibgwilia Ramsayi AI:
If anything gets too close or its ready to sleep, it will retreat to its burrow. It will occasionally dig up the ground to eat stuff and create a new hole if it finds its burrow is destroyed or doesn't exist
Handling Environment
Animals and AI
No Respawn Method:
Animals will spawn in chunks when the world is created, they wont respawn so animals can be killed off in an area
problems: all babies will end up as adults, extinction may happen especially for animals that die a lot
Respawning:
Animals will spawn in chunks when the world is created, and when they die, they will respawn in the same area in packs or not
problems: animals will become farmable
splitting up the world into chunks and regions
saving
Save chunks into regions and store all entities into their proper chunk
World Generation
Use perlin noise similar to how I used it in Hinterlands and use the same method I used for generating trees and rocks
Handling commands
Command class with pos, target and type variables
entity holds a list of commands
unit controller assigns commands and the entity executes them
Animals/Humans
Homo Floresiensis
(Hobbits/Units) are the main entity which players control. Behaviors: damageable, controllable, moveable, selectable, armor, equipment, inventory, HobbitAI
Zagolossus Hacketti:
Obdurodon Tharalkooschild
Megalibgwilia Ramsayi:
Not very fast, when approached, it will run back to its hole to hide in. Digs up the ground to eat. Behaviors: damageable, moveable, Megalibgwilia Ramsayi AI
gameplay loop
Create a world from a creation menu. Then from the map, you will see multiple tribes spread through out and their info. Select one to be your tribe
Start with some cinematic or black screen with text explaining the time period and what species you play as
Start with your tribe around a burnt out campfire during the sunrise of a new day
Start with some simple tools, can make more from picking up stones and wood or gathering trees and rocks
Create a world from the creation menu and select difficulty settings
Starts with a narrator or text talking about the scenario and shows a group of hobbits on a boat during a thunderstorm traveling away from their dwarfing island to explore the world. The screen goes black and you hear a crash sound and now they are in Australia
The screen fades from black and you start during day in an easy/starter biome with your group and a crashed boat on the shore
Some hobbits start with basic tools and there is a tutorial panel on top showing all the basics (can be skipped or ignored)
This starter biome will consist of mostly prey and maybe weak predators which could be used to make basic weapons, armor and tents and a simple backpack
Eventually the starter place will be out of animals and resources, once you go to another biome, there will be bigger animals, more predators and weather events will start to happen.