-
Notifications
You must be signed in to change notification settings - Fork 12
Battles ~ Battle Item Stats
Note: this is still a work in progress, and additional stat documents could be added for more classes and items, but we hope this is a valuable structure and start for documenting battle item stats. Stat change choices are also arbitrary, so it is also flexible to change
In battle_logic.c, there is consume_battle_item() function that applies battle stat changes (apply_stat_changes()) onto a combatant.
There are two contingencies that we believe ought to determine the stat changes that are being applied:
- The player class (
class_ttype inside ofcombatant_ttype) - The actually battle_item that we are consuming.
`int speed; //the amount speed changes from a stat change
int max_sp; //the amount max_sp changes from a stat change
int sp; //the amount sp changes from a stat change
int phys_atk; //the amount phys_atk changes from a stat change
int mag_atk; //the amount mag_atk changes from a stat change
int phys_def; //the amount phys_def changes from a stat change
int mag_def; //the amount mag_def changes from a stat change
int crit; //the amount crit changes from a stat change
int accuracy; //the amount accuracy changes from a stat change
int hp; //the amount hp changes from a stat change
int max_hp; //the amount max_hp changes from a stat change`
Here is a foundational tree of some of the battle_items, and the stat changes multipliers we think they should apply to different combatant class types:
If Player Class is Warrior: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1.5 1 1 1 1 1 1 1 Else If Player Class is Wizard: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 0.8 1 1 1 1 1 1 1
If Player Class is Warrior: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1 1 1.2 1 1 1 1 1 Else If Player Class is Wizard: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1 1 1.2 1 1 1 1 1
If Player Class is Bard: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1 1 1 1 1 1 1.2 1 Else If Player Class is Rogues: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1 1 1 1 1 1 0.8 1
If Player Class is Wizards: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1 1 1 1 1 1 1.5 1 Else If Player Class is Rogues: The combatant gains these multipliers to its stats
speed max_sp sp phys_atk mag_ark phys_def mag_def grit accuracy hp max_hp 1 1 1 1 1 1 1 1 1 1.2 1
-
Action Management
-
Battles
- Design Document
- Text Based Combat in Other Games
- User Stories
- Wishlist
- Battle Planning 2022
- Battle User Stories Review 2022
- Structs in Other Modules Related to Battles 2022
- Stat Changes Design Document
- Run Function Design Document
- CLI Integration Design Document
- Move Changes Design Document
- Unstubbing Stubs Design Document
- Battle Items and Equipment Design Document
- Battle Item Stats
- Battles Demo Design Document
- Battles Testing Moves, Items, and Equipment Design Document
- Sound integration with battle (design document)
-
Custom Actions
-
Custom Scripts
-
DSL
-
CLI
-
Enhanced CLI
-
Game-State
-
Graphics
- Design Plan
- Design document for integrating split screen graphics with chiventure
- GDL (Graphical Description Language)
- Graphics Sandbox
- Design Document for NPC Graphics and Dialogue
- Feature Wishlist (Spring 2021)
- Installing and Building raylib on a VM
- LibSDL Research
- Module Interactions
- Working with Raylib and SSH
- raylib
- GDL
-
Linking the Libzip and Json C to chiventure on CSIL machines
-
Lua
-
NPC
- Dependencies: Player class, Open world, Battle
- Action Documentation
- Design Document for NPC Generation in Openworld
- Design and Planning
- Establishing Dependencies
- Implementation of Custom Scripts
- Independent Feature: NPC Movement Design Document
- Player Interaction Design and Planning
- Dialogue
- Design Document for NPC Dialogue and Action Implementation
- Loading NPCs from WDL Files
- NPC Battle Integration Design Document
- NPC Battle Integration Changes Design Document
-
Open World
- Autogeneration and Game State
- Deciding an integration approach
- Designing approach for static integration into chiventure
- Feature Wishlist
- Generation Module Design layout
- Potential connections to the rest of chiventure
- Single Room Generation Module Design
- Source Document
- User Stories
- World Generation Algorithm Plan
- Loading OpenWorld Attribute from WDL
-
Player Class
-
Player
-
Quests
-
Rooms
-
Skill Trees
- Avoiding soft locks in skill tree integration
- Components of Exemplary Skill Trees
- Design Document and Interface Guide
- Environment interactions based on skill characteristics
- Integrating complex skill (combined, random, sequential, etc.) implementation
- Integration of a Leveling System
- Potential Integration with existing WDL
- Research on game balancing in regards to skill trees
- Research on skill tree support in modern day game engines
- SkillTree Wiki Summary
- Skilltree "effect" implementation and roadmap
- Summary of md doc file for skilltrees
- Design ideas in connection to other features
- Summary of Skill Tree Integration 2022
- The Difficulty of the Reading the World
- Complex Skills Summary
-
Sound
-
Stats
-
WDL