all database files and backend code/api will be accessed in these files The idea is that the api is set up in such a way that you can have only the backend run on the server or the webapp can also be ran. most cases both will be ran ### Character Attrinutes (dnd5e) ## Base Attributes base attributes area attr that are not derived at run time. In most if not all cases these will remain the same through the runtime process - @name - @level - @race (package of feats) - @class (package of feats) ## Derived Attributes - @strength::base - @dexterity::base - @constitution::base - @wisdom::base - @intelligence::base - @charisma::base - @armor::base (Priority 1, needs to calculate these before all other attribtues) - @strength - @dexterity - @constitution - @wisdom - @intelligence - @charisma - @strength::modifier - @dexterity::modifier - @constitution::modifier - @wisdom::modifier - @intelligence::modifier - @charisma::modifier - @proficiency (Priority 2, child derived attributes) - @strength_save - @dexterity_save - @constitution_save - @wisdom_save - @intelligence_save - @charisma_save - @hp - @hp_max - @hp_temp - @hit_die - @initative - @armor - @fire_resistance - @poison_resistance - @psychic_resistance - @cold_resistance - @thunder_resistance - @acid_resistance - @force_resistance - @radiant_resistance - @necortic_resistance - @bludgeoning_resistance - @piercing_resistance - @slashing_resistance str skills - @athletics dex skills - @acrobatics - @sleight_of_hand - @stealth intelligence Skills - @arcana - @history - @investigation - @nature - @religion wisdom skills - @animal_handling - @insight - @medicine - @perception - @survival charisma skills - @deception - @intimidation - @performance - @persuasion post derived attributes (Priority 3, grandchild derivatives) str skills - @athletics#passive dex skills - @acrobatics#passive - @sleight_of_hand#passive - @stealth#passive intelligence Skills - @arcana#passive - @history#passive - @investigation#passive - @nature#passive - @religion#passive wisdom skills - @animal_handling#passive - @insight#passive - @medicine#passive - @perception#passive - @survival#passive charisma skills - @deception#passive - @intimidation#passive - @performance#passive - @persuasion#passive ### Databases USERS: this database will store profile info associated with users - user_uuid: Unique user ID (UUID) - username: Username/display name - password: Password (should be securely stored) - type: User type (for future SSO integration) - profile picture: Profile image (e.g. file path or URL) - flags: Settings/status flags (for basic settings; future use) CHARACTERS: this table will store basic character data but also link the characters to the user_id