A digital character sheet for the TTRPG DC20
This sheet (once it's done) will allow you to:
- Create a character
- Track that character's stats, points and levels in the app
- Save and re-load your created character
- And later much more!
This project is still a work in progress, you can follow my development in the "TODO" section below!
in the meantime, you can check out the project in action
- Make it deploy
- Scaffold basic UI
- Tidy up build process
- actually set up a DB
- Building the actual DB schema
- Adding Auth (with Clerk)
- Linking the DB to the character sheet component
- "taint" (server-only)
- Build a mock character sheet on the front-end
- Adding some basic interactivity to the character sheet
- Storing that interactivity to the db
- Create (or import) a toast system to alert the user to stuff
- Build a basic form scaffold for character creation
- Player and character name
- Attribute Scores
- Standard Array
- Point buy
- Roll/manual
- Choose saves
- Background
- Skills
- providing a list of skills to choose, grouped by governing attribute
- Make sure to include knowlege skills
- pulling intelligence points from previous stage to limit choices
- allowing an option to convert skill points into trade points?
- providing a list of skills to choose, grouped by governing attribute
- Trades
- Somehow provide a list of trades
- allowing the user to select 3 trades
- allowing the user to convert a trade point to 2 language points
- Languages
- providing a list of languages
- allowing a user to select 2 language points
- allowing a user to either be stumbling or fluent in each language
- registering choices to the in-progress character
- Skills
- Ancestry
- choose between a full or half ancestry
- if half
- * provide a list of each ancestry's traits
- limit the user's choice of ancestry traits to 5 ancestry points
- register the player's choice of ancestry traits to their in-progress character
- Class
- the player must now choose a character class
- * provide the class features each class offers at level 1
- Also list out any bonus HP, the kind of class it is, and how many spells they can pick
- Also resolve any skills the class gives you
- Calculate Everything else
- Combat masteries
- Health
- Stamina and Mana
- Defenses
- Damage Reduction
- Attack / Spell checks
- Save DCs
- Martial check
- Death Threshold
- move Speed
- Jump Distance
- Rest Points
- Grit Points
- style the form
- allow a user to go back through the form and change things
- style the character sheet
- Create a backend API/database for classes, ancestries and other attributes
- implement routing for this form / the character sheet
- Start populating this form with choices from the core rulebook
- this will likely require the actual rulebook
- Error management?
- Add Testing
- Add Character sheet exports
- *Add character sheet imports
- Analytics (posthog)
- Ratelimiting (upstash)