dunmanifestin 0.0.3 → 0.0.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/bin/dunmanifestin +1 -1
- data/lib/dunmanifestin/list.rb +5 -4
- data/lib/dunmanifestin/list_loader.rb +31 -23
- data/lists/default/baseItem +21 -30
- data/lists/default/place +2 -2
- data/lists/default/settlementDetail +5 -5
- data/lists/default/structureDetail +6 -6
- data/lists/default/{clothing → vestment} +2 -1
- data/lists/default/weapon +17 -73
- data/lists/default/weaponName +72 -0
- data/lists/gritty-horror-fantasty/familiarPlace +28 -0
- data/lists/gritty-horror-fantasty/plotHook +11 -0
- data/lists/gritty-horror-fantasty/root +1 -1
- metadata +35 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: a2143a6987f15b05dfbf4f69b71779c301eceab4
|
4
|
+
data.tar.gz: 0651b4efe3c773a6b6f232212e51200c0195b9b1
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2b6b5c97220bbcd08798b3b666505b5e3cb5487eeb3de1976f731a3948ad864f7136bc45b61c866ebf5c00911c9eaf2949907d53286fd1a909b98411eca94c3a
|
7
|
+
data.tar.gz: 65d95d634c347bad6bdcb8bded9353641fd17497c6df4e45277cf4cd83addf32933fac484fedf3d333c7bbe11df9c3d3517abd2934eb30ec16865f68c2673f70
|
data/bin/dunmanifestin
CHANGED
@@ -8,7 +8,7 @@ user_demands = Trollop::options do
|
|
8
8
|
opt :interactive, "Use an interactive command prompt", short: '-i'
|
9
9
|
opt :count, "Specify how many lines of output to generate at once", type: :integer, short: '-n'
|
10
10
|
opt :copy, "Copies manifestation into your clipboard", short: '-c'
|
11
|
-
opt :genre, "Specify a genre, e.g. '-g scifi'", type: :string, short: '-g', default: 'default'
|
11
|
+
opt :genre, "Specify a genre by filepath, e.g. '-g lists/scifi/'", type: :string, short: '-g', default: 'default'
|
12
12
|
opt :phrase, "Specify a phrase or list, e.g. 'The [animal] sat on the [article]' or '[weapon]'", type: :string, short: '-p'
|
13
13
|
opt :chomp, "remove the trailing newline from the output", short: '-h'
|
14
14
|
opt :file, "Read a file as the phrase", type: :string, short: '-f'
|
data/lib/dunmanifestin/list.rb
CHANGED
@@ -6,9 +6,10 @@ class List
|
|
6
6
|
@members = opts.fetch(:members, [])
|
7
7
|
@universe = opts.fetch(:universe)
|
8
8
|
@universe.lists[name] = self
|
9
|
+
puts members
|
9
10
|
end
|
10
11
|
|
11
|
-
|
12
|
+
|
12
13
|
def << rough_member
|
13
14
|
pieces = rough_member.split('@')
|
14
15
|
|
@@ -20,11 +21,11 @@ class List
|
|
20
21
|
|
21
22
|
weight.times { members << member }
|
22
23
|
end
|
23
|
-
|
24
|
+
|
24
25
|
def sample
|
25
26
|
members.sample
|
26
27
|
end
|
27
28
|
|
28
|
-
private
|
29
|
+
private
|
29
30
|
attr_accessor :members, :universe
|
30
|
-
end
|
31
|
+
end
|
@@ -1,42 +1,50 @@
|
|
1
1
|
class ListLoader
|
2
2
|
class << self
|
3
3
|
def load genre=@genre
|
4
|
-
Dir[
|
5
|
-
|
4
|
+
Dir[DEFAULT_GENRE].each(&method(:expose_palettes))
|
5
|
+
load_genre(genre).each(&method(:expose_palettes)) unless genre == 'default'
|
6
6
|
end
|
7
7
|
|
8
8
|
private
|
9
|
+
PALETTE_TITLE = /^\|(.*?)\n/
|
10
|
+
GAP_BETWEEN_LISTS = /\n(?=\|)/
|
11
|
+
DEFAULT_GENRE = File.join(*%W(#{File.dirname(__FILE__)} .. .. lists default ** *))
|
9
12
|
|
10
|
-
def
|
11
|
-
|
12
|
-
File.join(*%W(#{dir_of_this_file} .. .. lists #{genre} ** *))
|
13
|
+
def load_genre dirname
|
14
|
+
Dir[File.join(dirname, '**' '*')]
|
13
15
|
end
|
14
16
|
|
15
|
-
def
|
16
|
-
|
17
|
-
|
18
|
-
|
17
|
+
def expose_palettes path
|
18
|
+
File.open(path).read.split(GAP_BETWEEN_LISTS)
|
19
|
+
.each &method(:expose_swatches)
|
20
|
+
end
|
19
21
|
|
20
|
-
|
21
|
-
|
22
|
-
list_name = _list.match(everything_up_to_the_first_newline_if_first_character_is_a_pipe)[1].to_s
|
22
|
+
def expose_swatches body
|
23
|
+
list_name = body.match(PALETTE_TITLE)[1].to_s
|
23
24
|
|
24
25
|
if list_name.empty?
|
25
|
-
|
26
|
+
# This seems to support palettes without |explicitTitles,
|
27
|
+
# Taking them from the filename, instead.
|
28
|
+
list_name = Pathname.new(path).basename
|
26
29
|
else
|
27
|
-
|
30
|
+
# Do not include palette title as a swatch
|
31
|
+
# These comments should be tests.
|
32
|
+
body.gsub!(PALETTE_TITLE, '')
|
28
33
|
end
|
29
34
|
|
30
|
-
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
Phrase.const_set phrase_class_name, qlass
|
36
|
-
end
|
35
|
+
# This metaprogramming is mysterious to me.
|
36
|
+
qlass = declare_phrase_class list_name
|
37
|
+
# Where is 'list' defined?
|
38
|
+
qlass.list body
|
39
|
+
end
|
37
40
|
|
38
|
-
|
39
|
-
|
41
|
+
def declare_phrase_class list_name
|
42
|
+
name = list_name.underscore.camelize
|
43
|
+
qlass = "Phrase::#{name}".constantize
|
44
|
+
rescue NameError
|
45
|
+
# This seems to always happen.
|
46
|
+
qlass = Class.new(Phrase)
|
47
|
+
Phrase.const_set name, qlass
|
40
48
|
end
|
41
49
|
end
|
42
50
|
end
|
data/lists/default/baseItem
CHANGED
@@ -3,45 +3,36 @@
|
|
3
3
|
[nonPreciousMetal] shovel
|
4
4
|
[nonPreciousMetal] trawl
|
5
5
|
[nonPreciousMetal] sword
|
6
|
+
[utensil]
|
7
|
+
[instrument]
|
8
|
+
[tool]
|
9
|
+
[weapon]
|
10
|
+
[vestment]
|
11
|
+
|
12
|
+
|utensil
|
13
|
+
bowl
|
6
14
|
bowl made of [hardMaterial]
|
7
15
|
wand made of [hardMaterial]
|
16
|
+
knife
|
17
|
+
spoon
|
18
|
+
wand
|
19
|
+
orb
|
20
|
+
|
21
|
+
|instrument
|
22
|
+
whistle
|
23
|
+
pipe
|
24
|
+
pipe made of [hardMaterial]
|
25
|
+
bagpipe
|
26
|
+
|
27
|
+
|tool
|
8
28
|
[metal] axe
|
9
29
|
[metal] knife
|
10
30
|
shovel
|
11
31
|
trawl
|
12
|
-
sword
|
13
|
-
axe
|
14
32
|
plough
|
15
|
-
bowl
|
16
33
|
knife
|
17
34
|
hammer
|
18
|
-
club
|
19
|
-
spoon
|
20
|
-
bow
|
21
|
-
spear
|
22
|
-
staff
|
23
|
-
gun
|
24
|
-
dagger
|
25
|
-
crossbow
|
26
|
-
wand
|
27
|
-
mace
|
28
|
-
polearm
|
29
|
-
cannon
|
30
|
-
halberd
|
31
|
-
orb
|
32
|
-
lance
|
33
35
|
power saw
|
34
|
-
whistle
|
35
|
-
pipe
|
36
|
-
pipe made of [hardMaterial]
|
37
|
-
shield
|
38
|
-
javelin
|
39
|
-
claw
|
40
36
|
peg leg
|
41
37
|
hook for a hand
|
42
|
-
|
43
|
-
fuzzy hat
|
44
|
-
flail
|
45
|
-
bagpipe
|
46
|
-
book
|
47
|
-
|
38
|
+
crowbar
|
data/lists/default/place
CHANGED
@@ -3,8 +3,8 @@
|
|
3
3
|
10@[structure]
|
4
4
|
|
5
5
|
|settlement
|
6
|
-
[placeName], [settlementType.article] built on [geologicalFormation.article] in [province]
|
6
|
+
[placeName], [settlementType.article] built on [geologicalFormation.article] in [province] and [settlementDetail]
|
7
7
|
|
8
8
|
|structure
|
9
|
-
[placeName], [structureType.article] built on [geologicalFormation.article] in [province]
|
9
|
+
[placeName], [structureType.article] built on [geologicalFormation.article] in [province] and [structureDetail]
|
10
10
|
|
@@ -1,6 +1,6 @@
|
|
1
1
|
|settlementDetail
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
2
|
+
well-known to have an economy based on [economy]
|
3
|
+
known for its many [buildingType.plural] and [quality] populace
|
4
|
+
known for being the home of [denizen]
|
5
|
+
known to be a once-thriving hub of [facetOfCulture]
|
6
|
+
infamous for inhabitants who are [attitude] towards [race.plural]
|
@@ -1,8 +1,8 @@
|
|
1
1
|
|structureDetail
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
2
|
+
famous for being the target of an attack by [personName] and [group.article] of [raceOrProfession.plural] with [baseItem.plural]
|
3
|
+
famous for being the target of an attack by [denizen]
|
4
|
+
rumored to hide the treasure of [personName] beneath its foundations: [artefact]
|
5
|
+
rumored to be haunted by the ghost of [person]
|
6
|
+
said to contain many priceless artifacts made of [hardMaterial]
|
7
|
+
said to contain many [baseItem.plural] made of [hardMaterial]
|
8
8
|
|
data/lists/default/weapon
CHANGED
@@ -3,6 +3,21 @@
|
|
3
3
|
2@[bow#plural]
|
4
4
|
[bow#plural] and [arrow.plural]
|
5
5
|
2@[knife#plural]
|
6
|
+
axe
|
7
|
+
club
|
8
|
+
bow
|
9
|
+
spear
|
10
|
+
staff
|
11
|
+
gun
|
12
|
+
mace
|
13
|
+
polearm
|
14
|
+
cannon
|
15
|
+
halberd
|
16
|
+
lance
|
17
|
+
shield
|
18
|
+
javelin
|
19
|
+
claw
|
20
|
+
flail
|
6
21
|
|
7
22
|
|sword
|
8
23
|
[nonPreciousMetal] [swordType#plural]
|
@@ -51,6 +66,7 @@ barbed [arrowType#plural]
|
|
51
66
|
|
52
67
|
|arrowType
|
53
68
|
arrow
|
69
|
+
bolt
|
54
70
|
|
55
71
|
|arrowShaftType
|
56
72
|
shaft
|
@@ -68,82 +84,10 @@ shaft
|
|
68
84
|
[itemQuality] [knifeType#plural] inlaid with [preciousMetal]
|
69
85
|
[itemQuality] [knifeType#plural] with [preciousStone.article] on the handle
|
70
86
|
[itemQuality] [knifeType#plural] encrusted with [preciousStone.plural]
|
71
|
-
[nonPreciousMetal] [knifeType#plural] named [weaponName]
|
87
|
+
[nonPreciousMetal] [knifeType#plural] named [weaponName]
|
72
88
|
|
73
89
|
|knifeType
|
74
90
|
5@knife
|
75
91
|
hunting knife
|
76
92
|
dagger
|
77
93
|
cleaver
|
78
|
-
|
79
|
-
|weaponName
|
80
|
-
6@[weaponNameInitial][weaponNameVowel][weaponNameConsonant][weaponNameSuffix]
|
81
|
-
2@[weaponNameInitial][weaponNameVowel][weaponNameConsonant]
|
82
|
-
[weaponNameInitialVowel][weaponNameConsonant][weaponNameVowel][weaponNameConsonant]
|
83
|
-
[weaponNameInitialVowel][weaponNameConsonant][weaponNameVowel][weaponNameConsonant][weaponNameSuffix]
|
84
|
-
[name]
|
85
|
-
[weaponName]-[weaponName]
|
86
|
-
|
87
|
-
|weaponNameInitial
|
88
|
-
Kr
|
89
|
-
Gr
|
90
|
-
Gl
|
91
|
-
K
|
92
|
-
G
|
93
|
-
D
|
94
|
-
Th
|
95
|
-
Ch
|
96
|
-
S
|
97
|
-
Sh
|
98
|
-
Dr
|
99
|
-
|
100
|
-
|weaponNameVowel
|
101
|
-
3@a
|
102
|
-
3@o
|
103
|
-
2@au
|
104
|
-
2@i
|
105
|
-
u
|
106
|
-
e
|
107
|
-
aa
|
108
|
-
|
109
|
-
|weaponNameInitialVowel
|
110
|
-
3@A
|
111
|
-
3@O
|
112
|
-
2@Au
|
113
|
-
2@I
|
114
|
-
U
|
115
|
-
E
|
116
|
-
|
117
|
-
|weaponNameConsonant
|
118
|
-
n
|
119
|
-
l
|
120
|
-
r
|
121
|
-
sh
|
122
|
-
th
|
123
|
-
dh
|
124
|
-
rh
|
125
|
-
lh
|
126
|
-
g
|
127
|
-
|
128
|
-
|weaponNameSuffix
|
129
|
-
or
|
130
|
-
ex
|
131
|
-
ic
|
132
|
-
il
|
133
|
-
tar
|
134
|
-
gar
|
135
|
-
og
|
136
|
-
rok
|
137
|
-
nor
|
138
|
-
w
|
139
|
-
rist
|
140
|
-
anz
|
141
|
-
az
|
142
|
-
|
143
|
-
|weaponEpithet
|
144
|
-
[race]bane
|
145
|
-
[monster]bane
|
146
|
-
the [monster]-slayer
|
147
|
-
slayer of [monster.plural]
|
148
|
-
bane of [monster.plural]
|
149
|
-
terror of [race.plural]
|
@@ -0,0 +1,72 @@
|
|
1
|
+
|weaponName
|
2
|
+
6@[weaponNameInitial][weaponNameVowel][weaponNameConsonant][weaponNameSuffix]
|
3
|
+
2@[weaponNameInitial][weaponNameVowel][weaponNameConsonant]
|
4
|
+
[weaponNameInitialVowel][weaponNameConsonant][weaponNameVowel][weaponNameConsonant]
|
5
|
+
[weaponNameInitialVowel][weaponNameConsonant][weaponNameVowel][weaponNameConsonant][weaponNameSuffix]
|
6
|
+
[name]
|
7
|
+
[weaponName]-[weaponName]
|
8
|
+
[weaponName] [weaponEpithet]
|
9
|
+
|
10
|
+
|weaponNameInitial
|
11
|
+
Kr
|
12
|
+
Gr
|
13
|
+
Gl
|
14
|
+
K
|
15
|
+
G
|
16
|
+
D
|
17
|
+
Th
|
18
|
+
Ch
|
19
|
+
S
|
20
|
+
Sh
|
21
|
+
Dr
|
22
|
+
|
23
|
+
|weaponNameVowel
|
24
|
+
3@a
|
25
|
+
3@o
|
26
|
+
2@au
|
27
|
+
2@i
|
28
|
+
u
|
29
|
+
e
|
30
|
+
aa
|
31
|
+
|
32
|
+
|weaponNameInitialVowel
|
33
|
+
3@A
|
34
|
+
3@O
|
35
|
+
2@Au
|
36
|
+
2@I
|
37
|
+
U
|
38
|
+
E
|
39
|
+
|
40
|
+
|weaponNameConsonant
|
41
|
+
n
|
42
|
+
l
|
43
|
+
r
|
44
|
+
sh
|
45
|
+
th
|
46
|
+
dh
|
47
|
+
rh
|
48
|
+
lh
|
49
|
+
g
|
50
|
+
|
51
|
+
|weaponNameSuffix
|
52
|
+
or
|
53
|
+
ex
|
54
|
+
ic
|
55
|
+
il
|
56
|
+
tar
|
57
|
+
gar
|
58
|
+
og
|
59
|
+
rok
|
60
|
+
nor
|
61
|
+
w
|
62
|
+
rist
|
63
|
+
anz
|
64
|
+
az
|
65
|
+
|
66
|
+
|weaponEpithet
|
67
|
+
[race]bane
|
68
|
+
[monster]bane
|
69
|
+
the [monster]-slayer
|
70
|
+
slayer of [monster.plural]
|
71
|
+
bane of [monster.plural]
|
72
|
+
terror of [race.plural]
|
@@ -0,0 +1,28 @@
|
|
1
|
+
|familiarPlace
|
2
|
+
Athcoham, a village built on a canyon in Nophece-Tela and once a thriving hub of economics.
|
3
|
+
Foxpale, a catacomb built on a canyon in Tilre and famous for being the target of an attack by Nohte Arrowson, an ugly, stubborn thief with a longsword and a great love of meat
|
4
|
+
Tedshohall, a catacomb built on an isthmus in Take-Nohsa and rumored to be haunted by the ghost of Glebe Witchson, a violent orc
|
5
|
+
Taiwalk, a museum built on a cliff in Tuin and famous for being the target of an attack by Rile Shoreec and a pair of bards with
|
6
|
+
Shoredell, a keep built on an island in Kehitas and said to contain many lances made of opal
|
7
|
+
|
8
|
+
|familiarPerson
|
9
|
+
Nohte Arrowson of Athcoham, an ugly, stubborn thief with a longsword and a great love of meat
|
10
|
+
the ghost of Glebe Witchson, a violent orc
|
11
|
+
Nilnenu Kineeld, a frighteningly lazy orc
|
12
|
+
Frisele the Anxious, a pretty, bisexual farmer
|
13
|
+
Hities Keashebury, an industrious ranger
|
14
|
+
Pyif of Taiwalk, a fat, quiet hobgoblin-kobold hybrid
|
15
|
+
Thomrade Owlred, a rugged, calm elf
|
16
|
+
Sinlonis Heshath, a tall, emotional orc
|
17
|
+
Kobjak Lela, a slightly unfortunate kobold
|
18
|
+
Hirela of Nadezwalk, an attractive, domineering human
|
19
|
+
Chareig Redec, an ethereal kobold slave
|
20
|
+
|
21
|
+
|familiarThing
|
22
|
+
Uncha, the claw which turns into an eagle when sung to.
|
23
|
+
Pizterf, the lance whose wielders are cursed to hunger for the flesh of human
|
24
|
+
Friyck, the fuzzy hat which never loses its edge
|
25
|
+
Isoas, the wand made of gold which contains the trapped souls of its every victim
|
26
|
+
Taci, the lance about-which-no-sound-travels
|
27
|
+
Loghtry, the wand which glows when sung to
|
28
|
+
Chardess, the orb which cannot harm a human
|
@@ -0,0 +1,11 @@
|
|
1
|
+
|plotHook
|
2
|
+
A child in a nearby settlement is said to be possessed, upon investigation it becomes apparent that everyone but the child has been overtaken.
|
3
|
+
The sentries of a nearby estate have become sentient and have begun murdering and experimenting on its residents.
|
4
|
+
An unearthed obelisk has been brought back to town for study. The sun has not risen since, and strange, unspeakable deaths have become commonplace.
|
5
|
+
[person], a member of the local government, is rumored to never age, and is purportedly found in several paintings dating back centuries.
|
6
|
+
A fallen star has crashed into [place]. Starry eyed, long dead relatives return home and attempt to resume their lives where they left off.
|
7
|
+
A small group of feral children is discovered in the nearby wilds, attempting to care for them has proved to be a bloody endeavor for locals.
|
8
|
+
A mysterious stranger visits the players and leaves them with a velvet pouch containing an iron idol, said to be the sixth and final horcrux of God from a time beyond time.
|
9
|
+
Local children have recently been committing suicide in various ways, after death, they reanimate and walk slowly, indomitably toward the abandoned manor house.
|
10
|
+
The local job board contains a high-paying babysitting job for just one night which also happens to take place during an unprecedented astrological event.
|
11
|
+
While traveling and passing through a thick, mysterious fog, the party finds themselves lost in a strange place . The lands here are home to cannibals and abominations who stalk them from treetop and cave depths. Grotestque effigies made of humanoid remains scatter the landscape.
|
@@ -1,2 +1,2 @@
|
|
1
1
|
|root
|
2
|
-
|
2
|
+
meet [familiarPerson] in [familiarPlace]
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dunmanifestin
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.0.
|
4
|
+
version: 0.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- quavmo
|
@@ -10,8 +10,36 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2014-
|
14
|
-
dependencies:
|
13
|
+
date: 2014-11-29 00:00:00.000000000 Z
|
14
|
+
dependencies:
|
15
|
+
- !ruby/object:Gem::Dependency
|
16
|
+
name: trollop
|
17
|
+
requirement: !ruby/object:Gem::Requirement
|
18
|
+
requirements:
|
19
|
+
- - "~>"
|
20
|
+
- !ruby/object:Gem::Version
|
21
|
+
version: '0'
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
version_requirements: !ruby/object:Gem::Requirement
|
25
|
+
requirements:
|
26
|
+
- - "~>"
|
27
|
+
- !ruby/object:Gem::Version
|
28
|
+
version: '0'
|
29
|
+
- !ruby/object:Gem::Dependency
|
30
|
+
name: rspec
|
31
|
+
requirement: !ruby/object:Gem::Requirement
|
32
|
+
requirements:
|
33
|
+
- - "~>"
|
34
|
+
- !ruby/object:Gem::Version
|
35
|
+
version: '0'
|
36
|
+
type: :development
|
37
|
+
prerelease: false
|
38
|
+
version_requirements: !ruby/object:Gem::Requirement
|
39
|
+
requirements:
|
40
|
+
- - "~>"
|
41
|
+
- !ruby/object:Gem::Version
|
42
|
+
version: '0'
|
15
43
|
description: The point of Dunmanifestin [is] to inject chaos into humans' cliched
|
16
44
|
ideas or, at least, let them be hunter-gatherers instead of farmers of culture.
|
17
45
|
-- B. Christel
|
@@ -44,7 +72,6 @@ files:
|
|
44
72
|
- lists/default/baggage
|
45
73
|
- lists/default/baseItem
|
46
74
|
- lists/default/buildingType
|
47
|
-
- lists/default/clothing
|
48
75
|
- lists/default/color
|
49
76
|
- lists/default/container
|
50
77
|
- lists/default/curse
|
@@ -114,11 +141,15 @@ files:
|
|
114
141
|
- lists/default/structureType
|
115
142
|
- lists/default/superpower
|
116
143
|
- lists/default/topicOfConversation
|
144
|
+
- lists/default/vestment
|
117
145
|
- lists/default/weapon
|
146
|
+
- lists/default/weaponName
|
118
147
|
- lists/default/wearable
|
119
148
|
- lists/default/wearableQuality
|
120
149
|
- lists/default/weildable
|
121
150
|
- lists/default/welshName
|
151
|
+
- lists/gritty-horror-fantasty/familiarPlace
|
152
|
+
- lists/gritty-horror-fantasty/plotHook
|
122
153
|
- lists/gritty-horror-fantasty/root
|
123
154
|
- lists/huoquitlan/originalAnimal
|
124
155
|
- lists/huoquitlan/originalDenizen
|