aboutsummaryrefslogtreecommitdiff
path: root/features
diff options
context:
space:
mode:
authorYour Name <you@example.com>2021-12-30 18:03:06 -0500
committerYour Name <you@example.com>2021-12-30 18:03:06 -0500
commitd222c5a39943ed9f83f11d63a42bdff4978179af (patch)
tree8d820920df4e354ec733041532b48cad45f23104 /features
parent52b91a1aca6640b1797a63afc8a9e9a778b0964a (diff)
downloaddmtool-d222c5a39943ed9f83f11d63a42bdff4978179af.tar.gz
dmtool-d222c5a39943ed9f83f11d63a42bdff4978179af.tar.bz2
dmtool-d222c5a39943ed9f83f11d63a42bdff4978179af.zip
Started work on features
Diffstat (limited to 'features')
-rw-r--r--features/aberrant_ground.json3
-rw-r--r--features/readme.md67
2 files changed, 70 insertions, 0 deletions
diff --git a/features/aberrant_ground.json b/features/aberrant_ground.json
new file mode 100644
index 0000000..a7f99de
--- /dev/null
+++ b/features/aberrant_ground.json
@@ -0,0 +1,3 @@
+[
+
+]
diff --git a/features/readme.md b/features/readme.md
new file mode 100644
index 0000000..6c90a31
--- /dev/null
+++ b/features/readme.md
@@ -0,0 +1,67 @@
+# Features Format
+
+Many features are complex. Here we lay out the format used when writing a feature.
+
+## Variables
+
+Many features are very similar between creatures except for certain variables. The feature reads, as parameters, NAME as the creature's name, and V1, V2, ... VN for each numeric variable that is a parameter to the feature.
+
+## Subfeatures
+
+Each feature consists of a list of "subfeatures", which are treated as independent features in the game, but are grouped together for clear organization.
+
+Each subfeature is a dictionary with the following elements:
+
+ * "name": NAME
+ * "text": TEXT
+ * "nouns": NOUNS
+ * "trigger": TRIGGER
+ * "conditions": CONDITIONS
+ * "effects": EFFECTS
+ * "duration": DURATION
+ * "recharge": RECHARGE
+
+We detail the values below.
+
+### NAME
+
+This is the name of the feature
+
+### TEXT
+
+This is explanatory text. It accepts embedded variables in the form {VARNAME}. For example, the text "The {NAME}'s weapon attacks are magical. When the {NAME} hits with any weapon, the weapon deals an extra {V1}d{V2} radiant damage.", when applied with (deva, 4, 8), we get:
+
+"The deva's weapon attacks are magical. When the deva hits with any weapon, the weapon deals an extra 4d8 radiant damage."
+
+### NOUNS
+
+The nouns involved are any entities this feature affects. NOUNS is a list containing any of:
+
+ * "self"
+ * "creature"
+ * "object"
+ * "structure"
+ * "target"
+ * "point in space"
+ * NAME
+
+Where NAME is interpreted by the game as a specific creature or object. These are N1, N2, etc. for all N in the array. Index starts at 1.
+
+### TRIGGER
+
+TRIGGER is any of the following:
+
+ * "passive"
+ * "action"
+ * "bonus action"
+ * "free action"
+ * "{} start of turn"
+ * "N takes damage"
+ * "N moves"
+ * "N makes check against N"
+ * "N forces N to save"
+ * "N rolls a d20"
+ * "N targets N by a spell"
+ * "N attacks N"
+ * "N hits N"
+ * "N touches N"