Documentation
Here we will explain why we made certain choices and how we solved some issues we came across. If you wonder why some actions work a certain way, you will probably find answers here.
Why do I have to make a campaign?
Since it's very possible someone is running multiple campaigns, we decided creating
one is mandatory. This way your encounters are grouped under a campaign, so when
running multiple campaigns there is some structure to it.
Why do I have to add players to my campaigns?
We keep track of all sorts of information of a player under the campaign. Below is a
list of everything that is saved under the campaign. Removing a player from the
campaign will result in a reset of all this info.
- Current Hit Points
- Temporary Hit Points
- Hit Point modifiers
- Armor Class Bonus
- Campaign wide damage meters
We store Hit point information under the campaign and not under an encounter, so it is not reset between encounters.
Our app is not aimed at character sheets, this is why the options for players are limited. For players you only have to add the information essential for running an encounter in our app, a name, maximum hit points and armor class. We do give you the option to add ability scores, but that is optional.
Why call them NPC's?
We decided to name it NPC's and not monsters, because friendlies can be added as
well. Say your group has recruited a mighty hero to fight with them in an upcoming
battle, you can add this hero as an NPC that you can control and keep track of
during encounters.
Why can't I find the monster I'm looking for?
We're not allowed to use anything outside of the SRD, so if you can't find your
monster, it's probably because of that. We only stored the monsters from the SRD in
our database, but we do give you the opportunity to create your own.
Encounters is what our app is all about. Here we'll talk about creating one, if you want to know what happens when running an encounter check the section Run Encounter.
There are some steps for creating an encounter. Some are optional and some are not.
Name
Every encounter of course needs to have a name.
Background
A background image can be added to an encounter, this image is shown on the
background (if you choose so) when you run the encounter. It is also shown on the
background of the public initiative list where your players can follow your active
encounter. It is mainly for this purpose we added the option of adding a background.
It can really give some atmosphere to your encounters.
Loot
Loot is nothing more than a reminder that shows when you finish an encounter. You
probably have thought of some loot your players might find if they manage to defeat
your encounter. This will give you a simple overview when the encounter has ended.
In your settings you can even choose to
you show it to your party on the public initiative list. This is set as hidden by
default though.
Players and NPC's
Every encounter needs entities to fight each other. Below we'll talk about how these
entities are stored in an encounter.
Players
When you add a player to an encounter, only their ID is copied to that encounter. We
keep track of Hit Points and Armor Class of a player under the campaign. We do this
so hit points don't reset after an encounter.
NPC's
Adding an NPC copies some of the values to the encounter. Name, maximum hit points
and armor class are tracked under the encounter, not under the NPC. This is done so
manipulations can be made without changing the original values. You can choose how
the Hit Points of an NPC are set. We can either set the average of their hit dice,
or we can roll the hit dice for you. When we roll the hit points, we add the amount
of dice times the constitution modifier. So for a monster with 2d8 hit dice and a
constitution modifier of 2 we roll 2 d8 and add 4.
Setting initiative
Nothing special going on here. We decided that initiative for players cannot be rolled. Players usually like to roll themselves and you as a DM will have to enter their rolls manually.
When rolling for an NPC, we add their dexterity modifier to the roll. When rolling some NPC's as a group, we use the lowest dexterity as the modifier.
In the view of setting the initiative, players and NPC's alike can be set to either
idle or active. The idle entities will not enter the encounter until you want them
to. This way you can create an encounter with waves of monsters and add these waves
whenever you want. Or maybe you have a monster that can summon some sort of entity,
you can already add these to the encounter, but just set them to idle. Check the
section on tracking initiative to see how we
handle adding entities during an encounter.
Instead of setting an NPC to idle, you can also choose to set one to hidden. A
hidden entity is part of the initiative rotation, but it will not show up on the
screen the players can see. This way you can have NPC’s ready to enter combat
whenever you want, but your players won’t notice until you unhide them.
Tracking initiative
To decide who's turn it is during the encounter we use turns and rounds. The amount of turns is based on the amount of active entities during a round. Based on the initiative of the active entities during the round and the current turn, it is calculated who's turn it is. So if there are three entities within an encounter, one with an initiative of 10, one with 8 and the other with 6, at turn one, the entity with 10 is up, at turn two the entity with 8 and so forth.
This causes some problems. We will explain why and how we solved it. Because we set the order based on turns, adding and removing entities during a round messes up the order. For instance if a player would use a spell to summon or conjure a companion to fight for them. Adding it during a round might reorder some of the entities. It might even be that it suddenly is the turn of the summoned companion. If the entity that is currently up has 8 as initiative and it is turn one, the added monster would suddenly be up if it rolled and initiative of 9 or higher. With an initiative of 7 it might be up next, postponing other entities turns, which is not how the rules state it works. To solve this issue we do not immediately add entities to the mix. Since they don't get a turn during the round they are summoned/added, we add them the next round. First we put them in the idle list where they can be tagged to be added the next round. As soon as the new round starts, all the tagged entities will be added to the active list and a new order is calculated for this round.
Manual damage and healing
Note: all damage and healing done will be saved in the combat log, so you can keep constant track of what happened and even undo mistakes.
First off, the basics. When doing manual damage and healing, you input a number and either click on damage or healing. The amount submitted will be either added or subtracted from the current hit points of the selected target. If the damage is higher than the target's current hit points, their hit points will be set to zero. The rest amount will be set as an overkill in the combat log. When the healing is higher than the target's maximum hit points, the current hit points will be set to equal the maximum. The rest amount will be set as overhealing in the combat log.
Dead or Down.
If the target is a player and the overkill was equal to or higher than the target's
maximum hit points, they will be marked as dead. If a player reaches zero hit points
they will be prompted to roll a death saving throw when their turn comes up. With
one click you can set if the player succeeded or failed their death save. When a
player is down and they either receive healing, or they are stabilized (a single
click of a button lets you stabilize a player), their death saves are automatically
reset. If a player that is down or stabilized receives damage, they fail one death
save (two if it is a critical hit). This happens only if you have the automate
setting on.
NPC's that reach zero hit points are handled differently. When an NPC reaches zero
hit points they will be marked as down. As soon as the next round begins, the down
NPC's will be moved to a seperate "down list" and they won't be in the turn order
anymore. For an explanation on why it is not immediately moved to the "down list"
list, check the section on
tracking initiative.
Type of damage.
At this moment we do need to keep track of the type of damage, because we are not
able to when you roll the damage of an action. Check the documentation on
roll damage for more information.
Critical hits.
When you input manual damage, you can select if it was a critical hit. This has no
effect on the amount you submitted. We don't divide it by two or do any sort of
manipulation to it, it's up to you input the right amount of damage. The critical
hit checkbox at manual damage has only two purposes. First to keep track of in the
combat log and second to let a player that is down automatically fail two death
saving throws.
When you roll damage, if it is a critical hit, we double the damage dice rolls. So
if the roll is 2d8 + 6 and you rolled a 6 and a 2 (total of 8), we make that 16
damage and then we add the + 6, resulting in 22 damage for that attack.
Temporary Hit Points.
During an encounter entities can be given temporary hit points through the edit
function. Temporary hit points are handled as the rules describe. They serve as an
extra pool for damage, but healing will not be put in the temporary pool. When
damage received is larger than the temporary hit points pool, the damage carries
over into the current hit points of the target.
Transformed targets.
If a target is transformed, like a druid in Wild Shape, they get new hit points and
a new armor class. The new hit points are handled as the rules describe for Wild
Shape and Polymorph. Damage and healing will be done in the new health pool, and
when damage is higher than the current hit points in the transformation, the rest
damage is carried over into the old current hit points. In this last case the
transformation is automatically removed from the target and it falls back into its
old form.
Roll damage abilities
When the current entity is an NPC, you can choose to roll the attacks automatically.
A d20 plus their to hit modifier and the damage of the attack will be rolled at the
same time. A notification will pop up showing you the results of the roll and asking
you if and how you want to apply the damage. If you count it as a hit, the damage is
handled exactly the same as manual damage. You can also choose to either double or
half the damage. When halved, the outcome is rounded down.
We allow you to roll with advantage or disadvantage. In this case we roll twice and
show either the highest or lowest depending on what you chose. Only one result is
shown, but we do show if it was rolled with advantage or disadvantage.
Type of damage.
Because of how we stored the monsters in our database it is currently not possible
to keep track of the type of damage. We do plan to add this feature in the future.
Combat Log
Some actions in an encounter are saved in the combat log. It is stored in your browser and not in our database. The log shows who did damage or healing and whom they did it to. The log allows you to keep track of what happened during the encounter and to undo mistakes you made. The last entry in the log can always be undone, the health will be restored to the status it was before and the log entry will be removed.
Damage Meters
The damage meters are stored as a total number for each entity. If the damage done was higher than the targets current hit points, we store the rest damage as an overkill. Healing for more than a target's maximum hit points results is stored as overhealing.