add dark elf data

pull/1/head
Michael Hansen 5 years ago
parent e0e4b869e7
commit d7b0dc37d1
  1. 0
      src/data/dark_elf/lifepaths.json
  2. 114
      src/data/dark_elf/resources.json
  3. 73
      src/data/dark_elf/skills.json
  4. 58
      src/data/dark_elf/traits.json
  5. 2
      src/data/gold/resources/elf.json
  6. 3
      src/lib/data.rb
  7. 20
      src/lib/data/dark_elf.rb

@ -0,0 +1,114 @@
[
{
"name": "Bitter Poison",
"type": "gear",
"rp": 10
},
{
"name": "Spiteful Poison",
"type": "gear",
"rp": 20
},
{
"name": "Lock Picks",
"type": "gear",
"rp": 10
},
{
"name": "Long Knife",
"type": "gear",
"rp": 5
},
{
"name": "Barbed Javelins",
"type": "gear",
"rp": 3
},
{
"name": "Garotte",
"type": "gear",
"rp": 3
},
{
"name": "Caltrops",
"type": "gear",
"rp": 3
},
{
"name": "Tools Of The Trade",
"type": "gear",
"rp": 9
},
{
"name": "Cloak Of Darkness",
"type": "gear",
"rp": 30
},
{
"name": "Climbing Claws",
"type": "gear",
"rp": 5
},
{
"name": "Remote Refuge",
"type": "property",
"resources": [
{
"name": "Wasteland",
"rp": 20
},
{
"name": "Isolated Manor And Moorland",
"rp": 50
},
{
"name": "Hidden Fortress",
"rp": 100
},
{
"name": "Dark Forest, Cove Or Lonely Mountain",
"rp": 150
},
{
"name": "Safe House",
"rp": 25
}
]
},
{
"name": "Morlin Armor",
"type": "gear",
"resources": [
{
"name": "Light Mail",
"rp": 30
},
{
"name": "Heavy Mail",
"rp": 40
},
{
"name": "Plated Mail",
"rp": 100
}
]
},
{
"name": "Morlin Weapons",
"type": "gear",
"resources": [
{
"name": "+1 speed",
"rp": 15
},
{
"name": "+1 VA",
"rp": 15
},
{
"name": "+1 Power",
"rp": 30
}
]
}
]

@ -1 +1,72 @@
{}
{
"Litany Of Fools": {
"stock": "elven",
"magic": 1,
"roots": [
"Will"
]
},
"Cut Of The Quickened Mind": {
"stock": "elven",
"magic": 1,
"roots": [
"Will"
]
},
"Dirge Of Night": {
"stock": "elven",
"magic": 1,
"roots": [
"Will"
]
},
"Fugue Of Discord": {
"stock": "elven",
"magic": 1,
"roots": [
"Spite"
]
},
"Keen Of Terror": {
"stock": "elven",
"magic": 1,
"roots": [
"Will"
]
},
"Paean To The Dark Fire": {
"stock": "elven",
"magic": 1,
"roots": [
"Spite"
]
},
"Rhyme Of The Unraveler": {
"stock": "elven",
"magic": 1,
"roots": [
"Will"
]
},
"Surrow Of Truth": {
"stock": "elven",
"magic": 1,
"roots": [
"Spite"
]
},
"Supplication To Shadows": {
"stock": "elven",
"magic": 1,
"roots": [
"Will"
]
},
"Twisted Tongue": {
"stock": "elven",
"magic": 1,
"roots": [
"Spite"
]
}
}

@ -1,46 +1,58 @@
{
"Callous": {
"cost": 1,
"type": "character"
},
"Cold": {
"cost": 1,
"type": "character"
},
"Compulsive Liar": {
"cost": 1,
"type": "character"
"type": "die",
"desc": "In a Duel of WIts where kindness, compassion, Grief or passion are involved, the Eremite may double his Will for the purposes of the body of argument. This effect can be triggered mid-conflict, increasing the Eremite's body of argument immediately."
},
"Deceptive": {
"cost": 1,
"type": "character"
"type": "call_on",
"desc": "The Deceptive trait acts as a call-on for Sleight of Hand and Falsehood. However this trait so infuses the liar, he has a hard time telling the truth. Deceptive also incurs a +1 Ob penalty to Oratory, Command tests and a +2 Ob to Ugly Truth or Litany of Fools."
},
"Femme Fatale/Homme Fatale": {
"cost": 1,
"type": "character"
},
"Feral": {
"cost": 1,
"type": "character"
"type": "call_on",
"desc": "Call-on for Seduction."
},
"Feral Elf": {
"cost": 1,
"type": "die",
"desc": "Wastrels lose themselves to their animal instincts, living for decades at a time without contact with civilization–living as animals do. The Feral trait reduces overall hesitation by one, but adds +1 Ob to all social skill tests. Also, Feral Elf negates the bonus to Circles from any Elven lifepath trait such as Etharchal, Lord of Ages, etc.",
"bonus": [
{
"target": [
"+attr",
"hesitation"
],
"value": [
"+add",
-1
]
}
]
},
"Filthy": {
"cost": 1,
"type": "character"
},
"Murderous": {
"Saturnine": {
"cost": 1,
"type": "character"
"type": "die",
"desc": "If any other player attempts to influence a character with the Saturnine trait with passion, motivation, joy, or love, the Saturnine Dark Elf player gets a +1D advantage to all tests for one scene when confronting, hunting or poisoning that character."
},
"Remote": {
"Spite": {
"cost": 1,
"type": "character"
"type": "character",
"desc": "Dark Elves trade their Grief for a burning Spite. Something has snapped inside the Dark Elf's soul–Grief seems folly to them. Whatever the truth of an immortal life is, Dark Elves know that it does not lay silently grieving with their Elven siblings. See the Spite section of this The Path of Spite chapter for more details on the rules."
},
"Saturnine": {
"Thief": {
"cost": 1,
"type": "character"
"type": "call_on",
"desc": "The Thief trait requires that the player note a mandatory theft-related Instinct: \"When visiting home, always steal Mother's valuables,\" for example. So long as that Instinct is in play, it acts as a call-on for Sleight of Hand."
},
"Spite": {
"Vengeful": {
"cost": 1,
"type": "character"
"type": "die",
"desc": "If the Dark Elf character is defeated in a Duel of Wits or a Fight and lives to tell the tale, they may FoRK their Spite into all rolls bent on avenging themselves against their enemy. Humiliating or murdering the enemy–getting revenge upon them–immediately earns the player a bonus persona point, for a total of two: one for a personal goal and one for Vengeful. The Vengeful trait also requires that the Dark Elf have a close relationship with a non-spiteful Elf or a mortal human. It can be familial, romantic or fraternal in nature–but it must be close. It must rankle the Dark Elf that they still live that way."
}
}

@ -168,7 +168,7 @@
"rp": 150
},
{
"name": "Appartment In The Citadel",
"name": "Apartment In The Citadel",
"rp": 25
}
]

@ -1,10 +1,12 @@
require_relative 'data/gold'
require_relative 'data/wizard'
require_relative 'data/dark_elf'
module Charred
class Data
include Charred::Gold
include Charred::Wizard
include Charred::DarkElf
attr :data
@ -13,6 +15,7 @@ module Charred
load_gold(@data)
load_wizard(@data)
load_dark_elf(@data)
end
def lifepath_requirements(expr)

@ -10,6 +10,26 @@ module Charred
file = File.read('data/dark_elf/traits.json')
traits = JSON.parse(file)
data[:traits].merge! traits
file = File.read('data/dark_elf/lifepaths.json')
lifepaths = JSON.parse(file)
file = File.read("data/dark_elf/resources.json")
resources = JSON.parse(file)
data[:resources]['elf'] += resources
elf = data[:lifepaths]['elf']
elf.keys.each do |elf_set|
elf[elf_set].keys.each do |elf_lp|
elf[elf_set][elf_lp]['key_leads'] |= ['Path Of Spite Subsetting']
elf[elf_set][elf_lp]['leads'] |= ['Spite']
end
end
elf['Path Of Spite Subsetting'] = lifepaths['Path Of Spite Subsetting']
data[:lifepaths]['elf'] = elf
end
end
end
Loading…
Cancel
Save