Major Technical Areas & Risks
- AI and path-finding algorithms will play a large role going forward.
- Balancing combat through the stress-morale system will require a delicate balance.
- Every personality interacts with a variety of different personalities.
- No particular specifications.
- Fully tabbed
- Classes and functions are uppercase for every word.
- Variables are camel-case.
Procedural World Creation
- Rooms
- Every room but the spawn room is placed by the player, they can be placed when the player enters construction mode.
- Monsters
- Monsters are randomly generated within the stat parameters and potential personalities set by the monster's type
- Monsters can then be interviewed and placed in the dungeon after generation.
- Interview questions may very based off of the monster type.
- Answers vary by the monsters stats and personality.
- Heroes
- Heroes will spawn randomly throughout the day with random stat blocks determined by its hero type.
- The player's infamy score determines which hero types can potentially spawn in the dungeon.
- Pathfinding searches each rooms neighbors and sorts them to its preferences.
- Different heroes will have different preferences.
- They will also attack monsters in the rooms based off of their preferences and threat values.
- Heroes are spawned in groups to make a single Party entity, which reduces script usage
- The number and type of heroes are determined randomly, with different Party types determining the base probabilities for each hero
- Parties can contain all of one type of hero, or only a single hero. An empty Party deletes itself to conserve space
- A Party has room preferences gained from each party member, and uses the average
- Monsters will function differently based off of their personality type.
- Similar to heroes they will attack differently based on preferences and threat level.
- In the future the player may give them patrol routes.
Finite State machine with 3 states:
Heroes see adjacent rooms, and will enter a room with the lowest threat + highest money value. Some other modifiers are applied, such as the heroes preferred room type. This room is then added to the exploredRooms list.
If heroes find a dead end, they enter Backtracking state. If they have explored the full dungeon or are carrying enough money, they enter the Exit state.
When heroes reach dead end, they start backtracking the way they came until they find a new room to search, then enter Exploring State
Heroes find the fastest explored route to the exit and try to leave the dungeon.