amar-rpg 2.0.1
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 +7 -0
- data/LICENSE +675 -0
- data/README.md +155 -0
- data/amar-tui.rb +8195 -0
- data/cli_enc_output.rb +87 -0
- data/cli_enc_output_new.rb +433 -0
- data/cli_enc_output_new_3tier.rb +198 -0
- data/cli_enc_output_new_compact.rb +238 -0
- data/cli_name_gen.rb +21 -0
- data/cli_npc_output.rb +279 -0
- data/cli_npc_output_new.rb +700 -0
- data/cli_town_output.rb +39 -0
- data/cli_weather_output.rb +36 -0
- data/includes/class_enc.rb +341 -0
- data/includes/class_enc_new.rb +512 -0
- data/includes/class_monster_new.rb +551 -0
- data/includes/class_npc.rb +1378 -0
- data/includes/class_npc_new.rb +1187 -0
- data/includes/class_npc_new.rb.backup +706 -0
- data/includes/class_npc_new_skills.rb +153 -0
- data/includes/class_town.rb +237 -0
- data/includes/d6s.rb +40 -0
- data/includes/equipment_tables.rb +120 -0
- data/includes/functions.rb +67 -0
- data/includes/includes.rb +30 -0
- data/includes/randomizer.rb +15 -0
- data/includes/spell_catalog.rb +441 -0
- data/includes/tables/armour.rb +13 -0
- data/includes/tables/chartype.rb +4412 -0
- data/includes/tables/chartype_new.rb +765 -0
- data/includes/tables/chartype_new_full.rb +2713 -0
- data/includes/tables/enc_specific.rb +168 -0
- data/includes/tables/enc_type.rb +17 -0
- data/includes/tables/encounters.rb +99 -0
- data/includes/tables/magick.rb +169 -0
- data/includes/tables/melee.rb +36 -0
- data/includes/tables/missile.rb +17 -0
- data/includes/tables/monster_stats_new.rb +264 -0
- data/includes/tables/month.rb +18 -0
- data/includes/tables/names.rb +21 -0
- data/includes/tables/personality.rb +12 -0
- data/includes/tables/race_templates.rb +318 -0
- data/includes/tables/religions.rb +266 -0
- data/includes/tables/spells_new.rb +496 -0
- data/includes/tables/tier_system.rb +104 -0
- data/includes/tables/town.rb +71 -0
- data/includes/tables/weather.rb +41 -0
- data/includes/town_relations.rb +127 -0
- data/includes/weather.rb +108 -0
- data/includes/weather2latex.rb +114 -0
- data/lib/rcurses.rb +33 -0
- metadata +157 -0
@@ -0,0 +1,264 @@
|
|
1
|
+
# Monster and Animal stats for the new 3-tier system
|
2
|
+
# These are simplified templates that create appropriate stat blocks
|
3
|
+
|
4
|
+
$MonsterStats = {
|
5
|
+
# Undead
|
6
|
+
"zombie" => {
|
7
|
+
"type" => "Undead",
|
8
|
+
"base_body" => 3,
|
9
|
+
"base_mind" => 1,
|
10
|
+
"base_spirit" => 0,
|
11
|
+
"weight_range" => [120, 250], # Lions 120-250kg
|
12
|
+
"skills" => ["Unarmed combat", "Grappling"],
|
13
|
+
"special" => "No fear, No pain, Slow movement",
|
14
|
+
"armor" => "Natural (2 AP)",
|
15
|
+
"description" => "Shambling undead"
|
16
|
+
},
|
17
|
+
"skeleton" => {
|
18
|
+
"type" => "Undead",
|
19
|
+
"base_body" => 2,
|
20
|
+
"base_mind" => 1,
|
21
|
+
"base_spirit" => 0,
|
22
|
+
"weight_range" => [50, 120], # Medium animals
|
23
|
+
"skills" => ["Sword", "Shield"],
|
24
|
+
"special" => "No fear, No pain, Vulnerable to blunt",
|
25
|
+
"armor" => "Natural (1 AP)",
|
26
|
+
"description" => "Animated bones"
|
27
|
+
},
|
28
|
+
"vampire" => {
|
29
|
+
"type" => "Undead",
|
30
|
+
"base_body" => 5,
|
31
|
+
"base_mind" => 4,
|
32
|
+
"base_spirit" => 3,
|
33
|
+
"weight_range" => [150, 200], # Large humanoids
|
34
|
+
"skills" => ["Unarmed combat", "Dodge", "Stealth"],
|
35
|
+
"special" => "Regeneration, Blood drain, Sunlight vulnerability",
|
36
|
+
"armor" => "Natural (3 AP)",
|
37
|
+
"description" => "Powerful undead lord"
|
38
|
+
},
|
39
|
+
"ghoul" => {
|
40
|
+
"type" => "Undead",
|
41
|
+
"base_body" => 3,
|
42
|
+
"base_mind" => 2,
|
43
|
+
"base_spirit" => 0,
|
44
|
+
"weight_range" => [100, 150], # Medium-large creatures
|
45
|
+
"skills" => ["Claw attacks", "Bite"],
|
46
|
+
"special" => "Paralyzing touch, Corpse eater",
|
47
|
+
"armor" => "Natural (1 AP)",
|
48
|
+
"description" => "Flesh-eating undead"
|
49
|
+
},
|
50
|
+
|
51
|
+
# Monsters
|
52
|
+
"troll" => {
|
53
|
+
"type" => "Monster",
|
54
|
+
"base_body" => 5,
|
55
|
+
"base_mind" => 1,
|
56
|
+
"base_spirit" => 1,
|
57
|
+
"weight_range" => [400, 800], # Trolls
|
58
|
+
"skills" => ["Club", "Throwing"],
|
59
|
+
"special" => "Regeneration, Fire vulnerability",
|
60
|
+
"armor" => "Natural (4 AP)",
|
61
|
+
"description" => "Large regenerating humanoid"
|
62
|
+
},
|
63
|
+
"ogre" => {
|
64
|
+
"type" => "Monster",
|
65
|
+
"base_body" => 4,
|
66
|
+
"base_mind" => 2,
|
67
|
+
"base_spirit" => 1,
|
68
|
+
"weight_range" => [300, 500], # Ogres
|
69
|
+
"skills" => ["Club", "Grappling"],
|
70
|
+
"special" => "Strong but slow",
|
71
|
+
"armor" => "Natural (2 AP)",
|
72
|
+
"description" => "Large brutish humanoid"
|
73
|
+
},
|
74
|
+
"goblin" => {
|
75
|
+
"type" => "Monster",
|
76
|
+
"base_body" => 2,
|
77
|
+
"base_mind" => 2,
|
78
|
+
"base_spirit" => 1,
|
79
|
+
"weight_range" => [15, 30], # Wild dogs 15-30kg
|
80
|
+
"skills" => ["Dagger", "Sling", "Stealth"],
|
81
|
+
"special" => "Pack tactics, Cowardly",
|
82
|
+
"armor" => "Leather (1 AP)",
|
83
|
+
"description" => "Small cunning humanoid"
|
84
|
+
},
|
85
|
+
"arax" => {
|
86
|
+
"type" => "Monster",
|
87
|
+
"base_body" => 3,
|
88
|
+
"base_mind" => 2,
|
89
|
+
"base_spirit" => 1,
|
90
|
+
"weight_range" => [60, 90], # Arax are human-sized
|
91
|
+
"skills" => ["Sword", "Spear", "Shield"],
|
92
|
+
"special" => "Disciplined warriors",
|
93
|
+
"armor" => "Chain (3 AP)",
|
94
|
+
"description" => "Grey-skinned warrior race"
|
95
|
+
},
|
96
|
+
"giant spider" => {
|
97
|
+
"type" => "Monster",
|
98
|
+
"base_body" => 3,
|
99
|
+
"base_mind" => 1,
|
100
|
+
"base_spirit" => 0,
|
101
|
+
"weight_range" => [40, 200], # Varied undead
|
102
|
+
"skills" => ["Bite", "Web"],
|
103
|
+
"special" => "Poison, Web entangle",
|
104
|
+
"armor" => "Natural (2 AP)",
|
105
|
+
"description" => "Large arachnid predator"
|
106
|
+
},
|
107
|
+
"wyvern" => {
|
108
|
+
"type" => "Monster",
|
109
|
+
"base_body" => 4,
|
110
|
+
"base_mind" => 2,
|
111
|
+
"base_spirit" => 1,
|
112
|
+
"weight_range" => [300, 600], # Large undead
|
113
|
+
"skills" => ["Bite", "Tail sting", "Flight"],
|
114
|
+
"special" => "Poison tail, Flight",
|
115
|
+
"armor" => "Natural (3 AP)",
|
116
|
+
"description" => "Lesser dragon"
|
117
|
+
},
|
118
|
+
"dragon" => {
|
119
|
+
"type" => "Monster",
|
120
|
+
"base_body" => 6,
|
121
|
+
"base_mind" => 5,
|
122
|
+
"base_spirit" => 4,
|
123
|
+
"weight_range" => [2000, 5000], # Dragons
|
124
|
+
"skills" => ["Bite", "Claw", "Breath weapon", "Flight"],
|
125
|
+
"special" => "Breath weapon, Flight, Magic resistance",
|
126
|
+
"armor" => "Natural (6 AP)",
|
127
|
+
"description" => "Ancient magical beast"
|
128
|
+
},
|
129
|
+
|
130
|
+
# Animals - Predators
|
131
|
+
"wolf" => {
|
132
|
+
"type" => "Animal",
|
133
|
+
"base_body" => 3,
|
134
|
+
"base_mind" => 1,
|
135
|
+
"base_spirit" => 0,
|
136
|
+
"weight_range" => [25, 50], # Adult wolves 25-50kg
|
137
|
+
"skills" => ["Bite", "Tracking", "Pack tactics"],
|
138
|
+
"special" => "Pack hunter",
|
139
|
+
"armor" => "Natural (0 AP)",
|
140
|
+
"description" => "Pack hunting canine"
|
141
|
+
},
|
142
|
+
"bear" => {
|
143
|
+
"type" => "Animal",
|
144
|
+
"base_body" => 4,
|
145
|
+
"base_mind" => 1,
|
146
|
+
"base_spirit" => 0,
|
147
|
+
"weight_range" => [180, 350], # Brown bears 180-350kg
|
148
|
+
"skills" => ["Claw", "Bite", "Grappling"],
|
149
|
+
"special" => "Powerful strength",
|
150
|
+
"armor" => "Natural (1 AP)",
|
151
|
+
"description" => "Large powerful omnivore"
|
152
|
+
},
|
153
|
+
"lion" => {
|
154
|
+
"type" => "Animal",
|
155
|
+
"base_body" => 3,
|
156
|
+
"base_mind" => 1,
|
157
|
+
"base_spirit" => 0,
|
158
|
+
"weight_range" => [120, 250], # Lions 120-250kg
|
159
|
+
"skills" => ["Bite", "Claw", "Pounce"],
|
160
|
+
"special" => "Pounce attack",
|
161
|
+
"armor" => "Natural (0 AP)",
|
162
|
+
"description" => "Large feline predator"
|
163
|
+
},
|
164
|
+
"wild dog" => {
|
165
|
+
"type" => "Animal",
|
166
|
+
"base_body" => 2,
|
167
|
+
"base_mind" => 1,
|
168
|
+
"base_spirit" => 0,
|
169
|
+
"weight_range" => [15, 30], # Wild dogs 15-30kg
|
170
|
+
"skills" => ["Bite", "Pack tactics"],
|
171
|
+
"special" => "Pack hunter",
|
172
|
+
"armor" => "Natural (0 AP)",
|
173
|
+
"description" => "Feral canine"
|
174
|
+
},
|
175
|
+
|
176
|
+
# Animals - Prey
|
177
|
+
"deer" => {
|
178
|
+
"type" => "Animal",
|
179
|
+
"base_body" => 2,
|
180
|
+
"base_mind" => 1,
|
181
|
+
"base_spirit" => 0,
|
182
|
+
"weight_range" => [50, 120], # Medium animals
|
183
|
+
"skills" => ["Dodge", "Running"],
|
184
|
+
"special" => "Fast runner",
|
185
|
+
"armor" => "Natural (0 AP)",
|
186
|
+
"description" => "Swift herbivore"
|
187
|
+
},
|
188
|
+
"boar" => {
|
189
|
+
"type" => "Animal",
|
190
|
+
"base_body" => 3,
|
191
|
+
"base_mind" => 1,
|
192
|
+
"base_spirit" => 0,
|
193
|
+
"weight_range" => [50, 120], # Medium animals
|
194
|
+
"skills" => ["Charge", "Tusk attack"],
|
195
|
+
"special" => "Aggressive when threatened",
|
196
|
+
"armor" => "Natural (1 AP)",
|
197
|
+
"description" => "Wild swine"
|
198
|
+
},
|
199
|
+
"horse" => {
|
200
|
+
"type" => "Animal",
|
201
|
+
"base_body" => 3,
|
202
|
+
"base_mind" => 1,
|
203
|
+
"base_spirit" => 0,
|
204
|
+
"weight_range" => [180, 350], # Brown bears 180-350kg
|
205
|
+
"skills" => ["Kick", "Running"],
|
206
|
+
"special" => "Fast runner, Can be tamed",
|
207
|
+
"armor" => "Natural (0 AP)",
|
208
|
+
"description" => "Large herbivore"
|
209
|
+
},
|
210
|
+
|
211
|
+
# Small animals
|
212
|
+
"rat" => {
|
213
|
+
"type" => "Animal",
|
214
|
+
"base_body" => 1,
|
215
|
+
"base_mind" => 1,
|
216
|
+
"base_spirit" => 0,
|
217
|
+
"weight_range" => [0.5, 2], # Tiny creatures
|
218
|
+
"skills" => ["Bite", "Stealth"],
|
219
|
+
"special" => "Disease carrier",
|
220
|
+
"armor" => "Natural (0 AP)",
|
221
|
+
"description" => "Small rodent"
|
222
|
+
},
|
223
|
+
"snake" => {
|
224
|
+
"type" => "Animal",
|
225
|
+
"base_body" => 1,
|
226
|
+
"base_mind" => 1,
|
227
|
+
"base_spirit" => 0,
|
228
|
+
"weight_range" => [2, 10], # Small creatures
|
229
|
+
"skills" => ["Bite", "Stealth"],
|
230
|
+
"special" => "Some poisonous",
|
231
|
+
"armor" => "Natural (0 AP)",
|
232
|
+
"description" => "Legless reptile"
|
233
|
+
},
|
234
|
+
|
235
|
+
# Default for unknown monsters
|
236
|
+
"default" => {
|
237
|
+
"type" => "Unknown",
|
238
|
+
"base_body" => 2,
|
239
|
+
"base_mind" => 2,
|
240
|
+
"base_spirit" => 1,
|
241
|
+
"weight_range" => [120, 250], # Lions 120-250kg
|
242
|
+
"skills" => ["Unarmed"],
|
243
|
+
"special" => "Unknown abilities",
|
244
|
+
"armor" => "Natural (1 AP)",
|
245
|
+
"description" => "Unknown creature"
|
246
|
+
}
|
247
|
+
}
|
248
|
+
|
249
|
+
# Function to get monster stats
|
250
|
+
def get_monster_stats(monster_name)
|
251
|
+
# Clean up the monster name
|
252
|
+
clean_name = monster_name.downcase.gsub(/monster:|animal:|small |large /, "").strip
|
253
|
+
|
254
|
+
# Try to find exact match
|
255
|
+
return $MonsterStats[clean_name] if $MonsterStats[clean_name]
|
256
|
+
|
257
|
+
# Try partial matches
|
258
|
+
$MonsterStats.each do |key, stats|
|
259
|
+
return stats if clean_name.include?(key) || key.include?(clean_name)
|
260
|
+
end
|
261
|
+
|
262
|
+
# Return default if no match
|
263
|
+
$MonsterStats["default"]
|
264
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# The table of the Amar months
|
2
|
+
|
3
|
+
$Month = Array.new
|
4
|
+
|
5
|
+
$Month[0] = "Unspecified"
|
6
|
+
$Month[1] = "Cal Amae"
|
7
|
+
$Month[2] = "Elesi"
|
8
|
+
$Month[3] = "Anashina"
|
9
|
+
$Month[4] = "Gwendyll"
|
10
|
+
$Month[5] = "MacGillan"
|
11
|
+
$Month[6] = "Juba"
|
12
|
+
$Month[7] = "Taroc"
|
13
|
+
$Month[8] = "Man Peggon"
|
14
|
+
$Month[9] = "Maleko"
|
15
|
+
$Month[10] = "Fal Munir"
|
16
|
+
$Month[11] = "Moltan"
|
17
|
+
$Month[12] = "Kraagh"
|
18
|
+
$Month[13] = "Mestronorpha"
|
@@ -0,0 +1,21 @@
|
|
1
|
+
# The names table
|
2
|
+
|
3
|
+
$Names = Array.new
|
4
|
+
|
5
|
+
# Index Indicator File: first name File: last name Sex Matches
|
6
|
+
$Names[0] = [ "Human male", "human_male_first.txt", "human_last.txt", "M", "human, half-elf, half-giant" ]
|
7
|
+
$Names[1] = [ "Human female", "human_female_first.txt", "human_last.txt", "F", "human, half-elf, half-giant" ]
|
8
|
+
$Names[2] = [ "Dwarven male", "dwarven_male.txt", "dwarven_male.txt", "M", "dwarf, dwarven" ]
|
9
|
+
$Names[3] = [ "Dwarven female", "dwarven_female.txt", "dwarven_female.txt", "F", "dwarf, dwarven" ]
|
10
|
+
$Names[4] = [ "Elven male", "elven_male.txt", "elven_male.txt", "M", "elf, elven, faerie, faery, pixie, brownie, goblin" ]
|
11
|
+
$Names[5] = [ "Elven female", "elven_female.txt", "elven_female.txt", "F", "elf, elven, faerie, faery, pixie, brownie, goblin" ]
|
12
|
+
$Names[6] = [ "Lizardfolk", "lizardfolk.txt", "", "M, F", "lizard, lizardman, lizardfolk" ]
|
13
|
+
$Names[7] = [ "Troll", "troll.txt", "", "M, F", "troll, lesser troll, trollkin, ogre" ]
|
14
|
+
$Names[8] = [ "Araxi", "araxi.txt", "", "M, F", "araxi, arax, anaraxi, anarax" ]
|
15
|
+
$Names[9] = [ "Generic male", "fantasy_male.txt", "", "M", "generic, fantasy, monster, other" ]
|
16
|
+
$Names[10] = [ "Generic female", "fantasy_female.txt", "", "F", "generic, fantasy, monster, other" ]
|
17
|
+
$Names[11] = [ "Castle", "castle_names.txt", "", "", "castle" ]
|
18
|
+
$Names[12] = [ "Village", "town_names.txt", "", "", "village" ]
|
19
|
+
$Names[13] = [ "Town", "town_names.txt", "", "", "town" ]
|
20
|
+
$Names[14] = [ "City", "city_names.txt", "", "", "city, cities" ]
|
21
|
+
$Names[15] = [ "Weapon", "weapon_names.txt", "", "", "weapon, sword" ]
|
@@ -0,0 +1,12 @@
|
|
1
|
+
# Personality randomizer
|
2
|
+
|
3
|
+
$Personality = {
|
4
|
+
"Generous, empathetic" => 7,
|
5
|
+
"Friendly, service minded" => 10,
|
6
|
+
"Conservative, structured" => 10,
|
7
|
+
"Indifferent, unstructured" => 7,
|
8
|
+
"Greedy, self-centered" => 7,
|
9
|
+
"Antagonistic, combattive" => 4,
|
10
|
+
"Cautious, fearful" => 3,
|
11
|
+
"Sad, gloomy" => 2
|
12
|
+
}
|
@@ -0,0 +1,318 @@
|
|
1
|
+
# Race-based character templates for encounters in Amar
|
2
|
+
# Based on the demographics: Elves, Dwarves, Goblins, Lizardmen, Centaurs, Ogres, Trollkins, Trolls, Araxi, Faeries
|
3
|
+
|
4
|
+
$RaceTemplates = {
|
5
|
+
"Elf: Warrior" => {
|
6
|
+
"characteristics" => {
|
7
|
+
"BODY" => 2, # Elves are agile but not as strong
|
8
|
+
"MIND" => 3, # More intelligent than average
|
9
|
+
"SPIRIT" => 1 # Some magical affinity
|
10
|
+
},
|
11
|
+
"attributes" => {
|
12
|
+
"BODY/Strength" => 2,
|
13
|
+
"BODY/Endurance" => 2,
|
14
|
+
"BODY/Athletics" => 4, # Very agile
|
15
|
+
"BODY/Melee Combat" => 3,
|
16
|
+
"BODY/Missile Combat" => 4, # Excellent archers
|
17
|
+
"MIND/Intelligence" => 3,
|
18
|
+
"MIND/Awareness" => 4, # Keen senses
|
19
|
+
"MIND/Willpower" => 2
|
20
|
+
},
|
21
|
+
"skills" => {
|
22
|
+
"BODY/Missile Combat/Bow" => 3,
|
23
|
+
"BODY/Melee Combat/Sword" => 2,
|
24
|
+
"BODY/Athletics/Dodge" => 2,
|
25
|
+
"MIND/Awareness/Alertness" => 2
|
26
|
+
}
|
27
|
+
},
|
28
|
+
|
29
|
+
"Elf: Ranger" => {
|
30
|
+
"characteristics" => {
|
31
|
+
"BODY" => 2,
|
32
|
+
"MIND" => 3,
|
33
|
+
"SPIRIT" => 1
|
34
|
+
},
|
35
|
+
"attributes" => {
|
36
|
+
"BODY/Athletics" => 4,
|
37
|
+
"BODY/Missile Combat" => 4,
|
38
|
+
"MIND/Nature Knowledge" => 3,
|
39
|
+
"MIND/Practical Knowledge" => 3,
|
40
|
+
"MIND/Awareness" => 4
|
41
|
+
},
|
42
|
+
"skills" => {
|
43
|
+
"BODY/Missile Combat/Bow" => 3,
|
44
|
+
"BODY/Athletics/Move Quietly" => 3,
|
45
|
+
"MIND/Awareness/Tracking" => 3,
|
46
|
+
"MIND/Practical Knowledge/Survival Lore" => 2
|
47
|
+
}
|
48
|
+
},
|
49
|
+
|
50
|
+
"Elf: Mage" => {
|
51
|
+
"characteristics" => {
|
52
|
+
"BODY" => 1,
|
53
|
+
"MIND" => 3,
|
54
|
+
"SPIRIT" => 3 # High magical affinity
|
55
|
+
},
|
56
|
+
"attributes" => {
|
57
|
+
"BODY/Athletics" => 3,
|
58
|
+
"MIND/Intelligence" => 4,
|
59
|
+
"MIND/Nature Knowledge" => 4,
|
60
|
+
"SPIRIT/Casting" => 3,
|
61
|
+
"SPIRIT/Attunement" => 3
|
62
|
+
},
|
63
|
+
"skills" => {
|
64
|
+
"SPIRIT/Attunement/Life" => 2,
|
65
|
+
"SPIRIT/Attunement/Mind" => 2,
|
66
|
+
"MIND/Nature Knowledge/Magick Rituals" => 2
|
67
|
+
}
|
68
|
+
},
|
69
|
+
|
70
|
+
"Dwarf: Warrior" => {
|
71
|
+
"characteristics" => {
|
72
|
+
"BODY" => 3, # Strong and sturdy
|
73
|
+
"MIND" => 2,
|
74
|
+
"SPIRIT" => 0 # No magic
|
75
|
+
},
|
76
|
+
"attributes" => {
|
77
|
+
"BODY/Strength" => 4,
|
78
|
+
"BODY/Endurance" => 5, # Very tough
|
79
|
+
"BODY/Melee Combat" => 4,
|
80
|
+
"BODY/Missile Combat" => 2,
|
81
|
+
"MIND/Practical Knowledge" => 3,
|
82
|
+
"MIND/Willpower" => 4 # Stubborn
|
83
|
+
},
|
84
|
+
"skills" => {
|
85
|
+
"BODY/Melee Combat/Axe" => 3,
|
86
|
+
"BODY/Melee Combat/Shield" => 2,
|
87
|
+
"BODY/Endurance/Fortitude" => 2
|
88
|
+
}
|
89
|
+
},
|
90
|
+
|
91
|
+
"Dwarf: Smith" => {
|
92
|
+
"characteristics" => {
|
93
|
+
"BODY" => 3,
|
94
|
+
"MIND" => 2,
|
95
|
+
"SPIRIT" => 0
|
96
|
+
},
|
97
|
+
"attributes" => {
|
98
|
+
"BODY/Strength" => 5,
|
99
|
+
"BODY/Endurance" => 4,
|
100
|
+
"BODY/Sleight" => 3, # Craftsmanship
|
101
|
+
"MIND/Intelligence" => 2,
|
102
|
+
"MIND/Practical Knowledge" => 4
|
103
|
+
},
|
104
|
+
"skills" => {
|
105
|
+
"BODY/Melee Combat/Hammer" => 2,
|
106
|
+
"BODY/Strength/Weight lifting" => 2,
|
107
|
+
"MIND/Practical Knowledge/Smithing" => 4
|
108
|
+
}
|
109
|
+
},
|
110
|
+
|
111
|
+
"Dwarf: Guard" => {
|
112
|
+
"characteristics" => {
|
113
|
+
"BODY" => 3,
|
114
|
+
"MIND" => 2,
|
115
|
+
"SPIRIT" => 0
|
116
|
+
},
|
117
|
+
"attributes" => {
|
118
|
+
"BODY/Strength" => 4,
|
119
|
+
"BODY/Endurance" => 5,
|
120
|
+
"BODY/Melee Combat" => 3,
|
121
|
+
"MIND/Awareness" => 3,
|
122
|
+
"MIND/Willpower" => 4
|
123
|
+
},
|
124
|
+
"skills" => {
|
125
|
+
"BODY/Melee Combat/Spear" => 2,
|
126
|
+
"BODY/Melee Combat/Shield" => 3,
|
127
|
+
"MIND/Awareness/Alertness" => 3
|
128
|
+
}
|
129
|
+
},
|
130
|
+
|
131
|
+
"Araxi: Warrior" => {
|
132
|
+
"characteristics" => {
|
133
|
+
"BODY" => 4, # Savage and strong
|
134
|
+
"MIND" => 1, # Not very intelligent
|
135
|
+
"SPIRIT" => 0 # No magic
|
136
|
+
},
|
137
|
+
"attributes" => {
|
138
|
+
"BODY/Strength" => 4,
|
139
|
+
"BODY/Endurance" => 3,
|
140
|
+
"BODY/Athletics" => 3,
|
141
|
+
"BODY/Melee Combat" => 4,
|
142
|
+
"MIND/Awareness" => 3, # Good hunters
|
143
|
+
"MIND/Willpower" => 2
|
144
|
+
},
|
145
|
+
"skills" => {
|
146
|
+
"BODY/Melee Combat/Unarmed" => 3, # Claws/teeth
|
147
|
+
"BODY/Athletics/Hide" => 2,
|
148
|
+
"MIND/Awareness/Tracking" => 2
|
149
|
+
}
|
150
|
+
},
|
151
|
+
|
152
|
+
"Troll: Warrior" => {
|
153
|
+
"characteristics" => {
|
154
|
+
"BODY" => 5, # Very large and strong
|
155
|
+
"MIND" => 1,
|
156
|
+
"SPIRIT" => 0
|
157
|
+
},
|
158
|
+
"attributes" => {
|
159
|
+
"BODY/Strength" => 6,
|
160
|
+
"BODY/Endurance" => 5,
|
161
|
+
"BODY/Melee Combat" => 3,
|
162
|
+
"MIND/Willpower" => 1
|
163
|
+
},
|
164
|
+
"skills" => {
|
165
|
+
"BODY/Melee Combat/Club" => 3,
|
166
|
+
"BODY/Strength/Carrying" => 3
|
167
|
+
}
|
168
|
+
},
|
169
|
+
|
170
|
+
"Ogre: Warrior" => {
|
171
|
+
"characteristics" => {
|
172
|
+
"BODY" => 4,
|
173
|
+
"MIND" => 1,
|
174
|
+
"SPIRIT" => 0
|
175
|
+
},
|
176
|
+
"attributes" => {
|
177
|
+
"BODY/Strength" => 5,
|
178
|
+
"BODY/Endurance" => 4,
|
179
|
+
"BODY/Melee Combat" => 3,
|
180
|
+
"MIND/Awareness" => 2
|
181
|
+
},
|
182
|
+
"skills" => {
|
183
|
+
"BODY/Melee Combat/Club" => 2,
|
184
|
+
"BODY/Melee Combat/Unarmed" => 2
|
185
|
+
}
|
186
|
+
},
|
187
|
+
|
188
|
+
"Lizard Man: Warrior" => {
|
189
|
+
"characteristics" => {
|
190
|
+
"BODY" => 3,
|
191
|
+
"MIND" => 2,
|
192
|
+
"SPIRIT" => 0
|
193
|
+
},
|
194
|
+
"attributes" => {
|
195
|
+
"BODY/Strength" => 3,
|
196
|
+
"BODY/Endurance" => 3,
|
197
|
+
"BODY/Athletics" => 3, # Good swimmers
|
198
|
+
"BODY/Melee Combat" => 3,
|
199
|
+
"MIND/Awareness" => 3
|
200
|
+
},
|
201
|
+
"skills" => {
|
202
|
+
"BODY/Melee Combat/Spear" => 2,
|
203
|
+
"BODY/Athletics/Swim" => 3,
|
204
|
+
"BODY/Athletics/Hide" => 2
|
205
|
+
}
|
206
|
+
},
|
207
|
+
|
208
|
+
"Goblin: Warrior" => {
|
209
|
+
"characteristics" => {
|
210
|
+
"BODY" => 2,
|
211
|
+
"MIND" => 2,
|
212
|
+
"SPIRIT" => 0
|
213
|
+
},
|
214
|
+
"attributes" => {
|
215
|
+
"BODY/Strength" => 2,
|
216
|
+
"BODY/Endurance" => 2,
|
217
|
+
"BODY/Athletics" => 3,
|
218
|
+
"BODY/Melee Combat" => 2,
|
219
|
+
"BODY/Missile Combat" => 2,
|
220
|
+
"MIND/Awareness" => 3
|
221
|
+
},
|
222
|
+
"skills" => {
|
223
|
+
"BODY/Melee Combat/Sword" => 1,
|
224
|
+
"BODY/Athletics/Hide" => 2,
|
225
|
+
"BODY/Athletics/Move Quietly" => 2
|
226
|
+
}
|
227
|
+
},
|
228
|
+
|
229
|
+
"Goblin: Thief" => {
|
230
|
+
"characteristics" => {
|
231
|
+
"BODY" => 2,
|
232
|
+
"MIND" => 2,
|
233
|
+
"SPIRIT" => 0
|
234
|
+
},
|
235
|
+
"attributes" => {
|
236
|
+
"BODY/Athletics" => 4,
|
237
|
+
"BODY/Sleight" => 3,
|
238
|
+
"MIND/Awareness" => 3,
|
239
|
+
"MIND/Practical Knowledge" => 2
|
240
|
+
},
|
241
|
+
"skills" => {
|
242
|
+
"BODY/Athletics/Hide" => 3,
|
243
|
+
"BODY/Athletics/Move Quietly" => 3,
|
244
|
+
"BODY/Sleight/Pick pockets" => 2,
|
245
|
+
"MIND/Awareness/Alertness" => 2
|
246
|
+
}
|
247
|
+
},
|
248
|
+
|
249
|
+
"Centaur: Warrior" => {
|
250
|
+
"characteristics" => {
|
251
|
+
"BODY" => 4, # Horse body = strong
|
252
|
+
"MIND" => 2,
|
253
|
+
"SPIRIT" => 0
|
254
|
+
},
|
255
|
+
"attributes" => {
|
256
|
+
"BODY/Strength" => 4,
|
257
|
+
"BODY/Endurance" => 4,
|
258
|
+
"BODY/Athletics" => 3, # Fast runners
|
259
|
+
"BODY/Melee Combat" => 3,
|
260
|
+
"BODY/Missile Combat" => 3,
|
261
|
+
"MIND/Nature Knowledge" => 2
|
262
|
+
},
|
263
|
+
"skills" => {
|
264
|
+
"BODY/Melee Combat/Spear" => 2,
|
265
|
+
"BODY/Missile Combat/Bow" => 2,
|
266
|
+
"BODY/Endurance/Running" => 3
|
267
|
+
}
|
268
|
+
},
|
269
|
+
|
270
|
+
"Centaur: Ranger" => {
|
271
|
+
"characteristics" => {
|
272
|
+
"BODY" => 3,
|
273
|
+
"MIND" => 2,
|
274
|
+
"SPIRIT" => 1
|
275
|
+
},
|
276
|
+
"attributes" => {
|
277
|
+
"BODY/Athletics" => 4,
|
278
|
+
"BODY/Missile Combat" => 4,
|
279
|
+
"MIND/Nature Knowledge" => 3,
|
280
|
+
"MIND/Awareness" => 3
|
281
|
+
},
|
282
|
+
"skills" => {
|
283
|
+
"BODY/Missile Combat/Bow" => 3,
|
284
|
+
"BODY/Endurance/Running" => 3,
|
285
|
+
"MIND/Awareness/Tracking" => 2,
|
286
|
+
"MIND/Nature Knowledge/Plant Lore" => 2
|
287
|
+
}
|
288
|
+
},
|
289
|
+
|
290
|
+
"Faerie: Mage" => {
|
291
|
+
"characteristics" => {
|
292
|
+
"BODY" => 1, # Tiny and weak
|
293
|
+
"MIND" => 3,
|
294
|
+
"SPIRIT" => 4 # Highly magical
|
295
|
+
},
|
296
|
+
"attributes" => {
|
297
|
+
"BODY/Athletics" => 5, # Can fly
|
298
|
+
"MIND/Intelligence" => 3,
|
299
|
+
"MIND/Nature Knowledge" => 4,
|
300
|
+
"SPIRIT/Casting" => 4,
|
301
|
+
"SPIRIT/Attunement" => 4,
|
302
|
+
"SPIRIT/Innate" => 3
|
303
|
+
},
|
304
|
+
"skills" => {
|
305
|
+
"SPIRIT/Innate/Flying" => 5,
|
306
|
+
"SPIRIT/Attunement/Life" => 3,
|
307
|
+
"BODY/Athletics/Dodge" => 3,
|
308
|
+
"MIND/Nature Knowledge/Plant Lore" => 3
|
309
|
+
}
|
310
|
+
}
|
311
|
+
}
|
312
|
+
|
313
|
+
# Merge race templates into the main character type table
|
314
|
+
if defined?($ChartypeNew)
|
315
|
+
$ChartypeNew.merge!($RaceTemplates)
|
316
|
+
else
|
317
|
+
$ChartypeNew = $RaceTemplates
|
318
|
+
end
|