Compare commits
10 commits
9c8b030633
...
cc13aa62a6
Author | SHA1 | Date | |
---|---|---|---|
|
cc13aa62a6 | ||
|
7c38573cd2 | ||
|
bf958ab12a | ||
|
4eb950b804 | ||
|
a5c69d1518 | ||
|
9da91702c1 | ||
|
bcfeba17d5 | ||
|
c3e3274630 | ||
|
0ebc0edd74 | ||
|
1cb1e45efa |
284 changed files with 9460 additions and 509 deletions
1
.gitignore
vendored
1
.gitignore
vendored
|
@ -1,3 +1,4 @@
|
|||
kannan.org
|
||||
tables/captiva*.org
|
||||
*~
|
||||
/.DS_Store
|
||||
|
|
399
README.org
399
README.org
|
@ -58,6 +58,13 @@ What I do, is add the following "code" somewhere in my Ironsworn-specific org fi
|
|||
# End:
|
||||
#+END_SRC
|
||||
|
||||
Finally, many of the displayed org files contain embedded hyperlinks that actually call functions (defined below). I find it helpful to ignore the constant prompts for selecting this links by setting the [[help:org-link-elisp-skip-confirm-regexp][org-link-elisp-skip-confirm-regexp]] variable, as in:
|
||||
#+BEGIN_SRC emacs-lisp :tangle no
|
||||
(setq org-link-elisp-skip-confirm-regexp (rx string-start (optional "(") "rpgdm-"
|
||||
(or "tables-" "ironsworn-")
|
||||
(one-or-more any)))
|
||||
#+END_SRC
|
||||
|
||||
Finally, define your character. While I describe the details later, first, load an org-mode file and hit ~M-x~ to type: =rpgdm-ironsworn-new-character= and answer the questions. This will create the necessary formatting and you are ready to play with either your key-binding (or ~F6~) to bring up the Hydra of commands:
|
||||
|
||||
#+ATTR_HTML: :width 1100px
|
||||
|
@ -96,6 +103,73 @@ While the interface may change (and I may not update that screenshot too often),
|
|||
- And ~q~ (or ~F6~) dismisses the UI.
|
||||
|
||||
This may be sufficient, but the rest of this document goes into details about how to use this, as well as the code to make it.
|
||||
** File Organization
|
||||
I really didn’t want to dictate how Ironsworn notes should be organized, but I wanted the /progress tracks/ to be relevant. Sure, one can mark progress on one or more tracks, but I didn’t want see tracks that were old. I toyed with the idea of deleting, or just closing, old tracks, but I realized that progress tracks are really just arcs in the stories plot. Some of long, like a character /inciting vow/ and others are short, like a battle with a Cave Lion, but they are all nested in a hierarchical tree.
|
||||
|
||||
Let me explain with an illustration:
|
||||
#+BEGIN_SRC dot :file images/progress-tracks-tree.png :exports file :results file
|
||||
digraph G {
|
||||
bgcolor="transparent";
|
||||
node [fillcolor="white" style="filled" fontname="Arial"];
|
||||
edge [color="white"]
|
||||
|
||||
Background [label="Background / Theme"]
|
||||
Arc1 [label="Story Arc"]
|
||||
Arc2 [label="Story Arc"]
|
||||
Arc3 [label="Story Arc"]
|
||||
Scene1 [label="Scene"]
|
||||
Scene2 [label="Montage"]
|
||||
Scene3 [label="Montage"]
|
||||
Scene4 [label="Scene"]
|
||||
Scene5 [label="Scene"]
|
||||
Scene6 [label="Montage"]
|
||||
Event1 [label="Event"]
|
||||
Event2 [label="Challenge"]
|
||||
Event3 [label="Event"]
|
||||
Event4 [label="Challenge"]
|
||||
Event5 [label="Event"]
|
||||
Event6 [label="Challenge"]
|
||||
Event7 [label="Event"]
|
||||
Event8 [label="Challenge"]
|
||||
Event9 [label="Event"]
|
||||
Event10 [label="Challenge"]
|
||||
Event11 [label="Event"]
|
||||
Event12 [label="Challenge"]
|
||||
|
||||
Background -> Arc1;
|
||||
Background -> Arc2;
|
||||
Background -> Arc3;
|
||||
|
||||
Arc1 -> Scene1;
|
||||
Arc1 -> Scene2;
|
||||
Arc2 -> Scene3;
|
||||
Arc2 -> Scene4;
|
||||
Arc3 -> Scene5;
|
||||
Arc3 -> Scene6;
|
||||
|
||||
Scene1 -> Event1;
|
||||
Scene1 -> Event2;
|
||||
Scene2 -> Event3;
|
||||
Scene3 -> Event4;
|
||||
Scene3 -> Event5;
|
||||
Scene3 -> Event6;
|
||||
Scene4 -> Event7;
|
||||
Scene5 -> Event8;
|
||||
Scene5 -> Event9;
|
||||
Scene6 -> Event10;
|
||||
Scene6 -> Event11;
|
||||
Scene6 -> Event12;
|
||||
}
|
||||
#+END_SRC
|
||||
[[file:images/progress-tracks-tree.png]]
|
||||
|
||||
A character or party has a theme or premise that drives the entire story, like Destroying the One Ring of Power or, teenagers solving mysteries with a talking dog. In Ironsworn, this is referred to as an /Epic Vow/. This epic story is broken into long-running arcs or character goals … perhaps they could be packaged into three books to make a Trilogy, or even seven books for each year in a school. These are the [[file:moves/quest/swear-an-iron-vow.org][various vows]], like the initial /Inciting Vow/.
|
||||
|
||||
These, in turn, are further divided into scenes like Journeying to Bree, Escaping Moria, or even each Saturday morning episode. In Ironsworn, these are moves like [[file:moves/adventure/undertake-a-journey.org][Undertake a Journey]] or [[file:moves/delve/delve-the-depths.org][Delve the Depths]]. And these segments can be punctuated by conflict and combat. These tracks are not concern with the length of a progress, as a battle with an Elder Beast will conclude before arriving at Grandma’s House, even those the Elder Beast was /formidable/ and the journey was merely /troublesome/.
|
||||
|
||||
Notice that this structure works well with the outline of a typical document, and by choosing this structure and tying a progress track to a header, completed tracks would disappear on their own, and I didn’t have to manage old tracks. As you call the progress functions, these prompt with a question:
|
||||
[[file:images/progress-placement-prompt.png]]
|
||||
|
||||
** Character Sheets
|
||||
A character sheet, for this project, is just an org mode file where you take notes, and =:PROPERTIES:= drawers contain the current stats for your character. While most of it is /whatever you like it to be/ ... you need to keep a few things in mind.
|
||||
|
||||
|
@ -153,7 +227,7 @@ Again, the UI will attempt to update all of these values, so you don't need to c
|
|||
Details? Did someone say details? Let's talk about the code ... all the code that makes this work.
|
||||
* Code
|
||||
#+BEGIN_SRC emacs-lisp :exports none
|
||||
;;; rpgdm-ironsworn -- Functions for integrating Ironsworn with Org
|
||||
;;; rpgdm-ironsworn.el --- Functions for integrating Ironsworn with Org
|
||||
;;
|
||||
;; Copyright (C) 2020 Howard X. Abrams
|
||||
;;
|
||||
|
@ -184,6 +258,11 @@ We also need the name of the directory for this project, so that we can load tab
|
|||
(defvar rpgdm-ironsworn-project (file-name-directory load-file-name)
|
||||
"The root directory to the rpgdm-ironsworn project.")
|
||||
#+END_SRC
|
||||
|
||||
And we initially load our table of oracles:
|
||||
#+begin_src emacs-lisp
|
||||
(rpgdm-tables-load (concat rpgdm-ironsworn-project "/tables"))
|
||||
#+end_src
|
||||
** Dice Roller
|
||||
In *Ironsworn*, all dice rolls follow a pattern where you set the challenge level for a check by rolling /challenge dice/ (two d10s) and compare that against rolling an /action die/ (a single d6 ... adding all modifiers to that six-sided die).
|
||||
|
||||
|
@ -207,7 +286,7 @@ Oh, and if the same number shows on both d10s, you should introduce a significan
|
|||
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(defun rpgdm-ironsworn--results (action modifier one-challenge two-challenge
|
||||
&optional momentum)
|
||||
&optional momentum)
|
||||
"Return formatted string for an Ironsworn dice roll results.
|
||||
The ACTION is the d6 which is added to the MODIFIER (which can
|
||||
have character attribute values as well as any bonuses. The sum
|
||||
|
@ -219,45 +298,45 @@ Oh, and if the same number shows on both d10s, you should introduce a significan
|
|||
(setq momentum 0))
|
||||
|
||||
(cl-flet ((strong-p (value dice1 dice2) (and (> value dice1) (> value dice2)))
|
||||
(weak-p (value dice1 dice2) (or (> value dice1) (> value dice2)))
|
||||
(miss-p (value dice1 dice2) (and (<= value dice1) (<= value dice2)))
|
||||
(faded (str) (propertize str 'face '(:foreground "#888")))
|
||||
(noted (str) (propertize str 'face '(:foreground "light blue")))
|
||||
(strong (str) (propertize str 'face '(:foreground "green")))
|
||||
(weak (str) (propertize str 'face '(:foreground "yellow")))
|
||||
(interest (str) (propertize str 'face '(:foreground "orange")))
|
||||
(miss (str) (propertize str 'face '(:foreground "red"))))
|
||||
(weak-p (value dice1 dice2) (or (> value dice1) (> value dice2)))
|
||||
(miss-p (value dice1 dice2) (and (<= value dice1) (<= value dice2)))
|
||||
(faded (str) (propertize str 'face '(:foreground "#888")))
|
||||
(noted (str) (propertize str 'face '(:foreground "light blue")))
|
||||
(strong (str) (propertize str 'face '(:foreground "green")))
|
||||
(weak (str) (propertize str 'face '(:foreground "yellow")))
|
||||
(interest (str) (propertize str 'face '(:foreground "orange")))
|
||||
(miss (str) (propertize str 'face '(:foreground "red"))))
|
||||
|
||||
(let* ((action-results (+ action modifier))
|
||||
(str-results (cond
|
||||
((strong-p action-results one-challenge two-challenge)
|
||||
(strong "Strong hit"))
|
||||
((weak-p action-results one-challenge two-challenge)
|
||||
(weak "Weak hit"))
|
||||
(t (miss "Miss"))))
|
||||
(burn-msg (if (> momentum action-results)
|
||||
(cond
|
||||
((and (strong-p momentum one-challenge two-challenge)
|
||||
(not (strong-p action-results one-challenge two-challenge)))
|
||||
(concat " -- Burn momentum for a " (strong "Strong hit")))
|
||||
((and (weak-p momentum one-challenge two-challenge)
|
||||
(miss-p action-results one-challenge two-challenge))
|
||||
(concat " -- Burn momentum for a " (weak "Weak hit")))
|
||||
(t ""))
|
||||
""))
|
||||
(matched-msg (if (= one-challenge two-challenge)
|
||||
(concat " ← " (interest "Create a Twist"))
|
||||
"")))
|
||||
(str-results (cond
|
||||
((strong-p action-results one-challenge two-challenge)
|
||||
(strong "Strong hit"))
|
||||
((weak-p action-results one-challenge two-challenge)
|
||||
(weak "Weak hit"))
|
||||
(t (miss "Miss"))))
|
||||
(burn-msg (if (> momentum action-results)
|
||||
(cond
|
||||
((and (strong-p momentum one-challenge two-challenge)
|
||||
(not (strong-p action-results one-challenge two-challenge)))
|
||||
(concat " -- Burn momentum for a " (strong "Strong hit")))
|
||||
((and (weak-p momentum one-challenge two-challenge)
|
||||
(miss-p action-results one-challenge two-challenge))
|
||||
(concat " -- Burn momentum for a " (weak "Weak hit")))
|
||||
(t ""))
|
||||
""))
|
||||
(matched-msg (if (= one-challenge two-challenge)
|
||||
(concat " ← " (interest "Create a Twist"))
|
||||
"")))
|
||||
|
||||
(format "%s %s %d %s%d %s %d%s %s %d %s %d%s%s"
|
||||
str-results (faded "::")
|
||||
(+ action modifier) (faded "(")
|
||||
action (faded "+")
|
||||
modifier (faded ")")
|
||||
(noted "→")
|
||||
one-challenge (faded "/")
|
||||
two-challenge
|
||||
matched-msg burn-msg))))
|
||||
(format "%s %s %d %s%d %s %d%s %s %d %s %d%s%s"
|
||||
str-results (faded "::")
|
||||
(+ action modifier) (faded "(")
|
||||
action (faded "+")
|
||||
modifier (faded ")")
|
||||
(noted "→")
|
||||
one-challenge (faded "/")
|
||||
two-challenge
|
||||
matched-msg burn-msg))))
|
||||
#+END_SRC
|
||||
|
||||
So the following messages, given various /rolls/ should cover those possibilities with text properties:
|
||||
|
@ -290,11 +369,11 @@ The basic interface will query for a modifer, roll all three dice, and then disp
|
|||
results."
|
||||
(interactive "nModifier: ")
|
||||
(let ((one-challenge (rpgdm--roll-die 10))
|
||||
(two-challenge (rpgdm--roll-die 10))
|
||||
(action-roll (rpgdm--roll-die 6)))
|
||||
(two-challenge (rpgdm--roll-die 10))
|
||||
(action-roll (rpgdm--roll-die 6)))
|
||||
(rpgdm-message (rpgdm-ironsworn--results action-roll modifier
|
||||
one-challenge two-challenge
|
||||
momentum))))
|
||||
one-challenge two-challenge
|
||||
momentum))))
|
||||
#+END_SRC
|
||||
|
||||
** Character Information
|
||||
|
@ -325,7 +404,7 @@ We assume you have created an org-file, and the /template/ will just append some
|
|||
")))
|
||||
#+END_SRC
|
||||
**** Character Assets
|
||||
We store the assets in a collection of org files in the [[file:assets/][assets]] directory. We'd like the user to choose an asset, so we convert a filename into something nicer to read based on extracting the /description/ from the /filename/, for instance, =:
|
||||
We store the assets in a collection of org files in the [[file:assets/][assets]] directory. We'd like the user to choose an asset, so we convert a filename into something nicer to read based on extracting the /description/ from the /filename/, for instance:
|
||||
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(defun rpgdm-ironsworn--character-asset-label (filename)
|
||||
|
@ -410,19 +489,30 @@ Hrm. Perhaps we just want to /look/ at an asset before inserting it, similar to
|
|||
When you start a character, you choose three assets, but what if we choose them randomly from our asset list? Could be fun, however, I don't want duplicates, or two companions, or ... well, I may come up with more rules, but I codify those rules into a function that returns a list, if it is good, or =nil= otherwise:
|
||||
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(defun rpgdm-ironsworn--good-character-assets (asset-files)
|
||||
(defun rpgdm-ironsworn--good-character-assets (assets)
|
||||
"Return ASSET-FILES if all given are _good enough_.
|
||||
That is, all are unique, only one companion, etc."
|
||||
(cl-flet ((companion-p (entry)
|
||||
(when (consp entry)
|
||||
(setq entry (cdr entry)))
|
||||
(string-match (rx "companions") entry)))
|
||||
(when (and
|
||||
(equal asset-files (seq-uniq asset-files))
|
||||
(<= (seq-length
|
||||
(seq-filter #'companion-p asset-files))
|
||||
1))
|
||||
asset-files)))
|
||||
That is, all are unique, only one companion, etc."
|
||||
(cl-flet ((only-files (entry) (if (consp entry) (cdr entry) entry))
|
||||
(is-companion? (file) (string-match (rx "companions") file))
|
||||
(not-at-first? (file) (when (or (s-ends-with? "revenant.org" file)
|
||||
(s-ends-with? "weaponmaster.org" file)
|
||||
(s-ends-with? "masked.org" file)
|
||||
(s-ends-with? "battle-scarred.org" file)
|
||||
(s-ends-with? "ritualist.org" file)
|
||||
(s-ends-with? "shadow-kin.org" file)
|
||||
(s-ends-with? "oathbreaker.org" file))
|
||||
t)))
|
||||
(let* ((asset-files (-map #'only-files assets))
|
||||
(num-of-companions (seq-count #'is-companion? asset-files)))
|
||||
(when (and
|
||||
;; Are all the assets in the list unique?
|
||||
(equal asset-files (seq-uniq asset-files))
|
||||
;; Does the list only include first-time-only?
|
||||
(-none? #'not-at-first? asset-files)
|
||||
;; Does the list include, at most, one companion?
|
||||
(<= num-of-companions 1))
|
||||
assets))))
|
||||
|
||||
#+END_SRC
|
||||
|
||||
And I can write a little unit test to verify my test cases:
|
||||
|
@ -430,6 +520,10 @@ And I can write a little unit test to verify my test cases:
|
|||
#+BEGIN_SRC emacs-lisp :tangle rpgdm-ironsworn-tests.el
|
||||
(ert-deftest rpgdm-ironsworn--good-character-assets-test ()
|
||||
(should (rpgdm-ironsworn--good-character-assets '("foo" "bar" "baz")))
|
||||
(should (rpgdm-ironsworn--good-character-assets '(("Companions :: Dog" . "assets/companions/dog.org")
|
||||
("Paths :: Good Guy" . "assets/paths/good-guy.org")
|
||||
("Ritual :: Booboo" . "assets/ritual/booboo.org"))))
|
||||
(should-not (rpgdm-ironsworn--good-character-assets '("foo" "bar" "paths/shadow-kin.org")))
|
||||
(should-not (rpgdm-ironsworn--good-character-assets '("foo" "bar" "foo")))
|
||||
(should-not (rpgdm-ironsworn--good-character-assets '("assets/companions/dog.org"
|
||||
"assets/paths/good-guy.org"
|
||||
|
@ -501,6 +595,11 @@ Whew. We finally can have a function that queries the user about a new character
|
|||
"Insert the contents of three character assets from the assets directory."
|
||||
(goto-char (point-max))
|
||||
(insert "\n** Assets\n")
|
||||
|
||||
;; When using Evil, we'll drop a marker here:
|
||||
(when (fboundp 'evil-set-marker)
|
||||
(evil-set-marker ?a))
|
||||
|
||||
(if (y-or-n-p "Would you like three random assets? ")
|
||||
(rpgdm-ironsworn-random-character-assets 3)
|
||||
(if (y-or-n-p "Would you like to choose your assets? ")
|
||||
|
@ -528,8 +627,15 @@ This function will query the user for all of the stats and other properties that
|
|||
(rpgdm-ironsworn-progress-create (read-string "What title should we give this new character's Epic vow: ") 1)
|
||||
(rpgdm-ironsworn-progress-create "Bonds" 1)
|
||||
(rpgdm-ironsworn-progress-mark "Bonds")
|
||||
(next-line)
|
||||
|
||||
(org-top-heading)
|
||||
(re-search-forward (rx line-start (zero-or-more space) line-end))
|
||||
(insert "\n** Bonds\n")
|
||||
|
||||
;; When using Evil, we'll drop a marker here:
|
||||
(when (fboundp 'evil-set-marker)
|
||||
(evil-set-marker ?b (point) t))
|
||||
|
||||
(insert (format " - My home settlement of %s\n" (rpgdm-tables-choose "settlement/name"))))
|
||||
#+END_SRC
|
||||
**** New Character Interface
|
||||
|
@ -584,13 +690,16 @@ Sure, you could open up the appropriate drawer to see a character's stats, but w
|
|||
(defun rpgdm-ironsworn--display-stat (stat character)
|
||||
"Colorized the STAT from a CHARACTER hash containing it.
|
||||
See `rpgdm-ironsworn-character-display'."
|
||||
(let* ((value (gethash stat character))
|
||||
(s-val (number-to-string value))
|
||||
(color (cond
|
||||
((< value 1) "red")
|
||||
((< value 3) "orange")
|
||||
((< value 4) "yellow")
|
||||
(t "green"))))
|
||||
(let ((value (gethash stat character))
|
||||
s-val color)
|
||||
(if value
|
||||
(setq s-val (number-to-string value)
|
||||
color (cond
|
||||
((< value 1) "red")
|
||||
((< value 3) "orange")
|
||||
((< value 4) "yellow")
|
||||
(t "green")))
|
||||
(setq s-val "??" color "purple"))
|
||||
(propertize s-val 'face `(:foreground ,color))))
|
||||
|
||||
(defun rpgdm-ironsworn-character-display ()
|
||||
|
@ -674,20 +783,20 @@ This function will be used for =interactive= to return a tuple of both the /oper
|
|||
but decrements any other stats by `1'. Any other value means to take
|
||||
the default for that stat."
|
||||
(let ((value (read-string (format "Adjustment to %s (+/-/= for absolute value): " label)))
|
||||
(rxnum (rx (group (optional (or "+" "-" "="))) (* space) (group (+ digit)) (* space))))
|
||||
(rxnum (rx (group (optional (or "+" "-" "="))) (* space) (group (+ digit)) (* space))))
|
||||
|
||||
(if (string-match rxnum value)
|
||||
(let ((sign (match-string 1 value))
|
||||
(numb (string-to-number (match-string 2 value))))
|
||||
(cond
|
||||
((equal sign "-") `(:decrease ,numb))
|
||||
((equal sign "+") `(:increase ,numb))
|
||||
((equal sign "=") `(:absolute ,numb))
|
||||
(t (if (eq label `momentum) `(:increase ,numb) `(:decrease ,numb)))))
|
||||
(let ((sign (match-string 1 value))
|
||||
(numb (string-to-number (match-string 2 value))))
|
||||
(cond
|
||||
((equal sign "-") `(:decrease ,numb))
|
||||
((equal sign "+") `(:increase ,numb))
|
||||
((equal sign "=") `(:absolute ,numb))
|
||||
(t (if (eq label `momentum) `(:increase ,numb) `(:decrease ,numb)))))
|
||||
|
||||
(if (string-blank-p value)
|
||||
(if (eq label 'momentum) '(:increase 1) '(:decrease 1))
|
||||
'(:reset 0)))))
|
||||
(if (string-blank-p value)
|
||||
(if (eq label 'momentum) '(:increase 1) '(:decrease 1))
|
||||
'(:reset 0)))))
|
||||
#+END_SRC
|
||||
|
||||
Best if we wrote some unit tests to both explain and verify this function. This test uses the [[help:cl-letf][letf]], which allows us to override the [[help:read-string][read-string]] function for my tests. Why yes, this is clever way of doing what other languages would need a /mock/ object.
|
||||
|
@ -736,19 +845,19 @@ Best if we wrote some unit tests to both explain and verify this function. This
|
|||
|
||||
The =rpgdm-ironsworn-adjust-stat= function takes one of the four stats, like =’health= or =’momentum=, as well as its =default= or /starting/ value, collects the /current value/ (the =curr= variable), and then creates a new value based on the /operator/ determined by the input from =rpgdm-ironsworn--read-stat=. It sets the new stat by calling =rpgdm-ironsworn-store-character-state= defined below.
|
||||
|
||||
#+BEGIN_SRC emacs-lisp :results silent
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(defun rpgdm-ironsworn-adjust-stat (stat &optional default)
|
||||
"Increase or decrease the current character's STAT by ADJ.
|
||||
If the STAT isn't found, returns DEFAULT."
|
||||
(let* ((tuple (rpgdm-ironsworn--read-stat stat))
|
||||
(curr (rpgdm-ironsworn-character-stat stat))
|
||||
(oper (first tuple))
|
||||
(numb (second tuple))
|
||||
(new (cl-case oper
|
||||
(:increase (+ curr numb))
|
||||
(:decrease (- curr numb))
|
||||
(:absolute numb)
|
||||
(t default))))
|
||||
(curr (rpgdm-ironsworn-character-stat stat))
|
||||
(oper (first tuple))
|
||||
(numb (second tuple))
|
||||
(new (cl-case oper
|
||||
(:increase (+ curr numb))
|
||||
(:decrease (- curr numb))
|
||||
(:absolute numb)
|
||||
(t default))))
|
||||
;; (message "Combining curr %d with %d with %s operator" curr numb oper)
|
||||
(rpgdm-ironsworn-store-character-state stat new)))
|
||||
#+END_SRC
|
||||
|
@ -791,7 +900,7 @@ The previous functions allows us to create character stat-specific rolling funct
|
|||
#+END_SRC
|
||||
|
||||
And we could have a function for each:
|
||||
#+BEGIN_SRC emacs-lisp :results silent
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(defun rpgdm-ironsworn-roll-edge (modifier)
|
||||
"Roll an action based on a loaded character's Edge stat with a MODIFIER."
|
||||
(interactive (list (read-string "Edge + Modifier: ")))
|
||||
|
@ -1023,17 +1132,17 @@ The [[file:moves][moves]] directory contains one org file for each move. These f
|
|||
The string representation is created by looking at the parent
|
||||
directory and file name."
|
||||
(let* ((regx (rx "moves/"
|
||||
(group (one-or-more (not "/")))
|
||||
"/"
|
||||
(group (one-or-more (not ".")))
|
||||
".org" eol))
|
||||
(mtch (string-match regx file))
|
||||
(type (thread-last file
|
||||
(match-string 1)
|
||||
(s-titleize)))
|
||||
(name (thread-last file
|
||||
(match-string 2)
|
||||
(s-replace-regexp "-" " "))))
|
||||
(group (one-or-more (not "/")))
|
||||
"/"
|
||||
(group (one-or-more (not ".")))
|
||||
".org" eol))
|
||||
(mtch (string-match regx file))
|
||||
(type (thread-last file
|
||||
(match-string 1)
|
||||
(s-titleize)))
|
||||
(name (thread-last file
|
||||
(match-string 2)
|
||||
(s-replace-regexp "-" " "))))
|
||||
(list (format "%s :: %s" type name) file)))
|
||||
#+END_SRC
|
||||
|
||||
|
@ -1066,9 +1175,9 @@ Oh, one issue... how do I know where the data files for the moves are?
|
|||
will return a cached copy."
|
||||
(unless rpgdm-ironsworn-moves
|
||||
(setq rpgdm-ironsworn-moves
|
||||
(mapcar 'rpgdm-ironsworn--move-tuple
|
||||
(directory-files-recursively
|
||||
(f-join rpgdm-ironsworn-project "moves")
|
||||
(mapcar 'rpgdm-ironsworn--move-tuple
|
||||
(directory-files-recursively
|
||||
(f-join rpgdm-ironsworn-project "moves")
|
||||
(rx (1+ any) ".org" eos)))))
|
||||
rpgdm-ironsworn-moves)
|
||||
#+END_SRC
|
||||
|
@ -1121,7 +1230,7 @@ Now, let's do the Move interface. We need to load the documentation, and retriev
|
|||
;; Normally, we'd call `save-window-excursion', however, that buries the file
|
||||
;; we show, and I think we should leave it up for study.
|
||||
(let (props title
|
||||
(orig-buf (window-buffer)))
|
||||
(orig-buf (window-buffer)))
|
||||
(find-file-other-window move-file)
|
||||
(goto-char (point-min))
|
||||
(setq title (cdr (assoc "ITEM" (org-entry-properties))))
|
||||
|
@ -1239,14 +1348,14 @@ A helper function for allowing the user to choose which track to mark progress a
|
|||
allows the user to choose the number of squares that have been
|
||||
marked against some progress."
|
||||
(let* ((other "<other>")
|
||||
(tracks (rpgdm-ironsworn-character-progresses))
|
||||
(choices (if allow-other
|
||||
(append tracks (list other))
|
||||
tracks))
|
||||
(original (completing-read "Progress Track: " choices)))
|
||||
(tracks (rpgdm-ironsworn-character-progresses))
|
||||
(choices (if allow-other
|
||||
(append tracks (list other))
|
||||
tracks))
|
||||
(original (completing-read "Progress Track: " choices)))
|
||||
(if (and allow-other (equal original other))
|
||||
(read-number "Completed Track Amount [0-10]: ")
|
||||
original)))
|
||||
(read-number "Completed Track Amount [0-10]: ")
|
||||
original)))
|
||||
#+END_SRC
|
||||
|
||||
Adding a progress to a character amounts to an arbitrary name, and the number of ticks, that amount to a /level/. For instance, we want to mark two boxes against a /dangerous/ track, which is =8= ticks. We store this in the character's hash-table, under the key, =progress-tracks=:
|
||||
|
@ -1384,7 +1493,9 @@ If we call the =-amount= function /interactively/, we should get the current res
|
|||
(rpgdm-ironsworn--progress-amount name)
|
||||
(if (not (called-interactively-p 'any))
|
||||
boxes
|
||||
(rpgdm-message "[%s] Progress on '%s': %d %s" level name boxes
|
||||
(rpgdm-message "[%s] Progress on %s: %d %s" level
|
||||
(propertize name 'face 'italic)
|
||||
boxes
|
||||
(rpgdm-ironsworn--progress-box boxes leftover)))))
|
||||
#+END_SRC
|
||||
|
||||
|
@ -1417,7 +1528,7 @@ When we've finished a track, we can remove it from the hash to not clutter the i
|
|||
|
||||
Let's make sure these function work as we expect (keep in mind, these can only be run in an Org file):
|
||||
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
#+BEGIN_SRC emacs-lisp :tangle rpgdm-ironsworn-tests.el
|
||||
(ert-deftest rpgdm-ironsworn-progress-test ()
|
||||
(let ((track "Battling a Grue"))
|
||||
(rpgdm-ironsworn-progress-delete track)
|
||||
|
@ -1450,25 +1561,25 @@ Requires a =place-type= to help limit the values that can be in /place/ and then
|
|||
The PLACE-TYPE is something like 'shadowfen or 'sea-cave,
|
||||
and helps to make the new name more meaningful to the place."
|
||||
(interactive (list (completing-read "Place type: "
|
||||
'(barrow cavern icereach mine pass ruin
|
||||
sea-cave shadowfen stronghold
|
||||
tanglewood underkeep))))
|
||||
'(barrow cavern icereach mine pass ruin
|
||||
sea-cave shadowfen stronghold
|
||||
tanglewood underkeep))))
|
||||
(unless place-type
|
||||
(setq place-type "unknown"))
|
||||
(let ((description (rpgdm-tables-choose "site/name/description"))
|
||||
(detail (rpgdm-tables-choose "site/name/detail"))
|
||||
(namesake (rpgdm-tables-choose "site/name/namesake"))
|
||||
(place (rpgdm-tables-choose (format "site/name/place/%s" (downcase place-type))))
|
||||
(roll (rpgdm--roll-die 100)))
|
||||
(detail (rpgdm-tables-choose "site/name/detail"))
|
||||
(namesake (rpgdm-tables-choose "site/name/namesake"))
|
||||
(place (rpgdm-tables-choose (format "site/name/place/%s" (downcase place-type))))
|
||||
(roll (rpgdm--roll-die 100)))
|
||||
(rpgdm-message
|
||||
(cond
|
||||
((<= roll 25) (format "%s %s" description place))
|
||||
((<= roll 50) (format "%s of %s" place detail))
|
||||
((<= roll 70) (format "%s of %s %s" place description detail))
|
||||
((<= roll 80) (format "%s of %s's %s" place namesake detail))
|
||||
((<= roll 85) (format "%s's %s" namesake place))
|
||||
((<= roll 95) (format "%s %s of %s" description place namesake))
|
||||
(t (format "%s of %s" place namesake))))))
|
||||
((<= roll 25) (format "%s %s" description place))
|
||||
((<= roll 50) (format "%s of %s" place detail))
|
||||
((<= roll 70) (format "%s of %s %s" place description detail))
|
||||
((<= roll 80) (format "%s of %s's %s" place namesake detail))
|
||||
((<= roll 85) (format "%s's %s" namesake place))
|
||||
((<= roll 95) (format "%s %s of %s" description place namesake))
|
||||
(t (format "%s of %s" place namesake))))))
|
||||
#+END_SRC
|
||||
While the following functions can take advantage of this function, we also want to place it in our normal =rpgdm-tables= hash, so that we can choose it there:
|
||||
|
||||
|
@ -1504,9 +1615,9 @@ Notice we also generate a name for the place.
|
|||
The nature is a combination of theme and domain."
|
||||
(interactive)
|
||||
(let* ((theme (rpgdm-tables-choose "site/theme"))
|
||||
(domain (rpgdm-tables-choose "site/domain"))
|
||||
(place (downcase domain))
|
||||
(name (rpgdm-ironsworn-oracle-site-name place)))
|
||||
(domain (rpgdm-tables-choose "site/domain"))
|
||||
(place (downcase domain))
|
||||
(name (rpgdm-ironsworn-oracle-site-name place)))
|
||||
(rpgdm-message "%s %s :: %s" theme domain name)))
|
||||
#+END_SRC
|
||||
|
||||
|
@ -1554,7 +1665,7 @@ With these properties in place, we can now do a much better job with the [[file:
|
|||
"Return random result from weak hit table for Delve the Depths.
|
||||
The STAT should be the symbol, 'wits, 'shadow, or 'edge."
|
||||
(interactive (list (completing-read "Stat Choice: "
|
||||
'("wits" "shadow" "edge"))))
|
||||
'("wits" "shadow" "edge"))))
|
||||
(let ((table-name (format "delve/weak-hit/%s" stat)))
|
||||
;; (message "Rolling on %s" table-name)
|
||||
(rpgdm-tables-choose table-name)))
|
||||
|
@ -1622,12 +1733,12 @@ Some tables contain /code/ we need, so let’s gather those. The /trick/ is that
|
|||
#+BEGIN_SRC emacs-lisp
|
||||
(defvar rpgdm-ironsworn-site-themes
|
||||
(progn (rpgdm-tables-choose "site/theme")
|
||||
(gethash "site/theme" rpgdm-tables))
|
||||
(gethash "site/theme" rpgdm-tables))
|
||||
"A list of the Delve site themes.")
|
||||
|
||||
(defvar rpgdm-ironsworn-site-domains
|
||||
(progn (rpgdm-tables-choose "site/domain")
|
||||
(gethash "site/domain" rpgdm-tables))
|
||||
(gethash "site/domain" rpgdm-tables))
|
||||
"A list of the Delve site domains.")
|
||||
#+END_SRC
|
||||
He designed many of the tables to work together, for instance, you should roll on both the [[file:tables/actions.org][actions]] and [[file:tables/themes.org][themes]] and combine the result to kick-start your ideas.
|
||||
|
@ -1679,8 +1790,8 @@ The [[file:tables/combat-action.org][combat action]] table isn't often tactical,
|
|||
"Return combat response combined from three combat tables."
|
||||
(interactive)
|
||||
(let ((action (rpgdm-tables-choose "combat/action"))
|
||||
(method (rpgdm-tables-choose "combat/event-method"))
|
||||
(target (rpgdm-tables-choose "combat/event-target")))
|
||||
(method (rpgdm-tables-choose "combat/event-method"))
|
||||
(target (rpgdm-tables-choose "combat/event-target")))
|
||||
(rpgdm-message "%s %s or %s" method target action)))
|
||||
|
||||
(puthash "combat" 'rpgdm-ironsworn-oracle-combat rpgdm-tables)
|
||||
|
@ -1858,9 +1969,9 @@ But we roll some of these more than others, especially since "moves" does most o
|
|||
#+begin_src emacs-lisp
|
||||
(defhydra hydra-rpgdm (:color pink :hint nil)
|
||||
"
|
||||
^Dice^ 0=d100 1=d10 6=d6 ^Roll/Adjust^ ^Oracles/Tables^ ^Moving/Editing^ ^Messages^
|
||||
^Dice^ 0=d100 1=d10 6=d6 ^Roll/Adjust^ ^Oracles/Tables^ ^Moving/Editing^ ^Messages^
|
||||
------------------------------------------------------------------------------------------------------------------------------
|
||||
_D_: Roll Dice _h_: Roll Shadow _l_/_L_: Health _z_/_Z_: Yes/No Oracle _o_: Links ⌘-h: Show Stats
|
||||
_D_: Roll Dice _h_: Roll Shadow _l_/_L_: Health _z_/_Z_: Yes/No Oracle _o_: Links _A_: Show Stats
|
||||
_e_: Roll Edge _w_: Roll Wits _t_/_T_: Spirit _c_/_C_: Show Oracle _J_/_K_: Page up/dn ⌘-l: Last Results
|
||||
_r_: Roll Heart _p_/_a_: Progress/Assets _s_/_S_: Supply _O_: Load Oracles _N_/_W_: Narrow/Widen ⌘-k: ↑ Previous
|
||||
_i_: Roll Iron _m_: Make Move _M_: Momentum _d_: Delve Actions _y_/_Y_: Yank/Move ⌘-j: ↓ Next "
|
||||
|
@ -1891,7 +2002,7 @@ But we roll some of these more than others, especially since "moves" does most o
|
|||
("o" ace-link) ("N" org-narrow-to-subtree) ("W" widen)
|
||||
("K" scroll-down :color pink) ("J" scroll-up :color pink)
|
||||
("y" rpgdm-paste-last-message) ("Y" rpgdm-ironsworn-paste-last-move)
|
||||
("s-h" rpgdm-ironsworn-character-display)
|
||||
("A" rpgdm-ironsworn-character-display)
|
||||
("C-m" rpgdm-last-results :color pink)
|
||||
("C-n" rpgdm-last-results-next :color pink)
|
||||
("C-p" rpgdm-last-results-previous :color pink)
|
||||
|
@ -1940,9 +2051,7 @@ But since most character stats do not simply /go away/ but are constantly in flu
|
|||
Note that STAT should be a symbol, like `supply' and VALUE should be a
|
||||
number, but doesn't have to be."
|
||||
(save-excursion
|
||||
(org-up-heading)
|
||||
(while (> (org-heading-level) 1)
|
||||
(org-up-heading))
|
||||
(org-top-heading)
|
||||
(rpgdm-ironsworn-store-character-temp-state stat value)))
|
||||
#+END_SRC
|
||||
|
||||
|
@ -2022,11 +2131,23 @@ Since [[help:org-up-element][org-up-element]]’s behavior has changed, and [[he
|
|||
#+BEGIN_SRC emacs-lisp
|
||||
(defun org-up-heading ()
|
||||
"Move the point to next parent heading, unless already at the top-level."
|
||||
(if (= 0 (org-heading-level))
|
||||
(org-previous-visible-heading 1)
|
||||
(outline-up-heading 1)))
|
||||
(interactive)
|
||||
(cl-case (org-heading-level)
|
||||
(0 (org-previous-visible-heading 1))
|
||||
(1 nil)
|
||||
(t (outline-up-heading 1))))
|
||||
#+END_SRC
|
||||
|
||||
And a function to move the point to the top-most heading (where we store the character’s details:
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
(defun org-top-heading ()
|
||||
"Move the point to the top-most heading in the org document.
|
||||
Note that this is based on the current point position."
|
||||
(interactive)
|
||||
(org-up-heading)
|
||||
(while (> (org-heading-level) 1)
|
||||
(org-up-heading)))
|
||||
#+END_SRC
|
||||
Enough chit-chat, let's write this function. While we are at it, let's convert the property symbols into short symbols, e.g. =:IRONSWORN-SHADOW= should just be =shadow=, and number values should be numeric:
|
||||
|
||||
#+BEGIN_SRC emacs-lisp
|
||||
|
|
1130
assets.org
Normal file
1130
assets.org
Normal file
File diff suppressed because it is too large
Load diff
BIN
images/dice-results-2.png
Normal file
BIN
images/dice-results-2.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 70 KiB |
BIN
images/progress-placement-prompt.png
Normal file
BIN
images/progress-placement-prompt.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 29 KiB |
BIN
images/progress-tracks-tree.png
Normal file
BIN
images/progress-tracks-tree.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 60 KiB |
40
moves/arcanum/cast-a-spell.org
Normal file
40
moves/arcanum/cast-a-spell.org
Normal file
|
@ -0,0 +1,40 @@
|
|||
** Cast a Spell
|
||||
When you channel the flow of Chaos to [[file:../../arcanum.org::*Manipulations][Manipulate]] an [[file:../../arcanum.org::*Essences][Essence]], envision [[*How Spells are Cast][how the spell takes effect]] to:
|
||||
|
||||
* *Act:* You may make [[file:../adventure/face-danger.org][Face Danger]], [[file:../adventure/secure-advantage.org][Secure an Advantage]], [[file:../combat/strike.org][Strike]], [[file:../combat/clash.org][Clash]], [[file:../adventure/gather-information.org][Gather Information]], [[file:../relationship/compel.org][Compel]], [[file:../adventure/heal.org][Heal]], [[file:../adventure/resupply.org][Resupply]], [[file:../combat/enter-the-fray.org][Enter the Fray]], and [[file:../relationship/aid-your-ally.org][Aid Your Ally]] moves as narratively appropriate to the spell magnitude by rolling +spell power or +chaos (whichever is higher). If the Action Die shows 1, Mark Chaos. If you chose to cast with +chaos, Mark Chaos equal to the [[Spell Magnitude]], instead.
|
||||
|
||||
* *Intervene*: After rolling for a move but before resolving the outcome, you may choose one:
|
||||
+ Mark Chaos to change a Weak Hit to a Strong Hit
|
||||
+ Mark Chaos twice to change a Miss to a Weak Hit
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
:move-stats: spell|chaos
|
||||
:VISIBILITY: folded
|
||||
:END:
|
||||
|
||||
**** Spell Magnitude
|
||||
Spell Magnitude determines what outcomes a spell can produce and is calculated by finding the lowest level between the Manipulation and Essence. Thus, a character with two dots in Conjure and one dot in Water would have a Spell Magnitude of one.
|
||||
|
||||
A spell of magnitude one changes what already exists or what is already happening. As an example, a character with one dot in Conjure and one dot in Water would be able to increase the flow of running water or increase the amount of water in a pitcher.
|
||||
|
||||
A spell of magnitude two can bring into existence something which wasn’t there before or may change something already present in a major way. Onlookers who are not Magi or Attendants are likely to be shocked by such a display. For instance, a character with two dots in Conjure and three dots in Water (remember: the lower level determines magnitude) would be able to cause a river to flood or fill an empty bucket with water.
|
||||
|
||||
A spell of magnitude three can change reality in significant ways. Onlookers who are not Magi or Attendants are likely to be in awe of the Mage and the event. For example, a character with three dots in Conjure and three dots in Water would be able to bring a river tumbling down from the snow in the mountains, where no river existed before, or would be able to fill an empty depression in the land to create a lake.
|
||||
|
||||
**** Spell Power
|
||||
Spell Power determines how likely the Mage is to produce the desired outcome of the spell and is typically calculated by the adding the levels of the Manipulation and Essence used in the spell. Thus, a character with two dots in Conjure and one dot in Water would have a Spell Power of three.
|
||||
|
||||
However, daring Magi may choose to use their Chaos level, instead, if it is higher than the combined Manipulation and Essence. As a Mage twists and bends reality, the risk of backlash grows. However, so also does the ability of the Mage to subvert its influence, channeling the crashing waves of Chaos into incredible feats of magic. If the Action Die shows 1, though, you must Mark Chaos a number of times equal to the Spell Magnitude of the attempt (instead of just once when using Spell Power). Some ill-fated Magi have surrendered, intentionally or unintentionally, to this lure of incredible power.
|
||||
|
||||
Here are a few more examples of calculating Spell Magnitude and Spell Power:
|
||||
|
||||
* A character with two dots in Decay and one dot in Mind has a Spell Magnitude of one, a Spell Power of three, and the ability to slow a person’s thought process or bring a person’s normal state of mind to a state of calm, for example.
|
||||
|
||||
* A character with two dots in Decay and three dots in Fire has a Spell Magnitude of two, a Spell Power of five, and can extinguish a bonfire or create a patch of shadow where none should be, for example.
|
||||
|
||||
**** How Spells are Cast
|
||||
As with many things in Ironsworn, it is important to let Your Truths and your narrative define the methods by which spells are cast. The ideas assembled in this supplement are formed with the notion of traditional Magery in mind: gestures, words, occasional spell components, etc. However, the rules here are flexible enough to allow your own personal style of magic to be applied.
|
||||
|
||||
Maybe your Magi are Witches or Wizards of an ancient tradition filled with complex rites and rituals which take hours to perform and a mere snap of the fingers to unleash. Maybe your Magi are masters of their Psionic abilities, using the sheer power of their intellect and their will to shape reality around them. Maybe your Magi are, instead, angelic or demonic beings whose unimaginably long names are scarred or inked upon their skin and whose runes blaze to life when powering a spell. There are so many possibilities, some classic (like a wizard or bard) and some novel.
|
||||
|
||||
Regardless, make magic fit your world and your notions of power. In short, make your Mage as unearthly and fascinating as you like, in all the ways that you like. The only rule is consistency; your magic should always operate in the same way, if possible.
|
18
moves/arcanum/ground-yourself.org
Normal file
18
moves/arcanum/ground-yourself.org
Normal file
|
@ -0,0 +1,18 @@
|
|||
** Ground Yourself
|
||||
When you spend time in the presence of your bonded Attendants in rest and fellowship, roll +heart, and for any challenge die result below your Chaos level, change it to your Chaos level. You may not [[file:cast-a-spell.org][Cast a Spell]] to affect the results of this move.
|
||||
|
||||
On a *strong hit*, you reconnect with your essential humanity. /Reduce Chaos/ and choose one:
|
||||
* Reduce Chaos again.
|
||||
* Take +1 momentum.
|
||||
|
||||
On a *weak hit*, you feel as though you remember your place in this world. /Reduce Chaos/.
|
||||
|
||||
On a *miss*, you take no comfort in the company of others, remembering that you are forever shut out of human society. /Mark Shaken/.
|
||||
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
:move-stats: heart
|
||||
:VISIBILITY: folded
|
||||
:END:
|
||||
|
||||
*Note:* If your Attendants are unquartered (i.e. your Arcanum lacks the ‘Quarters’ asset), something has happened with which they need help. Swear an Iron Vow to assist them with this task. Should you refuse the vow or forsake it, the problem takes a dramatic turn for the worse. Envision this tragic outcome.
|
8
moves/arcanum/harness-chaos.org
Normal file
8
moves/arcanum/harness-chaos.org
Normal file
|
@ -0,0 +1,8 @@
|
|||
** Harness Chaos
|
||||
|
||||
When you [[file:../suffer/face-death.org][Face Death]] or [[file:../suffer/face-desolation.org][Face Desolation]], you may roll +chaos instead of the normal stat. Your bending of fate and reality has allowed you to potentially step outside of their influence. If your Action Die shows a 1 on that move, mark Chaos.
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
:move-stats: chaos
|
||||
:VISIBILITY: folded
|
||||
:END:
|
13
moves/arcanum/scribe-tome.org
Normal file
13
moves/arcanum/scribe-tome.org
Normal file
|
@ -0,0 +1,13 @@
|
|||
** Scribe Tome
|
||||
When you work in the Library Facility at your Arcanum to study a particular [[file:~/other/emacs-ironsworn/arcanum.org::*Manipulations][Manipulation]] or [[file:../../arcanum.org::*Essences][Essence]], perform experiments, and write out your findings, roll +wits.
|
||||
|
||||
On a *strong hit*, you produce a Tome about that specific Art. List it as being in your Library.
|
||||
|
||||
On a *weak hit*, you are close to a break through, but it will take much more time. After your next [[file:~/other/emacs-ironsworn/moves/quest/fulfill-your-vow.org][Fulfill Your Vow]], you may attempt to Scribe again for the same Art and add +1.
|
||||
|
||||
On a *miss*, something goes horribly awry. Envision how your Arcanum suffers damage or is now in danger. Alternately, [[file:~/other/emacs-ironsworn/moves/fate/ask-the-oracle.org][Ask the Oracle]] for what goes wrong.
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
:move-stats: wits
|
||||
:VISIBILITY: folded
|
||||
:END:
|
11
moves/arcanum/secure-resources.org
Normal file
11
moves/arcanum/secure-resources.org
Normal file
|
@ -0,0 +1,11 @@
|
|||
** Secure Resources
|
||||
|
||||
When you [[file:../quest/fulfill-your-vow.org][Fulfill a Vow]], for each experience point gained, roll 1d10.
|
||||
|
||||
Consult the chart below, and envision what you have found:
|
||||
|
||||
| 1d10 | Resources |
|
||||
|------+--------------|
|
||||
| 1-3 | No Resources |
|
||||
| 4-8 | +1 Resource |
|
||||
| 9-10 | +2 Resources |
|
20
moves/arcanum/withstand-chaos.org
Normal file
20
moves/arcanum/withstand-chaos.org
Normal file
|
@ -0,0 +1,20 @@
|
|||
** Withstand Chaos
|
||||
|
||||
When you must Mark Chaos and cannot, roll +wits, and for any challenge die showing less than five, set it to five. You may not Cast a Spell to affect the results of this move.
|
||||
|
||||
On a *strong hit*, Chaos remains at +5. You hold the fragments of your mind together, just barely…this time.
|
||||
|
||||
On a *weak hit*, choose one:
|
||||
* Your mind shatters. You have just a moment before conscious reality as you knew it is lost forever. You may perform one last feat of arcane mastery, leaving your mark upon the world. Envision this final moment.
|
||||
* You experience astral ripping, your soul becoming sundered from your body. In this state, you can see the chromatic Mark on your spirit: the channel through which you draw magical power. As your connection to your body is wracked by a torrent of uncontrolled magical energies, you realize that removing the Mark would stop the flow, though it will grievously wound your spirit. If you choose to sever your Mark, Swear an Iron Vow to heal your soul if you survive.
|
||||
+ On a hit, remove your Chaos marker and discard The Mark asset.
|
||||
+ If you miss or refuse the vow, your soul is severed from your body, ending your mortal life.
|
||||
|
||||
On a *miss*, your control over the Chaos buckles. Choose one:
|
||||
* You desperately try to hold onto control to prevent disaster, destroying your body in the process. When it finally dies, your disembodied soul remains bound to this plane in its anguish. Envision where and how your spirit haunts a now foreboding and gloomy place.
|
||||
* You give in to the sheer rush of power, and some aspect of the secret nature of this world is revealed to you. Envision this new understanding. The unbridled power channeled through you erupts in a catastrophic explosion of Chaotic energies, destroying your body. Identify your location on the map, and remove any structures in the immediate area (e.g. village, ruin, etc.). This is a wasteland of Chaos, where the sun slants in odd ways, strange creatures lurk in impossible shadows, and the very land itself allows no escape. Name this horrific place, as appropriate to your world.
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
:move-stats: wits
|
||||
:VISIBILITY: folded
|
||||
:END:
|
|
@ -12,13 +12,19 @@ On a *weak hit*, [[elisp:rpgdm-ironsworn-delve-the-depths-weak][roll on the foll
|
|||
|
||||
On a *miss*, [[file:reveal-a-danger.org][Reveal a Danger]].
|
||||
|
||||
| [[elisp:rpgdm-ironsworn-delve-the-depths-weak-edge][Edge]] | [[elisp:rpgdm-ironsworn-delve-the-depths-weak-shadow][Shadow]] | [[elisp:rpgdm-ironsworn-delve-the-depths-weak-wits][Wits]] | Weak Hit Result |
|
||||
|-------+--------+-------+---------------------------------------------------|
|
||||
| 1-45 | 1-30 | 1-40 | Mark progress and Reveal a Danger. |
|
||||
| 46-65 | 31-65 | 41-55 | Mark progress. |
|
||||
| 66-75 | 66-90 | 56-80 | Choose one: Mark progress or Find an Opportunity. |
|
||||
| 76-80 | 91-99 | 81-99 | Take both: Mark progress and Find an Opportunity. |
|
||||
| 81-00 | 00 | 00 | Mark progress twice and Reveal a Danger. |
|
||||
| [[elisp:rpgdm-ironsworn-delve-the-depths-weak-edge][Edge]] | [[elisp:rpgdm-ironsworn-delve-the-depths-weak-shadow][Shadow]] | [[elisp:rpgdm-ironsworn-delve-the-depths-weak-wits][Wits]] | Weak Hit Result |
|
||||
———————————————————————————
|
||||
| 1-45 | 1-30 | 1-40 | Mark progress, but |
|
||||
| | | | Reveal a danger |
|
||||
| 46-65 | 31-65 | 41-55 | Mark progress. |
|
||||
| 66-75 | 66-90 | 56-80 | Choose one: |
|
||||
| | | | Mark Progress *or* |
|
||||
| | | | Find an Opportunity |
|
||||
| 76-80 | 91-99 | 81-99 | Take both: |
|
||||
| | | | Mark Progress *and* |
|
||||
| | | | Find an Opportunity |
|
||||
| 81-00 | 00 | 00 | Mark progress twice, |
|
||||
| | | | but Reveal a danger |
|
||||
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
|
|
|
@ -8,19 +8,22 @@ Then, choose one.
|
|||
|
||||
• Take action now: You and any allies may make a move (not a progress move) which directly leverages the opportunity. When you do, add +1 and take +1 momentum on a hit.
|
||||
|
||||
| Roll | Result |
|
||||
|--------+-----------------------------------------------------------------|
|
||||
| 1-25 | The terrain favors you, or you find a hidden path. |
|
||||
| 26-45 | An aspect of the history or nature of this place is revealed. |
|
||||
| 46-57 | You locate a secure area. |
|
||||
| 58-68 | A clue offers insight or direction. |
|
||||
| 69-78 | You get the drop on a denizen. |
|
||||
| 79-86 | This area provides an opportunity to scavenge, forage, or hunt. |
|
||||
| 87-90 | You locate an interesting or helpful object. |
|
||||
| 91-94 | You are alerted to a potential threat. |
|
||||
| 95-98 | You encounter a denizen who might support you. |
|
||||
| 99-100 | You encounter a denizen in need of help. |
|
||||
|
||||
| Roll | Result |
|
||||
| 1-25 | The terrain favors you, |
|
||||
| | or you find a hidden path |
|
||||
| 26-45 | An aspect of the history or |
|
||||
| | nature of this place is revealed |
|
||||
| 46-57 | You locate a secure area |
|
||||
| 58-68 | A clue offers insight/direction |
|
||||
| 69-78 | You get the drop on a denizen |
|
||||
| 79-86 | This area provides opportunity |
|
||||
| | to scavenge, forage, or hunt |
|
||||
| 87-90 | locate interesting/helpful object |
|
||||
| 91-94 | Alerted to a potential threat |
|
||||
| 95-98 | Encounter denizen |
|
||||
| | who might support you |
|
||||
| 99-100 | Encounter denizen |
|
||||
| | who needs help. |
|
||||
*** Details
|
||||
:PROPERTIES:
|
||||
:VISIBILITY: folded
|
||||
|
|
|
@ -4,7 +4,7 @@ When you seek to resolve questions, discover details in the world, determine how
|
|||
|
||||
- Draw a conclusion :: Decide the answer based on the most interesting and obvious result.
|
||||
- Ask a yes/no question :: Decide the odds of a ‘yes’, and roll on the table below to check the answer.
|
||||
- Pick two :: Envision two options. Rate one as ‘likely’, and [[elisp:(rpgdm-ironsworn-oracle)][roll on the table]] below to see if it is true. If not, it is the other.
|
||||
- Pick two :: Envision two options. Rate one as ‘likely’, and [[elisp:rpgdm-ironsworn-oracle][roll on the table]] below to see if it is true. If not, it is the other.
|
||||
- Spark an idea :: Brainstorm or use a random prompt.
|
||||
|
||||
| Odds | The answer is ‘yes’ if you roll... |
|
||||
|
@ -68,6 +68,3 @@ When you’re unsure what a match might mean, you can roll on another oracle tab
|
|||
In guided play, your GM is the oracle. You won’t make this move unless you are talking things out and need a random result or a bit of inspiration. Your GM can use this move (or ask you to make it) to help guide the story.
|
||||
|
||||
#+STARTUP: showall
|
||||
# Local Variables:
|
||||
# eval: (flycheck-mode -1)
|
||||
# End:
|
||||
|
|
|
@ -3,7 +3,9 @@
|
|||
When you *suffer the outcome of a move*, choose one.
|
||||
|
||||
- Make the most obvious negative outcome happen.
|
||||
- Envision two negative outcomes. Rate one as ‘likely’, and [[file:ask-the-oracle.org][Ask the Oracle]] using the yes/no table. On a ‘yes’, make that outcome happen. Otherwise, make it the other.
|
||||
- Envision two negative outcomes. Rate one as ‘likely’, and [[file:ask-the-oracle.org][Ask the Oracle]] using the yes/no table.
|
||||
On a ‘yes’, make that outcome happen.
|
||||
Otherwise, make it the other.
|
||||
- [[elisp:(rpgdm-tables-choose "pay-the-price")][Roll on the following table]]. If you have difficulty interpreting the result to fit the current situation, roll again.
|
||||
|
||||
| Roll | Result |
|
||||
|
|
|
@ -15,6 +15,10 @@
|
|||
|
||||
(ert-deftest rpgdm-ironsworn--good-character-assets-test ()
|
||||
(should (rpgdm-ironsworn--good-character-assets '("foo" "bar" "baz")))
|
||||
(should (rpgdm-ironsworn--good-character-assets '(("Companions :: Dog" . "assets/companions/dog.org")
|
||||
("Paths :: Good Guy" . "assets/paths/good-guy.org")
|
||||
("Ritual :: Booboo" . "assets/ritual/booboo.org"))))
|
||||
(should-not (rpgdm-ironsworn--good-character-assets '("foo" "bar" "paths/shadow-kin.org")))
|
||||
(should-not (rpgdm-ironsworn--good-character-assets '("foo" "bar" "foo")))
|
||||
(should-not (rpgdm-ironsworn--good-character-assets '("assets/companions/dog.org"
|
||||
"assets/paths/good-guy.org"
|
||||
|
|
|
@ -21,8 +21,10 @@
|
|||
(defvar rpgdm-ironsworn-project (file-name-directory load-file-name)
|
||||
"The root directory to the rpgdm-ironsworn project.")
|
||||
|
||||
(rpgdm-tables-load (concat rpgdm-ironsworn-project "/tables"))
|
||||
|
||||
(defun rpgdm-ironsworn--results (action modifier one-challenge two-challenge
|
||||
&optional momentum)
|
||||
&optional momentum)
|
||||
"Return formatted string for an Ironsworn dice roll results.
|
||||
The ACTION is the d6 which is added to the MODIFIER (which can
|
||||
have character attribute values as well as any bonuses. The sum
|
||||
|
@ -34,45 +36,45 @@ use could burn that in order to improve the roll."
|
|||
(setq momentum 0))
|
||||
|
||||
(cl-flet ((strong-p (value dice1 dice2) (and (> value dice1) (> value dice2)))
|
||||
(weak-p (value dice1 dice2) (or (> value dice1) (> value dice2)))
|
||||
(miss-p (value dice1 dice2) (and (<= value dice1) (<= value dice2)))
|
||||
(faded (str) (propertize str 'face '(:foreground "#888")))
|
||||
(noted (str) (propertize str 'face '(:foreground "light blue")))
|
||||
(strong (str) (propertize str 'face '(:foreground "green")))
|
||||
(weak (str) (propertize str 'face '(:foreground "yellow")))
|
||||
(interest (str) (propertize str 'face '(:foreground "orange")))
|
||||
(miss (str) (propertize str 'face '(:foreground "red"))))
|
||||
(weak-p (value dice1 dice2) (or (> value dice1) (> value dice2)))
|
||||
(miss-p (value dice1 dice2) (and (<= value dice1) (<= value dice2)))
|
||||
(faded (str) (propertize str 'face '(:foreground "#888")))
|
||||
(noted (str) (propertize str 'face '(:foreground "light blue")))
|
||||
(strong (str) (propertize str 'face '(:foreground "green")))
|
||||
(weak (str) (propertize str 'face '(:foreground "yellow")))
|
||||
(interest (str) (propertize str 'face '(:foreground "orange")))
|
||||
(miss (str) (propertize str 'face '(:foreground "red"))))
|
||||
|
||||
(let* ((action-results (+ action modifier))
|
||||
(str-results (cond
|
||||
((strong-p action-results one-challenge two-challenge)
|
||||
(strong "Strong hit"))
|
||||
((weak-p action-results one-challenge two-challenge)
|
||||
(weak "Weak hit"))
|
||||
(t (miss "Miss"))))
|
||||
(burn-msg (if (> momentum action-results)
|
||||
(cond
|
||||
((and (strong-p momentum one-challenge two-challenge)
|
||||
(not (strong-p action-results one-challenge two-challenge)))
|
||||
(concat " -- Burn momentum for a " (strong "Strong hit")))
|
||||
((and (weak-p momentum one-challenge two-challenge)
|
||||
(miss-p action-results one-challenge two-challenge))
|
||||
(concat " -- Burn momentum for a " (weak "Weak hit")))
|
||||
(t ""))
|
||||
""))
|
||||
(matched-msg (if (= one-challenge two-challenge)
|
||||
(concat " ← " (interest "Create a Twist"))
|
||||
"")))
|
||||
(str-results (cond
|
||||
((strong-p action-results one-challenge two-challenge)
|
||||
(strong "Strong hit"))
|
||||
((weak-p action-results one-challenge two-challenge)
|
||||
(weak "Weak hit"))
|
||||
(t (miss "Miss"))))
|
||||
(burn-msg (if (> momentum action-results)
|
||||
(cond
|
||||
((and (strong-p momentum one-challenge two-challenge)
|
||||
(not (strong-p action-results one-challenge two-challenge)))
|
||||
(concat " -- Burn momentum for a " (strong "Strong hit")))
|
||||
((and (weak-p momentum one-challenge two-challenge)
|
||||
(miss-p action-results one-challenge two-challenge))
|
||||
(concat " -- Burn momentum for a " (weak "Weak hit")))
|
||||
(t ""))
|
||||
""))
|
||||
(matched-msg (if (= one-challenge two-challenge)
|
||||
(concat " ← " (interest "Create a Twist"))
|
||||
"")))
|
||||
|
||||
(format "%s %s %d %s%d %s %d%s %s %d %s %d%s%s"
|
||||
str-results (faded "::")
|
||||
(+ action modifier) (faded "(")
|
||||
action (faded "+")
|
||||
modifier (faded ")")
|
||||
(noted "→")
|
||||
one-challenge (faded "/")
|
||||
two-challenge
|
||||
matched-msg burn-msg))))
|
||||
str-results (faded "::")
|
||||
(+ action modifier) (faded "(")
|
||||
action (faded "+")
|
||||
modifier (faded ")")
|
||||
(noted "→")
|
||||
one-challenge (faded "/")
|
||||
two-challenge
|
||||
matched-msg burn-msg))))
|
||||
|
||||
(defun rpgdm-ironsworn-roll (modifier &optional momentum)
|
||||
"Display a Hit/Miss message based on an Ironsworn roll.
|
||||
|
@ -82,11 +84,11 @@ trigger a message to the user that they can burn that for better
|
|||
results."
|
||||
(interactive "nModifier: ")
|
||||
(let ((one-challenge (rpgdm--roll-die 10))
|
||||
(two-challenge (rpgdm--roll-die 10))
|
||||
(action-roll (rpgdm--roll-die 6)))
|
||||
(two-challenge (rpgdm--roll-die 10))
|
||||
(action-roll (rpgdm--roll-die 6)))
|
||||
(rpgdm-message (rpgdm-ironsworn--results action-roll modifier
|
||||
one-challenge two-challenge
|
||||
momentum))))
|
||||
one-challenge two-challenge
|
||||
momentum))))
|
||||
|
||||
(defun rpgdm-ironsworn--new-character-template (&optional name)
|
||||
"Insert basic Ironsworn template at the end of the current buffer.
|
||||
|
@ -152,25 +154,42 @@ the `assets' directory, otherwise, we return a cached version."
|
|||
(interactive (list (rpgdm-ironsworn--pick-character-asset)))
|
||||
(when rpgdm-ironsworn-new-character (goto-char (point-max)))
|
||||
(let ((file (if (consp asset) (cdr asset) asset)))
|
||||
(insert-file-contents file nil)
|
||||
(ignore-errors
|
||||
(insert-file-contents file nil))))
|
||||
|
||||
(when (called-interactively-p)
|
||||
(when (y-or-n-p "Insert another asset? ")
|
||||
(call-interactively 'rpgdm-ironsworn-insert-character-asset)))))
|
||||
(defun rpgdm-ironsworn-show-character-asset (asset)
|
||||
"Choose and insert the contents of an ASSET in the current buffer."
|
||||
(interactive (list (rpgdm-ironsworn--pick-character-asset)))
|
||||
(let ((asset-file (if (consp asset) (cdr asset) asset))
|
||||
(orig-buf (window-buffer)))
|
||||
(ignore-errors
|
||||
(find-file-other-window asset-file)
|
||||
(goto-char (point-min))
|
||||
(pop-to-buffer orig-buf))))
|
||||
|
||||
(defun rpgdm-ironsworn--good-character-assets (asset-files)
|
||||
(defun rpgdm-ironsworn--good-character-assets (assets)
|
||||
"Return ASSET-FILES if all given are _good enough_.
|
||||
That is, all are unique, only one companion, etc."
|
||||
(cl-flet ((companion-p (entry)
|
||||
(when (consp entry)
|
||||
(setq entry (cdr entry)))
|
||||
(string-match (rx "companions") entry)))
|
||||
(when (and
|
||||
(equal asset-files (seq-uniq asset-files))
|
||||
(<= (seq-length
|
||||
(seq-filter #'companion-p asset-files))
|
||||
1))
|
||||
asset-files)))
|
||||
That is, all are unique, only one companion, etc."
|
||||
(cl-flet ((only-files (entry) (if (consp entry) (cdr entry) entry))
|
||||
(is-companion? (file) (string-match (rx "companions") file))
|
||||
(not-at-first? (file) (when (or (s-ends-with? "revenant.org" file)
|
||||
(s-ends-with? "weaponmaster.org" file)
|
||||
(s-ends-with? "masked.org" file)
|
||||
(s-ends-with? "battle-scarred.org" file)
|
||||
(s-ends-with? "ritualist.org" file)
|
||||
(s-ends-with? "shadow-kin.org" file)
|
||||
(s-ends-with? "oathbreaker.org" file))
|
||||
t)))
|
||||
(let* ((asset-files (-map #'only-files assets))
|
||||
(num-of-companions (seq-count #'is-companion? asset-files)))
|
||||
(when (and
|
||||
;; Are all the assets in the list unique?
|
||||
(equal asset-files (seq-uniq asset-files))
|
||||
;; Does the list only include first-time-only?
|
||||
(-none? #'not-at-first? asset-files)
|
||||
;; Does the list include, at most, one companion?
|
||||
(<= num-of-companions 1))
|
||||
assets))))
|
||||
|
||||
(defun rpgdm-ironsworn--some-character-assets (asset-filenames &optional number)
|
||||
"Return a list of NUMBER elements from ASSET-FILENAMES... randomly.
|
||||
|
@ -200,14 +219,25 @@ The chosen assets are _good_ in that they won't have duplicates, etc."
|
|||
(dolist (file (rpgdm-ironsworn--random-character-assets number-of-assets))
|
||||
(rpgdm-ironsworn-insert-character-asset file)))
|
||||
|
||||
(defun rpgdm-ironsworn-insert-character-assets ()
|
||||
(ignore-errors
|
||||
(call-interactively 'rpgdm-ironsworn-insert-character-asset))
|
||||
(when (y-or-n-p "Insert another asset? ")
|
||||
(rpgdm-ironsworn-insert-character-assets)))
|
||||
|
||||
(defun rpgdm-ironsworn--new-character-assets ()
|
||||
"Insert the contents of three character assets from the assets directory."
|
||||
(goto-char (point-max))
|
||||
(insert "\n** Assets\n")
|
||||
(if (y-or-n-p "Would you like three random assets? ")
|
||||
(rpgdm-ironsworn-random-character-assets 3)
|
||||
(if (y-or-n-p "Would you like to choose your assets? ")
|
||||
(call-interactively 'rpgdm-ironsworn-insert-character-asset))))
|
||||
(goto-char (point-max))
|
||||
(insert "\n** Assets\n")
|
||||
|
||||
;; When using Evil, we'll drop a marker here:
|
||||
(when (fboundp 'evil-set-marker)
|
||||
(evil-set-marker ?a))
|
||||
|
||||
(if (y-or-n-p "Would you like three random assets? ")
|
||||
(rpgdm-ironsworn-random-character-assets 3)
|
||||
(if (y-or-n-p "Would you like to choose your assets? ")
|
||||
(rpgdm-ironsworn-insert-character-assets))))
|
||||
|
||||
(defun rpgdm-ironsworn--new-character-stats ()
|
||||
"Insert character stats after querying user for them.
|
||||
|
@ -225,8 +255,16 @@ Note: The stats are added as properties using the
|
|||
(rpgdm-ironsworn-progress-create (read-string "What title should we give this new character's Epic vow: ") 1)
|
||||
(rpgdm-ironsworn-progress-create "Bonds" 1)
|
||||
(rpgdm-ironsworn-progress-mark "Bonds")
|
||||
|
||||
(org-top-heading)
|
||||
(re-search-forward (rx line-start (zero-or-more space) line-end))
|
||||
(insert "\n** Bonds\n")
|
||||
(insert (format " - Your home settlement of %s\n" (rpgdm-tables-choose "settlement/name"))))
|
||||
|
||||
;; When using Evil, we'll drop a marker here:
|
||||
(when (fboundp 'evil-set-marker)
|
||||
(evil-set-marker ?b (point) t))
|
||||
|
||||
(insert (format " - My home settlement of %s\n" (rpgdm-tables-choose "settlement/name"))))
|
||||
|
||||
(defun rpgdm-ironsworn--new-character-stats-first (&optional name)
|
||||
"Insert a new character template for character, NAME.
|
||||
|
@ -328,33 +366,33 @@ Hitting return (entering a blank value) increments the 'momentum stat,
|
|||
but decrements any other stats by `1'. Any other value means to take
|
||||
the default for that stat."
|
||||
(let ((value (read-string (format "Adjustment to %s (+/-/= for absolute value): " label)))
|
||||
(rxnum (rx (group (optional (or "+" "-" "="))) (* space) (group (+ digit)) (* space))))
|
||||
(rxnum (rx (group (optional (or "+" "-" "="))) (* space) (group (+ digit)) (* space))))
|
||||
|
||||
(if (string-match rxnum value)
|
||||
(let ((sign (match-string 1 value))
|
||||
(numb (string-to-number (match-string 2 value))))
|
||||
(cond
|
||||
((equal sign "-") `(:decrease ,numb))
|
||||
((equal sign "+") `(:increase ,numb))
|
||||
((equal sign "=") `(:absolute ,numb))
|
||||
(t (if (eq label `momentum) `(:increase ,numb) `(:decrease ,numb)))))
|
||||
(let ((sign (match-string 1 value))
|
||||
(numb (string-to-number (match-string 2 value))))
|
||||
(cond
|
||||
((equal sign "-") `(:decrease ,numb))
|
||||
((equal sign "+") `(:increase ,numb))
|
||||
((equal sign "=") `(:absolute ,numb))
|
||||
(t (if (eq label `momentum) `(:increase ,numb) `(:decrease ,numb)))))
|
||||
|
||||
(if (string-blank-p value)
|
||||
(if (eq label 'momentum) '(:increase 1) '(:decrease 1))
|
||||
'(:reset 0)))))
|
||||
(if (eq label 'momentum) '(:increase 1) '(:decrease 1))
|
||||
'(:reset 0)))))
|
||||
|
||||
(defun rpgdm-ironsworn-adjust-stat (stat &optional default)
|
||||
"Increase or decrease the current character's STAT by ADJ.
|
||||
If the STAT isn't found, returns DEFAULT."
|
||||
(let* ((tuple (rpgdm-ironsworn--read-stat stat))
|
||||
(curr (rpgdm-ironsworn-character-stat stat))
|
||||
(oper (first tuple))
|
||||
(numb (second tuple))
|
||||
(new (cl-case oper
|
||||
(:increase (+ curr numb))
|
||||
(:decrease (- curr numb))
|
||||
(:absolute numb)
|
||||
(t default))))
|
||||
(curr (rpgdm-ironsworn-character-stat stat))
|
||||
(oper (first tuple))
|
||||
(numb (second tuple))
|
||||
(new (cl-case oper
|
||||
(:increase (+ curr numb))
|
||||
(:decrease (- curr numb))
|
||||
(:absolute numb)
|
||||
(t default))))
|
||||
;; (message "Combining curr %d with %d with %s operator" curr numb oper)
|
||||
(rpgdm-ironsworn-store-character-state stat new)))
|
||||
|
||||
|
@ -514,17 +552,17 @@ Note that if STATS is nil, the stats are acquired by calling
|
|||
The string representation is created by looking at the parent
|
||||
directory and file name."
|
||||
(let* ((regx (rx "moves/"
|
||||
(group (one-or-more (not "/")))
|
||||
"/"
|
||||
(group (one-or-more (not ".")))
|
||||
".org" eol))
|
||||
(mtch (string-match regx file))
|
||||
(type (thread-last file
|
||||
(match-string 1)
|
||||
(s-titleize)))
|
||||
(name (thread-last file
|
||||
(match-string 2)
|
||||
(s-replace-regexp "-" " "))))
|
||||
(group (one-or-more (not "/")))
|
||||
"/"
|
||||
(group (one-or-more (not ".")))
|
||||
".org" eol))
|
||||
(mtch (string-match regx file))
|
||||
(type (thread-last file
|
||||
(match-string 1)
|
||||
(s-titleize)))
|
||||
(name (thread-last file
|
||||
(match-string 2)
|
||||
(s-replace-regexp "-" " "))))
|
||||
(list (format "%s :: %s" type name) file)))
|
||||
|
||||
(defvar rpgdm-ironsworn-moves ()
|
||||
|
@ -537,9 +575,9 @@ that this function is memoized, in that re-calling this function
|
|||
will return a cached copy."
|
||||
(unless rpgdm-ironsworn-moves
|
||||
(setq rpgdm-ironsworn-moves
|
||||
(mapcar 'rpgdm-ironsworn--move-tuple
|
||||
(directory-files-recursively
|
||||
(f-join rpgdm-ironsworn-project "moves")
|
||||
(mapcar 'rpgdm-ironsworn--move-tuple
|
||||
(directory-files-recursively
|
||||
(f-join rpgdm-ironsworn-project "moves")
|
||||
(rx (1+ any) ".org" eos)))))
|
||||
rpgdm-ironsworn-moves)
|
||||
|
||||
|
@ -570,7 +608,7 @@ on the properties in the file."
|
|||
;; Normally, we'd call `save-window-excursion', however, that buries the file
|
||||
;; we show, and I think we should leave it up for study.
|
||||
(let (props title
|
||||
(orig-buf (window-buffer)))
|
||||
(orig-buf (window-buffer)))
|
||||
(find-file-other-window move-file)
|
||||
(goto-char (point-min))
|
||||
(setq title (cdr (assoc "ITEM" (org-entry-properties))))
|
||||
|
@ -646,13 +684,13 @@ If ALLOW-OTHER is non-nil, we append a choice, <other>, which
|
|||
allows the user to choose the number of squares that have been
|
||||
marked against some progress."
|
||||
(let* ((other "<other>")
|
||||
(tracks (rpgdm-ironsworn-character-progresses))
|
||||
(choices (if allow-other
|
||||
(append tracks (list other))
|
||||
tracks))
|
||||
(original (completing-read "Progress Track: " choices)))
|
||||
(tracks (rpgdm-ironsworn-character-progresses))
|
||||
(choices (if allow-other
|
||||
(append tracks (list other))
|
||||
tracks))
|
||||
(original (completing-read "Progress Track: " choices)))
|
||||
(if (and allow-other (equal original other))
|
||||
(read-number "Completed Track Amount [0-10]: ")
|
||||
(read-number "Completed Track Amount [0-10]: ")
|
||||
original)))
|
||||
|
||||
(defun rpgdm-ironsworn-progress-create (name level)
|
||||
|
@ -747,7 +785,9 @@ For instance, with 4 boxes and 2 leftover tick marks, this will return:
|
|||
(rpgdm-ironsworn--progress-amount name)
|
||||
(if (not (called-interactively-p 'any))
|
||||
boxes
|
||||
(rpgdm-message "[%s] Progress on '%s': %d %s" level name boxes
|
||||
(rpgdm-message "[%s] Progress on %s: %d %s" level
|
||||
(propertize name 'face 'italic)
|
||||
boxes
|
||||
(rpgdm-ironsworn--progress-box boxes leftover)))))
|
||||
|
||||
(defun rpgdm-ironsworn-progress-roll (progress-value)
|
||||
|
@ -794,16 +834,16 @@ This value is compared to rolling two d10 challenge dice."
|
|||
The PLACE-TYPE is something like 'shadowfen or 'sea-cave,
|
||||
and helps to make the new name more meaningful to the place."
|
||||
(interactive (list (completing-read "Place type: "
|
||||
'(barrow cavern icereach mine pass ruin
|
||||
sea-cave shadowfen stronghold
|
||||
tanglewood underkeep))))
|
||||
'(barrow cavern icereach mine pass ruin
|
||||
sea-cave shadowfen stronghold
|
||||
tanglewood underkeep))))
|
||||
(unless place-type
|
||||
(setq place-type "unknown"))
|
||||
(let ((description (rpgdm-tables-choose "site/name/description"))
|
||||
(detail (rpgdm-tables-choose "site/name/detail"))
|
||||
(namesake (rpgdm-tables-choose "site/name/namesake"))
|
||||
(place (rpgdm-tables-choose (format "site/name/place/%s" (downcase place-type))))
|
||||
(roll (rpgdm--roll-die 100)))
|
||||
(detail (rpgdm-tables-choose "site/name/detail"))
|
||||
(namesake (rpgdm-tables-choose "site/name/namesake"))
|
||||
(place (rpgdm-tables-choose (format "site/name/place/%s" (downcase place-type))))
|
||||
(roll (rpgdm--roll-die 100)))
|
||||
(rpgdm-message
|
||||
(cond
|
||||
((<= roll 25) (format "%s %s" description place))
|
||||
|
@ -821,9 +861,9 @@ and helps to make the new name more meaningful to the place."
|
|||
The nature is a combination of theme and domain."
|
||||
(interactive)
|
||||
(let* ((theme (rpgdm-tables-choose "site/theme"))
|
||||
(domain (rpgdm-tables-choose "site/domain"))
|
||||
(place (downcase domain))
|
||||
(name (rpgdm-ironsworn-oracle-site-name place)))
|
||||
(domain (rpgdm-tables-choose "site/domain"))
|
||||
(place (downcase domain))
|
||||
(name (rpgdm-ironsworn-oracle-site-name place)))
|
||||
(rpgdm-message "%s %s :: %s" theme domain name)))
|
||||
|
||||
(puthash "site" 'rpgdm-ironsworn-oracle-site-nature rpgdm-tables)
|
||||
|
@ -859,7 +899,7 @@ and progress level, and stores all this information in the org file."
|
|||
"Return random result from weak hit table for Delve the Depths.
|
||||
The STAT should be the symbol, 'wits, 'shadow, or 'edge."
|
||||
(interactive (list (completing-read "Stat Choice: "
|
||||
'("wits" "shadow" "edge"))))
|
||||
'("wits" "shadow" "edge"))))
|
||||
(let ((table-name (format "delve/weak-hit/%s" stat)))
|
||||
;; (message "Rolling on %s" table-name)
|
||||
(rpgdm-tables-choose table-name)))
|
||||
|
@ -915,12 +955,12 @@ chart."
|
|||
|
||||
(defvar rpgdm-ironsworn-site-themes
|
||||
(progn (rpgdm-tables-choose "site/theme")
|
||||
(gethash "site/theme" rpgdm-tables))
|
||||
(gethash "site/theme" rpgdm-tables))
|
||||
"A list of the Delve site themes.")
|
||||
|
||||
(defvar rpgdm-ironsworn-site-domains
|
||||
(progn (rpgdm-tables-choose "site/domain")
|
||||
(gethash "site/domain" rpgdm-tables))
|
||||
(gethash "site/domain" rpgdm-tables))
|
||||
"A list of the Delve site domains.")
|
||||
|
||||
(defun rpgdm-ironsworn-oracle-action-theme ()
|
||||
|
@ -954,8 +994,8 @@ You'll need to pick and choose what works and discard what doesn't."
|
|||
"Return combat response combined from three combat tables."
|
||||
(interactive)
|
||||
(let ((action (rpgdm-tables-choose "combat/action"))
|
||||
(method (rpgdm-tables-choose "combat/event-method"))
|
||||
(target (rpgdm-tables-choose "combat/event-target")))
|
||||
(method (rpgdm-tables-choose "combat/event-method"))
|
||||
(target (rpgdm-tables-choose "combat/event-target")))
|
||||
(rpgdm-message "%s %s or %s" method target action)))
|
||||
|
||||
(puthash "combat" 'rpgdm-ironsworn-oracle-combat rpgdm-tables)
|
||||
|
@ -1075,17 +1115,18 @@ You'll need to pick and choose what works and discard what doesn't."
|
|||
("A" rpgdm-ironsworn-insert-character-asset "insert new asset")
|
||||
("a" rpgdm-ironsworn-asset-stat-adjust "adjust asset stat")
|
||||
("n" rpgdm-ironsworn-asset-stat-create "new asset stat")
|
||||
("s" rpgdm-ironsworn-asset-stat-show "show")
|
||||
("r" rpgdm-ironsworn-asset-stat-roll "roll asset as modifier"))
|
||||
("s" rpgdm-ironsworn-asset-stat-show "show asset stat")
|
||||
("r" rpgdm-ironsworn-asset-stat-roll "roll asset as modifier")
|
||||
("v" rpgdm-ironsworn-show-character-asset "view asset"))
|
||||
|
||||
(defhydra hydra-rpgdm (:color blue :hint nil)
|
||||
(defhydra hydra-rpgdm (:color pink :hint nil)
|
||||
"
|
||||
^Dice^ 0=d100 1=d10 6=d6 ^Roll/Adjust^ ^Oracles/Tables^ ^Moving/Editing^ ^Messages^
|
||||
------------------------------------------------------------------------------------------------------------------------------
|
||||
_D_: Roll Dice _h_: Roll Shadow _l_/_L_: Health _z_/_Z_: Yes/No Oracle _o_: Links ⌘-h: Show Stats
|
||||
_e_: Roll Edge _w_: Roll Wits _t_/_T_: Spirit _c_/_C_: Show Oracle _J_/_K_: Page up/dn ⌘-l: Last Results
|
||||
_r_: Roll Heart _p_/_a_: Progress/Assets _s_/_S_: Supply _O_: Load Oracles _N_/_W_: Narrow/Widen ⌘-k: ↑ Previous
|
||||
_i_: Roll Iron _m_: Make Move _M_: Momentum _d_: Delve Actions _y_/_Y_: Yank/Move ⌘-j: ↓ Next "
|
||||
^Dice^ 0=d100 1=d10 6=d6 ^Roll/Adjust^ ^Oracles/Tables^ ^Moving/Editing^ ^Messages^
|
||||
--------------------------------------------------------------------------------------------------------------------
|
||||
_D_: Roll Dice _h_: Roll Shadow _l_/_L_: Health _z_/_Z_: Yes/No Oracle _o_: Links _A_: Show Stats
|
||||
_e_: Roll Edge _w_: Roll Wits _t_/_T_: Spirit _c_/_C_: Show Oracle _J_/_K_: Page up/dn ⌘-l: Last Results
|
||||
_r_: Roll Heart _p_/_a_: Progress/Assets _s_/_S_: Supply _O_: Load Oracles _N_/_W_: Narrow/Widen ⌘-k: ↑ Previous
|
||||
_i_: Roll Iron _m_: Make Move _M_: Momentum _d_: Delve Actions _y_/_Y_: Yank/Move ⌘-j: ↓ Next "
|
||||
("D" rpgdm-ironsworn-roll)
|
||||
("z" rpgdm-ironsworn-oracle) ("Z" rpgdm-yes-and-50/50)
|
||||
|
||||
|
@ -1106,14 +1147,14 @@ You'll need to pick and choose what works and discard what doesn't."
|
|||
|
||||
("O" rpgdm-tables-load) ("c" rpgdm-tables-choose) ("C" rpgdm-tables-choose :color pink)
|
||||
|
||||
("d" hydra-rpgdm-delve/body)
|
||||
("p" hydra-rpgdm-progress/body)
|
||||
("a" hydra-rpgdm-assets/body)
|
||||
("d" hydra-rpgdm-delve/body :color blue)
|
||||
("p" hydra-rpgdm-progress/body :color blue)
|
||||
("a" hydra-rpgdm-assets/body :color blue)
|
||||
|
||||
("o" ace-link) ("N" org-narrow-to-subtree) ("W" widen)
|
||||
("K" scroll-down :color pink) ("J" scroll-up :color pink)
|
||||
("y" rpgdm-paste-last-message) ("Y" rpgdm-ironsworn-paste-last-move)
|
||||
("s-h" rpgdm-ironsworn-character-display)
|
||||
("A" rpgdm-ironsworn-character-display)
|
||||
("C-m" rpgdm-last-results :color pink)
|
||||
("C-n" rpgdm-last-results-next :color pink)
|
||||
("C-p" rpgdm-last-results-previous :color pink)
|
||||
|
@ -1124,9 +1165,10 @@ You'll need to pick and choose what works and discard what doesn't."
|
|||
("0" rpgdm-roll-d100 :color pink)
|
||||
("1" rpgdm-roll-d10 :color pink)
|
||||
("6" rpgdm-roll-d6 :color pink)
|
||||
("RET" evil-open-below :color blue)
|
||||
("q" nil "quit") ("<f6>" nil))
|
||||
|
||||
(defun rpgdm-ironsworn-store-character-state (stat value)
|
||||
(defun rpgdm-ironsworn-store-character-temp-state (stat value)
|
||||
"Store the VALUE of a character's STAT in the current org tree property.
|
||||
Note that STAT should be a symbol, like `supply' and VALUE should be a
|
||||
number, but doesn't have to be."
|
||||
|
@ -1135,15 +1177,16 @@ number, but doesn't have to be."
|
|||
(setq value (number-to-string value)))
|
||||
(org-set-property prop value)))
|
||||
|
||||
(defun rpgdm-ironsworn-store-default-character-state (stat value)
|
||||
(defun rpgdm-ironsworn-store-character-state (stat value)
|
||||
"Store the VALUE of a character's STAT in the top-level org tree property.
|
||||
Note that STAT should be a symbol, like `supply' and VALUE should be a
|
||||
number, but doesn't have to be."
|
||||
(save-excursion
|
||||
(org-up-heading)
|
||||
(while (> (org-heading-level) 1)
|
||||
(org-up-heading))
|
||||
(rpgdm-ironsworn-store-character-state stat value)))
|
||||
(org-top-heading)
|
||||
(rpgdm-ironsworn-store-character-temp-state stat value)))
|
||||
|
||||
(defalias 'rpgdm-ironsworn-store-default-character-state
|
||||
'rpgdm-ironsworn-store-character-state)
|
||||
|
||||
(defun rpgdm-ironsworn--property-p (prop)
|
||||
"Given a symbol PROP, return non-nil if it is an ironsworn keyword.
|
||||
|
@ -1175,9 +1218,19 @@ Return 0 if not at a heading, or above first headline."
|
|||
|
||||
(defun org-up-heading ()
|
||||
"Move the point to next parent heading, unless already at the top-level."
|
||||
(if (= 0 (org-heading-level))
|
||||
(org-previous-visible-heading 1)
|
||||
(outline-up-heading 1)))
|
||||
(interactive)
|
||||
(cl-case (org-heading-level)
|
||||
(0 (org-previous-visible-heading 1))
|
||||
(1 nil)
|
||||
(t (outline-up-heading 1))))
|
||||
|
||||
(defun org-top-heading ()
|
||||
"Move the point to the top-most heading in the org document.
|
||||
Note that this is based on the current point position."
|
||||
(interactive)
|
||||
(org-up-heading)
|
||||
(while (> (org-heading-level) 1)
|
||||
(org-up-heading)))
|
||||
|
||||
(defun rpgdm-ironsworn--current-character-state (results)
|
||||
"Recursive helper to insert current header properties in RESULTS.
|
||||
|
|
20
starforged/character/background.org
Normal file
20
starforged/character/background.org
Normal file
|
@ -0,0 +1,20 @@
|
|||
- Battlefield Medic :: Assets: HEALER and VETERAN
|
||||
- Delegate :: Assets: BANNERSWORN and DIPLOMAT
|
||||
- Exobiologist :: Assets: LORE HUNTER and NATURALIST
|
||||
- Far Trader :: Assets: NAVIGATOR and TRADER
|
||||
- Fugitive Hunter :: Assets: ARMORED and BOUNTY HUNTER
|
||||
- Hacker :: Assets: INFILTRATOR and TECH
|
||||
- Hotshot Pilot :: Assets: ACE and NAVIGATOR
|
||||
- Interstellar Scout :: Assets: EXPLORER and VOIDBORN
|
||||
- Monster Hunter :: Assets: GUNNER and SLAYER
|
||||
- Occultist :: Assets: OUTCAST and SHADE
|
||||
- Operative :: Assets: INFILTRATOR and BLADEMASTER
|
||||
- Outlaw :: Assets: FUGITIVE and GUNSLINGER
|
||||
- Private Investigator :: Assets: BRAWLER and SLEUTH
|
||||
- Prophet :: Assets: DEVOTANT and SEER
|
||||
- Psionicist :: Assets: KINETIC and VESTIGE
|
||||
- Smuggler :: Assets: COURIER and SCOUNDREL
|
||||
- Spiritualist :: Assets: HAUNTED and EMPATH
|
||||
- Starship Engineer :: Assets: GEARHEAD and TECH
|
||||
- Supersoldier :: Assets: AUGMENTED and MERCENARY
|
||||
- Tomb Raider :: Assets: SCAVENGER and SCOUNDREL
|
15
starforged/character/backstory.org
Normal file
15
starforged/character/backstory.org
Normal file
|
@ -0,0 +1,15 @@
|
|||
- You abandoned your kin after learning a troubling truth
|
||||
- You are guided by a vision or prophecy
|
||||
- You are haunted by past actions or failures
|
||||
- You are running from a criminal past
|
||||
- You are the sole survivor of an attack or calamity
|
||||
- You escaped an abusive or unjust situation
|
||||
- You have no memory of your former life
|
||||
- You rejected a duty or destiny
|
||||
- You were banished from your former home
|
||||
- You were denied a birthright
|
||||
- You were on your own for as long as you can remember
|
||||
- You were sent away on a prolonged mission
|
||||
- You were taken or lured away by someone
|
||||
- Your ambitions outgrew your humble origins
|
||||
- Your wanderlust carried you far away
|
20
starforged/inciting-incident.org
Normal file
20
starforged/inciting-incident.org
Normal file
|
@ -0,0 +1,20 @@
|
|||
Aid a starship caught in a spacetime fracture.
|
||||
Broker peace between two feuding settlements
|
||||
Chart a new passage between isolated settlements
|
||||
Defend the people of a beleaguered settlement against raiders
|
||||
Discover who sabotaged a settlement’s air processors
|
||||
Escort a tradeship carrying prized cargo
|
||||
Ferry a rescue team to a perilous disaster site
|
||||
Infiltrate a fortified base to steal crucial data
|
||||
Investigate terrifying manifestations at a remote settlement
|
||||
Liberate prisoners at a cruel labor camp
|
||||
Locate a downed spacer on an uninhabited planet
|
||||
Protect a fugitive from a relentless bounty hunter
|
||||
Recover a cherished pre-exodus artifact from an enemy
|
||||
Rescue a starship crew held captive by mutineers
|
||||
Retrieve a cache of stolen weapons from a pirate ship
|
||||
Sabotage an enemy installation
|
||||
Search for a missing expedition in the depths of a precursor vault
|
||||
Shield a wondrous lifeform from those who seek to destroy it
|
||||
Track and slay a marauding beast
|
||||
Transport a displaced people to their new home
|
20
starforged/sector/trouble.org
Normal file
20
starforged/sector/trouble.org
Normal file
|
@ -0,0 +1,20 @@
|
|||
- Blockade prevents trade with other sectors
|
||||
- Bounty hunters search for an infamous fugitive
|
||||
- Chaotic breaches in spacetime spread like wildfire
|
||||
- Criminal faction corrupts local authorities
|
||||
- Devastating superweapon has fallen into the wrong hands
|
||||
- Energy storms are rampant
|
||||
- Magnetic disturbances disrupt communication
|
||||
- Newly found resource lures greedy fortune hunters to the sector
|
||||
- Notorious pirate clan preys on starships
|
||||
- Parasitic lifeforms spread like a plague
|
||||
- Precursor sites throughout the sector emit strange signals
|
||||
- Prophecies foretell an imminent awakening of a dreadful power
|
||||
- Raider clan emerges as a dominant threat under a new leader
|
||||
- Religious zealots overrun the sector
|
||||
- Rogue AI infiltrates systems throughout the sector
|
||||
- Settlements or factions are on the brink of war
|
||||
- Ships regularly go missing
|
||||
- Sickness spreads among ships and settlements
|
||||
- Supernova is imminent
|
||||
- Titanic spaceborne lifeform stalks the spaceways
|
12
starforged/starship/history.org
Normal file
12
starforged/starship/history.org
Normal file
|
@ -0,0 +1,12 @@
|
|||
Acquired in trade for a precious family heirloom
|
||||
Built out of repurposed scrap
|
||||
Claimed as spoils of war
|
||||
Discovered as a derelict, and patched back together
|
||||
Earned in exchange for a promise or vow
|
||||
Found abandoned in perfect condition
|
||||
Granted by an organization or community
|
||||
Inherited from a relative or mentor
|
||||
Purchased at a suspiciously cheap price
|
||||
Stolen from a notorious crime boss or criminal organization
|
||||
Taken while fleeing an attack or disaster
|
||||
Won in a bet
|
20
starforged/starship/looks.org
Normal file
20
starforged/starship/looks.org
Normal file
|
@ -0,0 +1,20 @@
|
|||
- Engine room is scorched with old burn marks
|
||||
- Exterior is marred by rust and grime
|
||||
- Faint, phantom music sometimes echoes through the corridors
|
||||
- Gravity generator is notoriously fickle
|
||||
- Hull is fused with organic growths
|
||||
- Hull rattles and groans in atmospheric flight
|
||||
- Interior spaces are crowded with exposed cables and conduits
|
||||
- Looks defenseless, but exterior panels open to reveal weapons
|
||||
- Navigation logs contain coordinates to locations that do not—or should not—exist
|
||||
- Old bloodstain in the airlock reappears even when painted over
|
||||
- Once a beautiful ship, now scarred by a devastating battle
|
||||
- Patched hull covers a recent catastrophic breach
|
||||
- Placards and control labels are in an uncommon language
|
||||
- Removable plate decks provide access to hidden storage
|
||||
- Segmented landing gear unfold like gangly spider legs
|
||||
- Ship is powered by an ancient precursor device
|
||||
- Someone marked the hull with graffiti during a recent layover
|
||||
- Strange symbols are scrawled on the deck and bulkheads in the main corridor
|
||||
- Things tend to go missing for no logical reason
|
||||
- Timers and clocks are always just a bit off
|
3
starforged/truths/artificial-intelligence.org
Normal file
3
starforged/truths/artificial-intelligence.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
We no longer have access to advanced computer systems. Instead, we must rely on the seers we call Adepts. This is because <<truths/artificial-intelligence/lost-reason>>.
|
||||
The vestiges of advanced machine intelligence are coveted and wielded by those in power. Much of our AI technology was lost in the Exodus. What remains is under the control of powerful organizations and people, and is often wielded as a weapon.
|
||||
Artificial consciousness emerged in the time before the Exodus, and sentient machines live with us here in the Forge.
|
|
@ -0,0 +1,3 @@
|
|||
the energies of the Forge corrupt advanced systems
|
||||
AI was outlawed in the aftermath of the machine wars
|
||||
we have lost the knowledge to create and maintain AI
|
3
starforged/truths/cataclysm.org
Normal file
3
starforged/truths/cataclysm.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
The Sun Plague, caused by <<truths/cataclysm/sun-plague>>, extinguished the stars in our home galaxy.
|
||||
Interdimensional entities (<<truths/cataclysm/interdimensional-entities>>) invaded our reality.
|
||||
We escaped the ravages of a catastrophic war, caused by <<truths/cataclysm/catastrophic-war>>.
|
5
starforged/truths/cataclysm/catastrophic-war.org
Normal file
5
starforged/truths/cataclysm/catastrophic-war.org
Normal file
|
@ -0,0 +1,5 @@
|
|||
artificial intelligence
|
||||
religious zealots
|
||||
genetically engineered soldiers
|
||||
self-replicating nanomachines
|
||||
a tyrannical faction or leader
|
|
@ -0,0 +1,7 @@
|
|||
corrupting biological scourges
|
||||
swarming, animalistic creatures
|
||||
monstrous humanoids
|
||||
spirits of alluring, divine form
|
||||
beings of chaotic energy
|
||||
titanic creatures of horrific power
|
||||
world-eating abominations of unimaginable scale
|
4
starforged/truths/cataclysm/sun-plague.org
Normal file
4
starforged/truths/cataclysm/sun-plague.org
Normal file
|
@ -0,0 +1,4 @@
|
|||
temporal distortions from a supermassive black hole
|
||||
sudden dark matter decay
|
||||
a superweapon run amok
|
||||
a scientific experiment gone awry
|
3
starforged/truths/communication-and-data.org
Normal file
3
starforged/truths/communication-and-data.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Much was lost when we came to the Forge. It is a dark age.
|
||||
Information is life. We rely on spaceborne couriers to transport messages and data across the vast distances between settlements.
|
||||
In settled domains, a network of data hubs called the Weave, allow near-instantaneous communication and data-sharing between ships and outposts. Because of their importance, Weave hubs are often targets for sabotage, and communication blackouts are not uncommon.
|
3
starforged/truths/communities.org
Normal file
3
starforged/truths/communities.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Few survived the journey to the Forge, and we are scattered to the winds in this perilous place.
|
||||
Dangers abound, but there is safety in numbers. Many ships and settlements are united under the banner of one of the Founder Clans.
|
||||
Wehavemadeourmarkinthisgalaxy,buttheenergystorms we call balefires threaten to undo that progress, leaving our communities isolated and vulnerable.
|
3
starforged/truths/exodus.org
Normal file
3
starforged/truths/exodus.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
When the Exodus fleet set off on a ponderous journey to a new home outside our galaxy, they marked the Forge as their destination. Countless generations lived out their lives aboard those titanic ships during the millennia-long passage.
|
||||
A ragtag fleet of ships—propelled at tremendous speeds by experimental FTL drives—carried our ancestors to the Forge. But the technology that powered the ships is said to be the source of the Sundering, a fracturing of reality that plagues us here today.
|
||||
Mysterious alien gates provided instantaneous one-way passage to the Forge. In the midst of the cataclysm, our ancestors found a strange metal pillar on our homeworld’s moon. A map on the surface of this alien relic detailed the deep-space locations of the Iron Gates—massive devices that powered artificial wormholes. With no other options, the Exodus ships fled through the gates and emerged here in the Forge.
|
3
starforged/truths/horrors.org
Normal file
3
starforged/truths/horrors.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Put enough alcohol in a spacer, and they’ll tell you stories of ghost ships crewed by vengeful undead. It’s nonsense. Within the Forge, space and time are as mutable and unstable as a flooding river. When reality can’t be trusted, we are bound to encounter unsettling phenomenon.
|
||||
Most insist that horrors aren’t real. Spacers know the truth. When you travel the depths of the Forge, be wary. Some say we are cursed by those who did not survive the cataclysm, and the veil between life and death is forever weakened.
|
||||
The strange energies of the Forge give unnatural life to the dead. The Soulbinders are an organization sworn to confront these horrifying entities.
|
3
starforged/truths/iron.org
Normal file
3
starforged/truths/iron.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Iron vows are sworn upon the remnants of ships that carried our people to the Forge.
|
||||
Iron vows are sworn upon totems crafted from the enigmatic metal we call black iron.
|
||||
The Ironsworn bind their honor to iron blades.
|
3
starforged/truths/laws.org
Normal file
3
starforged/truths/laws.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Much of the settled domains are a lawless frontier. Criminal factions and corrupt leaders often hold sway.
|
||||
Laws and governance vary across settled domains, but bounty hunters are given wide latitude to pursue their contracts. Their authority is almost universally recognized, and supersedes local laws.
|
||||
Our communities are bound under the terms of the Covenant, a charter established after the Exodus. The organization called the Keepers is sworn to uphold those laws.
|
3
starforged/truths/lifeforms.org
Normal file
3
starforged/truths/lifeforms.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
This is a perilous and often inhospitable galaxy, but life finds a way. Life in the Forge is diverse. Planets are often home to a vast array of creatures.
|
||||
Many sites and planets are infested by dreadful forgespawn. These aberrant creatures threaten to overrun other life in the galaxy.
|
||||
Life in the Forge was seeded and engineered by the Essentia, ancient entities who enact their inscrutable will in this galaxy. The Essentia are the architects of life within the Forge. These omniscient beings are rarely encountered, and have powers and purpose beyond our comprehension. Some worship them. Others resist or rebel against them.
|
3
starforged/truths/magic.org
Normal file
3
starforged/truths/magic.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Magic does not exist.
|
||||
Supernatural powers are wielded by those rare people we call paragons. These powers are born of <<truths/magic/paragons.org>>.
|
||||
Unnatural energies flow through the Forge. Magic and science are two sides of the same coin.
|
5
starforged/truths/magic/paragons.org
Normal file
5
starforged/truths/magic/paragons.org
Normal file
|
@ -0,0 +1,5 @@
|
|||
genetic engineering
|
||||
psychic experimentation
|
||||
evolutionary mutations
|
||||
magitech augmentations
|
||||
ancient knowledge held by secretive orders
|
3
starforged/truths/medicine.org
Normal file
3
starforged/truths/medicine.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Our advanced medical technologies and expertise was lost during the Exodus.
|
||||
To help offset a scarcity of medical supplies and knowledge, the resourceful technicians we call riggers create basic organ and limb replacements.
|
||||
Orders of sworn healers preserve our medical knowledge and train new generations of caregivers.
|
3
starforged/truths/precursors.org
Normal file
3
starforged/truths/precursors.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Over eons, a vast number of civilizations rose and fell within the Forge. Today, the folk we call grubs—scavenger crews and audacious explorers—delve into the mysterious monuments and ruins of those ancient beings. Incomprehensible technologies, inexorable time, and the strange energies of the Forge have corrupted the vaults of the precursors. Despite the perils, grubs scour those places for useful resources and discoveries.
|
||||
The Ascendancy, an advanced spacefaring empire, once ruled the entirety of the Forge. Vaults of inscrutable purpose are all that remain to mark the Ascendancy’s legacy, but those places are untethered from our own reality. Ascendancy vaults can appear spontaneously, washed up like flotsam in the tides of time. Their gravity and atmospheres pay no heed to natural laws. Some are corrupted and ruined. Others are unmarred and intact. Some are both at once. They are chaos.
|
||||
The biomechanical lifeforms we call the Remnants, engineered by civilizations as weapons in a cataclysmic war, survived the death of their creators. On scarred planets and within precursor vaults throughout the Forge, the Remnants still guard ancient secrets and fight unending wars.
|
3
starforged/truths/religion.org
Normal file
3
starforged/truths/religion.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Our gods failed us. We left them behind. Most now see religion as a useless relic of our past, but many are all-too-willing to follow a charismatic leader who claims to offer a better way.
|
||||
Our faith is as diverse as our people.
|
||||
Three dominant religious orders, the Triumvirate, battle for influence and power within the Forge.
|
3
starforged/truths/war.org
Normal file
3
starforged/truths/war.org
Normal file
|
@ -0,0 +1,3 @@
|
|||
Here in the Forge, resources are too precious to support organized fighting forces or advanced weaponry.
|
||||
Professional soldiers defend or expand the holdings of those who are able to pay. The rest of us are on our own.
|
||||
War never ends. Talented weaponsmiths and shipwrights craft deadly, high-tech tools of destruction. Dominant factions wield mighty fleets and battle-hardened troops.
|
|
@ -104,3 +104,205 @@
|
|||
- Uphold
|
||||
- Weaken
|
||||
- Withdraw
|
||||
|
||||
- Terrorize
|
||||
- Vanquish
|
||||
- Modify
|
||||
- Eclipse
|
||||
- Splinter
|
||||
- Extinguish
|
||||
- Compel
|
||||
- Ignite
|
||||
- Transfigure
|
||||
- Embrace
|
||||
- Govern
|
||||
- Discern
|
||||
- Subdue
|
||||
- Purge
|
||||
- Dominate
|
||||
- Humiliate
|
||||
- Immolate
|
||||
- Deceive
|
||||
- Shame
|
||||
- Demolish
|
||||
- Revitalize
|
||||
- Deviate
|
||||
- Deposit
|
||||
- Embellish
|
||||
- Scatter
|
||||
- Ambush
|
||||
- Ban
|
||||
- Spawn
|
||||
- Consecrate
|
||||
- Design
|
||||
- Amplify
|
||||
- Expand
|
||||
- Order
|
||||
- Position
|
||||
- Revile
|
||||
- Engulf
|
||||
- Coalesce
|
||||
- Poison
|
||||
- Dismantle
|
||||
- Infuse
|
||||
- Intertwine
|
||||
- Engender
|
||||
- Forgive
|
||||
- Plunder
|
||||
- Contaminate
|
||||
- Insult
|
||||
- Amend
|
||||
- Emanate
|
||||
- Grieve
|
||||
- Grapple
|
||||
- Veil
|
||||
- Shepherd
|
||||
- Implant
|
||||
- Violate
|
||||
- Strangle
|
||||
- Magnify
|
||||
- Assail
|
||||
- Conceal
|
||||
- Fracture
|
||||
- Harden
|
||||
- Imbue
|
||||
- Isolate
|
||||
- Sculpt
|
||||
- Refresh
|
||||
- Steer
|
||||
- Emit
|
||||
- Stifle
|
||||
- Mutate
|
||||
- Alter
|
||||
- Dissolve
|
||||
- Grow
|
||||
- Unravel
|
||||
- Deteriorate
|
||||
- Condemn
|
||||
- Incite
|
||||
- Conquer
|
||||
- Absorb
|
||||
- Echo
|
||||
- Resolve
|
||||
- Elude
|
||||
- Juxtapose
|
||||
- Rush
|
||||
- Reconfigure
|
||||
- Probe
|
||||
- Instruct
|
||||
- Guide
|
||||
- Repulse
|
||||
- Deter
|
||||
- Overcome
|
||||
- Devour
|
||||
- Arrest
|
||||
- Fuse
|
||||
- Bleed
|
||||
- Ruin
|
||||
- Raise
|
||||
- Twist
|
||||
- Exacerbate
|
||||
- Infringe
|
||||
- Corrode
|
||||
- Atone
|
||||
|
||||
- Reap
|
||||
- Reposition
|
||||
- Unveil
|
||||
- Assert
|
||||
- Insulate
|
||||
- Unearth
|
||||
- Build
|
||||
- Discover
|
||||
- Mystify
|
||||
- Sabotage
|
||||
- Rend
|
||||
- Devastate
|
||||
- Dissect
|
||||
- Batter
|
||||
- Augment
|
||||
- Empower
|
||||
- Defuse
|
||||
- Repel
|
||||
- Untangle
|
||||
- Obtain
|
||||
- Hinder
|
||||
- Stretch
|
||||
- Boost
|
||||
- Nurture
|
||||
- Catch
|
||||
- Ambush
|
||||
- Desecrate
|
||||
- Bury
|
||||
- Contort
|
||||
- Steal
|
||||
- Inhibit
|
||||
- Drain
|
||||
- Struggle
|
||||
- Provoke
|
||||
- Impart
|
||||
- Reconnect
|
||||
- Shake
|
||||
- Excavate
|
||||
- Choke
|
||||
- Crush
|
||||
- Shatter
|
||||
- Illuminate
|
||||
- Ensnare
|
||||
- Diminish
|
||||
- Imitate
|
||||
- Refine
|
||||
- Weave
|
||||
- Forge
|
||||
- Sustain
|
||||
- Expel
|
||||
- Consume
|
||||
- Wreck
|
||||
- Lead
|
||||
- Amass
|
||||
- Climb
|
||||
- Revere
|
||||
- Pollute
|
||||
- Stalk
|
||||
- Disrupt
|
||||
- Entice
|
||||
- Oppress
|
||||
- Smite
|
||||
- Ravage
|
||||
- Starve
|
||||
- Affirm
|
||||
- Reconcile
|
||||
- Soften
|
||||
- Restrain
|
||||
- Expose
|
||||
- Commune
|
||||
- Blame
|
||||
- Revoke
|
||||
- Extract
|
||||
- Smother
|
||||
- Obscure
|
||||
- Advise
|
||||
- Evoke
|
||||
- Strike
|
||||
- Kindle
|
||||
- Subvert
|
||||
- Forbid
|
||||
- Sever
|
||||
- Suffocate
|
||||
- Corrupt
|
||||
- Retreat
|
||||
- Detect
|
||||
- Spurn
|
||||
- Prune
|
||||
- Pierce
|
||||
- Race
|
||||
- Enlarge
|
||||
- Frighten
|
||||
- Fight
|
||||
- Wrest
|
||||
- Strain
|
||||
- Embolden
|
||||
- Erode
|
||||
- Winnow
|
||||
- Coerce
|
||||
- Awaken
|
||||
|
|
8
tables/background.org
Normal file
8
tables/background.org
Normal file
|
@ -0,0 +1,8 @@
|
|||
# Taken from SpiderSandals on the Ironsworn Discord
|
||||
# https://drive.google.com/file/d/1P3v-WkMYEo00ZYbPOVLGTtMaLSH-RACT/view?usp=drivesdk
|
||||
|
||||
- <<background/story>> <<background/fulcrum>>
|
||||
- <<background/nature>> <<background/fulcrum>>
|
||||
- <<background/deed>> <<background/fulcrum>>
|
||||
- <<background/deed>> <<background/story>> <<background/fulcrum>>
|
||||
- <<background/deed>> <<background/hinge>> <<background/story>> <<background/fulcrum>>
|
21
tables/background/deed.org
Normal file
21
tables/background/deed.org
Normal file
|
@ -0,0 +1,21 @@
|
|||
|
||||
- abandoned
|
||||
- betrayed
|
||||
- continued
|
||||
- defended
|
||||
- ended
|
||||
- endured
|
||||
- escaped
|
||||
- felled
|
||||
- fought
|
||||
- found
|
||||
- kept
|
||||
- left
|
||||
- protected
|
||||
- restored
|
||||
- sought
|
||||
- suffered
|
||||
- supported
|
||||
- wasted
|
||||
- witheld
|
||||
- withstood
|
26
tables/background/fulcrum.org
Normal file
26
tables/background/fulcrum.org
Normal file
|
@ -0,0 +1,26 @@
|
|||
|
||||
- community
|
||||
- companion
|
||||
- conflict
|
||||
- family
|
||||
- glory
|
||||
- history
|
||||
- home
|
||||
- joy
|
||||
- land
|
||||
- leader
|
||||
- legacy
|
||||
- liege
|
||||
- obligation
|
||||
- pain
|
||||
- path
|
||||
- poverty
|
||||
- purpose
|
||||
- quest
|
||||
- revelation
|
||||
- rival
|
||||
- struggle
|
||||
- treasure
|
||||
- truth
|
||||
- vengeance
|
||||
- wealth
|
6
tables/background/hinge.org
Normal file
6
tables/background/hinge.org
Normal file
|
@ -0,0 +1,6 @@
|
|||
|
||||
- with
|
||||
- for
|
||||
- by
|
||||
- without
|
||||
- against
|
11
tables/background/nature.org
Normal file
11
tables/background/nature.org
Normal file
|
@ -0,0 +1,11 @@
|
|||
|
||||
- needs
|
||||
- wants
|
||||
- desires
|
||||
- longs for
|
||||
- hates
|
||||
- loves
|
||||
- fears
|
||||
- lacks
|
||||
- avoids
|
||||
- despises
|
25
tables/background/story.org
Normal file
25
tables/background/story.org
Normal file
|
@ -0,0 +1,25 @@
|
|||
|
||||
- altered
|
||||
- angered
|
||||
- beloved
|
||||
- cold
|
||||
- destroyed
|
||||
- divine
|
||||
- failed
|
||||
- fallen
|
||||
- feared
|
||||
- fierce
|
||||
- final
|
||||
- fleeting
|
||||
- forgotten
|
||||
- hated
|
||||
- lost
|
||||
- magical
|
||||
- mysterious
|
||||
- necessary
|
||||
- negligent
|
||||
- new
|
||||
- old
|
||||
- past
|
||||
- taken
|
||||
- unknown
|
40
tables/character/__information-topic.org
Normal file
40
tables/character/__information-topic.org
Normal file
|
@ -0,0 +1,40 @@
|
|||
#+title: Topics of Information
|
||||
#+author: Howard X. Abrams
|
||||
#+email: howard.abrams@gmail.com
|
||||
#+date: 2024-08-31 August
|
||||
#+tags: rpg ironsworn
|
||||
|
||||
an enemy spy
|
||||
an enemy servant
|
||||
an enemy leader
|
||||
an enemy stronghold
|
||||
a secret enemy hideout
|
||||
a safe location for the PCs
|
||||
a dangerous location for the PCs
|
||||
an enemy who is now an ally
|
||||
a traitor to the PCs
|
||||
an enemy's current plan
|
||||
an enemy's future plan
|
||||
a necessary artifact for fulfilling a vow
|
||||
a benefactor for the PCs
|
||||
a distant location
|
||||
the current setting
|
||||
a main antagonist
|
||||
a beloved NPC
|
||||
a combative NPC
|
||||
a single PC
|
||||
the PCs as a whole
|
||||
a despised NPC
|
||||
a necessary object to complete a vow
|
||||
the road or passage to the next location
|
||||
a special status for a PC
|
||||
a special status for an NPC
|
||||
a special status for a main antagonist
|
||||
the current short-term goal
|
||||
a group supportive to the PCs
|
||||
an extreme or epic vow
|
||||
a person with vital information about a formidable or lower vow
|
||||
an oppositional group that is not a main antagonist
|
||||
a person with vital information about an extreme or epic vow
|
||||
a previously unknown character connected to the plot
|
||||
a foundational truth of the world
|
40
tables/character/__information-type.org
Normal file
40
tables/character/__information-type.org
Normal file
|
@ -0,0 +1,40 @@
|
|||
#+title: Type of Information
|
||||
#+author: Howard X. Abrams
|
||||
#+email: howard.abrams@gmail.com
|
||||
#+date: 2024-08-31 August
|
||||
#+tags: rpg ironsworn
|
||||
|
||||
The location of
|
||||
The identity of
|
||||
Positive news about
|
||||
Negative news about
|
||||
A positive change in
|
||||
A negative change in
|
||||
A connection between an NPC and
|
||||
A connection between a PC and
|
||||
A connection between an antagonist and
|
||||
A significant insight related to
|
||||
Historical/background knowledge about
|
||||
An ambush concerning
|
||||
An alteration of
|
||||
A physical loss involving
|
||||
A mental loss involving
|
||||
An emotional loss involving
|
||||
A spiritual loss involving
|
||||
A financial loss involving
|
||||
The loss of an ability involving
|
||||
The loss of authority involving
|
||||
A material loss involving
|
||||
A loss of influence involving
|
||||
A loss of opportunity involving
|
||||
A physical boon involving
|
||||
A mental boon involving
|
||||
An emotional boon involving
|
||||
A spiritual boon involving
|
||||
A financial boon involving
|
||||
The acquisition of an ability involving
|
||||
The acquisition of authority involving
|
||||
A material boon involving
|
||||
A gain in influence involving
|
||||
An additional opportunity involving
|
||||
The truth is the exact opposite of what the PCs thought about
|
|
@ -54,3 +54,103 @@
|
|||
- Tracking
|
||||
- Tricking
|
||||
- Inspecting
|
||||
- Forging
|
||||
- Persevering
|
||||
- Singing
|
||||
- Carousing
|
||||
- Evading
|
||||
- Chopping
|
||||
- Navigating
|
||||
- Prowling
|
||||
- Traveling
|
||||
- Encouraging
|
||||
- Working
|
||||
- Disarming
|
||||
- Fishing
|
||||
- Chasing
|
||||
- Scavenging
|
||||
- Healing
|
||||
- Foraging
|
||||
- Meditating
|
||||
- Swimming
|
||||
- Challenging
|
||||
- Mining
|
||||
- Trading
|
||||
- Bickering
|
||||
- Sabotaging
|
||||
- Spying
|
||||
- Directing
|
||||
- Writing
|
||||
- Deceiving
|
||||
- Setting traps
|
||||
- Fording
|
||||
- Smuggling
|
||||
- Sniping
|
||||
- Engaging
|
||||
- Stowing
|
||||
- Building
|
||||
- Plotting
|
||||
- Stalking
|
||||
- Imprisoning
|
||||
- Advising
|
||||
- Infiltrating
|
||||
- Scheming
|
||||
- Climbing
|
||||
- Seeking
|
||||
- Inventing
|
||||
- Training
|
||||
- Consulting
|
||||
- Lockpicking
|
||||
- Shielding
|
||||
- Striking
|
||||
- Smoking
|
||||
- Crafting
|
||||
- Intimidating
|
||||
- Burning
|
||||
- Scaring
|
||||
- Encircling
|
||||
- Offering
|
||||
- Pursuing
|
||||
- Reaping
|
||||
- Questioning
|
||||
- Slaying
|
||||
- Running
|
||||
- Fortifying
|
||||
- Carrying
|
||||
- Rebuilding
|
||||
- Revolting
|
||||
- Feasting
|
||||
- Gossiping
|
||||
- Roaming
|
||||
- Looting
|
||||
- Pilgriming
|
||||
- Clashing
|
||||
- Scouting
|
||||
- Rescuing
|
||||
- Drinking
|
||||
- Celebrating
|
||||
- Disguising
|
||||
- Taking refuge
|
||||
- Complaining
|
||||
- Harvesting
|
||||
- Ravaging
|
||||
- Dancing
|
||||
- Sparring
|
||||
- Carving
|
||||
- Listening
|
||||
- Disobeying
|
||||
- Camping
|
||||
- Negotiating
|
||||
- Digging
|
||||
- Breaking
|
||||
- Haggling
|
||||
- Mapping
|
||||
- Escaping
|
||||
- Protecting
|
||||
- Fending off
|
||||
- Stealing
|
||||
- Pilfering
|
||||
- Chanting
|
||||
- Taming
|
||||
- Grappling
|
||||
- Investigating
|
||||
|
|
66
tables/character/conversation-topic.org
Normal file
66
tables/character/conversation-topic.org
Normal file
|
@ -0,0 +1,66 @@
|
|||
#+title: Conversation Topics for an NPC
|
||||
#+author: Howard X. Abrams
|
||||
#+email: howard.abrams@gmail.com
|
||||
#+date: 2024-08-31 August
|
||||
#+tags: rpg ironsworn
|
||||
|
||||
Their own heritage
|
||||
The heritage of a PC
|
||||
The heritage of an NPC
|
||||
A source of wealth
|
||||
The distribution of wealth
|
||||
Where the power lies
|
||||
Local warbands
|
||||
Powerful people
|
||||
Ingenious or outlandish ideas
|
||||
Items of importance
|
||||
Legends of relics
|
||||
Legends of heroic deeds
|
||||
Famous people
|
||||
Famous places
|
||||
The quickest way to fame
|
||||
How to curry favor
|
||||
Shifting political alliances
|
||||
Useful contacts
|
||||
A significant death
|
||||
The culture of the community
|
||||
The future of the community
|
||||
The heritage of the community
|
||||
The value of experience
|
||||
The most valuable experiences
|
||||
Rumors of a PC's past
|
||||
Rumors of an NPC's past
|
||||
Important social connections
|
||||
New life
|
||||
The current leadership
|
||||
Important political connections
|
||||
Recent political changes
|
||||
A specific location
|
||||
General knowledge of a region
|
||||
The acquisition of knowledge
|
||||
Current events
|
||||
Upcoming events
|
||||
A personal injury
|
||||
Their own failures
|
||||
The failures of a PC
|
||||
The failures of an NPC
|
||||
A recent change in their own family
|
||||
Reported sightings of the firstborn
|
||||
A recent change in the family of an NPC
|
||||
Information that has recently been lost
|
||||
Information that was lost when coming from the Old World
|
||||
Information that has recently been discovered
|
||||
A PC secret that has been made known
|
||||
An enemy secret that has been made known
|
||||
Gossip about shamed Ironlanders and forsaken vows
|
||||
Why the leadership needs to change
|
||||
History from before the Ironlanders
|
||||
Particular skills of a trade or craft
|
||||
Particular equipment of a trade or craft
|
||||
Common knowledge about an enemy
|
||||
Small jobs or quests that need to be done
|
||||
A recent inaction and the consequences
|
||||
Difficulties in settling the Ironlands
|
||||
The decline of the Old World as told to them in childhood
|
||||
A minor plot point involving an iron vow
|
||||
A major plot point involving an iron vow
|
|
@ -104,3 +104,203 @@
|
|||
- Wise
|
||||
- Wounded
|
||||
- Young
|
||||
- Charismatic
|
||||
- Gullible
|
||||
- Touchy
|
||||
- Passionate
|
||||
- Superficial
|
||||
- Sad
|
||||
- Scary
|
||||
- Courageous
|
||||
- Contrary
|
||||
- Calm
|
||||
- Easily impressed
|
||||
- Overcritical
|
||||
- Obstinate
|
||||
- Squeamish
|
||||
- Organized
|
||||
- Straightforward
|
||||
- Alert
|
||||
- Hard working
|
||||
- Nice
|
||||
- Lost in the past
|
||||
- Discreet
|
||||
- Fickle
|
||||
- Reactionary
|
||||
- Understanding
|
||||
- Sarcastic
|
||||
- Cold-hearted
|
||||
- Tough
|
||||
- Gregarious
|
||||
- Fixated
|
||||
- Reserved
|
||||
- Romantic
|
||||
- Miserly
|
||||
- Eager to please
|
||||
- Ill-tempered
|
||||
- Practical
|
||||
- Meddlesome
|
||||
- Sincere
|
||||
- Nervous
|
||||
- Curious
|
||||
- Compulsive
|
||||
- Patient
|
||||
- Clumsy
|
||||
- Calculating
|
||||
- Addicted
|
||||
- Liberal
|
||||
- Helpful
|
||||
- Prejudiced
|
||||
- Witty
|
||||
- Thoughtless
|
||||
- Reckless
|
||||
- Sympathetic
|
||||
- Shy
|
||||
- Meek
|
||||
- Plucky
|
||||
- Vain
|
||||
- Creepy
|
||||
- Belligerent
|
||||
- Irresponsible
|
||||
- Fearless
|
||||
- Dogmatic
|
||||
- Trustworthy
|
||||
- Zealous
|
||||
- Foolhardy
|
||||
- Sensitive
|
||||
- Thoughtful
|
||||
- Persistent
|
||||
- Tidy
|
||||
- Rude
|
||||
- Erratic
|
||||
- Gossipy
|
||||
- Flirtatious
|
||||
- Pragmatic
|
||||
- Vicious
|
||||
- Frank
|
||||
- Brusque
|
||||
- Mean
|
||||
- Bothersome
|
||||
- Quick-witted
|
||||
- Arrogant
|
||||
- Cynical
|
||||
- Affable
|
||||
- Abrupt
|
||||
- Unorganized
|
||||
- Clinging
|
||||
- Pious
|
||||
- Rational
|
||||
- Warm-hearted
|
||||
- Sleepy
|
||||
- Intelligent
|
||||
- Reliable
|
||||
- Pompous
|
||||
- Faithful
|
||||
- Impulsive
|
||||
- Emotional
|
||||
- Patronizing
|
||||
- Sneaky
|
||||
- Dramatic
|
||||
- Eccentric
|
||||
- Harsh
|
||||
- Nosy
|
||||
- Grief-stricken
|
||||
- Cocky
|
||||
- Untrustworthy
|
||||
- Moody
|
||||
- Inflexible
|
||||
- Impatient
|
||||
- Pessimistic
|
||||
- Sensible
|
||||
- Compassionate
|
||||
- Forceful
|
||||
- Frugal
|
||||
- Open-minded
|
||||
- Quarrelsome
|
||||
- Faithless
|
||||
- Tired
|
||||
- Assertive
|
||||
- Superstitious
|
||||
- Vindictive
|
||||
- Self-centered
|
||||
- Resentful
|
||||
- Weak-willed
|
||||
- Morose
|
||||
- Indecisive
|
||||
- Happy
|
||||
- Loving
|
||||
- Pontificating
|
||||
- Inconsiderate
|
||||
- Boring
|
||||
- Closed-minded
|
||||
- Decisive
|
||||
- Bashful
|
||||
- Carefree
|
||||
- Ruthless
|
||||
- Boastful
|
||||
- Amusing
|
||||
- Funny
|
||||
- Insane
|
||||
- Adaptable
|
||||
- Diligent
|
||||
- Blunt
|
||||
- Short-tempered
|
||||
- Disloyal
|
||||
- Energetic
|
||||
- Humble
|
||||
- Courteous
|
||||
- Communicative
|
||||
- Unreliable
|
||||
- Sickening
|
||||
- Conscientious
|
||||
- Immoral
|
||||
- Modest
|
||||
- Chaotic
|
||||
- Indiscreet
|
||||
- Dishonest
|
||||
- Amicable
|
||||
- Cantankerous
|
||||
- Unkind
|
||||
- Considerate
|
||||
- Unpredictable
|
||||
- Judgmental
|
||||
- Possessive
|
||||
- Civil
|
||||
- Lazy
|
||||
- Complacent
|
||||
- Forthcoming
|
||||
- Prideful
|
||||
- Awestruck
|
||||
- Devout
|
||||
- Narcissistic
|
||||
- Optimistic
|
||||
- Paranoid
|
||||
- Flexible
|
||||
- Unassuming
|
||||
- Childish
|
||||
- Ignorant
|
||||
- Polite
|
||||
- Fanatical
|
||||
- Grumpy
|
||||
- Mysterious
|
||||
- Finicky
|
||||
- Immature
|
||||
- Competent
|
||||
- Tacky
|
||||
- Absent-minded
|
||||
- Secretive
|
||||
- Depressing
|
||||
- Tactless
|
||||
- Easygoing
|
||||
- Spoiled
|
||||
- Deadly
|
||||
- Terrifying
|
||||
- Benevolent
|
||||
- Pro-active
|
||||
- Conservative
|
||||
- Naive
|
||||
- Gentle
|
||||
- Impartial
|
||||
- Boisterous
|
||||
- Callous
|
||||
- Diplomatic
|
||||
|
|
|
@ -16,3 +16,27 @@
|
|||
- Unfriendly
|
||||
- Threatening
|
||||
- Hostile
|
||||
- Joyful
|
||||
- Excited
|
||||
- Agreeable
|
||||
- Introspective
|
||||
- Bored
|
||||
- Guarded
|
||||
- Veiled
|
||||
- Needy
|
||||
- Grateful
|
||||
- Optimistic
|
||||
- Interested
|
||||
- Distracted
|
||||
- Fearful
|
||||
- Derisive
|
||||
- Disgusted
|
||||
- Hateful
|
||||
- Confused
|
||||
- Annoyed
|
||||
- Obfuscating
|
||||
- Bitter
|
||||
- Nervous
|
||||
- Angry
|
||||
- Disapproving
|
||||
- Combative
|
||||
|
|
|
@ -4,37 +4,103 @@
|
|||
#+DATE: 2021-12-26 December
|
||||
#+TAGS: rpg ironsworn
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-3 | Obtain an object |
|
||||
| 4-6 | Make an agreement |
|
||||
| 7-9 | Build a relationship |
|
||||
| 10-12 | Undermine a relationship |
|
||||
| 13-15 | Seek a truth |
|
||||
| 16-18 | Pay a debt |
|
||||
| 19-21 | Refute a falsehood |
|
||||
| 22-24 | Harm a rival |
|
||||
| 25-27 | Cure an ill |
|
||||
| 28-30 | Find a person |
|
||||
| 31-33 | Find a home |
|
||||
| 34-36 | Seize power |
|
||||
| 37-39 | Restore a relationship |
|
||||
| 40-42 | Create an item |
|
||||
| 43-45 | Travel to a place |
|
||||
| 46-48 | Secure provisions |
|
||||
| 49-51 | Rebel against power |
|
||||
| 52-54 | Collect a debt |
|
||||
| 55-57 | Protect a secret |
|
||||
| 58-60 | Spread faith |
|
||||
| 61-63 | Enrich themselves |
|
||||
| 64-66 | Protect a person |
|
||||
| 67-69 | Protect the status quo |
|
||||
| 70-72 | Advance status |
|
||||
| 73-75 | Defend a place |
|
||||
| 76-78 | Avenge a wrong |
|
||||
| 79-81 | Fulfill a duty |
|
||||
| 82-84 | Gain knowledge |
|
||||
| 85-87 | Prove worthiness |
|
||||
| 88-90 | Find redemption |
|
||||
| 91-92 | Escape from something |
|
||||
| 93-95 | Resolve a dispute |
|
||||
| 96-100 | Roll twice |
|
||||
Roll on Table: d300
|
||||
| 1-3 | Obtain an object |
|
||||
| 4-6 | Make an agreement |
|
||||
| 7-9 | Build a relationship |
|
||||
| 10-12 | Undermine a relationship |
|
||||
| 13-15 | Seek a truth |
|
||||
| 16-18 | Pay a debt |
|
||||
| 19-21 | Refute a falsehood |
|
||||
| 22-24 | Harm a rival |
|
||||
| 25-27 | Cure an ill |
|
||||
| 28-30 | Find a person |
|
||||
| 31-33 | Find a home |
|
||||
| 34-36 | Seize power |
|
||||
| 37-39 | Restore a relationship |
|
||||
| 40-42 | Create an item |
|
||||
| 43-45 | Travel to a place |
|
||||
| 46-48 | Secure provisions |
|
||||
| 49-51 | Rebel against power |
|
||||
| 52-54 | Collect a debt |
|
||||
| 55-57 | Protect a secret |
|
||||
| 58-60 | Spread faith |
|
||||
| 61-63 | Enrich themselves |
|
||||
| 64-66 | Protect a person |
|
||||
| 67-69 | Protect the status quo |
|
||||
| 70-72 | Advance status |
|
||||
| 73-75 | Defend a place |
|
||||
| 76-78 | Avenge a wrong |
|
||||
| 79-81 | Fulfill a duty |
|
||||
| 82-84 | Gain knowledge |
|
||||
| 85-87 | Prove worthiness |
|
||||
| 88-90 | Find redemption |
|
||||
| 91-92 | Escape from something |
|
||||
| 93-95 | Resolve a dispute |
|
||||
| 96-100 | Contact dead ancestor |
|
||||
| 101-103 | Bring law and order |
|
||||
| 104-106 | Protect the innocent |
|
||||
| 107-109 | Feel personal accomplishment |
|
||||
| 110-112 | Rescue a person |
|
||||
| 113-115 | Get revenge |
|
||||
| 116-118 | Gain fame and glory |
|
||||
| 119-121 | Acquire riches |
|
||||
| 122-124 | Find unique artifacts |
|
||||
| 125-127 | Deepen mystic power |
|
||||
| 128-130 | Fight the good fight |
|
||||
| 131-133 | Explore and discover |
|
||||
| 134-136 | Advance a settlement |
|
||||
| 137-139 | Unite settlements |
|
||||
| 140-142 | Leave their mark |
|
||||
| 143-145 | Personal development |
|
||||
| 146-148 | Have food to eat |
|
||||
| 149-151 | Live in relative luxury |
|
||||
| 152-154 | Serve others |
|
||||
| 155-157 | Bring forth justice |
|
||||
| 158-160 | Advance religion |
|
||||
| 161-163 | Make many small impacts |
|
||||
| 164-166 | Build a better life |
|
||||
| 167-169 | Collect unique art |
|
||||
| 170-172 | Gain power and influence |
|
||||
| 173-175 | Solve ancient mystery |
|
||||
| 176-178 | Find safe place to live |
|
||||
| 179-181 | Gain followers |
|
||||
| 182-184 | Become an overseer |
|
||||
| 185-187 | Be loved by all |
|
||||
| 188-190 | Cure disease |
|
||||
| 191-192 | Slay a creature |
|
||||
| 193-195 | Bring balance |
|
||||
| 196-200 | Roll twice |
|
||||
| 201-203 | Hedonism |
|
||||
| 204-206 | Feed an addiction |
|
||||
| 207-209 | Discover the truth of their past |
|
||||
| 210-212 | Raise a family |
|
||||
| 213-215 | Help the helpless |
|
||||
| 216-218 | Learn of the Old World |
|
||||
| 219-221 | Make contact with firstborn |
|
||||
| 222-224 | Voice for the voiceless |
|
||||
| 225-227 | Raise others from poverty |
|
||||
| 228-230 | Survive the winter |
|
||||
| 231-233 | Seek wisdom and knowledge |
|
||||
| 234-236 | Change the system |
|
||||
| 237-239 | Destroy an item |
|
||||
| 240-242 | Defeat a foe |
|
||||
| 243-245 | Find a soulmate |
|
||||
| 246-248 | Be the best |
|
||||
| 249-251 | Teach others |
|
||||
| 252-254 | Avoid ridicule |
|
||||
| 255-257 | Be a hero |
|
||||
| 258-260 | Be left alone |
|
||||
| 261-263 | Stay true to friends and family |
|
||||
| 264-266 | Liberate those in bondage |
|
||||
| 267-269 | Bring order to chaos |
|
||||
| 270-272 | Win affection |
|
||||
| 273-275 | Achieve moral perfection |
|
||||
| 276-278 | Defeat romantic rival |
|
||||
| 279-281 | Achieve spiritual enlightenment |
|
||||
| 282-284 | Find settlement resources |
|
||||
| 285-287 | Oppress others |
|
||||
| 288-290 | Seek forgiveness |
|
||||
| 291-292 | Scheme machinations |
|
||||
| 293-295 | Serve the rightful ruler |
|
||||
| 296-200 | Roll twice |
|
||||
|
|
9
tables/character/has-information.org
Normal file
9
tables/character/has-information.org
Normal file
|
@ -0,0 +1,9 @@
|
|||
#+title: Information an NPC may have
|
||||
#+author: Howard X. Abrams
|
||||
#+email: howard.abrams@gmail.com
|
||||
#+date: 2024-08-31 August
|
||||
#+tags: rpg ironsworn
|
||||
|
||||
Roll on Table: d10
|
||||
| 1-7 | <<character/__information-type>> <<character/__information-topic>> |
|
||||
| 8-10 | Doesn’t have any information |
|
|
@ -4,34 +4,94 @@
|
|||
#+DATE: 2021-12-26 December
|
||||
#+TAGS: rpg ironsworn
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-2 | Criminal |
|
||||
| 3-4 | Healer |
|
||||
| 5-6 | Bandit |
|
||||
| 7-9 | Guide |
|
||||
| 10-12 | Performer |
|
||||
| 13-15 | Miner |
|
||||
| 16-18 | Mercenary |
|
||||
| 19-21 | Outcast |
|
||||
| 22-24 | Vagrant |
|
||||
| 25-27 | Forester |
|
||||
| 28-30 | Traveler |
|
||||
| 31-33 | Mystic |
|
||||
| 34-36 | Priest |
|
||||
| 37-39 | Sailor |
|
||||
| 40-42 | Pilgrim |
|
||||
| 43-45 | Thief |
|
||||
| 46-48 | Adventurer |
|
||||
| 49-51 | Forager |
|
||||
| 52-54 | Leader |
|
||||
| 55-58 | Guard |
|
||||
| 59-62 | Artisan |
|
||||
| 63-66 | Scout |
|
||||
| 67-70 | Herder |
|
||||
| 71-74 | Fisher |
|
||||
| 75-79 | Warrior |
|
||||
| 80-84 | Hunter |
|
||||
| 85-89 | Raider |
|
||||
| 90-94 | Trader |
|
||||
| 95-99 | Farmer |
|
||||
| 100 | Unusual role |
|
||||
Roll on Table: d300
|
||||
| 1-2 | Criminal |
|
||||
| 3-4 | Healer |
|
||||
| 5-6 | Bandit |
|
||||
| 7-9 | Guide |
|
||||
| 10-12 | Performer |
|
||||
| 13-15 | Miner |
|
||||
| 16-18 | Mercenary |
|
||||
| 19-21 | Outcast |
|
||||
| 22-24 | Vagrant |
|
||||
| 25-27 | Forester |
|
||||
| 28-30 | Traveler |
|
||||
| 31-33 | Mystic |
|
||||
| 34-36 | Priest |
|
||||
| 37-39 | Sailor |
|
||||
| 40-42 | Pilgrim |
|
||||
| 43-45 | Thief |
|
||||
| 46-48 | Adventurer |
|
||||
| 49-51 | Forager |
|
||||
| 52-54 | Leader |
|
||||
| 55-58 | Guard |
|
||||
| 59-62 | Artisan |
|
||||
| 63-66 | Scout |
|
||||
| 67-70 | Herder |
|
||||
| 71-74 | Fisher |
|
||||
| 75-79 | Warrior |
|
||||
| 80-84 | Hunter |
|
||||
| 85-89 | Raider |
|
||||
| 90-94 | Trader |
|
||||
| 95-99 | Farmer |
|
||||
| 100 | Unusual role |
|
||||
| 101-102 | Alchemist |
|
||||
| 130-104 | Historian |
|
||||
| 150-106 | Scribe |
|
||||
| 170-109 | Baker |
|
||||
| 110-112 | Minstrel |
|
||||
| 113-115 | Apothecary |
|
||||
| 116-118 | Chandler |
|
||||
| 119-121 | Rope Maker |
|
||||
| 122-124 | Acolyte |
|
||||
| 125-127 | Clergy |
|
||||
| 128-130 | Cooper |
|
||||
| 131-133 | Equine Trainer |
|
||||
| 134-136 | Falconer |
|
||||
| 137-139 | Farrier |
|
||||
| 140-142 | [Bowyer/Fletcher] |
|
||||
| 143-145 | Messenger |
|
||||
| 146-148 | Herbalist |
|
||||
| 149-151 | Brewer |
|
||||
| 152-154 | Animal Healer |
|
||||
| 155-158 | Shipwright |
|
||||
| 159-162 | Mason |
|
||||
| 163-166 | Shaman |
|
||||
| 167-170 | Midwife |
|
||||
| 171-174 | Fur Trader |
|
||||
| 175-179 | Livestock Farmer |
|
||||
| 180-184 | Carpenter |
|
||||
| 185-189 | Blacksmith |
|
||||
| 190-194 | Shepherd |
|
||||
| 195-199 | Tanner |
|
||||
| 200 | Unusual |
|
||||
| 201-202 | Cobbler |
|
||||
| 230-204 | Explorer |
|
||||
| 250-206 | Paper Maker |
|
||||
| 270-209 | Book Binder |
|
||||
| 210-212 | Thatcher |
|
||||
| 213-215 | Tinkerer |
|
||||
| 216-218 | Soldier |
|
||||
| 219-221 | Stable Hand |
|
||||
| 222-224 | Tutor |
|
||||
| 225-227 | Tax Collector |
|
||||
| 228-230 | Jeweler |
|
||||
| 231-233 | Weaponsmith |
|
||||
| 234-236 | Armorsmith |
|
||||
| 237-239 | Potter |
|
||||
| 240-242 | Bone Carver |
|
||||
| 243-245 | Seer |
|
||||
| 246-248 | Overseer |
|
||||
| 249-251 | Bodyguard |
|
||||
| 252-254 | Wheel Maker |
|
||||
| 255-258 | Watchman |
|
||||
| 259-262 | Cook |
|
||||
| 263-266 | Trapper |
|
||||
| 267-270 | Bannerman |
|
||||
| 271-274 | Tracker |
|
||||
| 275-279 | Weaver |
|
||||
| 280-284 | Urchin |
|
||||
| 285-289 | Tailor |
|
||||
| 290-294 | Miller |
|
||||
| 295-299 | Merchant |
|
||||
| 300 | Unusual |
|
||||
|
|
|
@ -4,22 +4,58 @@
|
|||
#+DATE: 2021-12-26 December
|
||||
#+TAGS: rpg ironsworn
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-3 | Compel a surrender. |
|
||||
| 4-6 | Coordinate with allies. |
|
||||
| 7-9 | Gather reinforcements. |
|
||||
| 10-13 | Seize something or someone. |
|
||||
| 18-21 | Intimidate or frighten. |
|
||||
| 26-29 | Shift focus to someone or something else. |
|
||||
| 34-39 | Take a decisive action. |
|
||||
| 46-52 | Ready an action. |
|
||||
| 61-68 | Leverage the advantage of a weapon or ability. |
|
||||
| 14-17 | Provoke a reckless response. |
|
||||
| 22-25 | Reveal a surprising truth. |
|
||||
| 30-33 | Destroy something, or render it useless. |
|
||||
| 40-45 | Reinforce defenses. |
|
||||
| 53-60 | Use the terrain to gain advantage. |
|
||||
| 69-78 | Create an opportunity. |
|
||||
| 79-89 | Attack with precision. |
|
||||
| 90-99 | Attack with power. |
|
||||
| 100 | Take a completely unexpected action. |
|
||||
Roll on Table: d300
|
||||
| 1-3 | Compel a surrender |
|
||||
| 4-6 | Coordinate with allies |
|
||||
| 7-9 | Gather reinforcements |
|
||||
| 10-13 | Seize something or someone |
|
||||
| 18-21 | Intimidate or frighten |
|
||||
| 26-29 | Shift focus to someone or something else |
|
||||
| 34-39 | Take a decisive action |
|
||||
| 46-52 | Ready an action |
|
||||
| 61-68 | Leverage the advantage of a weapon or ability |
|
||||
| 14-17 | Provoke a reckless response |
|
||||
| 22-25 | Reveal a surprising truth |
|
||||
| 30-33 | Destroy something, or render it useless |
|
||||
| 40-45 | Reinforce defenses |
|
||||
| 53-60 | Use the terrain to gain advantage |
|
||||
| 69-78 | Create an opportunity |
|
||||
| 79-89 | Attack with precision |
|
||||
| 90-99 | Attack with power |
|
||||
| 100 | Take a completely unexpected action |
|
||||
| 101-103 | Offer a quick and clean kill |
|
||||
| 104-106 | Command others to fight in their stead |
|
||||
| 107-109 | Compel to join their side |
|
||||
| 110-113 | Release someone or something as a distraction |
|
||||
| 118-121 | Study opponent tactics |
|
||||
| 126-129 | Taunt or ridicule |
|
||||
| 134-139 | Tell a convincing falsehood |
|
||||
| 146-152 | Feint and strike |
|
||||
| 161-168 | Reveal an item of significance |
|
||||
| 114-117 | Give a choice of who or what to save (Trolley problem) |
|
||||
| 122-125 | Guard and defend only |
|
||||
| 130-133 | Distract from a surprise attack |
|
||||
| 140-145 | Fight dirty |
|
||||
| 153-160 | Attempt to disarm opponent |
|
||||
| 169-178 | Secure an advantage |
|
||||
| 179-189 | Attempt a killing blow |
|
||||
| 190-199 | Attack in a wild frenzy |
|
||||
| 200 | Take a completely unexpected action |
|
||||
| 201-203 | Offer to surrender for a price |
|
||||
| 204-206 | Panic and flee |
|
||||
| 207-209 | Disengage and show no further aggression |
|
||||
| 210-213 | Retreat and move towards cover |
|
||||
| 218-221 | Take a calculated risk |
|
||||
| 226-229 | Give an evil monologue |
|
||||
| 234-239 | Reveal a connection to an ally |
|
||||
| 246-252 | Sacrifice someone or something else |
|
||||
| 261-268 | Test an opponent's bond |
|
||||
| 214-217 | Wait for opponent to make the next move |
|
||||
| 222-225 | Probe opponent's defenses |
|
||||
| 230-233 | Drag out the fight to wear the opponent down |
|
||||
| 240-245 | Use the circumstances of the battle to gain an advantage |
|
||||
| 253-260 | Use opponent's weapon against them |
|
||||
| 269-278 | Press a tactical advantage |
|
||||
| 279-289 | Make several attacks in quick succession |
|
||||
| 290-299 | Charge boldly |
|
||||
| 300 | Take a completely unexpected action |
|
||||
|
|
68
tables/denizens.org
Normal file
68
tables/denizens.org
Normal file
|
@ -0,0 +1,68 @@
|
|||
#+TITLE: Denizens
|
||||
#+AUTHOR: Howard Abrams
|
||||
#+EMAIL: howard@imac.local
|
||||
#+DATE: 2022-03-31 March
|
||||
#+TAGS: rpg
|
||||
|
||||
| Bear (Animal) formidable | common |
|
||||
| Bladewing (Animal) dangerous | uncommon |
|
||||
| Boar (Animal) dangerous | common |
|
||||
| Carrion Newt (Animal) formidable | rare |
|
||||
| Deep Rat (Animal) troublesome | common |
|
||||
| Gaunt (Animal) dangerous | uncommon |
|
||||
| Marsh Rat (Animal) troublesome | common |
|
||||
| Nightmare Spider (Animal) dangerous | uncommon |
|
||||
| Shroud Crab (Animal) troublesome | uncommon |
|
||||
| Trog (Animal) dangerous | uncommon |
|
||||
| Wolf (Animal) dangerous | common |
|
||||
| Cave Lion (Animal) formidable | common |
|
||||
| Basilisk (Beast) extreme | rare |
|
||||
| Chitter (large insect) (Beast) dangerous | uncommon |
|
||||
| Elder Beast (Beast) extreme | rare |
|
||||
| Gnarl (Ents) (Beast) extreme | very rare |
|
||||
| Giant Eagle (Beast) dangerous | uncommon |
|
||||
| Harrow Spider (Beast) dangerous | uncommon |
|
||||
| Iron-Wracked Beast (Beast) formidable | rare |
|
||||
| Kraken (Beast) epic | legendary |
|
||||
| Leviathan (Beast) epic | legendary |
|
||||
| Mammoth (Beast) extreme | common |
|
||||
| Manipede (Beast) | uncommon |
|
||||
| Nightspawn (corrupted animal)(Beast) formidable | rare |
|
||||
| Rhaskar (bear shark) (Beast) extreme | rare |
|
||||
| Salt Lobster (Beast) | uncommon |
|
||||
| Wyrm (purple worms) (Beast) epic | very rare |
|
||||
| Wyvern (Beast) extreme | very rare |
|
||||
| Atanya (Firstborn) dangerous | uncommon |
|
||||
| Elf (Firstborn) dangerous | uncommon |
|
||||
| Giant (Firstborn) extreme | uncommon |
|
||||
| Merrow (Firstborn) dangerous | rare |
|
||||
| Primordial (Firstborn) extreme | very rare |
|
||||
| Troll (Firstborn) formidable | rare |
|
||||
| Varou (Firstborn) dangerous | rare |
|
||||
| Bonewalker (skeleton) (Horror) dangerous | rare |
|
||||
| Bonehorde (Delve 130) (Horror) extreme | very rare |
|
||||
| Blighthound (Horror) formidable | very rare |
|
||||
| Bog Rot (zombie) (Horror) dangerous | rare |
|
||||
| Briar Rose (Horror) | rare |
|
||||
| Chimera (zombie) (Horror) extreme | rare |
|
||||
| Frostbound (frozen mummy) (Horror) formidable | rare |
|
||||
| Haunt (ghost) (Horror) formidable | rare |
|
||||
| Husk (Lich) (Delve 110) (Horror) formidable | rare |
|
||||
| Hollow (poltergeist) (Horror) extreme | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Sodden (Horror) formidable | rare |
|
||||
| Thrall (possessed person) (Horror) dangerous | rare |
|
||||
| Wight (revenant) (Horror) formidable | rare |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Common Folk (Ironlander) troublesome | common |
|
||||
| Hunter (Ironlander) dangerous | common |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Raider (Ironlander) dangerous | uncommon |
|
||||
| Warrior (Ironlander) dangerous | common |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Circle of Stones (Anomaly) dangerous | very rare |
|
||||
| Blood Thorn (Anomaly) dangerous | rare |
|
||||
| Glimmer / God (Anomaly) dangerous | rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | very rare |
|
||||
| Maelstrom (living whirlpool) (Anomaly) dangerous | very rare |
|
||||
| Tempest (living storm) (Anomaly) dangerous | very rare |
|
26
tables/denizens/domain/barrow.org
Normal file
26
tables/denizens/domain/barrow.org
Normal file
|
@ -0,0 +1,26 @@
|
|||
#+TITLE: Denizens in a Barrow
|
||||
|
||||
| Deep Rat (Animal) troublesome | common |
|
||||
| Chitter (large insect) (Beast) dangerous | common |
|
||||
| Harrow Spider (Beast) dangerous | common |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Manipede (Beast) | uncommon |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Nightmare Spider (Animal) dangerous | uncommon |
|
||||
| Trog (Animal) dangerous | uncommon |
|
||||
| Basilisk (Beast) extreme | rare |
|
||||
| Bonewalker (skeleton) (Horror) dangerous | rare |
|
||||
| Carrion Newt (Animal) formidable | rare |
|
||||
| Chimera (zombie) (Horror) extreme | rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | rare |
|
||||
| Haunt (ghost) (Horror) formidable | rare |
|
||||
| Hollow (poltergeist) (Horror) extreme | rare |
|
||||
| Husk (Lich) (Delve 110) (Horror) formidable | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Nightspawn (corrupted animal)(Beast) formidable | rare |
|
||||
| Thrall (possessed person) (Horror) dangerous | rare |
|
||||
| Wight (revenant) (Horror) formidable | rare |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Blighthound (Horror) formidable | very rare |
|
||||
| Bonehorde (Delve 130) (Horror) extreme | very rare |
|
||||
| Wyrm (purple worms) (Beast) epic | very rare |
|
33
tables/denizens/domain/cavern.org
Normal file
33
tables/denizens/domain/cavern.org
Normal file
|
@ -0,0 +1,33 @@
|
|||
#+TITLE: Denizens in a Cave System
|
||||
|
||||
| common | Bear (Animal) formidable |
|
||||
| common | Deep Rat (Animal) troublesome |
|
||||
| common | Warrior (Ironlander) dangerous |
|
||||
| uncommon | Broken (Ironlander) troublesome |
|
||||
| uncommon | Chitter (large insect) (Beast) dangerous |
|
||||
| uncommon | Harrow Spider (Beast) dangerous |
|
||||
| uncommon | Hunter (Ironlander) dangerous |
|
||||
| uncommon | Manipede (Beast) |
|
||||
| uncommon | Mystic (Ironlander) dangerous |
|
||||
| uncommon | Nightmare Spider (Animal) dangerous |
|
||||
| uncommon | Trog (Animal) dangerous |
|
||||
| rare | Basilisk (Beast) extreme |
|
||||
| rare | Bonewalker (skeleton) (Horror) dangerous |
|
||||
| rare | Carrion Newt (Animal) formidable |
|
||||
| rare | Chimera (zombie) (Horror) extreme |
|
||||
| rare | Common Folk (Ironlander) troublesome |
|
||||
| rare | Hollow (poltergeist) (Horror) extreme |
|
||||
| rare | Iron Revenant (Horror) extreme |
|
||||
| rare | Iron-Wracked Beast (Beast) formidable |
|
||||
| rare | Nightspawn (corrupted animal)(Beast) formidable |
|
||||
| rare | Troll (Firstborn) formidable |
|
||||
| rare | Wight (revenant) (Horror) formidable |
|
||||
| rare | Zealot (Ironlander) troublesome |
|
||||
| very rare | Blighthound (Horror) formidable |
|
||||
| very rare | Bonehorde (Delve 130) (Horror) extreme |
|
||||
| very rare | Gloom (shadow) (Anomaly) dangerous |
|
||||
| very rare | Haunt (ghost) (Horror) formidable |
|
||||
| very rare | Husk (Lich) (Delve 110) (Horror) formidable |
|
||||
| very rare | Primordial (Firstborn) extreme |
|
||||
| very rare | Thrall (possessed person) (Horror) dangerous |
|
||||
| very rare | Wyrm (purple worms) (Beast) epic |
|
36
tables/denizens/domain/forest.org
Normal file
36
tables/denizens/domain/forest.org
Normal file
|
@ -0,0 +1,36 @@
|
|||
#+TITLE: Denizens of the Tangled Woods
|
||||
|
||||
| Bear (Animal) formidable | common |
|
||||
| Boar (Animal) dangerous | common |
|
||||
| Common Folk (Ironlander) troublesome | common |
|
||||
| Hunter (Ironlander) dangerous | common |
|
||||
| Warrior (Ironlander) dangerous | common |
|
||||
| Wolf (Animal) dangerous | common |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Elf (Firstborn) dangerous | uncommon |
|
||||
| Gaunt (Animal) dangerous | uncommon |
|
||||
| Giant Eagle (Beast) dangerous | uncommon |
|
||||
| Glimmer / God (Anomaly) dangerous | uncommon |
|
||||
| Harrow Spider (Beast) dangerous | uncommon |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Nightmare Spider (Animal) dangerous | uncommon |
|
||||
| Varou (Firstborn) dangerous | uncommon |
|
||||
| Blood Thorn (Anomaly) dangerous | rare |
|
||||
| Bonewalker (skeleton) (Horror) dangerous | rare |
|
||||
| Briar Rose (Horror) | rare |
|
||||
| Chimera (zombie) (Horror) extreme | rare |
|
||||
| Elder Beast (Beast) extreme | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Iron-Wracked Beast (Beast) formidable | rare |
|
||||
| Nightspawn (corrupted animal)(Beast) formidable | rare |
|
||||
| Thrall (possessed person) (Horror) dangerous | rare |
|
||||
| Troll (Firstborn) formidable | rare |
|
||||
| Wight (revenant) (Horror) formidable | rare |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Blighthound (Horror) formidable | very rare |
|
||||
| Circle of Stones (Anomaly) dangerous | very rare |
|
||||
| Giant (Firstborn) extreme | very rare |
|
||||
| Gnarl (Ents) (Beast) extreme | very rare |
|
||||
| Wyvern (Beast) extreme | very rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | legendary |
|
||||
| Primordial (Firstborn) extreme | legendary |
|
25
tables/denizens/domain/frozen-cavern.org
Normal file
25
tables/denizens/domain/frozen-cavern.org
Normal file
|
@ -0,0 +1,25 @@
|
|||
#+TITLE: Creatures in a Frozen Cavern
|
||||
|
||||
| White Bear (Animal) formidable | common |
|
||||
| Snowy Nightmare Spider (Animal) dangerous | uncommon |
|
||||
| Wolf (Animal) dangerous | common |
|
||||
| Elder Beast (Beast) extreme | rare |
|
||||
| Mammoth (Beast) extreme | common |
|
||||
| Nightspawn (corrupted animal)(Beast) formidable | rare |
|
||||
| Rhaskar (bear shark) (Beast) extreme | rare |
|
||||
| Giant (Firstborn) extreme | uncommon |
|
||||
| Primordial (Firstborn) extreme | very rare |
|
||||
| Ice Troll (Firstborn) formidable | rare |
|
||||
| Frostbound (frozen mummy) (Horror) formidable | rare |
|
||||
| Haunt (ghost) (Horror) formidable | rare |
|
||||
| Husk (Lich) (Delve 110) (Horror) formidable | rare |
|
||||
| Hollow (poltergeist) (Horror) extreme | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Hunter (Ironlander) dangerous | common |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Warrior (Ironlander) dangerous | common |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Glimmer / God (Anomaly) dangerous | rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | very rare |
|
||||
| Tempest (living storm) (Anomaly) dangerous | very rare |
|
44
tables/denizens/domain/ice-fields.org
Normal file
44
tables/denizens/domain/ice-fields.org
Normal file
|
@ -0,0 +1,44 @@
|
|||
#+TITLE: Denizens of the Icereach
|
||||
|
||||
| Cave Lion (Animal) formidable | common |
|
||||
| Hunter (Ironlander) dangerous | common |
|
||||
| Mammoth (Beast) extreme | common |
|
||||
| Snow Bear (Animal) formidable | common |
|
||||
| Walrus (Animal) troublesome | common |
|
||||
| Warrior (Ironlander) dangerous | common |
|
||||
| Wolf (Animal) dangerous | common |
|
||||
| Atanya (Firstborn) dangerous | uncommon |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Giant (Firstborn) extreme | uncommon |
|
||||
| Giant Eagle (Beast) dangerous | uncommon |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Raider (Ironlander) dangerous | uncommon |
|
||||
| Salt Lobster (Beast) | uncommon |
|
||||
| Shroud Crab (Animal) troublesome | uncommon |
|
||||
| Blood Thorn (Anomaly) dangerous | rare |
|
||||
| Bonewalker (skeleton) (Horror) dangerous | rare |
|
||||
| Elder Beast (Beast) extreme | rare |
|
||||
| Frostbound (frozen mummy) (Horror) formidable | rare |
|
||||
| Haunt (ghost) (Horror) formidable | rare |
|
||||
| Hollow (poltergeist) (Horror) extreme | rare |
|
||||
| Husk (Lich) (Delve 110) (Horror) formidable | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Merrow (Firstborn) dangerous | rare |
|
||||
| Rhaskar (bear shark) (Beast) extreme | rare |
|
||||
| Selkie (Firstborn) dangerous | rare |
|
||||
| Sodden (Horror) formidable | rare |
|
||||
| Thrall (possessed person) (Horror) dangerous | rare |
|
||||
| Troll (Firstborn) formidable | rare |
|
||||
| Wight (revenant) (Horror) formidable | rare |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Blighthound (Horror) formidable | very rare |
|
||||
| Bonehorde (Delve 130) (Horror) extreme | very rare |
|
||||
| Circle of Stones (Anomaly) dangerous | very rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | very rare |
|
||||
| Glimmer / God (Anomaly) dangerous | very rare |
|
||||
| Maelstrom (living whirlpool) (Anomaly) dangerous | very rare |
|
||||
| Primordial (Firstborn) extreme | very rare |
|
||||
| Tempest (living storm) (Anomaly) dangerous | very rare |
|
||||
| Wyvern (Beast) extreme | very rare |
|
||||
| Kraken (Beast) epic | legendary |
|
||||
| Leviathan (Beast) epic | legendary |
|
32
tables/denizens/domain/mountain.org
Normal file
32
tables/denizens/domain/mountain.org
Normal file
|
@ -0,0 +1,32 @@
|
|||
#+TITLE: Denizens in a Mountain Pass
|
||||
|
||||
| Bear (Animal) formidable | common |
|
||||
| Cave Lion (Animal) formidable | common |
|
||||
| Hunter (Ironlander) dangerous | common |
|
||||
| Mammoth (Beast) extreme | common |
|
||||
| Warrior (Ironlander) dangerous | common |
|
||||
| Wolf (Animal) dangerous | common |
|
||||
| Bladewing (in the dark) (Animal) dangerous | uncommon |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Giant (Firstborn) extreme | uncommon |
|
||||
| Giant Eagle (Beast) dangerous | uncommon |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Bonewalker (skeleton) (Horror) dangerous | rare |
|
||||
| Elder Beast (Beast) extreme | rare |
|
||||
| Frostbound (frozen mummy) (Horror) formidable | rare |
|
||||
| Glimmer / God (Anomaly) dangerous | rare |
|
||||
| Haunt (ghost) (Horror) formidable | rare |
|
||||
| Hollow (poltergeist) (Horror) extreme | rare |
|
||||
| Husk (Lich : Delve 110) (Horror) formidable | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Iron-Wracked Beast (Beast) formidable | rare |
|
||||
| Nightspawn (corrupted animal) (Beast) formidable | rare |
|
||||
| Troll (Firstborn) formidable | rare |
|
||||
| Wight (revenant) (Horror) formidable | rare |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Bonehorde (Delve 130) (Horror) extreme | very rare |
|
||||
| Circle of Stones (Anomaly) dangerous | very rare |
|
||||
| Primordial (Firstborn) extreme | very rare |
|
||||
| Tempest (living storm) (Anomaly) dangerous | very rare |
|
||||
| Wyvern (Beast) extreme | very rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | legendary |
|
39
tables/denizens/domain/swamp-marsh.org
Normal file
39
tables/denizens/domain/swamp-marsh.org
Normal file
|
@ -0,0 +1,39 @@
|
|||
#+TITLE: Denizens of a Shadowfen / Marsh or Swamp
|
||||
|
||||
| Marsh Rat (Animal) troublesome | common |
|
||||
| Boar (Animal) dangerous | uncommon |
|
||||
| Common Folk (Ironlander) troublesome | uncommon |
|
||||
| Hunter (Ironlander) dangerous | uncommon |
|
||||
| Warrior (Ironlander) dangerous | uncommon |
|
||||
| Bladewing (Animal) dangerous | uncommon |
|
||||
| Broken (Ironlander) troublesome | uncommon |
|
||||
| Giant Crawdad (Beast) | uncommon |
|
||||
| Harrow Spider (Beast) dangerous | uncommon |
|
||||
| Mystic (Ironlander) dangerous | uncommon |
|
||||
| Nightmare Spider (Animal) dangerous | uncommon |
|
||||
| Troll (Firstborn) formidable | uncommon |
|
||||
| Blood Thorn (Anomaly) dangerous | rare |
|
||||
| Bog Rot (zombie) (Horror) dangerous | rare |
|
||||
| Bonewalker (skeleton) (Horror) dangerous | rare |
|
||||
| Briar Rose (Horror) | rare |
|
||||
| Chimera (zombie) (Horror) extreme | rare |
|
||||
| Elder Beast (Beast) extreme | rare |
|
||||
| Giant Eagle (Beast) dangerous | rare |
|
||||
| Haunt (ghost) (Horror) formidable | rare |
|
||||
| Hollow (poltergeist) (Horror) extreme | rare |
|
||||
| Husk (Lich) (Delve 110) (Horror) formidable | rare |
|
||||
| Iron Revenant (Horror) extreme | rare |
|
||||
| Iron-Wracked Beast (Beast) formidable | rare |
|
||||
| Nightspawn (corrupted animal)(Beast) formidable | rare |
|
||||
| Sodden (Horror) formidable | rare |
|
||||
| Thrall (possessed person) (Horror) dangerous | rare |
|
||||
| Wight (revenant) (Horror) formidable | rare |
|
||||
| Zealot (Ironlander) troublesome | rare |
|
||||
| Blighthound (Horror) formidable | very rare |
|
||||
| Bonehorde (Delve 130) (Horror) extreme | very rare |
|
||||
| Circle of Stones (Anomaly) dangerous | very rare |
|
||||
| Gaunt (Animal) dangerous | very rare |
|
||||
| Gloom (shadow) (Anomaly) dangerous | very rare |
|
||||
| Gnarl (Ents) (Beast) extreme | very rare |
|
||||
| Wyvern (Beast) extreme | very rare |
|
||||
| Glimmer / God (Anomaly) dangerous | legendary |
|
|
@ -54,3 +54,105 @@ Unnatural
|
|||
Unstable
|
||||
Unusual
|
||||
Veiled
|
||||
|
||||
Malignant
|
||||
Dense
|
||||
Tainted
|
||||
Cursed
|
||||
Frigid
|
||||
Forsaken
|
||||
Overwhelming
|
||||
Lifeless
|
||||
Fetid
|
||||
Remote
|
||||
Untamed
|
||||
Tangled
|
||||
Eerie
|
||||
Bloodstained
|
||||
Pale
|
||||
Jagged
|
||||
Trembling
|
||||
Hypnotic
|
||||
Tumultuous
|
||||
Corrupted
|
||||
Jinxed
|
||||
Dire
|
||||
Buried
|
||||
Unpredictable
|
||||
Cavernous
|
||||
Quaking
|
||||
Entombed
|
||||
Haunted
|
||||
Unforgiving
|
||||
Lightless
|
||||
Necrotic
|
||||
Arcane
|
||||
Ashen
|
||||
Hollow
|
||||
Alien
|
||||
Defiled
|
||||
Decrepit
|
||||
Stifling
|
||||
Labyrinthine
|
||||
Fractured
|
||||
Otherworldly
|
||||
Intimidating
|
||||
Precarious
|
||||
Oppressive
|
||||
Sinister
|
||||
Rotted
|
||||
Barren
|
||||
Devastated
|
||||
Enigmatic
|
||||
Grisly
|
||||
|
||||
Chilling
|
||||
Monstrous
|
||||
Translucent
|
||||
Dreadful
|
||||
Scorched
|
||||
Loathsome
|
||||
Savage
|
||||
Sorrowful
|
||||
Intricate
|
||||
Bleak
|
||||
Shrouded
|
||||
Impenetrable
|
||||
Silent
|
||||
Forbidden
|
||||
Eldritch
|
||||
Thunderous
|
||||
Imposing
|
||||
Bewitched
|
||||
Awful
|
||||
Powerful
|
||||
Suffocating
|
||||
Ominous
|
||||
Radiant
|
||||
Contaminated
|
||||
Grim
|
||||
Protected
|
||||
Condemned
|
||||
Ethereal
|
||||
Supernatural
|
||||
Grotesque
|
||||
Ravenous
|
||||
Rugged
|
||||
Derelict
|
||||
Dark
|
||||
Wicked
|
||||
Perilous
|
||||
Putrid
|
||||
Threatening
|
||||
Blighted
|
||||
Cryptic
|
||||
Desolate
|
||||
Unnerving
|
||||
Lost
|
||||
Fearsome
|
||||
Horrid
|
||||
Tormented
|
||||
Lethal
|
||||
Skeletal
|
||||
Limited
|
||||
Volatile
|
||||
|
|
|
@ -54,3 +54,105 @@ Trigger
|
|||
Valuables
|
||||
Water
|
||||
Weapon
|
||||
|
||||
Vision
|
||||
Nightmare
|
||||
Nexus
|
||||
Omen
|
||||
Incantation
|
||||
Avatar
|
||||
Danger
|
||||
Blade
|
||||
Monstrosity
|
||||
Illusion
|
||||
Pit
|
||||
Energy
|
||||
Altar
|
||||
Defense
|
||||
Gargoyle
|
||||
Essence
|
||||
Shield
|
||||
Sanctuary
|
||||
Enemy
|
||||
Monolith
|
||||
Runes
|
||||
Bane
|
||||
Firstborn
|
||||
Knowledge
|
||||
Wraith
|
||||
Nest
|
||||
Pillar
|
||||
Trance
|
||||
Fog
|
||||
Monument
|
||||
Mirage
|
||||
Leviathan
|
||||
Lock
|
||||
Tempest
|
||||
Phantasm
|
||||
Apparition
|
||||
Key
|
||||
Chest
|
||||
Statue
|
||||
Banner
|
||||
Anomaly
|
||||
Whisper
|
||||
Catacomb
|
||||
Grimace
|
||||
Tome
|
||||
Lore
|
||||
Enigma
|
||||
Crypt
|
||||
Protection
|
||||
Mechanism
|
||||
|
||||
Tools
|
||||
Symbol
|
||||
Quagmire
|
||||
Specter
|
||||
Vortex
|
||||
Labyrinth
|
||||
Wasteland
|
||||
Fear
|
||||
Haze
|
||||
Beast
|
||||
Vestige
|
||||
Remnant
|
||||
Reflection
|
||||
Book
|
||||
Guardian
|
||||
Effigy
|
||||
Map
|
||||
Undertow
|
||||
Glyph
|
||||
Unrest
|
||||
Ghost
|
||||
Riddle
|
||||
Relic
|
||||
Conduit
|
||||
Horror
|
||||
Corpse
|
||||
Judgment
|
||||
Necropolis
|
||||
Mystery
|
||||
Tomb
|
||||
Banshee
|
||||
Armor
|
||||
Cult
|
||||
Delusion
|
||||
Haunt
|
||||
Echo
|
||||
Cache
|
||||
Retreat
|
||||
Abyss
|
||||
Oracle
|
||||
Icon
|
||||
Treasure
|
||||
Vulnerability
|
||||
Occult
|
||||
Opposition
|
||||
Magic
|
||||
Legacy
|
||||
Curse
|
||||
Ritual
|
||||
Ambush
|
||||
|
|
15
tables/in-media-res/action.org
Normal file
15
tables/in-media-res/action.org
Normal file
|
@ -0,0 +1,15 @@
|
|||
|
||||
- arguing
|
||||
- negotiating
|
||||
- attacking
|
||||
- defending
|
||||
- charming or flirting
|
||||
- sneaking
|
||||
- hiding
|
||||
- taunting
|
||||
- surveying
|
||||
- studying
|
||||
- climbing [a rope/a wall/]
|
||||
- running
|
||||
- jumping
|
||||
- swimming
|
11
tables/in-media-res/purpose.org
Normal file
11
tables/in-media-res/purpose.org
Normal file
|
@ -0,0 +1,11 @@
|
|||
|
||||
something has been stolen
|
||||
someone has been taken
|
||||
an offence must be punished
|
||||
a plague must be cured
|
||||
a curse must be broken
|
||||
a bounty is on offer
|
||||
a sentence must be commuted
|
||||
a prophecy has been spoken
|
||||
an oath has been sworn
|
||||
a debt is owed
|
|
@ -4,21 +4,55 @@
|
|||
#+DATE: 2021-12-09 December
|
||||
#+TAGS: rpg, ironsworn
|
||||
|
||||
Roll on Table: d100
|
||||
| 1 | Fleet |
|
||||
| 2 | Sargassum |
|
||||
| 3 | Flotsam |
|
||||
| 4 | Mystical Site |
|
||||
| 5 | Lair |
|
||||
| 6-10 | Wreck |
|
||||
| 11-15 | Harbor |
|
||||
| 16-23 | Ship |
|
||||
| 24-30 | Rocks |
|
||||
| 31-38 | Fjord |
|
||||
| 39-46 | Estuary |
|
||||
| 47-54 | Cove |
|
||||
| 55-62 | Bay |
|
||||
| 63-70 | Ice |
|
||||
| 71-85 | Island |
|
||||
| 86-99 | Open Water |
|
||||
| 100 | Anomaly |
|
||||
Roll on Table: d300
|
||||
| 1 | Fleet |
|
||||
| 2 | Sargassum |
|
||||
| 3 | Flotsam |
|
||||
| 4 | Mystical Site |
|
||||
| 5 | Lair |
|
||||
| 6-10 | Wreck |
|
||||
| 11-15 | Harbor |
|
||||
| 16-23 | Ship |
|
||||
| 24-30 | Rocks |
|
||||
| 31-38 | Fjord |
|
||||
| 39-46 | Estuary |
|
||||
| 47-54 | Cove |
|
||||
| 55-62 | Bay |
|
||||
| 63-70 | Ice |
|
||||
| 71-85 | Island |
|
||||
| 86-99 | Open Water |
|
||||
| 100 | Anomaly |
|
||||
| 101 | Breeding Waters |
|
||||
| 102 | Thermal Vents |
|
||||
| 103 | Sea Cave |
|
||||
| 104 | Lighthouse |
|
||||
| 105 | Solitary Dock |
|
||||
| 16-110 | Wetlands |
|
||||
| 111-115 | Port |
|
||||
| 116-123 | Barge |
|
||||
| 124-130 | River Delta |
|
||||
| 131-138 | White Cliffs |
|
||||
| 139-146 | Sandy Beach |
|
||||
| 147-154 | Inlet |
|
||||
| 155-162 | Atoll |
|
||||
| 163-170 | Iceberg |
|
||||
| 171-185 | Ice Floe |
|
||||
| 186-199 | Glacier |
|
||||
| 200 | Anomaly |
|
||||
| 201 | Fishing Village |
|
||||
| 202 | Pirate Camp |
|
||||
| 203 | Jetsam |
|
||||
| 204 | Lava Flow |
|
||||
| 205 | Coral Reef |
|
||||
| 26-210 | Barrier Reef |
|
||||
| 211-215 | Glacial Wall |
|
||||
| 216-223 | Derelict |
|
||||
| 224-230 | Storm Debris |
|
||||
| 231-238 | Peninsula |
|
||||
| 239-246 | Archipelago |
|
||||
| 247-254 | Rocky Beach |
|
||||
| 255-262 | Island Chain |
|
||||
| 263-270 | Natural Arches |
|
||||
| 271-285 | Stacks |
|
||||
| 286-299 | Sand Bars |
|
||||
| 300 | Anomaly |
|
||||
|
|
|
@ -4,54 +4,153 @@
|
|||
#+DATE: 2021-12-09 December
|
||||
#+TAGS: rpg, ironsworn
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-2 | High |
|
||||
| 3-4 | Remote |
|
||||
| 5-6 | Exposed |
|
||||
| 7-8 | Small |
|
||||
| 9-10 | Broken |
|
||||
| 11-12 | Diverse |
|
||||
| 13-14 | Rough |
|
||||
| 15-16 | Dark |
|
||||
| 17-18 | Shadowy |
|
||||
| 19-20 | Contested |
|
||||
| 21-22 | Grim |
|
||||
| 23-24 | Wild |
|
||||
| 25-26 | Fertile |
|
||||
| 27-28 | Blocked |
|
||||
| 29-30 | Ancient |
|
||||
| 31-32 | Perilous |
|
||||
| 33-34 | Hidden |
|
||||
| 35-36 | Occupied |
|
||||
| 37-38 | Rich |
|
||||
| 39-40 | Big |
|
||||
| 41-42 | Savage |
|
||||
| 43-44 | Defended |
|
||||
| 45-46 | Withered |
|
||||
| 47-48 | Mystical |
|
||||
| 49-50 | Inaccessible |
|
||||
| 51-52 | Protected |
|
||||
| 53-54 | Abandoned |
|
||||
| 55-56 | Wide |
|
||||
| 57-58 | Foul |
|
||||
| 59-60 | Dead |
|
||||
| 61-62 | Ruined |
|
||||
| 63-64 | Barren |
|
||||
| 65-66 | Cold |
|
||||
| 67-68 | Blighted |
|
||||
| 69-70 | Low |
|
||||
| 71-72 | Beautiful |
|
||||
| 73-74 | Abundant |
|
||||
| 75-76 | Lush |
|
||||
| 77-78 | Flooded |
|
||||
| 79-80 | Empty |
|
||||
| 81-82 | Strange |
|
||||
| 83-84 | Corrupted |
|
||||
| 85-86 | Peaceful |
|
||||
| 87-88 | Forgotten |
|
||||
| 89-90 | Expansive |
|
||||
| 91-92 | Settled |
|
||||
| 93-94 | Dense |
|
||||
| 95-96 | Civilized |
|
||||
| 97-98 | Desolate |
|
||||
| 99-00 | Isolated |
|
||||
High
|
||||
Remote
|
||||
Exposed
|
||||
Small
|
||||
Broken
|
||||
Diverse
|
||||
Rough
|
||||
Dark
|
||||
Shadowy
|
||||
Contested
|
||||
Grim
|
||||
Wild
|
||||
Fertile
|
||||
Blocked
|
||||
Ancient
|
||||
Perilous
|
||||
Hidden
|
||||
Occupied
|
||||
Rich
|
||||
Big
|
||||
Savage
|
||||
Defended
|
||||
Withered
|
||||
Mystical
|
||||
Inaccessible
|
||||
Protected
|
||||
Abandoned
|
||||
Wide
|
||||
Foul
|
||||
Dead
|
||||
Ruined
|
||||
Barren
|
||||
Cold
|
||||
Blighted
|
||||
Low
|
||||
Beautiful
|
||||
Abundant
|
||||
Lush
|
||||
Flooded
|
||||
Empty
|
||||
Strange
|
||||
Corrupted
|
||||
Peaceful
|
||||
Forgotten
|
||||
Expansive
|
||||
Settled
|
||||
Dense
|
||||
Civilized
|
||||
Desolate
|
||||
Isolated
|
||||
Bustling
|
||||
Compact
|
||||
Fantastic
|
||||
Huge
|
||||
Strategic
|
||||
Hazardous
|
||||
Dangerous
|
||||
Exotic
|
||||
Crumbling
|
||||
Dilapidated
|
||||
Decayed
|
||||
Unsafe
|
||||
Secret
|
||||
Tropical
|
||||
Frozen
|
||||
Mysterious
|
||||
Undesirable
|
||||
Poor
|
||||
Vibrant
|
||||
Bright
|
||||
Tamed
|
||||
Depleted
|
||||
Guarded
|
||||
Thin
|
||||
Lively
|
||||
Eerie
|
||||
Warm
|
||||
Narrow
|
||||
Windy
|
||||
Calm
|
||||
Creepy
|
||||
Crowded
|
||||
Deserted
|
||||
Dry
|
||||
Wet
|
||||
Enchanted
|
||||
Majestic
|
||||
Spacious
|
||||
Tranquil
|
||||
Natural
|
||||
Noisy
|
||||
Quiet
|
||||
Stormy
|
||||
Unique
|
||||
Traditional
|
||||
Lonely
|
||||
Smooth
|
||||
Colossal
|
||||
Giant
|
||||
Tiny
|
||||
Chilly
|
||||
Chilling
|
||||
Unnerving
|
||||
Horrifying
|
||||
Crooked
|
||||
Dim
|
||||
Filthy
|
||||
Dirty
|
||||
Dingy
|
||||
Harsh
|
||||
Elderly
|
||||
Old
|
||||
Young
|
||||
Sharp
|
||||
Steep
|
||||
Terrible
|
||||
Overgrown
|
||||
Bountiful
|
||||
Crude
|
||||
Primitive
|
||||
Odd
|
||||
Endangered
|
||||
Hostile
|
||||
Neglected
|
||||
Pristine
|
||||
Toxic
|
||||
Treacherous
|
||||
Unsavory
|
||||
Cluttered
|
||||
Bleak
|
||||
Somber
|
||||
Gloomy
|
||||
Uninhabited
|
||||
Disgusting
|
||||
Nightmarish
|
||||
Haunted
|
||||
Turbulent
|
||||
Ugly
|
||||
Grand
|
||||
Enigmatic
|
||||
Complex
|
||||
Sacred
|
||||
Hospitable
|
||||
Shoddy
|
||||
Timeless
|
||||
Untouched
|
||||
Vulnerable
|
||||
Open
|
||||
Closed
|
||||
Violent
|
||||
|
|
|
@ -4,55 +4,157 @@
|
|||
#+DATE: 2021-12-09 December
|
||||
#+TAGS: rpg, ironsworn
|
||||
|
||||
Roll on Table: d100
|
||||
| 1 | Hideout |
|
||||
| 2 | Ruin |
|
||||
| 3 | Mine |
|
||||
| 4 | Waste |
|
||||
| 5 | Mystical Site |
|
||||
| 6 | Path |
|
||||
| 7 | Outpost |
|
||||
| 8 | Wall |
|
||||
| 9 | Battlefield |
|
||||
| 10 | Hovel |
|
||||
| 11 | Spring |
|
||||
| 12 | Lair |
|
||||
| 13 | Fort |
|
||||
| 14 | Bridge |
|
||||
| 15 | Camp |
|
||||
| 16 | Cairn/Grave |
|
||||
| 17-18 | Caravan |
|
||||
| 19-20 | Waterfall |
|
||||
| 21-22 | Cave |
|
||||
| 23-24 | Swamp |
|
||||
| 25-26 | Fen |
|
||||
| 27-28 | Ravine |
|
||||
| 29-30 | Road |
|
||||
| 31-32 | Tree |
|
||||
| 33-34 | Pond |
|
||||
| 35-36 | Fields |
|
||||
| 37-38 | Marsh |
|
||||
| 39-40 | Steading |
|
||||
| 41-42 | Rapids |
|
||||
| 43-44 | Pass |
|
||||
| 45-46 | Trail |
|
||||
| 47-48 | Glade |
|
||||
| 49-50 | Plain |
|
||||
| 51-52 | Ridge |
|
||||
| 53-54 | Cliff |
|
||||
| 55-56 | Grove |
|
||||
| 57-58 | Village |
|
||||
| 59-60 | Moor |
|
||||
| 61-62 | Thicket |
|
||||
| 63-64 | River Ford |
|
||||
| 65-66 | Valley |
|
||||
| 67-68 | Bay/Fjord |
|
||||
| 69-70 | Foothills |
|
||||
| 71-72 | Lake |
|
||||
| 73-75 | River |
|
||||
| 76-79 | Forest |
|
||||
| 80-83 | Coast |
|
||||
| 84-88 | Hill |
|
||||
| 89-93 | Mountain |
|
||||
| 94-99 | Woods |
|
||||
| 100 | Anomoly |
|
||||
Roll on Table: d300
|
||||
| 1 | Hideout |
|
||||
| 2 | Ruin |
|
||||
| 3 | Mine |
|
||||
| 4 | Waste |
|
||||
| 5 | Mystical Site |
|
||||
| 6 | Path |
|
||||
| 7 | Outpost |
|
||||
| 8 | Wall |
|
||||
| 9 | Battlefield |
|
||||
| 10 | Hovel |
|
||||
| 11 | Spring |
|
||||
| 12 | Lair |
|
||||
| 13 | Fort |
|
||||
| 14 | Bridge |
|
||||
| 15 | Camp |
|
||||
| 16 | Cairn/Grave |
|
||||
| 17-18 | Caravan |
|
||||
| 19-20 | Waterfall |
|
||||
| 21-22 | Cave |
|
||||
| 23-24 | Swamp |
|
||||
| 25-26 | Fen |
|
||||
| 27-28 | Ravine |
|
||||
| 29-30 | Road |
|
||||
| 31-32 | Tree |
|
||||
| 33-34 | Pond |
|
||||
| 35-36 | Fields |
|
||||
| 37-38 | Marsh |
|
||||
| 39-40 | Steading |
|
||||
| 41-42 | Rapids |
|
||||
| 43-44 | Pass |
|
||||
| 45-46 | Trail |
|
||||
| 47-48 | Glade |
|
||||
| 49-50 | Plain |
|
||||
| 51-52 | Ridge |
|
||||
| 53-54 | Cliff |
|
||||
| 55-56 | Grove |
|
||||
| 57-58 | Village |
|
||||
| 59-60 | Moor |
|
||||
| 61-62 | Thicket |
|
||||
| 63-64 | River Ford |
|
||||
| 65-66 | Valley |
|
||||
| 67-68 | Bay/Fjord |
|
||||
| 69-70 | Foothills |
|
||||
| 71-72 | Lake |
|
||||
| 73-75 | River |
|
||||
| 76-79 | Forest |
|
||||
| 80-83 | Coast |
|
||||
| 84-88 | Hill |
|
||||
| 89-93 | Mountain |
|
||||
| 94-99 | Woods |
|
||||
| 100 | Anomaly |
|
||||
| 101 | Watch Tower |
|
||||
| 102 | Cabin |
|
||||
| 103 | Large Crystal |
|
||||
| 104 | Encampment |
|
||||
| 105 | Tower |
|
||||
| 106 | Longhouse |
|
||||
| 107 | Crypt |
|
||||
| 108 | Rope Bridge |
|
||||
| 109 | Forest Fire |
|
||||
| 110 | Landslide |
|
||||
| 111 | Flash Flood |
|
||||
| 112 | Lean-To |
|
||||
| 113 | Yurt |
|
||||
| 114 | Mud Hut |
|
||||
| 115 | Fire Pit |
|
||||
| 116 | Orchard |
|
||||
| 117-118 | Island |
|
||||
| 119-120 | Escarpment |
|
||||
| 121-122 | Crop Field |
|
||||
| 123-124 | Mounds |
|
||||
| 125-126 | Tiered Farmland |
|
||||
| 127-128 | Stone Wall |
|
||||
| 129-130 | Scorched Earth |
|
||||
| 131-132 | Cavern System |
|
||||
| 133-134 | Desert |
|
||||
| 135-136 | Canyon |
|
||||
| 137-138 | Beach |
|
||||
| 139-140 | Tundra |
|
||||
| 141-142 | Salt Flats |
|
||||
| 143-144 | Large Rock Formations |
|
||||
| 145-146 | Mesa |
|
||||
| 147-148 | Butte |
|
||||
| 149-150 | Game Trail |
|
||||
| 151-152 | Wild Berry Patch |
|
||||
| 153-154 | Alluvial Fan |
|
||||
| 155-156 | Wildflower Field |
|
||||
| 157-158 | Underground River |
|
||||
| 159-160 | Crystal Cave |
|
||||
| 161-162 | Glacier |
|
||||
| 163-164 | Painted Hills |
|
||||
| 165-166 | Basin |
|
||||
| 167-168 | Ice Cave |
|
||||
| 169-170 | Underground Lake Entrance |
|
||||
| 171-172 | Steppe |
|
||||
| 173-175 | Mount |
|
||||
| 176-179 | Overhang |
|
||||
| 180-183 | Hunting Grounds |
|
||||
| 184-188 | Sparse Woods |
|
||||
| 189-193 | Thick Undergrowth |
|
||||
| 194-199 | Canopied Forest |
|
||||
| 200 | Anomaly |
|
||||
| 201 | Hut |
|
||||
| 202 | Farm |
|
||||
| 203 | Standing Stones |
|
||||
| 204 | Homestead |
|
||||
| 205 | Tunnel |
|
||||
| 206 | Shrine |
|
||||
| 207 | Stone Pillar |
|
||||
| 208 | Iron Pillar |
|
||||
| 209 | Volcano |
|
||||
| 210 | Monastery |
|
||||
| 211 | Oasis |
|
||||
| 212 | Dunes |
|
||||
| 213 | Mausoleum |
|
||||
| 214 | Stronghold |
|
||||
| 215 | Sacred Place |
|
||||
| 216 | Giant Boulders |
|
||||
| 217-218 | River Rapids |
|
||||
| 219-220 | Lava Tube |
|
||||
| 221-222 | Monument |
|
||||
| 223-224 | Ledge |
|
||||
| 225-226 | Savannah |
|
||||
| 227-228 | Sinkhole |
|
||||
| 229-230 | Pasture |
|
||||
| 231-232 | Pit |
|
||||
| 233-234 | Gravel Incline |
|
||||
| 235-236 | Rock Incline |
|
||||
| 237-238 | Summit |
|
||||
| 239-240 | Peak |
|
||||
| 241-242 | Plateau |
|
||||
| 243-244 | Gorge |
|
||||
| 245-246 | Chasm |
|
||||
| 247-248 | Stone Bridge |
|
||||
| 249-250 | Rock Spires |
|
||||
| 251-252 | Dry Riverbed |
|
||||
| 253-254 | Cavern |
|
||||
| 255-256 | Hot Springs |
|
||||
| 257-258 | Hollow |
|
||||
| 259-260 | Bog |
|
||||
| 261-262 | Switch Backs |
|
||||
| 263-264 | Quicksand |
|
||||
| 265-266 | Tar Pit |
|
||||
| 267-268 | Deciduous Forest |
|
||||
| 269-270 | Hilltop |
|
||||
| 271-272 | Jungle |
|
||||
| 273-275 | Conifer Forest |
|
||||
| 276-279 | Field |
|
||||
| 280-283 | Clearing |
|
||||
| 284-288 | Scrubland |
|
||||
| 289-293 | Stream |
|
||||
| 294-299 | Grassland |
|
||||
| 300 | Anomaly |
|
||||
|
|
43
tables/monstrosity/abilities.org
Normal file
43
tables/monstrosity/abilities.org
Normal file
|
@ -0,0 +1,43 @@
|
|||
#+title: Abilities of a Monstrosity
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-4 | Keen senses |
|
||||
| 5-8 | Intimidating vocalization |
|
||||
| 9-12 | Climber |
|
||||
| 13-16 | Intelligent |
|
||||
| 17-20 | Swift |
|
||||
| 21-24 | Powerful bite |
|
||||
| 25-28 | Stealthy / ambusher |
|
||||
| 29-32 | Horrid visage |
|
||||
| 33-36 | Strong |
|
||||
| 37-40 | Camouflaged |
|
||||
| 41-43 | Flier / glider |
|
||||
| 44-46 | Poisonous |
|
||||
| 47-49 | Semiaquatic / swimmer |
|
||||
| 50-52 | Grappler / entangler |
|
||||
| 53-55 | Leaper |
|
||||
| 56-58 | Crusher / constrictor |
|
||||
| 59-61 | Armored |
|
||||
| 62-64 | Burrower |
|
||||
| 65-67 | Noxious smell |
|
||||
| 68-69 | Trap-setter |
|
||||
| 70-71 | Parasitic |
|
||||
| 72-73 | Vibration sense |
|
||||
| 74-75 | Breath weapon / toxic spew |
|
||||
| 76-77 | Mimicry |
|
||||
| 78-79 | Shapeshifting |
|
||||
| 80-81 | Control lesser creatures |
|
||||
| 82-83 | Echolocation |
|
||||
| 84-85 | Electric shock |
|
||||
| 86-87 | Acidic |
|
||||
| 88-89 | Symbiotic |
|
||||
| 90-91 | Shoot projectiles |
|
||||
| 92 | Paralyzing |
|
||||
| 93 | Immune to iron |
|
||||
| 94 | Feels no pain |
|
||||
| 95 | Enact rituals |
|
||||
| 96 | Create illusions |
|
||||
| 97 | Mind control / telepathy |
|
||||
| 98 | Move between realities |
|
||||
| 99 | Wield weapons |
|
||||
| 100 | Control elements |
|
31
tables/monstrosity/characteristics.org
Normal file
31
tables/monstrosity/characteristics.org
Normal file
|
@ -0,0 +1,31 @@
|
|||
#+title: Characteristics of a Monstrosity
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-5 | Extra limbs |
|
||||
| 6-10 | Fangs / rows of sharp teeth |
|
||||
| 11-15 | Claws / talons |
|
||||
| 16-20 | Strange color / markings |
|
||||
| 21-25 | Horns / tusks |
|
||||
| 26-30 | Oversized mouth |
|
||||
| 31-35 | Spikes / spines |
|
||||
| 36-40 | Tail |
|
||||
| 41-45 | Multi-segmented body |
|
||||
| 46-50 | Wings |
|
||||
| 51-54 | Stinger / barbs |
|
||||
| 55-58 | Many-eyed |
|
||||
| 59-62 | Distinctive sound |
|
||||
| 63-66 | Tentacles / tendrils |
|
||||
| 67-69 | Mandibles / pincers |
|
||||
| 70-72 | Luminescent |
|
||||
| 73-75 | Antennae / sensory organs |
|
||||
| 76-78 | Proboscis / inner jaw |
|
||||
| 79-81 | Exoskeleton / shell |
|
||||
| 82-84 | Bony protuberances |
|
||||
| 85-87 | Corrupted flesh |
|
||||
| 88-90 | Semi-transparent |
|
||||
| 91-93 | Scarred / injured |
|
||||
| 94-95 | Egg sac / carried offspring |
|
||||
| 96-97 | Rotting / skeletal |
|
||||
| 98 | Mummified / desiccated |
|
||||
| 99 | Multi-headedtched with mystic runes |
|
||||
| 100 | E |
|
21
tables/monstrosity/form.org
Normal file
21
tables/monstrosity/form.org
Normal file
|
@ -0,0 +1,21 @@
|
|||
#+title: Primary Form of a Monstrosity
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-15 | Beast / mammal |
|
||||
| 16-25 | Humanoid |
|
||||
| 26-31 | Bird |
|
||||
| 32-37 | Spider |
|
||||
| 38-43 | Snake |
|
||||
| 44-49 | Worm / slug |
|
||||
| 50-55 | Lizard |
|
||||
| 56-61 | Insect |
|
||||
| 67-69 | Crustacean |
|
||||
| 70-71 | Fish |
|
||||
| 72-73 | Octopoid |
|
||||
| 74-75 | Amphibian |
|
||||
| 76-77 | Plant |
|
||||
| 78 | Incorporeal |
|
||||
| 79 | Mineral |
|
||||
| 80 | Elemental |
|
||||
| 62-66 | Amorphous |
|
||||
| 81-00 | Hybrid: <<monstrosity/form>> / <<monstosity/form>> |
|
9
tables/monstrosity/size.org
Normal file
9
tables/monstrosity/size.org
Normal file
|
@ -0,0 +1,9 @@
|
|||
#+title: Size of a Monstrosity
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-5 | Tiny (rodent-sized) |
|
||||
| 6-30 | Small (hound-sized) |
|
||||
| 31-65 | Medium (person-sized) |
|
||||
| 66-94 | Large (giant-sized) |
|
||||
| 95-99 | Huge (whale-sized) |
|
||||
| 100 | Titanic (incomprehensible) |
|
|
@ -204,3 +204,503 @@ Vigo
|
|||
Wena
|
||||
Yorath
|
||||
Yuda
|
||||
Segura
|
||||
Gethin
|
||||
Bataar
|
||||
Basira
|
||||
Joa
|
||||
Glynn
|
||||
Toran
|
||||
Arasen
|
||||
Kuron
|
||||
Griff
|
||||
Owena
|
||||
Adda
|
||||
Euros
|
||||
Kova
|
||||
Kara
|
||||
Morgan
|
||||
Nanda
|
||||
Tamara
|
||||
Asha
|
||||
Delos
|
||||
Torgan
|
||||
Makari
|
||||
Selva
|
||||
Kimura
|
||||
Rhian
|
||||
Tristan
|
||||
Siorra
|
||||
Sayer
|
||||
Cortina
|
||||
Vesna
|
||||
Kataka
|
||||
Keyshia
|
||||
Mila
|
||||
Lili
|
||||
Vigo
|
||||
Sadia
|
||||
Malik
|
||||
Dag
|
||||
Kuno
|
||||
Reva
|
||||
Kai
|
||||
Kalina
|
||||
Jihan
|
||||
Hennion
|
||||
Abram
|
||||
Aida
|
||||
Myrtle
|
||||
Nekun
|
||||
Menna
|
||||
Tahir
|
||||
Sarria
|
||||
Nakura
|
||||
Akiya
|
||||
Talan
|
||||
Mattick
|
||||
Okoth
|
||||
Khulan
|
||||
Verena
|
||||
Beltran
|
||||
Del
|
||||
Ranna
|
||||
Alina
|
||||
Muna
|
||||
Mura
|
||||
Torrens
|
||||
Yuda
|
||||
Nazmi
|
||||
Ghalen
|
||||
Sarda
|
||||
Shona
|
||||
Kalidas
|
||||
Wena
|
||||
Sendra
|
||||
Kori
|
||||
Setara
|
||||
Lucia
|
||||
Maya
|
||||
Reema
|
||||
Yorath
|
||||
Rhoddri
|
||||
Shekhar
|
||||
Servan
|
||||
Reese
|
||||
Kenrick
|
||||
Indirra
|
||||
Giliana
|
||||
Jebran
|
||||
Kotama
|
||||
Fara
|
||||
Katrin
|
||||
Namba
|
||||
Lona
|
||||
Taylah
|
||||
Kato
|
||||
Esra
|
||||
Eleri
|
||||
Irsia
|
||||
Kayu
|
||||
Bevan
|
||||
Chandra
|
||||
Rafe
|
||||
Eydis
|
||||
Snorri
|
||||
Orvar
|
||||
Ragnheidr
|
||||
Tarben
|
||||
Dagrun
|
||||
Bragi
|
||||
Hakonr
|
||||
Guiscard
|
||||
Esko
|
||||
Alvar
|
||||
Turid
|
||||
Gulla
|
||||
Gudrun
|
||||
Gunnhildr
|
||||
Aki
|
||||
Skuld
|
||||
Gustavo
|
||||
Loke
|
||||
Vidar
|
||||
Gudlaug
|
||||
Hroaldr
|
||||
Asgeirr
|
||||
Svea
|
||||
Trygve
|
||||
Tora
|
||||
Audhild
|
||||
Liva
|
||||
Tyra
|
||||
Haldor
|
||||
Magnhildr
|
||||
Esbjorn
|
||||
Stigr
|
||||
Steinarr
|
||||
Ingrid
|
||||
Embla
|
||||
Ingebjorg
|
||||
Hallr
|
||||
Hallbjorn
|
||||
Brynhildr
|
||||
Solveig
|
||||
Oddvarr
|
||||
Astridr
|
||||
Randi
|
||||
Dagmar
|
||||
Indridi
|
||||
Idunn
|
||||
Hildr
|
||||
Olli
|
||||
Ingvar
|
||||
Adalsteinn
|
||||
Borghild
|
||||
Hjalmar
|
||||
Laila
|
||||
Oili
|
||||
Hege
|
||||
Torhild
|
||||
Siegfried
|
||||
Esben
|
||||
Leifr
|
||||
Halvor
|
||||
Espen
|
||||
Hilda
|
||||
Viskrhordr
|
||||
Piret
|
||||
Ulfr
|
||||
Inge
|
||||
Hjordis
|
||||
Sorley
|
||||
Baard
|
||||
Sven
|
||||
Skadi
|
||||
Leif
|
||||
Felagi
|
||||
Hugleikr
|
||||
Herleif
|
||||
Asbjorn
|
||||
Karr
|
||||
Bjarni
|
||||
Aric
|
||||
Endre
|
||||
Tasgall
|
||||
Hrafnhildr
|
||||
Torben
|
||||
Birkir
|
||||
Rollo
|
||||
Olavi
|
||||
Hagen
|
||||
Steinnunnr
|
||||
Inguna
|
||||
Havardr
|
||||
Birgitta
|
||||
Elva
|
||||
Erlingr
|
||||
Erlendur
|
||||
Regin
|
||||
Erik
|
||||
Ivor
|
||||
Finnr
|
||||
Heimir
|
||||
Arvid
|
||||
Sassa
|
||||
Arnbjorg
|
||||
Gjord
|
||||
Elwes
|
||||
Oline
|
||||
Haakon
|
||||
Askr
|
||||
Gota
|
||||
Edda
|
||||
Yngvarr
|
||||
Ari
|
||||
Birgir
|
||||
Frodr
|
||||
Oswald
|
||||
Heidrun
|
||||
Gudini
|
||||
Jorun
|
||||
Nanna
|
||||
Alf
|
||||
Sigrun
|
||||
Folki
|
||||
Oddr
|
||||
Aslaug
|
||||
Sigrid
|
||||
Nerthus
|
||||
Herta
|
||||
Ove
|
||||
Keld
|
||||
Kerr
|
||||
Magni
|
||||
Aleifr
|
||||
Torunn
|
||||
Eskil
|
||||
Eir
|
||||
Tordis
|
||||
Elof
|
||||
Bjork
|
||||
Eivind
|
||||
Freyr
|
||||
Olga
|
||||
Ealdwine
|
||||
Olafur
|
||||
Erkki
|
||||
Uilliam
|
||||
Geirr
|
||||
Stigandr
|
||||
Flaemingr
|
||||
Hallsteinn
|
||||
Hrolfr
|
||||
Helga
|
||||
Mundr
|
||||
Halfdan
|
||||
Gulbrandr
|
||||
Hrafn
|
||||
Torleif
|
||||
Gunnbjorg
|
||||
Gyda
|
||||
Donar
|
||||
Gustaaf
|
||||
Sigmundr
|
||||
Tallak
|
||||
Elvar
|
||||
Bjornar
|
||||
Ritta
|
||||
Ketil
|
||||
Hughard
|
||||
Knut
|
||||
Alvis
|
||||
Trym
|
||||
Lauge
|
||||
Oleg
|
||||
Gytha
|
||||
Ingemar
|
||||
Dasa
|
||||
Elli
|
||||
Gunnvor
|
||||
Kasen
|
||||
Volha
|
||||
Sigrsteinn
|
||||
Alfvin
|
||||
Bui
|
||||
Gudfridr
|
||||
Reidar
|
||||
Njord
|
||||
Oskari
|
||||
Sindri
|
||||
Gudbrand
|
||||
Pirjo
|
||||
Bjartr
|
||||
Asketill
|
||||
Ranulf
|
||||
Kori
|
||||
Egill
|
||||
Sundri
|
||||
Terje
|
||||
Hroarr
|
||||
Ingulfr
|
||||
Gustave
|
||||
Hroderich
|
||||
Valdis
|
||||
Gunvaldr
|
||||
Kare
|
||||
Kirkja
|
||||
Alfarr
|
||||
Arnfinnr
|
||||
Noll
|
||||
Runar
|
||||
Randi
|
||||
Torgny
|
||||
Oddbjorn
|
||||
Birgit
|
||||
Torsten
|
||||
Reginfridr
|
||||
Runi
|
||||
Ragnar
|
||||
Osten
|
||||
Oszkar
|
||||
Sondre
|
||||
Unnr
|
||||
Stian
|
||||
Andor
|
||||
Ralf
|
||||
Eysteinn
|
||||
Iivari
|
||||
Gudridur
|
||||
Bergljot
|
||||
Guusje
|
||||
Svein
|
||||
Knud
|
||||
Tova
|
||||
Inkeri
|
||||
Jalmari
|
||||
Torgeir
|
||||
Osku
|
||||
Selby
|
||||
Hlif
|
||||
Idony
|
||||
Dagmara
|
||||
Guus
|
||||
Radulfr
|
||||
Gustav
|
||||
Somhairle
|
||||
Erland
|
||||
Toril
|
||||
Asdis
|
||||
Algautr
|
||||
Audr
|
||||
Tyr
|
||||
Eerikki
|
||||
Arild
|
||||
Iomhar
|
||||
Erna
|
||||
Gustav
|
||||
Jari
|
||||
Roald
|
||||
Alfhild
|
||||
Yngvi
|
||||
Fridjofr
|
||||
Holger
|
||||
Bothildr
|
||||
Vidarr
|
||||
Astrid
|
||||
Jordis
|
||||
Tollak
|
||||
Cason
|
||||
Randolf
|
||||
Kustaa
|
||||
Sigurd
|
||||
Randall
|
||||
Ragnfridr
|
||||
Ragna
|
||||
Asvaldr
|
||||
Tormod
|
||||
Einarr
|
||||
Erich
|
||||
Ylva
|
||||
Brennan
|
||||
Gunars
|
||||
Agnarr
|
||||
Sverre
|
||||
Vetlidi
|
||||
Gudleifr
|
||||
Gaute
|
||||
Halldora
|
||||
Somerled
|
||||
Eero
|
||||
Rayner
|
||||
Dagr
|
||||
Hallvard
|
||||
Gleb
|
||||
Olivia
|
||||
Oydis
|
||||
Gardr
|
||||
Keir
|
||||
Svana
|
||||
Ivar
|
||||
Balder
|
||||
Rune
|
||||
Hemingr
|
||||
Aile
|
||||
Jarl
|
||||
Gunther
|
||||
Woden
|
||||
Pirkko
|
||||
Ingvildr
|
||||
Dagny
|
||||
Gandralfr
|
||||
Trond
|
||||
Adalbjorg
|
||||
Oden
|
||||
Grimhildr
|
||||
Idonea
|
||||
Oliwier
|
||||
Groa
|
||||
Hella
|
||||
Kriemhild
|
||||
Evander
|
||||
Soini
|
||||
Amund
|
||||
Svanhildr
|
||||
Dagnija
|
||||
Ebbe
|
||||
Oskar
|
||||
Arne
|
||||
Olaug
|
||||
Torbjorn
|
||||
Kjellfrid
|
||||
Inka
|
||||
Oystein
|
||||
Jorunnr
|
||||
Gudleif
|
||||
Frej
|
||||
Piritta
|
||||
Halle
|
||||
Solvej
|
||||
Runa
|
||||
Saga
|
||||
Brand
|
||||
Katla
|
||||
Vigdis
|
||||
Frida
|
||||
Brant
|
||||
Fritjof
|
||||
Elwin
|
||||
Steingrimr
|
||||
Dagfinnr
|
||||
Bodil
|
||||
Magnus
|
||||
Tygo
|
||||
Bjorn
|
||||
Ingegerd
|
||||
Haraldr
|
||||
Raghnaid
|
||||
Tofi
|
||||
Vegard
|
||||
Asta
|
||||
Gerd
|
||||
Gautstafr
|
||||
Torvald
|
||||
Olaf
|
||||
Amhlaidh
|
||||
Osmond
|
||||
Gunnr
|
||||
Eyvindr
|
||||
Saldis
|
||||
Igor
|
||||
Danr
|
||||
Tonje
|
||||
Gote
|
||||
Kjeld
|
||||
Jorsteinn
|
||||
Torkel
|
||||
Eira
|
||||
Baggi
|
||||
Iver
|
||||
Ragnbjorg
|
||||
Asa
|
||||
Wotan
|
||||
Eindride
|
||||
Eberhard
|
||||
Gudmundr
|
||||
Ragnhild
|
||||
Osborn
|
||||
Kalfr
|
||||
Grid
|
||||
Asmund
|
||||
Reidun
|
||||
Helka
|
||||
Jerrik
|
||||
Vigi
|
||||
Steen
|
||||
Sif
|
||||
Ruarc
|
||||
Ase
|
||||
Hama
|
||||
Ragnvald
|
||||
Knutr
|
||||
Oyvind
|
||||
|
|
|
@ -30,3 +30,53 @@ Vrusk
|
|||
Snuffle
|
||||
Leech
|
||||
Herk
|
||||
Snarl
|
||||
Gurgle
|
||||
Sniffle
|
||||
Wuffle
|
||||
Mudgo
|
||||
Stomp
|
||||
Bash
|
||||
Crush
|
||||
Snaggle
|
||||
Burp
|
||||
Stamp
|
||||
Foots
|
||||
Wart
|
||||
Guts
|
||||
Gnarl
|
||||
Smash
|
||||
Bump
|
||||
Thump
|
||||
Blig
|
||||
Blongo
|
||||
Screrk
|
||||
Blarg
|
||||
Scarg
|
||||
Scroak
|
||||
Vrig
|
||||
Vrar
|
||||
Vrugle
|
||||
Wump
|
||||
Snigger
|
||||
Gas
|
||||
Lash
|
||||
Spike
|
||||
Pointy
|
||||
Sharp
|
||||
Stig
|
||||
Scrak
|
||||
Hatch
|
||||
Slerk
|
||||
Slatch
|
||||
Grak
|
||||
Crongo
|
||||
Groongo
|
||||
Moad
|
||||
Slurgle
|
||||
Scroad
|
||||
Charl
|
||||
Sturgle
|
||||
Scrongo
|
||||
Stutch
|
||||
Charak
|
||||
|
|
|
@ -32,3 +32,55 @@
|
|||
- Wolf
|
||||
- Wood
|
||||
- Yellow
|
||||
- North
|
||||
- South
|
||||
- East
|
||||
- West
|
||||
- Summer
|
||||
- Winter
|
||||
- Fall
|
||||
- Spring
|
||||
- Iron
|
||||
- Sweet
|
||||
- Wind
|
||||
- Eagle
|
||||
- Bear
|
||||
- Ash
|
||||
- Pine
|
||||
- Oak
|
||||
- Timber
|
||||
- Gold
|
||||
- Silver
|
||||
- Hill
|
||||
- Hawk
|
||||
- Hound
|
||||
- Lion
|
||||
- Wyrm
|
||||
- Vintner
|
||||
- Little
|
||||
- Fox
|
||||
- Dry
|
||||
- Moss
|
||||
- Brittle
|
||||
- Bitter
|
||||
- Boulder
|
||||
- Dawn
|
||||
- Stag
|
||||
- Sleet
|
||||
- Wilde
|
||||
- Elder
|
||||
- Potters
|
||||
- Rain
|
||||
- Elk
|
||||
- Boar
|
||||
- Fleet
|
||||
- Mead
|
||||
- Bridge
|
||||
- Snow
|
||||
- Crow
|
||||
- Owl
|
||||
- Hammer
|
||||
- Wrath
|
||||
- Cliff
|
||||
- Good
|
||||
- Rook
|
||||
|
|
|
@ -30,3 +30,53 @@
|
|||
- home
|
||||
- wick
|
||||
- dale
|
||||
– vale
|
||||
– ton
|
||||
– don
|
||||
– ville
|
||||
– thorpe
|
||||
– stage
|
||||
– rest
|
||||
– fold
|
||||
– crest
|
||||
– tun
|
||||
– bourne
|
||||
– gap
|
||||
– valley
|
||||
– peak
|
||||
– lake
|
||||
– nest
|
||||
– tree
|
||||
– kirk
|
||||
– bay
|
||||
– henge
|
||||
– horn
|
||||
– ness
|
||||
– willow
|
||||
– beck
|
||||
– thwaite
|
||||
– brekkr
|
||||
– borough
|
||||
– dalr
|
||||
– by
|
||||
– sham
|
||||
– well
|
||||
– crossing
|
||||
– steinn
|
||||
– smith
|
||||
– grave
|
||||
– keld
|
||||
– wen
|
||||
– grove
|
||||
– ham
|
||||
– nock
|
||||
– worth
|
||||
– holm
|
||||
– haugr
|
||||
– fell
|
||||
– gate
|
||||
– mon
|
||||
– dore
|
||||
– torp
|
||||
– loft
|
||||
– vik
|
||||
|
|
|
@ -50,3 +50,93 @@
|
|||
- Vengeful outcast
|
||||
- Wrathful haunt
|
||||
- Corrupted by dark magic
|
||||
- Mystic power surges uncontrollably
|
||||
- Authoritarian leader
|
||||
- Forced labor camps
|
||||
- Contest of arms gone wrong
|
||||
- Mine collapse
|
||||
- Protection racket
|
||||
- Incoming swarm
|
||||
- Mystical blight
|
||||
- Resources depleted
|
||||
- Consequences of a forsaken vow
|
||||
- Water source dried up
|
||||
- Important object broken
|
||||
- Mystic declares a dark prophecy
|
||||
- Trade route plagued by bandits
|
||||
- Trade caravan being ambushed right now
|
||||
- Mob hunts a mystic
|
||||
- Storm damaged structures
|
||||
- Dark cult has control
|
||||
- Harvest lost
|
||||
- Forest fire
|
||||
- Rock formation collapse
|
||||
- Lack of iron
|
||||
- Winter is early
|
||||
- New settlement discovered
|
||||
- Blizzard catches them unprepared
|
||||
- Vengeful mystic's curse
|
||||
- Sacred object is lost
|
||||
- Religious leader in conflict with overseer
|
||||
- Zealots in control
|
||||
- Town bully
|
||||
- Residents too infirm to care for themselves
|
||||
- Sacrifices demanded
|
||||
- Turning a blind eye
|
||||
- Allies abandon a cause
|
||||
- Political schism
|
||||
- Ironsworn rejected
|
||||
- Many here have forsaken vows
|
||||
- Area slowly flooding
|
||||
- Treaty signing interrupted
|
||||
- Reckless upstart
|
||||
- Series of kidnapping
|
||||
- Firstborn take offense
|
||||
- Mystic ceremony interrupted
|
||||
- Horrors roam the night
|
||||
- Herds being hunted
|
||||
- Rebuilding from a recent battle
|
||||
- Citizen who was lost returns but can't speak
|
||||
- Pack of hunting animals
|
||||
- Grief-stricken over significant loss
|
||||
- Untrustworthy criminal seeks redemption
|
||||
- Settlement's chief defender has died
|
||||
- Sinkhole damages settlement
|
||||
- Surge of refugees
|
||||
- Sickness hits livestock
|
||||
- Stampede
|
||||
- Vermin infestation
|
||||
- Water source poisoned
|
||||
- Crops are ablaze
|
||||
- Dueling mystics
|
||||
- Forced to quarter bandits
|
||||
- Leader has been poisoned
|
||||
- Assassination attempt on leader
|
||||
- Smithing forge destroyed
|
||||
- Beacon fires go out
|
||||
- Need impartial judge for a trial
|
||||
- Territory dispute
|
||||
- Supplies stolen
|
||||
- Falling star lands explosively
|
||||
- Large creature burrows under structures
|
||||
- Epic beast on the move
|
||||
- Bounty hunter seeks an innocent
|
||||
- Strange formation carved in the hillside
|
||||
- Local graveyard has been desecrated
|
||||
- Celestial event causes hysteria
|
||||
- Game hunters injured
|
||||
- Cavern of creatures unearthed
|
||||
- Inexplicable deaths
|
||||
- Need to create safe trade route
|
||||
- Truce threatened
|
||||
- Elaborate hoax
|
||||
- Collapsed bridge
|
||||
- Ancestral weapon lost
|
||||
- Pillar of iron discovered
|
||||
- Rune-covered monolith has appeared
|
||||
- Permafrost spreading
|
||||
- Livestock on the loose
|
||||
- Citizens trapped in the wilderness
|
||||
- Animal traps have been destroyed
|
||||
- Mystic trapped in the throes of a ritual
|
||||
- All the children have disappeared
|
||||
|
|
23
tables/site/danger/ancient/barrow.org
Normal file
23
tables/site/danger/ancient/barrow.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Barrow
|
||||
|
||||
- Denizen guards this area
|
||||
- Trap
|
||||
- Death makes its presence known
|
||||
- Crumbling architecture
|
||||
- Grave goods with hidden dangers
|
23
tables/site/danger/ancient/cavern.org
Normal file
23
tables/site/danger/ancient/cavern.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Barrow
|
||||
|
||||
- Denizen lairs here
|
||||
- Cave-in
|
||||
- Flooding
|
||||
- Perilous climb or descent
|
||||
- Fissure or sinkhole
|
23
tables/site/danger/ancient/frozen-cavern.org
Normal file
23
tables/site/danger/ancient/frozen-cavern.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Frozen Cavern
|
||||
|
||||
- Denizen lairs here
|
||||
- Fracturing ice
|
||||
- Crumbling chasm
|
||||
- Bitter chill
|
||||
- Disorienting reflections
|
23
tables/site/danger/ancient/icereach.org
Normal file
23
tables/site/danger/ancient/icereach.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers on an Icereach
|
||||
|
||||
- Denizen hunts
|
||||
- Fragile ice above watery depths
|
||||
- Perilous climb or descent
|
||||
- Avalanche or icefall
|
||||
- Foul weather
|
23
tables/site/danger/ancient/mine.org
Normal file
23
tables/site/danger/ancient/mine.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Mine
|
||||
|
||||
- Cave-in
|
||||
- Flooding
|
||||
- Unstable platforms or architecture
|
||||
- Hazardous gas pocket
|
||||
- Weakened terrain
|
23
tables/site/danger/ancient/pass.org
Normal file
23
tables/site/danger/ancient/pass.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers of a Pass
|
||||
|
||||
- Denizen lairs here
|
||||
- Denizen hunts
|
||||
- Perilous climb or descent
|
||||
- Avalanche or rockslide
|
||||
- Foul weather
|
30
tables/site/danger/ancient/ruin.org
Normal file
30
tables/site/danger/ancient/ruin.org
Normal file
|
@ -0,0 +1,30 @@
|
|||
#+TITLE: Dangers in an Ancient Ruin
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
| 31-33 | Ancient mechanism or trap |
|
||||
| 34-36 | Collapsing wall or ceiling |
|
||||
| 36-39 | Blocked or broken passage |
|
||||
| 40-42 | Unstable floor above a new danger |
|
||||
| 43-45 | Ancient secrets best left buried |
|
||||
| 46-57 | You encounter a hostile denizen. |
|
||||
| 58-68 | You face an environmental or architectural hazard. |
|
||||
| 69-76 | A discovery undermines or complicates your quest. |
|
||||
| 77-79 | You confront a harrowing situation or sensation. |
|
||||
| 80-82 | You face the consequences of an earlier choice or approach. |
|
||||
| 83-85 | Your way is blocked or trapped. |
|
||||
| 86-88 | A resource is diminished, broken, or lost. |
|
||||
| 89-91 | You face a perplexing mystery or tough choice. |
|
||||
| 92-94 | You lose your way or are delayed. |
|
||||
| 95-00 | Roll twice more on this table. Both results occur. |
|
23
tables/site/danger/ancient/sea-cave.org
Normal file
23
tables/site/danger/ancient/sea-cave.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers of a Sea Cave
|
||||
|
||||
- Denizen strikes without warning
|
||||
- Denizen lurks below
|
||||
- Flooding
|
||||
- Rushing current
|
||||
- Claustrophobic squeeze
|
23
tables/site/danger/ancient/shadowfen.org
Normal file
23
tables/site/danger/ancient/shadowfen.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Shadowfen
|
||||
|
||||
- Denizen hunts
|
||||
- Deep water blocks the path
|
||||
- Toxic environment
|
||||
- Concealing or disorienting mist
|
||||
- Hidden quagmire
|
23
tables/site/danger/ancient/stronghold.org
Normal file
23
tables/site/danger/ancient/stronghold.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Stronghold
|
||||
|
||||
- Blocked or guarded path
|
||||
- Caught in the open
|
||||
- Chokepoint
|
||||
- Trap
|
||||
- Alarm trigger
|
23
tables/site/danger/ancient/tanglewood.org
Normal file
23
tables/site/danger/ancient/tanglewood.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in an Ancient Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
#+TITLE: Dangers in a Tangled Wood
|
||||
|
||||
- Denizen hunts
|
||||
- Denizen lairs here
|
||||
- Trap or snare
|
||||
- Path leads you astray
|
||||
- Entangling plant life
|
30
tables/site/danger/ancient/underkeep.org
Normal file
30
tables/site/danger/ancient/underkeep.org
Normal file
|
@ -0,0 +1,30 @@
|
|||
#+TITLE: Dangers in an Ancient Underkeep
|
||||
|
||||
Roll on Table: d100
|
||||
| 1-5 | Ancient trap |
|
||||
| 6-10 | Hazardous architecture or terrain |
|
||||
| 11-12 | Blocked or broken path |
|
||||
| 13-14 | Denizen protects an ancient secret |
|
||||
| 15-16 | Denizen reveres an ancient power |
|
||||
| 17-18 | Living relics of a lost age |
|
||||
| 19-20 | Ancient evil resurgent |
|
||||
| 21-22 | Dire warnings of a long-buried danger |
|
||||
| 23-24 | Ancient disease or contamination |
|
||||
| 25-26 | Artifact of terrible meaning or power |
|
||||
| 27-28 | Disturbing evidence of ancient wrongs |
|
||||
| 29-30 | Others seek power or knowledge |
|
||||
| 31-33 | Ancient mechanism or trap |
|
||||
| 34-36 | Crumbling architecture |
|
||||
| 36-39 | Blocked or broken passage |
|
||||
| 40-42 | Artifact with a hidden danger |
|
||||
| 43-45 | Denizen lurks in darkness |
|
||||
| 46-57 | You encounter a hostile denizen. |
|
||||
| 58-68 | You face an environmental or architectural hazard. |
|
||||
| 69-76 | A discovery undermines or complicates your quest. |
|
||||
| 77-79 | You confront a harrowing situation or sensation. |
|
||||
| 80-82 | You face the consequences of an earlier choice or approach. |
|
||||
| 83-85 | Your way is blocked or trapped. |
|
||||
| 86-88 | A resource is diminished, broken, or lost. |
|
||||
| 89-91 | You face a perplexing mystery or tough choice. |
|
||||
| 92-94 | You lose your way or are delayed. |
|
||||
| 95-00 | <<site/danger/ancient/underkeep>> and <<site/danger/ancient/underkeep>>
|
23
tables/site/danger/corrupted/barrow.org
Normal file
23
tables/site/danger/corrupted/barrow.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in a Corrupted Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Denizen spawned from dark magic |
|
||||
| 6-10 | Denizen controls dark magic |
|
||||
| 11-12 | Denizen corrupted by dark magic |
|
||||
| 13-14 | Corruption marks you |
|
||||
| 15-16 | Innocents held in thrall |
|
||||
| 17-18 | Revelations of a terrible truth |
|
||||
| 19-20 | Mystic trap or trigger |
|
||||
| 21-22 | Mystic barrier or ward |
|
||||
| 23-24 | Illusions lead you astray |
|
||||
| 25-26 | Dark ritual in progress |
|
||||
| 27-28 | Lingering effects of a dark ritual |
|
||||
| 29-30 | Dread harbingers of a greater magic |
|
||||
#+TITLE: Dangers in a Barrow
|
||||
|
||||
- Denizen guards this area
|
||||
- Trap
|
||||
- Death makes its presence known
|
||||
- Crumbling architecture
|
||||
- Grave goods with hidden dangers
|
23
tables/site/danger/corrupted/cavern.org
Normal file
23
tables/site/danger/corrupted/cavern.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in a Corrupted Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Denizen spawned from dark magic |
|
||||
| 6-10 | Denizen controls dark magic |
|
||||
| 11-12 | Denizen corrupted by dark magic |
|
||||
| 13-14 | Corruption marks you |
|
||||
| 15-16 | Innocents held in thrall |
|
||||
| 17-18 | Revelations of a terrible truth |
|
||||
| 19-20 | Mystic trap or trigger |
|
||||
| 21-22 | Mystic barrier or ward |
|
||||
| 23-24 | Illusions lead you astray |
|
||||
| 25-26 | Dark ritual in progress |
|
||||
| 27-28 | Lingering effects of a dark ritual |
|
||||
| 29-30 | Dread harbingers of a greater magic |
|
||||
#+TITLE: Dangers in a Barrow
|
||||
|
||||
- Denizen lairs here
|
||||
- Cave-in
|
||||
- Flooding
|
||||
- Perilous climb or descent
|
||||
- Fissure or sinkhole
|
23
tables/site/danger/corrupted/frozen-cavern.org
Normal file
23
tables/site/danger/corrupted/frozen-cavern.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in a Corrupted Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Denizen spawned from dark magic |
|
||||
| 6-10 | Denizen controls dark magic |
|
||||
| 11-12 | Denizen corrupted by dark magic |
|
||||
| 13-14 | Corruption marks you |
|
||||
| 15-16 | Innocents held in thrall |
|
||||
| 17-18 | Revelations of a terrible truth |
|
||||
| 19-20 | Mystic trap or trigger |
|
||||
| 21-22 | Mystic barrier or ward |
|
||||
| 23-24 | Illusions lead you astray |
|
||||
| 25-26 | Dark ritual in progress |
|
||||
| 27-28 | Lingering effects of a dark ritual |
|
||||
| 29-30 | Dread harbingers of a greater magic |
|
||||
#+TITLE: Dangers in a Frozen Cavern
|
||||
|
||||
- Denizen lairs here
|
||||
- Fracturing ice
|
||||
- Crumbling chasm
|
||||
- Bitter chill
|
||||
- Disorienting reflections
|
23
tables/site/danger/corrupted/icereach.org
Normal file
23
tables/site/danger/corrupted/icereach.org
Normal file
|
@ -0,0 +1,23 @@
|
|||
#+TITLE: Dangers in a Corrupted Location
|
||||
|
||||
|
||||
Roll on Table: d30
|
||||
| 1-5 | Denizen spawned from dark magic |
|
||||
| 6-10 | Denizen controls dark magic |
|
||||
| 11-12 | Denizen corrupted by dark magic |
|
||||
| 13-14 | Corruption marks you |
|
||||
| 15-16 | Innocents held in thrall |
|
||||
| 17-18 | Revelations of a terrible truth |
|
||||
| 19-20 | Mystic trap or trigger |
|
||||
| 21-22 | Mystic barrier or ward |
|
||||
| 23-24 | Illusions lead you astray |
|
||||
| 25-26 | Dark ritual in progress |
|
||||
| 27-28 | Lingering effects of a dark ritual |
|
||||
| 29-30 | Dread harbingers of a greater magic |
|
||||
#+TITLE: Dangers on an Icereach
|
||||
|
||||
- Denizen hunts
|
||||
- Fragile ice above watery depths
|
||||
- Perilous climb or descent
|
||||
- Avalanche or icefall
|
||||
- Foul weather
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue