Need help with Design of an RPG character App

Hello fellow creators!

I have been designing my own d20 rpg system for the better part of 6 months now, using Google Sheets to keep track of all of the info and keep it organized. I was elated when i fell upon AppSheet as it is ALMOST perfect for what I am envisioning for the final product that I can release.

I already have most of the hard data classes and their corresponding charts
What I am trying to create with AppSheet would be something that can hold the campaing setting data for a user to view and then have a fillable Charater Sheet that the user can fill out and save for gameplay

The Character Sheet should be able to do the following
Grab infomation from the class charts automatically * If you pick Fighter from a drop-down menu, all the fields should update with the proper infromation from that sheet to the app’s Charater sheet*

Save the user’s completed sheet for future use in a local database user’s device or their own google Docs cloud

Ideally I would also like to impliment a page for common actions one might take durring a game like:

Attack roles and other types of dice checks that require values from the sheet to be added to a randomly generated number (like an Attack roll button being tied to fields in the sheet and added into a single number)

If anybody can help point me in the right direction it would be much appreciated!

Cool idea! We should be able to support all of the features you have described - you just need to learn the basics and start building. Here is a link to our Udemy course which can walk you through the basics of using AppSheet; https://www.udemy.com/course/create-business-applications-with-appsheet/

Other articles that will be helpful include…
Random Number Generation https://help.appsheet.com/en/articles/2357303-randbetween (for rolls)
Dependent Drop Downs https://help.appsheet.com/en/articles/961554-dependent-dropdown (for the class-specific drop downs)
Complex Forms https://help.appsheet.com/en/articles/961635-multi-page-forms-with-conditional-branching (for class dependent character creation)
Expressions https://help.appsheet.com/en/collections/377977-expressions (The logic that will operate your dice rolling, skill-check /attack calculations, and help generally with your app building)
References https://help.appsheet.com/en/articles/961426-references-between-tables (key data architecture concept in appsheet)

Those are the core concepts I think you’ll find useful in building your app.

If you have specific questions as you build, feel free to drop them here and the community can help out!

2 Likes

So, a few more questions

The Character Sheet-

Would it be best to have this as a Dashboard?

I would like to set the sheet up so that it is comprised of reference data from the game book (Class stuff like attack bonuses, Saves (reflex, fortitude, will), Skill points to spend given at each level, Special abilities granted at each level, ect.) and info entered by the user (Ability score values, Character Names, Character Descriptions).

Ability Scores and their Modifiers
I am using a 6 score system
Strength, Dexterity, Constitution, Intelligence, Wisdom, and Charisma

Each Score will be entered by the Player on the Character Sheet
The Scores then Determine an Ability Modifier (10=+0, 12=+1, 14=+2…)

This is the most important part of the character sheet as nearly everything requires a value from one of these modifiers

Example -

1st level fighter has a base attack bonus of +1
User has entered a Strength Score on the Character Sheet of 18 which is gives him a +4 as his ability Modifier

To emulate an attack roll IRL, the player would roll a 20 sided die, and then use this formula to get the number they would tell the DM. (BAB+STRMOD+MISC+1D20)= Attack
the Misc would come from other bonuses from magic weapons, spells, or other conditional things

Leveling Up

As a player progresses, they will level up (duh)
the app would need to be able to complete this on the character sheet when the user changes the Level value by looking back at the proper class table, and then relaying the proper info back to the Character Sheet and updating the proper fields

Weapons, Armor

Weapons are expressed by a few definitions - dice type and damage type
Dealing Damage IRL is calculated by adding a dice roll to a few values
EX. Short Sword dealing damage (1d6+StrMod+Misc.)=Damage Done

The Character sheet would contain the weapon you have equipped and I would like a separate menu in the app to have all my game actions, that menu would need to be able to reference the proper information from the character sheet

Armor in the game is comprised of a lot of things all working together
3 types of Armor
Flat Footed (10+Armor Bonus+Misc)
Touch (10+DexMod+Misc)
Armor Class (10+DexMod+Armor Bonus+Misc)

These numbers are what you use to figure out if an attack hits (Attack Roll>=Armor Class)

Skills -
This one is a big one because there are so many different skills involved in the game, and a player should be able to spend ranks on any of them

All skills should be made available to a player, but Certain skills gain bonuses from Classes
Each class has a list of “Class Skills”
If a player spends at least one rank in a Class Skill, they are granted a permanent +3 Bonus to that skill.
Each skill has an ability Modifier tied to it as well
A skill check would look like this
Climb (Skill Points spent+StrMod+ClassSkill?+1D20)= Skill Check

Hit Points

Hit Points are derived from two things
Hit Dice - which are defined by each class (a fighter has a Hit Die of 1d10) there would be two options for the user to select on this - Rolled or Max ( rolled being a random number given at each level attained, and MAX being the highest value possible from the given Hit Die)

Constitution Modifier- Defined by the Player’s Constitution Score on the Character Sheet

HP would need to be Displayed in a way that the player could enter damage they received and then tell them how many remaining hit points they have left.

Class Abilities and Feats

As a player advances in level, they attain new abilities are gained for them to use
The Character Sheet would need to be able to display the new abilities gained at each level as they accumulate

Feats would be taken from another worksheet
they function in the game in a similar fashion to the class abilities but are selected at 1st level, and a new one is gained every odd level after, unless specified by the class

Feats have prerequisites that must be met in order to select them as a player
Power Attack requires your Strenght Ability Score to be at least 13