summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--app/lib/rules/data/classes.yaml178
-rw-r--r--app/lib/rules/data/magic_items.yaml52
-rw-r--r--app/lib/rules/data/races.yaml231
-rw-r--r--app/lib/tables/data/henchmen.yaml93
-rw-r--r--app/lib/tables/data/hl_treasure.yaml54
-rw-r--r--app/lib/tables/data/magic_items.yaml60
-rw-r--r--app/lib/tables/data/npc.yaml271
-rw-r--r--app/lib/tables/data/ua_magic_items.yaml144
8 files changed, 1083 insertions, 0 deletions
diff --git a/app/lib/rules/data/classes.yaml b/app/lib/rules/data/classes.yaml
new file mode 100644
index 0000000..8d9173c
--- /dev/null
+++ b/app/lib/rules/data/classes.yaml
@@ -0,0 +1,178 @@
+cleric:
+ name: "Cleric"
+ prime_requisites:
+ - Wisdom
+ npc_ability_score_modifiers:
+ Wisdom: 2
+ chances_for_magic:
+ sword: 0
+ misc_weapon: 10
+ armor_shield: 10
+ protection: 2
+ potion: 5
+ scroll: 5
+ ring: 5
+ rod_staff_wand: 5
+ misc: 5
+
+druid:
+ name: "Druid"
+ prime_requisites:
+ - Wisdom
+ - Charisma
+ chances_for_magic:
+ sword: 0
+ misc_weapon: 10
+ armor_shield: 10
+ protection: 2
+ potion: 5
+ scroll: 5
+ ring: 5
+ rod_staff_wand: 5
+ misc: 5
+
+fighter:
+ name: "Fighter"
+ prime_requisites:
+ - Strength
+ npc_ability_score_modifiers:
+ Strength: 2
+ Constitution: 1
+ chances_for_magic:
+ sword: 10
+ misc_weapon: 5
+ armor_shield: 10
+ protection: 2
+ potion: 3
+ scroll: 1
+ ring: 5
+ rod_staff_wand: 0
+ misc: 5
+
+paladin:
+ name: "Paladin"
+ prime_requisites:
+ - Strength
+ - Wisdom
+ npc_ability_score_modifiers:
+ Strength: 2
+ Constitution: 1
+ chances_for_magic:
+ sword: 10
+ misc_weapon: 5
+ armor_shield: 10
+ protection: 2
+ potion: 3
+ scroll: 1
+ ring: 5
+ rod_staff_wand: 0
+ misc: 5
+
+ranger:
+ name: "Ranger"
+ prime_requisites:
+ - Strength
+ - Intelligence
+ - Wisdom
+ npc_ability_score_modifiers:
+ Strength: 2
+ Constitution: 1
+ chances_for_magic:
+ sword: 10
+ misc_weapon: 5
+ armor_shield: 10
+ protection: 2
+ potion: 3
+ scroll: 1
+ ring: 5
+ rod_staff_wand: 0
+ misc: 5
+
+magic-user:
+ name: "Magic-user"
+ prime_requisites:
+ - Intelligence
+ npc_ability_score_modifiers:
+ Intelligence: 2
+ Dexterity: 1
+ chances_for_magic:
+ sword: 0
+ misc_weapon: 5
+ armor_shield: 0
+ protection: 10
+ potion: 10
+ scroll: 10
+ ring: 5
+ rod_staff_wand: 5
+ misc: 5
+
+illusionist:
+ name: "Illusionist"
+ prime_requisites:
+ - Intelligence
+ - Dexterity
+ chances_for_magic:
+ sword: 0
+ misc_weapon: 5
+ armor_shield: 0
+ protection: 10
+ potion: 10
+ scroll: 10
+ ring: 5
+ rod_staff_wand: 5
+ misc: 5
+
+thief:
+ name: "Thief"
+ prime_requisites:
+ - Dexterity
+ npc_ability_score_modifiers:
+ Dexterity: 2
+ Intelligence: 1
+ chances_for_magic:
+ sword: 10
+ misc_weapon: 5
+ armor_shield: 10
+ protection: 2
+ potion: 3
+ scroll: 1
+ ring: 5
+ rod_staff_wand: 0
+ misc: 5
+
+assassin:
+ name: "Assassin"
+ prime_requisites:
+ - Strength
+ - Dexterity
+ npc_ability_score_modifiers:
+ Strength: 1
+ Dexterity: 2
+ Intelligence: 1
+ chances_for_magic:
+ sword: 10
+ misc_weapon: 5
+ armor_shield: 10
+ protection: 2
+ potion: 3
+ scroll: 1
+ ring: 5
+ rod_staff_wand: 0
+ misc: 5
+
+monk:
+ name: "Monk"
+ prime_requisites:
+ - Strength
+ - Wisdom
+ - Dexterity
+ chances_for_magic:
+ sword: 0
+ misc_weapon: 5
+ armor_shield: 0
+ protection: 2
+ potion: 0
+ scroll: 0
+ ring: 5
+ rod_staff_wand: 0
+ misc: 5
diff --git a/app/lib/rules/data/magic_items.yaml b/app/lib/rules/data/magic_items.yaml
new file mode 100644
index 0000000..d45bfdd
--- /dev/null
+++ b/app/lib/rules/data/magic_items.yaml
@@ -0,0 +1,52 @@
+#####
+# Dummy data, so we can at least generate kinds prior to having all magic items
+# implemented.
+#####
+
+potion:
+ name: "Potion"
+ kind: Potion
+
+scroll:
+ name: "Scroll"
+ kind: Scroll
+
+ring:
+ name: "Ring"
+ kind: Ring
+
+rod_staff_wand:
+ name: "Rod/Staff/Wand"
+ kind: RodStaffWand
+
+misc:
+ name: "Misc"
+ kind: Misc
+
+armor_shield:
+ name: "Armor/Shield"
+ kind: ArmorShield
+
+sword:
+ name: "Sword"
+ kind: Sword
+
+protection:
+ name: "Protection"
+ kind: Ring # Not actually, but this is fine for now.
+
+#####
+# Remainder of file is actual data.
+#####
+
+sword_plus_one:
+ name: "Sword +1"
+ kind: Sword
+
+ring_of_animal_friendship:
+ name: "Ring of Animal Friendship"
+ kind: Ring
+
+rod_of_absorption:
+ name: "Rod of Absorption (C, M)"
+ kind: RodStaffWand
diff --git a/app/lib/rules/data/races.yaml b/app/lib/rules/data/races.yaml
new file mode 100644
index 0000000..f052e8d
--- /dev/null
+++ b/app/lib/rules/data/races.yaml
@@ -0,0 +1,231 @@
+dwarf:
+ name: "Dwarf"
+ ability_score_modifiers:
+ Constitution: 1
+ Charisma: -1
+ npc_ability_score_modifiers:
+ Strength: 1
+ Constitution: 1
+ Charisma: -1
+ ability_score_ranges:
+ Strength:
+ male: [8, 18]
+ female: []
+ Intelligence:
+ male: [3, 18]
+ female: []
+ Wisdom:
+ male: [3, 18]
+ female: []
+ Dexterity:
+ male: [3, 17]
+ female: []
+ Constitution:
+ male: [12, 19]
+ female: []
+ Charisma:
+ male: [3, 16]
+ female: []
+ level_limits:
+ fighter: 9
+ thief: 9999
+ assassin: 9
+
+elf:
+ name: "Elf"
+ ability_score_modifiers:
+ Dexterity: 1
+ Constitution: -1
+ npc_ability_score_modifiers:
+ Intelligence: 1
+ Dexterity: 1
+ ability_score_ranges:
+ Strength:
+ male: [3, 18]
+ female: []
+ Intelligence:
+ male: [8, 18]
+ female: []
+ Wisdom:
+ male: [3, 18]
+ female: []
+ Dexterity:
+ male: [7, 19]
+ female: []
+ Constitution:
+ male: [6, 18]
+ female: []
+ Charisma:
+ male: [8, 18]
+ female: []
+ level_limits:
+ fighter: 7
+ magic-user: 11
+ thief: 9999
+ assassin: 10
+
+gnome:
+ name: "Gnome"
+ ability_score_modifiers:
+ npc_ability_score_modifiers:
+ Wisdom: 1
+ Constitution: 1
+ Charisma: -1
+ ability_score_ranges:
+ Strength:
+ male: [6, 18]
+ female: []
+ Intelligence:
+ male: [7, 18]
+ female: []
+ Wisdom:
+ male: [3, 18]
+ female: []
+ Dexterity:
+ male: [3, 18]
+ female: []
+ Constitution:
+ male: [8, 18]
+ female: []
+ Charisma:
+ male: [3, 18]
+ female: []
+ level_limits:
+ fighter: 6
+ illusionist: 7
+ thief: 9999
+ assassin: 8
+
+half-elf:
+ name: "Half-elf"
+ ability_score_modifiers:
+ npc_ability_score_modifiers:
+ ability_score_ranges:
+ Strength:
+ male: [3, 18]
+ female: []
+ Intelligence:
+ male: [4, 18]
+ female: []
+ Wisdom:
+ male: [3, 18]
+ female: []
+ Dexterity:
+ male: [6, 18]
+ female: []
+ Constitution:
+ male: [6, 18]
+ female: []
+ Charisma:
+ male: [3, 18]
+ female: []
+ level_limits:
+ cleric: 5
+ druid: 9999
+ fighter: 8
+ ranger: 8
+ magic-user: 8
+ thief: 9999
+ assassin: 11
+ bard: 23
+
+halfling:
+ name: "Halfling"
+ ability_score_modifiers:
+ Strength: -1
+ Dexterity: 1
+ npc_ability_score_modifiers:
+ Dexterity: 1
+ Constitution: 1
+ ability_score_ranges:
+ Strength:
+ male: [6, 17]
+ female: []
+ Intelligence:
+ male: [6, 18]
+ female: []
+ Wisdom:
+ male: [3, 17]
+ female: []
+ Dexterity:
+ male: [8, 18]
+ female: []
+ Constitution:
+ male: [10, 19]
+ female: []
+ Charisma:
+ male: [3, 18]
+ female: []
+ level_limits:
+ fighter: 6
+ thief: 9999
+
+half-orc:
+ name: "Half-orc"
+ ability_score_modifiers:
+ Strength: 1
+ Constitution: 1
+ Charisma: -2
+ npc_ability_score_modifiers:
+ Dexterity: 1
+ Constitution: 1
+ ability_score_ranges:
+ Strength:
+ male: [6, 18]
+ female: []
+ Intelligence:
+ male: [3, 17]
+ female: []
+ Wisdom:
+ male: [3, 14]
+ female: []
+ Dexterity:
+ male: [3, 17]
+ female: []
+ Constitution:
+ male: [13, 19]
+ female: []
+ Charisma:
+ male: [3, 12]
+ female: []
+ level_limits:
+ cleric: 4
+ fighter: 10
+ thief: 8
+ assassin: 9999
+
+human:
+ name: "Human"
+ ability_score_modifiers:
+ npc_ability_score_modifiers:
+ ability_score_ranges:
+ Strength:
+ male: [3, 18]
+ female: []
+ Intelligence:
+ male: [3, 18]
+ female: []
+ Wisdom:
+ male: [3, 18]
+ female: []
+ Dexterity:
+ male: [3, 18]
+ female: []
+ Constitution:
+ male: [3, 18]
+ female: []
+ Charisma:
+ male: [3, 18]
+ female: []
+ level_limits:
+ cleric: 9999
+ druid: 9999
+ fighter: 9999
+ paladin: 9999
+ ranger: 9999
+ magic-user: 9999
+ illusionist: 9999
+ thief: 9999
+ assassin: 9999
+ monk: 9999
+ bard: 23
diff --git a/app/lib/tables/data/henchmen.yaml b/app/lib/tables/data/henchmen.yaml
new file mode 100644
index 0000000..e9aa3ef
--- /dev/null
+++ b/app/lib/tables/data/henchmen.yaml
@@ -0,0 +1,93 @@
+henchman_race:
+ formula: d100
+ rows:
+ - roll: 1-80
+ steps:
+ - text: "Human"
+ - roll: 81-100
+ steps:
+ - table: henchman_nonhuman_race
+henchman_nonhuman_race:
+ formula: d100
+ rows:
+ - roll: 1-25
+ steps:
+ - text: "Dwarf"
+ - roll: 26-50
+ steps:
+ - text: "Elf"
+ - roll: 51-60
+ steps:
+ - text: "Gnome"
+ - roll: 61-85
+ steps:
+ - text: "Half-elf"
+ - roll: 86-95
+ steps:
+ - text: "Halfling"
+ - roll: 96-100
+ steps:
+ - text: "Half-orc"
+
+henchman_class:
+ formula: d100
+ rows:
+ - roll: 1-20
+ steps:
+ - table: henchman_cleric_class
+ - roll: 21-64
+ steps:
+ - table: henchman_fighter_class
+ - roll: 65-84
+ steps:
+ - table: henchman_magic-user_class
+ - roll: 85-99
+ steps:
+ - table: henchman_thief_class
+ - roll: 100
+ steps:
+ - text: "Monk"
+
+
+henchman_cleric_class:
+ formula: d6
+ rows:
+ - roll: 1
+ steps:
+ - class: druid
+ - roll: 2-6
+ steps:
+ - class: cleric
+
+henchman_fighter_class:
+ formula: d10
+ rows:
+ - roll: 1
+ steps:
+ - class: ranger
+ - roll: 2
+ steps:
+ - class: paladin
+ - roll: 3-10
+ steps:
+ - class: fighter
+
+henchman_magic-user_class:
+ formula: d6
+ rows:
+ - roll: 1
+ steps:
+ - class: illusionist
+ - roll: 2-6
+ steps:
+ - class: magic-user
+
+henchman_thief_class:
+ formula: d6
+ rows:
+ - roll: 1
+ steps:
+ - class: assassin
+ - roll: 2-6
+ steps:
+ - class: thief
diff --git a/app/lib/tables/data/hl_treasure.yaml b/app/lib/tables/data/hl_treasure.yaml
new file mode 100644
index 0000000..2900f3e
--- /dev/null
+++ b/app/lib/tables/data/hl_treasure.yaml
@@ -0,0 +1,54 @@
+hl_longsword_type:
+ formula: d100
+ rows:
+ - roll: 1-90
+ steps:
+ - text: "Longsword"
+ - roll: 91-100
+ steps:
+ - text: "Rapier"
+
+hl_short_sword_type:
+ formula: d100
+ rows:
+ - roll: 1-75
+ steps:
+ - text: "Short sword"
+ - roll: 76-100
+ steps:
+ - text: "Epee"
+
+hl_scimitar_type:
+ formula: d100
+ rows:
+ - roll: 1-60
+ steps:
+ - text: "Scimitar"
+ - roll: 76-100
+ steps:
+ - text: "Katana"
+
+hl_non_magic:
+ formula: d100
+ rows:
+ - roll: 1-25
+ steps:
+ - text: "Copper pieces (or combined horde if DL 6+)"
+ - roll: 26-50
+ steps:
+ - text: "Silver pieces"
+ - roll: 51-65
+ steps:
+ - text: "Electrum pieces"
+ - roll: 66-80
+ steps:
+ - text: "Gold pieces"
+ - roll: 81-90
+ steps:
+ - text: "Platinum pieces"
+ - roll: 91-96
+ steps:
+ - text: "Gems"
+ - roll: 97-100
+ steps:
+ - text: "Jewelry"
diff --git a/app/lib/tables/data/magic_items.yaml b/app/lib/tables/data/magic_items.yaml
new file mode 100644
index 0000000..7ed6ddc
--- /dev/null
+++ b/app/lib/tables/data/magic_items.yaml
@@ -0,0 +1,60 @@
+magic_maps:
+ formula: d100
+ rows:
+ - roll: 1-5
+ steps:
+ - text: "Map (false)"
+ - roll: 6-70
+ steps:
+ - text: "Map (monetary treasure)"
+ - roll: 71-90
+ steps:
+ - text: "Map (magic treasure)"
+ - roll: 91-100
+ steps:
+ - text: "Map (combined horde)"
+
+
+sword_intelligence:
+ formula: d100
+ rows:
+ - roll: 1-75
+ steps:
+ - text: ""
+ - roll: 76-83
+ steps:
+ - text: "INT 12"
+ - roll: 84-89
+ steps:
+ - text: "INT 13"
+ - roll: 90-94
+ steps:
+ - text: "INT 14"
+ - roll: 95-97
+ steps:
+ - text: "INT 15"
+ - roll: 98-99
+ steps:
+ - text: "INT 16"
+ - roll: 100
+ steps:
+ - text: "INT 17"
+
+sword_type:
+ formula: d100
+ rows:
+ - roll: 1-70
+ steps:
+ - table: hl_longsword_type
+ - roll: 71-90
+ steps:
+ - text: "Broadsword"
+ - roll: 91-95
+ steps:
+ - text: hl_short_sword_type
+ - roll: 96-99
+ steps:
+ - text: "Bastard sword"
+ - roll: 100
+ steps:
+ - text: "Two-handed sword"
diff --git a/app/lib/tables/data/npc.yaml b/app/lib/tables/data/npc.yaml
new file mode 100644
index 0000000..5c8b7fe
--- /dev/null
+++ b/app/lib/tables/data/npc.yaml
@@ -0,0 +1,271 @@
+npc_alignment:
+ formula: d10
+ rows:
+ - roll: 1
+ steps:
+ - text: "Lawful Good"
+ - roll: 2
+ steps:
+ - text: "Lawful Neutral"
+ - roll: 3
+ steps:
+ - text: "Lawful Evil"
+ - roll: 4
+ steps:
+ - text: "Neutral Evil"
+ - roll: 5
+ steps:
+ - text: "Chaotic Evil"
+ - roll: 6
+ steps:
+ - text: "Chaotic Neutral"
+ - roll: 7
+ steps:
+ - text: "Chaotic Good"
+ - roll: 8
+ steps:
+ - text: "Neutral Good"
+ - roll: 9-10
+ steps:
+ - text: "Neutral"
+
+npc_general_appearance:
+ formula: d10
+ rows:
+ - roll: 1
+ steps:
+ - text: "dirty"
+ - roll: 2
+ steps:
+ - text: "clean"
+ - roll: 3
+ steps:
+ - text: "unkept"
+ - roll: 4
+ steps:
+ - text: "immaculate"
+ - roll: 5
+ steps:
+ - text: "rough"
+ - roll: 6
+ steps:
+ - text: "ragged"
+ - roll: 7
+ steps:
+ - text: "dandyish"
+ - roll: 8
+ steps:
+ - text: "foppish"
+ - roll: 9
+ steps:
+ - text: "non-descript"
+ - roll: 10
+ steps:
+ - text: "imposing"
+
+npc_general_tendencies:
+ formula: d24
+ rows:
+ - roll: 1
+ steps:
+ - text: "optimist"
+ - roll: 2
+ steps:
+ - text: "pessimist"
+ - roll: 3
+ steps:
+ - text: "hedonist"
+ - roll: 4
+ steps:
+ - text: "altruist"
+ - roll: 5
+ steps:
+ - text: "helpful/kindly"
+ - roll: 6
+ steps:
+ - text: "careless"
+ - roll: 7
+ steps:
+ - text: "capricious/mischievous"
+ - roll: 8
+ steps:
+ - text: "sober"
+ - roll: 9
+ steps:
+ - text: "curious/inquisitive"
+ - roll: 10
+ steps:
+ - text: "moody"
+ - roll: 11
+ steps:
+ - text: "trusting"
+ - roll: 12
+ steps:
+ - text: "suspicious/cautious"
+ - roll: 13
+ steps:
+ - text: "precise/exacting"
+ - roll: 14
+ steps:
+ - text: "perceptive"
+ - roll: 15
+ steps:
+ - text: "opinionated/contrary"
+ - roll: 16
+ steps:
+ - text: "violent/warlike"
+ - roll: 17
+ steps:
+ - text: "studious"
+ - roll: 18
+ steps:
+ - text: "foul/barbaric"
+ - roll: 19
+ steps:
+ - text: "cruel/callous"
+ - roll: 20
+ steps:
+ - text: "practical joker/prankster"
+ - roll: 21
+ steps:
+ - text: "servile/obsequious"
+ - roll: 22
+ steps:
+ - text: "fanatical/obsessive"
+ - roll: 23
+ steps:
+ - text: "malevolent"
+ - roll: 24
+ steps:
+ - text: "loquacious"
+
+npc_personality:
+ formula: d8
+ rows:
+ - roll: 1-5
+ steps:
+ - table: npc_average_personality
+ - roll: 6-7
+ steps:
+ - table: npc_extroverted_personality
+ - roll: 8
+ steps:
+ - table: npc_introverted_personality
+
+npc_average_personality:
+ formula: d8
+ rows:
+ - roll: 1
+ steps:
+ - text: "modest"
+ - roll: 2
+ steps:
+ - text: "egoist/arrogant"
+ - roll: 3
+ steps:
+ - text: "friendly"
+ - roll: 4
+ steps:
+ - text: "aloof"
+ - roll: 5
+ steps:
+ - text: "hostile"
+ - roll: 6
+ steps:
+ - text: "well-spoken"
+ - roll: 7
+ steps:
+ - text: "diplomatic"
+ - roll: 8
+ steps:
+ - text: "abrasive"
+
+npc_extroverted_personality:
+ formula: d8
+ rows:
+ - roll: 1
+ steps:
+ - text: "forceful"
+ - roll: 2
+ steps:
+ - text: "overbearing"
+ - roll: 3
+ steps:
+ - text: "friendly"
+ - roll: 4
+ steps:
+ - text: "blustering"
+ - roll: 5
+ steps:
+ - text: "antagonistic"
+ - roll: 6
+ steps:
+ - text: "rude"
+ - roll: 7
+ steps:
+ - text: "rash"
+ - roll: 8
+ steps:
+ - text: "diplomatic"
+
+npc_introverted_personality:
+ formula: d8
+ rows:
+ - roll: 1
+ steps:
+ - text: "retiring"
+ - roll: 2
+ steps:
+ - text: "taciturn"
+ - roll: 3
+ steps:
+ - text: "friendly"
+ - roll: 4
+ steps:
+ - text: "aloof"
+ - roll: 5
+ steps:
+ - text: "hostile"
+ - roll: 6
+ steps:
+ - text: "rude"
+ - roll: 7
+ steps:
+ - text: "courteous"
+ - roll: 8
+ steps:
+ - text: "solitary/secretive"
+
+npc_disposition:
+ formula: d10
+ rows:
+ - roll: 1
+ steps:
+ - text: "cheerful"
+ - roll: 2
+ steps:
+ - text: "morose"
+ - roll: 3
+ steps:
+ - text: "compassionate/sensitive"
+ - roll: 4
+ steps:
+ - text: "unfeeling/insensitive"
+ - roll: 5
+ steps:
+ - text: "humble"
+ - roll: 6
+ steps:
+ - text: "proud/haughty"
+ - roll: 7
+ steps:
+ - text: "even tempered"
+ - roll: 8
+ steps:
+ - text: "hot tempered"
+ - roll: 9
+ steps:
+ - text: "easy going"
+ - roll: 10
+ steps:
+ - text: "harsh"
diff --git a/app/lib/tables/data/ua_magic_items.yaml b/app/lib/tables/data/ua_magic_items.yaml
new file mode 100644
index 0000000..3fa8e5b
--- /dev/null
+++ b/app/lib/tables/data/ua_magic_items.yaml
@@ -0,0 +1,144 @@
+ua_magic:
+ formula: d100
+ rows:
+ - roll: 1-10
+ steps:
+ - table: magic_maps
+ - roll: 11-100
+ steps:
+ - table: ua_magic_items
+
+ua_magic_items:
+ formula: d100
+ rows:
+ - roll: 1-20
+ steps:
+ - text: "Potion"
+ - table: ua_potions
+ - roll: 21-35
+ steps:
+ - text: "Scroll"
+ - table: ua_scrolls
+ - roll: 36-40
+ steps:
+ - text: "Ring"
+ - table: ua_rings
+ - roll: 41-45
+ steps:
+ - text: "Rod/Staff/Wand"
+ - table: ua_rod_staff_wand
+ - roll: 46-60
+ steps:
+ - text: "Misc. Magic"
+ - table: ua_misc_magic
+ - roll: 61-75
+ steps:
+ - text: "Armor/Shield"
+ - table: ua_armor_shields
+ - roll: 76-86
+ steps:
+ - text: "Sword"
+ - table: ua_swords
+ - roll: 87-100
+ steps:
+ - text: "Misc. Weapon"
+ - table: ua_misc_weapons
+
+ua_potions:
+ formula: d100
+ rows:
+ - roll: 1-65
+ steps:
+ - text: "Table 1"
+ - roll: 66-100
+ steps:
+ - text: "Table 2"
+
+ua_scrolls:
+ formula: d100
+ rows:
+ - roll: 1-85
+ steps:
+ - text: "Table 1"
+ - roll: 86-100
+ steps:
+ - text: "Table 2"
+
+ua_rings:
+ formula: d100
+ rows:
+ - roll: 1-67
+ steps:
+ - text: "Table 1"
+ - roll: 68-100
+ steps:
+ - text: "Table 2"
+
+ua_rod_staff_wand:
+ formula: d100
+ rows:
+ - roll: 1-40
+ steps:
+ - text: "Table 1"
+ - roll: 41-100
+ steps:
+ - text: "Table 2"
+
+ua_misc_magic:
+ formula: d100
+ rows:
+ - roll: 1-14
+ steps:
+ - text: "Table 1"
+ - roll: 15-28
+ steps:
+ - text: "Table 2"
+ - roll: 29-42
+ steps:
+ - text: "Table 3"
+ - roll: 43-56
+ steps:
+ - text: "Table 4"
+ - roll: 57-70
+ steps:
+ - text: "Table 5"
+ - roll: 71-85
+ steps:
+ - text: "Table 6"
+ - roll: 86-100
+ steps:
+ - text: "Table 7"
+
+ua_armor_shields:
+ formula: d100
+ rows:
+ - roll: 1-50
+ steps:
+ - text: "Table 1"
+ - roll: 51-100
+ steps:
+ - text: "Table 2"
+
+ua_swords:
+ formula: d100
+ rows:
+ - roll: 1-95
+ steps:
+ - text: "Table 1"
+ - table: sword_type
+ - table: sword_intelligence
+ - roll: 96-100
+ steps:
+ - text: "Table 2"
+ - table: sword_type
+ - table: sword_intelligence
+
+ua_misc_weapons:
+ formula: d100
+ rows:
+ - roll: 1-50
+ steps:
+ - text: "Table 1"
+ - roll: 51-100
+ steps:
+ - text: "Table 2"