Skip to content

Instantly share code, notes, and snippets.

@owensd
Forked from zhudotexe/character.json
Created June 15, 2017 23:45
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save owensd/df6e561c04f38ad16daf9f4459b9d6f4 to your computer and use it in GitHub Desktop.
Save owensd/df6e561c04f38ad16daf9f4459b9d6f4 to your computer and use it in GitHub Desktop.
{
"attacks": [
{
"attackBonus": "strengthMod + proficiencyBonus",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "1d8 + {strengthMod}",
"damageType": "slashing",
"enabled": true,
"name": "Cone of Cold",
"parent": {
"collection": "Spells",
"id": "2KH3Wboe27K6XidGQ"
},
"removed": true,
"removedAt": 1475121225.697,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "2KH3Wboe27K6XidGQ"
},
{
"attackBonus": "dexterityMod + proficiencyBonus",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "1d4 + {dexterityMod}",
"damageType": "piercing",
"enabled": false,
"name": "Dagger",
"parent": {
"collection": "Items",
"id": "hnP5jEKAedRfcfKhY"
}
},
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "3d8",
"damageType": "cold",
"details": "When hit, a target's speed is reduced by 10 feet until the start of your next turn.",
"enabled": true,
"name": "Ray of Frost",
"parent": {
"collection": "Spells",
"id": "8GajD3p3bjJFfnkY4"
}
},
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "3d10",
"damageType": "fire",
"details": "A flammable object hit by this spell ignites if it isn't being worn or carried.",
"enabled": true,
"name": "Fire Bolt",
"parent": {
"collection": "Spells",
"id": "ojCNFFTGu2GDKAzut"
}
},
{
"attackBonus": "dexterityMod",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "1d8 + {dexterityMod}",
"damageType": "piercing",
"details": "Ammunition (range 80/320), loading, two-handed",
"enabled": true,
"name": "Light Crossbow",
"parent": {
"collection": "Items",
"id": "wAGo8fJcri7gPTKmq"
}
},
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "3d8",
"damageType": "lightning",
"details": "When hit, a target can't take reactions until the start of its next turn.",
"enabled": true,
"name": "Shocking Grasp",
"parent": {
"collection": "Spells",
"id": "y9kcNYDAkxTefFRnM"
}
},
{
"attackBonus": "dexterityMod + proficiencyBonus",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "1d4 + {dexterityMod}",
"damageType": "piercing",
"details": "Finesse, light, thrown (range 20/60)",
"enabled": true,
"name": "Dagger",
"parent": {
"collection": "Items",
"id": "76w2nLJH2jo5FuXKa"
}
},
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "3d8",
"damageType": "acid",
"details": "You choose acid, cold, fire, lightning, poison, or thunder for the type of orb you create.",
"enabled": true,
"name": "Chromatic Orb",
"parent": {
"collection": "Spells",
"id": "Q3ZFLqXNNXAtWshbG"
}
},
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "q",
"damage": "2d6 * 3",
"damageType": "fire",
"details": "You generate three rays of fire and will throw to targets in the range of the spell. You can project them on one or more targets.",
"enabled": true,
"name": "Scorching Ray",
"parent": {
"collection": "Spells",
"id": "yjMPjQpNvZKDewLep"
}
}
],
"characters": [
{
"acidMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"acrobatics": {
"ability": "dexterity"
},
"age": {
"adjustment": 0,
"reset": "longRest"
},
"ageRate": {
"adjustment": 0,
"reset": "longRest"
},
"alignment": "LG",
"animalHandling": {
"ability": "wisdom"
},
"arcana": {
"ability": "intelligence"
},
"armor": {
"adjustment": 0,
"reset": "longRest"
},
"athletics": {
"ability": "strength"
},
"backstory": "Sage - \nWhen I was younger, I worked alongside a powerful wizard (professor? sorcerer? He was magical). I studied alongside him, even though he never actually told me what he was studying.",
"bludgeoningMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"bonds": "I will defend those who cannot defend themselves.",
"carryMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"charisma": {
"adjustment": 0,
"reset": "longRest"
},
"charismaSave": {
"ability": "charisma"
},
"coldMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"color": "s",
"constitution": {
"adjustment": 0,
"reset": "longRest"
},
"constitutionSave": {
"ability": "constitution"
},
"d10HitDice": {
"adjustment": 0,
"reset": "longRest"
},
"d12HitDice": {
"adjustment": 0,
"reset": "longRest"
},
"d6HitDice": {
"adjustment": 0,
"reset": "longRest"
},
"d8HitDice": {
"adjustment": 0,
"reset": "longRest"
},
"deathSave": {
"canDeathSave": true,
"fail": 0,
"pass": 0,
"stable": false
},
"deception": {
"ability": "charisma"
},
"description": "*Padellis is a scrawny, relatively short dragonborn, appearing to be about fifteen years old and standing at 5'8\". He has light copper scales, with a few strands of bronze scales following the blood vessels down his left arm. His tail, a thick, long appendage trailing behind him, is about three feet long, and flicks side to side gently when he's not thinking about it. Generally, he wears only a simple brown set of robes with a light wand strapped to his belt and a light travelling scarf.* \n\n12-18: (( http://i.imgur.com/FvmNsu1.png )) \n5-11: ((http://t05.deviantart.net/hgDHYTPCMf9QLYIei61-KB2ptU4=/fit-in/700x350/filters:fixed_height(100,100):origin()/pre02/503a/th/pre/i/2009/277/c/5/dnd__dragonborn_hido___by_spirogs.jpg))\n1-4: ((https://s-media-cache-ak0.pinimg.com/736x/18/8e/c4/188ec49aeb35840d6ec86a8f164fff4e.jpg)) \n\na dark sapphire tunic and cloak with silver outlinings and embroidery\n\nHeight: 3'5\" \nWeight: 32 lbs \nApparent Age: 1 (Actual 18)",
"dexterity": {
"adjustment": 0,
"reset": "longRest"
},
"dexterityArmor": {
"ability": "dexterity"
},
"dexteritySave": {
"ability": "dexterity"
},
"experience": {
"adjustment": 0,
"reset": "longRest"
},
"expertiseDice": {
"adjustment": 0,
"reset": "longRest"
},
"fireMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"flaws": "I overlook obvious solutions in favor of complicated ones.",
"forceMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"gender": "Male",
"history": {
"ability": "intelligence"
},
"hitPoints": {
"adjustment": 0,
"reset": "longRest"
},
"ideals": "What is beautiful points us beyond itself toward what is true.",
"initiative": {
"ability": "dexterity"
},
"insight": {
"ability": "wisdom"
},
"intelligence": {
"adjustment": 0,
"reset": "longRest"
},
"intelligenceSave": {
"ability": "intelligence"
},
"intimidation": {
"ability": "charisma"
},
"investigation": {
"ability": "intelligence"
},
"ki": {
"adjustment": 0,
"reset": "longRest"
},
"level1SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level2SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level3SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level4SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level5SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level6SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level7SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level8SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"level9SpellSlots": {
"adjustment": 0,
"reset": "longRest"
},
"lightningMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"medicine": {
"ability": "wisdom"
},
"name": "Padellis",
"nature": {
"ability": "intelligence"
},
"necroticMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"owner": "oqQwYSQBSBhKKBMPh",
"perception": {
"ability": "wisdom"
},
"performance": {
"ability": "charisma"
},
"personality": "I'm used to helping out those who aren\u2019t as smart as I am, and I patiently explain anything and everything to others.\n\nI am horribly, horribly awkward in social situations.\n\nI judge people by their actions, not their words.",
"persuasion": {
"ability": "charisma"
},
"picture": "http://i.imgur.com/FvmNsu1.png",
"piercingMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"poisonMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"proficiencyBonus": {
"adjustment": 0,
"reset": "longRest"
},
"psychicMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"race": "Dragonborn",
"radiantMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"rageDamage": {
"adjustment": 0,
"reset": "longRest"
},
"rages": {
"adjustment": 0,
"reset": "longRest"
},
"readers": [],
"religion": {
"ability": "intelligence"
},
"settings": {
"experiencesInc": 20,
"hideSpellcasting": false,
"useStandardEncumbrance": true,
"useVariantEncumbrance": false,
"viewPermission": "public"
},
"slashingMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"sleightOfHand": {
"ability": "dexterity"
},
"sorceryPoints": {
"adjustment": 0,
"reset": "longRest"
},
"speed": {
"adjustment": 0,
"reset": "longRest"
},
"stealth": {
"ability": "dexterity"
},
"strength": {
"adjustment": 0,
"reset": "longRest"
},
"strengthSave": {
"ability": "strength"
},
"superiorityDice": {
"adjustment": 0,
"reset": "longRest"
},
"survival": {
"ability": "wisdom"
},
"thunderMultiplier": {
"adjustment": 0,
"reset": "longRest"
},
"weight": {
"adjustment": 0,
"reset": "longRest"
},
"wisdom": {
"adjustment": 0,
"reset": "longRest"
},
"wisdomSave": {
"ability": "wisdom"
},
"writers": []
}
],
"classes": [
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115402.614,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115419.946,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115401.539,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115433.13,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115401.365,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115437.886,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115401.658,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115431.095,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115402.374,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115423.653,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475439351.252,
"level": 1,
"name": "Bard",
"removed": true,
"removedAt": 1475440512.361,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115401.413,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115435.995,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475116727.367,
"level": 0,
"name": "Sage Background",
"removed": true,
"removedAt": 1475116785.291,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115401.861,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115428.51,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115402.051,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115426.483,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475115389.067,
"level": 1,
"name": "new Class",
"removed": true,
"removedAt": 1475115440.469,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"createdAt": 1475114467.945,
"level": 16,
"name": "Sorcerer"
}
],
"containers": [
{
"charId": "34HGdP9BywJezCywL",
"color": "d",
"description": "A sturdy pouch for coins",
"isCarried": true,
"name": "Coin Pouch",
"value": 0.5,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "t",
"isCarried": false,
"name": "Not Carried",
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "s",
"isCarried": true,
"name": "Crossbow Bolt Case",
"value": 1,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "n",
"isCarried": true,
"name": "Backpack",
"value": 2,
"weight": 5
},
{
"charId": "34HGdP9BywJezCywL",
"color": "s",
"isCarried": false,
"name": "Flying Hammock",
"value": 0,
"weight": 0
}
],
"effects": [
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "add",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"stat": "charisma",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "add",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"removed": true,
"removedAt": 1475116872.193,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"calculation": "5*BardLevel",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "add",
"parent": {
"collection": "Classes",
"id": "a7EY7uBWLGf7CYLi6"
},
"removed": true,
"removedAt": 1475440515.352,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "a7EY7uBWLGf7CYLi6",
"stat": "hitPoints"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Features",
"id": "sELudFaAj3kfYWbMp"
},
"removed": true,
"removedAt": 1475115942.342,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "sELudFaAj3kfYWbMp",
"stat": "intelligence",
"value": 10
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Features",
"id": "sELudFaAj3kfYWbMp"
},
"removed": true,
"removedAt": 1475115942.342,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "sELudFaAj3kfYWbMp",
"stat": "constitution",
"value": 10
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "add",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"removed": true,
"removedAt": 1475116718.083,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Stats (Rolled)",
"operation": "base",
"parent": {
"collection": "Features",
"id": "hKPissXjG4sB2NrqE"
},
"stat": "charisma",
"value": 16
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Stats (Rolled)",
"operation": "base",
"parent": {
"collection": "Features",
"id": "hKPissXjG4sB2NrqE"
},
"stat": "strength",
"value": 10
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Features",
"id": "sELudFaAj3kfYWbMp"
},
"removed": true,
"removedAt": 1475115942.342,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "sELudFaAj3kfYWbMp",
"stat": "charisma",
"value": 10
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level4SpellSlots",
"value": 3
},
{
"calculation": "level * constitutionMod",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Constitution modifier for each level",
"operation": "add",
"parent": {
"collection": "Characters",
"group": "Inate",
"id": "34HGdP9BywJezCywL"
},
"stat": "hitPoints"
},
{
"calculation": "2+4*SorcererLevel",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"stat": "hitPoints"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Features",
"id": "sELudFaAj3kfYWbMp"
},
"removed": true,
"removedAt": 1475115942.342,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "sELudFaAj3kfYWbMp",
"stat": "strength",
"value": 10
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Ability Score Improvement",
"operation": "add",
"parent": {
"collection": "Features",
"id": "RAYdgeJcZ4gdkxNmA"
},
"stat": "charisma",
"value": 3
},
{
"calculation": "SorcererLevel",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"stat": "d6HitDice"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"stat": "speed",
"value": 30
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "add",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"removed": true,
"removedAt": 1475116233.496,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "add",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"stat": "strength",
"value": 2
},
{
"calculation": "dexterityArmor",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Dexterity Armor Bonus",
"operation": "add",
"parent": {
"collection": "Characters",
"group": "Inate",
"id": "34HGdP9BywJezCywL"
},
"stat": "armor"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level6SpellSlots",
"value": 1
},
{
"calculation": "SorcererLevel",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Font of Magic",
"operation": "base",
"parent": {
"collection": "Features",
"id": "GNXKt89nLQHi4MmWR"
},
"stat": "sorceryPoints"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Ability Score Improvement",
"operation": "add",
"parent": {
"collection": "Features",
"id": "RAYdgeJcZ4gdkxNmA"
},
"stat": "intelligence",
"value": 1
},
{
"calculation": "floor(level / 4 + 1.75)",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Proficiency bonus by level",
"operation": "add",
"parent": {
"collection": "Characters",
"group": "Inate",
"id": "34HGdP9BywJezCywL"
},
"stat": "proficiencyBonus"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level1SpellSlots",
"value": 4
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Natural Armor",
"operation": "base",
"parent": {
"collection": "Characters",
"group": "Inate",
"id": "34HGdP9BywJezCywL"
},
"stat": "armor",
"value": 10
},
{
"calculation": "BardLevel",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Classes",
"id": "a7EY7uBWLGf7CYLi6"
},
"removed": true,
"removedAt": 1475440515.352,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "a7EY7uBWLGf7CYLi6",
"stat": "d8HitDice"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Stats (Rolled)",
"operation": "base",
"parent": {
"collection": "Features",
"id": "hKPissXjG4sB2NrqE"
},
"stat": "wisdom",
"value": 12
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level2SpellSlots",
"value": 3
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "mul",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"stat": "acidMultiplier",
"value": 0.5
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Sage (Background)",
"operation": "add",
"parent": {
"collection": "Features",
"id": "X6TqHDmfrpN2uykRN"
},
"removed": true,
"removedAt": 1475116836.166,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "X6TqHDmfrpN2uykRN",
"stat": "arcana"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "add",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"removed": true,
"removedAt": 1475117598.108,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Quickened Spell",
"operation": "add",
"parent": {
"collection": "Features",
"id": "55jHB5Wtz7DKPRGNf"
},
"removed": true,
"removedAt": 1475367759.508,
"removedBy": "oqQwYSQBSBhKKBMPh",
"stat": "sorceryPoints",
"value": 0
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Stats (Rolled)",
"operation": "base",
"parent": {
"collection": "Features",
"id": "hKPissXjG4sB2NrqE"
},
"stat": "dexterity",
"value": 16
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Breath Weapon",
"operation": "add",
"parent": {
"collection": "Features",
"id": "8H9JAdwdPL9CoeT4p"
},
"removed": true,
"removedAt": 1475123128.096,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Natural Carrying Capacity",
"operation": "base",
"parent": {
"collection": "Characters",
"group": "Inate",
"id": "34HGdP9BywJezCywL"
},
"stat": "carryMultiplier",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level5SpellSlots",
"value": 2
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Draconic Resilience",
"operation": "base",
"parent": {
"collection": "Features",
"id": "EoDruFE8t67QZhTSF"
},
"removed": true,
"removedAt": 1475207594.56,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "EoDruFE8t67QZhTSF",
"stat": "armor",
"value": 13
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level3SpellSlots",
"value": 3
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Features",
"id": "sELudFaAj3kfYWbMp"
},
"removed": true,
"removedAt": 1475115942.342,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "sELudFaAj3kfYWbMp",
"stat": "dexterity",
"value": 10
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"operation": "base",
"parent": {
"collection": "Features",
"id": "sELudFaAj3kfYWbMp"
},
"removed": true,
"removedAt": 1475115942.342,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "sELudFaAj3kfYWbMp",
"stat": "wisdom",
"value": 10
},
{
"calculation": "SorcererLevel",
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Draconic Resilience",
"operation": "add",
"parent": {
"collection": "Features",
"id": "EoDruFE8t67QZhTSF"
},
"removed": true,
"removedAt": 1475207594.56,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "EoDruFE8t67QZhTSF",
"stat": "hitPoints"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Stats (Rolled)",
"operation": "base",
"parent": {
"collection": "Features",
"id": "hKPissXjG4sB2NrqE"
},
"stat": "intelligence",
"value": 15
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Wand of the War Mage +1",
"operation": "add",
"parent": {
"collection": "Items",
"id": "jQkjKngkoGDdHTCyS"
},
"removed": true,
"removedAt": 1475126205.552,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Stats (Rolled)",
"operation": "base",
"parent": {
"collection": "Features",
"id": "hKPissXjG4sB2NrqE"
},
"stat": "constitution",
"value": 15
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Mage Armor",
"operation": "base",
"parent": {
"collection": "Features",
"id": "FbGLFzW78KbtARW6b"
},
"stat": "armor",
"value": 13
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": false,
"name": "Ioun Stone, Leadership",
"operation": "add",
"parent": {
"collection": "Items",
"id": "pW7sRrLchJC4LKZ24"
},
"removed": true,
"removedAt": 1477520426.087,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "pW7sRrLchJC4LKZ24",
"stat": "intelligence",
"value": 2
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level7SpellSlots",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Spellcasting",
"operation": "base",
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"stat": "level8SpellSlots",
"value": 1
}
],
"experience": [
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475401188.054,
"name": "The Wicked Night, Pt. 3: Night of the Dragon Riders",
"value": 4800
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475379679.682,
"name": "The Wicked Night, Pt. 1: Oars' Rest",
"value": 1250
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475115355.507,
"name": "Starting XP",
"value": 82500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475401118.455,
"name": "The Wicked Night, Pt. 2: The Dragon and the Wolves",
"value": 2250
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475306872.06,
"name": "Darkness Falls, Pt 2: Tree Sap",
"value": 1800
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475647463.044,
"name": "Headless Squared Horseman",
"value": 600
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1475849250.427,
"name": "Hide and Seek Pt. 3: The Ending",
"value": 8500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476162713.324,
"name": "The Wicked Shall Fall: Pt. 1",
"value": 2000
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476322120.473,
"name": "The Wicked Night, Pt. 4: A Plagued Town",
"value": 750
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476344087.69,
"name": "The Wicked Night, Pt. 6: The Beast of Disease",
"removed": true,
"removedAt": 1476344944.689,
"removedBy": "oqQwYSQBSBhKKBMPh",
"value": 6675
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476344426.319,
"name": "The Wicked Night, Pt. 5: The Dragon's Lair",
"value": 1250
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476344947.485,
"name": "The Wicked Night, Pt. 6: The Beast of Disease",
"value": 6675
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476498065.432,
"name": "The Great Golem Escape",
"value": 5975
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476746609.033,
"name": "Dance of the Avi'llen\u00f5n",
"value": 3775
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476855770.631,
"name": "The Return",
"value": 1500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1476996174.511,
"name": "Trial of Storms & Clouds",
"value": 3571
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1477123133.511,
"name": "Death Was Watching",
"value": 5480
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1477457035.871,
"name": "How To Wreck A Beholder 101",
"value": 2500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1477642666.293,
"name": "Ropers, Spitters and Vine Giants",
"value": 5925
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1478369119.151,
"name": "Golems Galore",
"value": 6750
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1478509752.049,
"name": "Oh God Make One Up For Me I Wasn't Prepared (AKA Terrors Resurface: The Watery Prologue)",
"value": 2100
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1478717395.352,
"name": "Terrors Resurface: I'm Impressed. Thief.",
"value": 3300
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1479009802.744,
"name": "Terrors Resurface: Never Forget The Corpses!",
"value": 2100
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1479454598.207,
"name": "Terror Resurfaces: He Was Prepared.",
"value": 2000
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1479795047.511,
"name": "Forest for the Trees",
"value": 3080
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1481343132.692,
"name": "When Wild Sorcerers Surge, Ealyra Gets Zapped.",
"value": 15000
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1481420350.472,
"name": "Hole of Portability Pt 1: Sad Stories in a Happy Pub",
"value": 500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1481420455.201,
"name": "Hole of Portability Pt 2: The Pious Are Not So Holy",
"value": 500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1482133879.603,
"name": "Limbo Clouds are Afraid of Pineapples?",
"value": 4600
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1482189033.547,
"name": "The March of Ents and the Clash of Wills - Pt.1",
"value": 2500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1482438641.524,
"name": "A Wizard Always Knocks",
"value": 4040
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1482461217.06,
"name": "Slip to the Void Pt. 2: Reaper of Worlds",
"value": 8285
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1482904437.255,
"name": "We're going on an Adv- Run away!",
"value": 1300
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1483600177.03,
"name": "Everai's Trial",
"value": 2000
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1483666311.953,
"name": "Banishing Fear and Curing Famine",
"value": 6000
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1483678742.438,
"name": "Static Discharge",
"value": 3800
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1483921948.848,
"name": "Nothing Consumes Me Pt.1: From the Shadows Comes Fire",
"value": 2300
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1484371487.842,
"name": "Bad Customer Service",
"value": 500
},
{
"charId": "34HGdP9BywJezCywL",
"dateAdded": 1484374592.292,
"name": "Snakes In A Silverkeep",
"value": 2400
}
],
"features": [
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "s",
"description": "Starting at 6th level, when you cast a spell that deals damage of the type associated with your draconic ancestry, add your Charisma modifier to that damage.\nAt the same time, you can spend 1 sorcery point to gain resistance to that damage type for 1 hour.",
"enabled": true,
"name": "Elemental Affinity",
"removed": true,
"removedAt": 1475207597.695,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "g",
"description": "When you cast a spell that has a casting time of **1 action**, you can spend **2 sorcery points** to change the casting time to **1 bonus action** for this casting.",
"enabled": true,
"name": "Quickened Spell",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "j",
"description": "You can use your action to exhale destructive energy in a **5x30 ft line**.\nWhen you use your breath weapon, each creature in the area of the exhalation must make a **DEX saving throw**. The DC for this saving throw equals **{8 + constitutionMod + proficiencyBonus}**. A creature takes 2d6 **acid** damage on a failed save, and half as much damage on a successful one. The damage increases to 3d6 at 6th level, 4d6 at 11th level, and **5d6** at 16th level.\nAfter you use your breath weapon, you can\u2019t use it again until you complete a **short or long rest**.",
"enabled": true,
"name": "Breath Weapon",
"reset": "manual",
"used": 0,
"uses": "1"
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "t",
"enabled": true,
"name": "Inspiration",
"reset": "manual",
"used": 0,
"uses": "1"
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "s",
"description": "As magic flows through your body, it causes physical traits of your dragon ancestors to emerge. At 1st level, your hit point maximum increases by 1 and increases by 1 again whenever you gain a level in this class.\nAdditionally, parts of your skin are covered by a thin sheen of dragon-like scales. When you aren\u2019t wearing armor, your AC equals 13 + your Dexterity modifier.",
"enabled": true,
"name": "Draconic Resilience",
"removed": true,
"removedAt": 1475207584.888,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "h",
"description": "**Creating Spell Slots.** You can transform unexpended sorcery points into one spell slot as a **Bonus Action** on Your Turn. The created Spell Slots Vanish at the end of a Long Rest. The Creating Spell Slots table shows the cost of creating a spell slot of a given level. You can create Spell Slots no higher in level than 5th. \n - 1st: 2 SP \n - 2nd: 3 SP \n - 3rd: 5 SP \n - 4th: 6 SP \n - 5th: 7 SP \n\n**Converting a Spell Slot to Sorcery Points.** As a **Bonus Action** on Your Turn, you can expend one spell slot and gain a number of sorcery points equal to the slot's level.",
"enabled": true,
"name": "Font of Magic",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "g",
"description": "When you cast a spell, you can spend **1 sorcery point** to cast it **without any somatic or verbal components**.",
"enabled": true,
"name": "Subtle Spell",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Starting at 1st level, you can manipulate the forces of chance and chaos to gain advantage on one attack roll, ability check, or saving throw. Once you do so, you must finish a long rest before you can use this feature again. \nAny time before you regain the use of this feature, the DM can have you roll on the Wild Magic Surge table immediately after you cast a sorcerer spell of 1st level or higher. You then regain the use of this feature.",
"enabled": true,
"name": "Tides of Chaos",
"removed": true,
"removedAt": 1475122597.372,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "s",
"description": "Draconic Ancestry: You have draconic ancestry of a copper dragon. This gives you a acid breath weapon and resistance to acid damage.",
"enabled": true,
"name": "Draconic Ancestry",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": true,
"name": "Ability Score Improvement",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "m",
"description": "When you attempt to learn or recall a piece of lore, if you do not know that information, you often know where and from whom you can obtain it.\nUsually, this information comes from a library, scriptorium, university, or a sage or other learned person or creature.\nYour DM might rule that the knowledge you seek is secreted away in an almost inaccessible place, or that it simply cannot be found.\nUnearthing the deepest secrets of the multiverse can require an adventure or even a whole campaign.",
"enabled": true,
"name": "Researcher",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "g",
"description": "When you cast a spell that has a range of 5 feet or greater, you can spend **1 sorcery point** to **double the range** of the spell.\nWhen you cast a spell that has a range of touch, you can spend 1 sorcery point to make the range of the spell **30 feet**.",
"enabled": true,
"name": "Distant Spell",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "When I was younger, I worked alongside a powerful wizard (professor? sorcerer? He was magical). I studied alongside him, even though he never actually told me what he was studying.",
"enabled": true,
"name": "Sage (Background)",
"removed": true,
"removedAt": 1475119439.168,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Starting when you choose this origin at 1st level, your spellcasting can unleash surges of untamed magic. Immediately after you cast a sorcerer spell of 1st level or higher, the DM can have you roll a d20. If you roll a 1, roll on the Wild Magic Surge table to create a random magical effect.",
"enabled": true,
"name": "Wild Magic Surge",
"removed": true,
"removedAt": 1475122599.567,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Starting at 6th level, you have the ability to twist fate using your wild magic. When another creature you can see makes an attack roll, an ability check, or a saving throw, you can use your reaction and spend 2 sorcery points to roll 1d4 and apply the number rolled as a bonus or penalty (your choice) to the creature\u2019s roll. You can do so after the creature rolls but before any effects of the roll occur.",
"enabled": true,
"name": "Bend Luck",
"removed": true,
"removedAt": 1475122605.481,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "4d6 drop lowest * 6 rolled stats.",
"enabled": true,
"name": "Stats (Rolled)",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "h",
"description": "You have learned techniques to enhance your attacks with certain kinds of spells, gaining the following benefits:\n\n - When you cast a spell that requires you to make an attack roll, the spell\u2019s range is doubled.\n - Your ranged spell attacks ignore half cover and three-quarters cover.",
"enabled": true,
"name": "Spell Sniper",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Quick",
"enabled": true,
"name": "Metamagic",
"removed": true,
"removedAt": 1475117893.829,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "b",
"description": "Starting at 6th level, you have the ability to twist fate using your wild magic. When another creature you can see makes an attack roll, an ability check, or a saving throw, you can use your **reaction** and spend **2 sorcery points** to roll 1d4 and apply the number rolled as a bonus or penalty (your choice) to the creature\u2019s roll. You can do so after the creature rolls but before any effects of the roll occur.",
"enabled": true,
"name": "Bend Luck",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "s",
"description": "You can speak, read, and write Draconic. Additionally, whenever you make a Charisma check when interacting with dragons, your proficiency bonus is doubled if it applies to the check.",
"enabled": true,
"name": "Dragon Ancestor (Bronze)",
"removed": true,
"removedAt": 1475207595.97,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": true,
"name": "Base Ability Scores",
"removed": true,
"removedAt": 1475115942.079,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "b",
"description": "Starting when you choose this origin at 1st level, your spellcasting can unleash surges of untamed magic. Immediately after you cast a sorcerer spell of 1st level or higher, the DM can have you roll a d20. If you roll a 1, roll on the Wild Magic Surge table to create a random magical effect.",
"enabled": true,
"name": "Wild Magic Surge",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "b",
"description": "Starting at 1st level, you can manipulate the forces of chance and chaos to gain advantage on one attack roll, ability check, or saving throw. Once you do so, you must finish a **long rest** before you can use this feature again. \nAny time before you regain the use of this feature, the DM can have you roll on the Wild Magic Surge table immediately after you cast a sorcerer spell of 1st level or higher. You then regain the use of this feature.",
"enabled": true,
"name": "Tides of Chaos",
"reset": "manual",
"used": 0,
"uses": "1"
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": true,
"name": "Spellcasting",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": true,
"name": "New Feature",
"removed": true,
"removedAt": 1475631270.359,
"removedBy": "oqQwYSQBSBhKKBMPh",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": false,
"charId": "34HGdP9BywJezCywL",
"color": "s",
"enabled": true,
"name": "Mage Armor",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "b",
"description": "At 14th level, you gain a modicum of control over the surges of your wild magic. Whenever you roll on the Wild Magic Surge table, you can roll twice and use either number",
"enabled": true,
"name": "Controlled Chaos",
"reset": "manual",
"used": 0
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "n",
"description": "You can cast any lvl 1 spell of your chosen school once day. You use your spellcasting ability, or if you do not have a spellcasting ability, you may choose which knowledge stat to use for this feature. This feature recharges after a long rest.",
"enabled": true,
"name": "Rasp's Magic",
"reset": "manual",
"used": 0,
"uses": "1"
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "p",
"description": "This gem has 3 charges. As an action, you can speak the gem's command word and expend 1 charge. For the next 10 minutes, you have truesight out to 120 feet when you peer through the gem. \nThe gem regains 1d3 expended charges daily at dawn.\n\nTruesight \nA creature with truesight can, out to a specific range, see in normal and magical darkness, see invisible creatures and objects, automatically detect visual illusions and succeed on saving throws against them, and perceives the original form of a shapechanger or a creature that is transformed by magic. Furthermore, the creature can see into the Ethereal Plane.",
"enabled": true,
"name": "Gem of Seeing",
"reset": "manual",
"used": 0,
"uses": "3"
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "j",
"description": "You have inexplicable luck that seems to kick in at just the right moment. \nYou have 3 luck points. Whenever you make an attack roll, an ability check, or a saving throw, you can spend one luck point to roll an additional d20. You can choose to spend one of your luck points after you roll the die, but before the outcome is determined. You choose which of the d20s is used for the attack roll, ability check, or saving throw. \nYou can also spend one luck point when an attack roll is made against you. Roll a d20, and then choose whether the attack uses the attacker\u2019s roll or yours. \nIf more than one creature spends a luck point to influence the outcome of a roll, the points cancel each other out; no additional dice are rolled. You regain your expended luck points when you finish a long rest.",
"enabled": true,
"name": "Lucky",
"reset": "manual",
"used": 0,
"uses": "3"
},
{
"alwaysEnabled": true,
"charId": "34HGdP9BywJezCywL",
"color": "p",
"description": "The medallion has 3 charges. While wearing it, you can use an action and expend 1 charge to cast the detect thoughts spell (save DC 13) from it. The medallion regains 1d3 expended charges daily at dawn.",
"enabled": true,
"name": "Medallion of Thoughts",
"reset": "manual",
"used": 0,
"uses": "3"
}
],
"items": [
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Bottle (Black Ink)",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 10,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Crossbow Bolt",
"parent": {
"collection": "Containers",
"id": "h7vaYgTueME986g2K"
},
"plural": "Crossbow Bolts",
"quantity": 17,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.05,
"weight": 0.075
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "A ring of greater telepathy can communicate to any other creature you are familiar with who is wearing a ring of telepathy or a ring of greater telepathy. If the creature does not bear a ring, you know that fact as soon as you use the ring and the message is not sent. The range is 15 miles.\n\nAs an action, you can also link up to 6 creatures together who are also wearing a ring of telepathy or a ring of greater telepathy. Any message transmitted will also be transmitted to the others who are connected. You can end this connection as a bonus action.",
"enabled": true,
"name": "Ring of Greater Telepathy",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 300,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Day of Rations",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"plural": "Days of Rations",
"quantity": 6,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.5,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Waterskin",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0.2,
"weight": 5
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Foot of Hempen Rope",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"plural": "Feet of Hempen Rope",
"quantity": 30,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.02,
"weight": 0.2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "A simple wooden staff, ornately carved.",
"enabled": false,
"name": "Arcane Focus",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 5,
"weight": 4
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Mess Kit",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0.2,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Bedroll",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 1,
"weight": 7
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Torch",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"plural": "Torches",
"quantity": 3,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.01,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Component Pouch",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 25,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "n",
"enabled": false,
"name": "Gold piece",
"parent": {
"collection": "Containers",
"id": "2BZXm2rJSae9nqajD"
},
"plural": "Gold pieces",
"quantity": 400,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 1,
"weight": 0.02
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Yellowback Eel",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 0,
"removed": true,
"removedAt": 1475403998.344,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Tinderbox",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0.5,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Letter",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "s",
"enabled": false,
"name": "Copper piece",
"parent": {
"collection": "Containers",
"id": "2BZXm2rJSae9nqajD"
},
"plural": "Copper pieces",
"quantity": 55,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.01,
"weight": 0.02
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Cold Weather Cloak",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 2,
"weight": 4
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": true,
"name": "Salmon",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 2,
"removed": true,
"removedAt": 1475403994.51,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.3,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Quill",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Finesse, light, thrown (range 20/60)",
"enabled": false,
"name": "Dagger",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"plural": "Daggers",
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 2,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "While holding this wand, you gain a bonus to spell attack rolls determined by the wand's rarity. In addition, you ignore half cover when making a spell attack.",
"enabled": true,
"name": "Wand of the War Mage +1",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": true,
"settings": {
"showIncrement": false
},
"value": 100,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Clothes, Common (Simple Robes)",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0.5,
"weight": 3
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Torch",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"plural": "Torches",
"quantity": 7,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.01,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Small Knife",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 2,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Ammunition (range 80/320), loading, two-handed",
"enabled": true,
"name": "Light Crossbow",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 25,
"weight": 5
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Silver piece",
"parent": {
"collection": "Containers",
"id": "2BZXm2rJSae9nqajD"
},
"plural": "Silver pieces",
"quantity": 83,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.1,
"weight": 0.02
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Day of Rations",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"plural": "Days of Rations",
"quantity": 2,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.5,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "**Padellis slashes with his dagger!**",
"enabled": true,
"name": "Dagger",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"plural": "Daggers",
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 2,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Ice Skates",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 2,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Notebook",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"plural": "Notebooks",
"quantity": 2,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 25,
"weight": 2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Clothes, Fine (Sapphire Tunic)",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 15,
"weight": 6
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Cloak",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 10,
"weight": 4
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Clothes, Fine (Brown Silk Pajamas)",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 15,
"weight": 6
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Superior healing\tRare\t8d4 + 8",
"enabled": false,
"name": "Superior Healing Potion",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"plural": "Superior Healing Potions",
"quantity": 3,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 50,
"weight": 0.5
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "An Ioun stone is named after Ioun, a god of knowledge and prophecy revered on some worlds. Many types of Ioun stone exist, each type a distinct combination of shape and color. \nWhen you use an action to toss one of these stones into the air, the stone orbits your head at a distance of ld3 feet and confers a benefit to you. Thereafter, another creature must use an action to grasp or net the stone to separate it from you, either by making a\nsuccessful attack roll against AC 24 or a successful DC 24 Dexterity (Acrobatics) check. You can use an action to seize and stow the stone, ending its effect. \nA stone has AC 24, 10 hit points, and resistance to all damage. It is considered to be an object that is being worn while it orbits your head.\n\nIntellect (Very Rare). Your Intelligence score increases by 2, to a maximum of 20, while this marbled scarlet and blue sphere orbits your head.",
"enabled": false,
"name": "Ioun Stone, Intellect",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 1,
"removed": true,
"removedAt": 1477520425.89,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": true,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Shadow Shard",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"plural": "Shadow Shards",
"quantity": 40,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "n",
"enabled": false,
"name": "Gold piece",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"plural": "Gold pieces",
"quantity": 3240,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 1,
"weight": 0.02
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Pineapple",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 1,
"removed": true,
"removedAt": 1477534798.529,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0.02,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "t",
"enabled": false,
"name": "250 GP Gem",
"parent": {
"collection": "Containers",
"id": "2BZXm2rJSae9nqajD"
},
"plural": "250 GP Gems",
"quantity": 2,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 250,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "a",
"enabled": false,
"name": "Platinum piece",
"parent": {
"collection": "Containers",
"id": "box9fNW4Yn2q99RwX"
},
"plural": "Platinum pieces",
"quantity": 143,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 10,
"weight": 0.02
},
{
"charId": "34HGdP9BywJezCywL",
"color": "a",
"enabled": false,
"name": "Platinum piece",
"parent": {
"collection": "Containers",
"id": "2BZXm2rJSae9nqajD"
},
"plural": "Platinum pieces",
"quantity": 0,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 10,
"weight": 0.02
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Hammock",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 1,
"weight": 1
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Heavy Blankets",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 1,
"weight": 6
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Mystery Pearl",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"removed": true,
"removedAt": 1478681805.372,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "This flat iron rod has a button on one end. You can use an action to press the button, which causes the rod to become magically fixed in place. Until you or another creature uses an action to push the button again, the rod doesn't move, even if it is defying gravity. The rod can hold up to 8,000 pounds of weight. More weight causes the rod to deactivate and fall. A creature can use an action to make a DC 30 Strength check, moving the fixed rod up to 10 feet on a success.",
"enabled": false,
"name": "Immovable Rod",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Ladder, 10 foot",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0.1,
"weight": 25
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Ladder, 30 foot (Hempen Rope)",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 2,
"weight": 20
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Foot of Hempen Rope",
"parent": {
"collection": "Containers",
"id": "GYB8NQLCkwzWdm8AF"
},
"plural": "Feet of Hempen Rope",
"quantity": 20,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0.02,
"weight": 0.2
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Baharem Tea (30 minute dose)",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 1,
"removed": true,
"removedAt": 1481238780.19,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Potion of Radience",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 1,
"removed": true,
"removedAt": 1482391735.742,
"removedBy": "oqQwYSQBSBhKKBMPh",
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "t",
"enabled": false,
"name": "1000 GP Diamond",
"parent": {
"collection": "Containers",
"id": "2BZXm2rJSae9nqajD"
},
"quantity": 1,
"requiresAttunement": false,
"settings": {
"showIncrement": false
},
"value": 1000,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": true,
"name": "Gem of Seeing",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": true,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"enabled": false,
"name": "Healing Potion (16d4)",
"parent": {
"collection": "Containers",
"id": "srPcj9647ovALGNZn"
},
"quantity": 2,
"requiresAttunement": false,
"settings": {
"showIncrement": true
},
"value": 0,
"weight": 0
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "The medallion has 3 charges. While wearing it, you can use an action and expend 1 charge to cast the detect thoughts spell (save DC 13) from it. The medallion regains 1d3 expended charges daily at dawn.",
"enabled": true,
"name": "Medallion of Thoughts",
"parent": {
"collection": "Characters",
"id": "34HGdP9BywJezCywL"
},
"quantity": 1,
"requiresAttunement": true,
"settings": {
"showIncrement": false
},
"value": 0,
"weight": 1
}
],
"notes": [
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Tieflings - Resist Fire; NS1 - Immune Lightning, Slashing, OK Fire/Piercing",
"name": "Noted Immunities",
"removed": true,
"removedAt": 1475306960.836,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Magic Missile -> Mage Armor; Dispel Magic -> Scorching Ray; Cone of Cold -> Immolation; Witch Bolt -> Chromatic Orb; Lightning Bolt -> Fireball; Take Chain Lightning",
"name": "Spells to Change",
"removed": true,
"removedAt": 1475441030.314,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"name": "New Note",
"removed": true,
"removedAt": 1475119958.225,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "test",
"name": "test",
"removed": true,
"removedAt": 1475209083.551,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Darkvision 8 hr (until 5:30 AM PDT)",
"name": "Status Effects",
"removed": true,
"removedAt": 1475438851.637,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "CHA +2",
"name": "Next Ability Score Improvement",
"removed": true,
"removedAt": 1475855222.387,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "Adv. on all Dexterity checks, including init, yup. Also you take no fall damage from falling 20 or less feet",
"name": "Cat's Grace",
"removed": true,
"removedAt": 1476132889.757,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "immune to poison and becoming frightened, and makes all Wisdom saves with advantage.",
"name": "Hero's Feast",
"removed": true,
"removedAt": 1476477603.427,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "8 Hours",
"name": "Wind Walk",
"removed": true,
"removedAt": 1476477608.897,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"name": "New Note",
"removed": true,
"removedAt": 1476322119.66,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"description": "1 hour",
"name": "See Invisibility",
"removed": true,
"removedAt": 1476477606.763,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "a",
"description": "```Mage Armor/Darkvision: Ends 4 AM``` \n```Tounges: Ends ```",
"name": "Status Effects",
"removed": true,
"removedAt": 1482461653.291,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "b",
"description": "```Feburary 5, 2001``` \n```Padellis' 3rd Birthday``` \n*The day of Padellis' third birthday was quite nice; despite it being midwinter, it was decently warm, and the sun was shining down on the town of Marastir, his hometown.* \n*It had been a tough year for his adoptive parents - two kindly old humans, simple farmers. There had been a severe drought that year, combined with a plague that had killed most of the town's crops, leaving many cold, sick, and hungry. They had not been able to do anything special for their child, barely having enough money to support themselves.* \n*As the young dragonborn played in the grass in front of his parents' shack, his parents watched from the doorway, a mixture of happiness and grief on their faces. The dragonborn didn't seem to notice, and chased after a lizard happily.* \n*...* \n*As the dragonborn chased the lizard around the corner of the shack, a figure in a dark cloak appeared just outside the shack's hastily built fence, watching the child play as she walked up to his parents.* \n*The parents looked down as she approached, averting their gazes.* \n*As the figure walked up, she finished inspecting the dragonborn, turning instead to inspect his parents.* \n*After what seemed like an eternity, the figure spoke, the child's shouts of joy fading into the background.* \"...I suppose he shall suffice.\" *She paused for a while, waiting to see if the parents reacted. When they did not, she reached into her cloak.* \"Five hundred gold. As promised.\" *The sound of coins clinking is heard as she pulls out a bag from under her cloak, handing it to the man.* \n*As the man took the bag, the dragonborn came running back to the front of the shack, holding the small lizard in his hand.* {\"Mother! Look what I found!\"} *He grinned widely, lightly stroking the lizard's back.* {\"It's so cute!\"} *While the figure smiled at this, the child's mother frowned, reaching a hand to take the lizard.* {\"Mother? What's wrong?\"} \n*Letting the lizard escape back into the grass, the mother gave the dragonborn a hug before speaking.* \"*Well, you know how you've always wanted to study magic?*\" *The child giggled and clapped.* \"*We've arranged for you to stay with the kind lady for a month! She's actually a renowned wizard, she'll teach you magic!*\" *Her words had a hint of desperation to them, as if she was trying to convince herself it was true.* \n*Fully believing her words, the child turned to the figure, who took off her hood to reveal a young high elf.* \"I am Induis Bella, young one. Come. We have much work to do.\" \n*Grabbing the elf by the sleeve, the dragonborn followed, turning to wave at his parents as they walked out onto the street.* {\"Byeeee, Mother! Bye, Father! See you in a month!\"} \n*Saddened, his adoptive parents waved back.* \"Farewell, {little one}!\" *They turned and walked back into the shack, never turning to look back at the child.*",
"name": "Feburary 5, 2001"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "c",
"description": "```May 12, 2004``` \n```8:42 PM``` \n*It was ~~a dark and stormy night~~ a cool evening on the 12th of May that year, but the dragonborn was not out to enjoy it. Instead, he was up in his room, a small study that had been converted by Induis to accommodate him.* \n*He was doing his normal studies: basic algebra, physics, and simple magic. Recently he had learned how to perform his first spell, Prestidigitation - a simple magical trick, but it amused him to no end.* \n*As he continued his studies, the sound of wings flapping outside made him look up, seeing a small bronze dragon - but a wyrmling - flying overhead. He smiled, using his newfound spell to trace the image of the dragon into his paper.* \n*A few seconds later, as he began to doodle the dragon in the margins of his notes, he heard the sound of a heavy crossbow being loaded outside. Looking up, he saw three bolts of fire - one central, larger bolt, with two smaller bolts spiraling around it - shoot up at the dragon, followed by a heavy net.* {\"No!\"} *His shouts went unheard, however, as the dragon went crashing down into the nearby hillside.* \n*His heart skipping a beat, he ran to the door, trying - and failing - to force the locked door open.* {\"Let me out!\"} *The dragonborn's pounding on the door were unanswered, and he slid down, leaning against the wall for support.* {\"Let me go...\"}",
"name": "May 12, 2004"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "d",
"description": "```May 14, 2004``` \n```11:17 PM``` \n*There was a knock at the door, a loud and stern rapping that startled the young dragonborn from his restless sleep.* \"Wake up, we've got work to do!\" *Upon hearing Induis' voice, the dragonborn shot up in bed.* {\"What do you want?\"} \n\"Come on, we don't have all night!\" *She unlocked the door, opening it slowly. Being an elf, she had no need for any light, allowing her to slip into the dragonborn's room slowly, enshrouded in darkness.* \n{\"That doesn't tell me wha-\"} *The child was cut off, the elf having paralyzed him with a spell. She lit a lantern in the middle of the room, illuminating the terror in the child's eyes.* \n\"Yes, yes, what I want.\" *The elf reached into her cloak, pulling out a vial of bronze dragon's blood.* \"This is dragon's blood. Magical poison. Extremely deadly if ingested, and extremely rare. I was lucky to obtain this sample.\" *She grinned, pulling out the equivalent of a syringe.* \"Now you... you're a dragon*born*, and a young one at that.\" *She filled the syringe, drawing from the vial.* \"Hold still.\" *Taking a second to cap the vial and align the needle, she stabbed it into the dragonborn's chest, just above the heart.* \n*...* \n*The dragonborn's eyes slowly closed as the poison made its way around his body, hiding the expression of terror previously on his face. The elf released the spell, allowing the child to fall to the ground, the light shine of bronze scales glimmering around the injection site.* \"Hmph.\" *She bent over, checking the dragonborn's vitals.* \n*...* \n*Seemingly satisfied, she stood up, extinguished the lantern, and exited the room, locking the door and leaving the child alone again.* \n```3 hours later...``` \n*The dragonborn awoke in a small pool of his own blood, covered in a cold sweat. He looked around, regaining his bearings before looking down, seeing a large streak of bronze scales running up his chest.* {\"...oh.\"} \n*Panicked, he grabbed at his notebook, barely managing to seize the corner of it before stumbling, nearly blacking out. The child turned to the page with the drawing of the dragon on it, letting out a gasp as he felt a surge of power flow through him.* {\"Wha... what did you do?!\"} \n*Barely able to remain standing already, the child fell over backwards, trying to grab the table as he fell over to stabilize himself. However, all he managed to do was to pull the tablecloth, sending many of his books toppling down toward him.* {\"Aaaah!\"} \n*Instinctively, he put his hand out in front of him to shield himself from the falling books, and was surprised when the books seemed to deflect off a point in midair, missing him completely. As he looked at his hand, confused, the wound in his chest began to heal over, covering itself with light bronze scales, the first sign of the dragonborn's wild magic.*",
"name": "May 14, 2004"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "e",
"name": "New Note",
"removed": true,
"removedAt": 1477023016.59,
"removedBy": "oqQwYSQBSBhKKBMPh"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "e",
"description": "```July 23, 2007``` \n```Noon``` \n*The day was searing hot on the 23rd of July, but the heat didn't concern the dragonborn. Other thoughts occupied his mind, namely the desire to escape - an opportunity had arisen. Early in the morning, he had seen the teleportation circle light up out of his window, and he had seen Induis step through it, a sure sign that she was away.* \n*The circle had activated around 2 in the morning, and he had seen Induis glance up at his window before stepping through.* {\"*That means, one, she was checking to make sure I was asleep, and two, she probably won't be back for a while.*\"} *He grinned, thinking to himself as he tried to focus, to change his position in the Material Plane by manipulating the Weave.*",
"name": "July 23, 2007"
},
{
"charId": "34HGdP9BywJezCywL",
"color": "q",
"name": "Released - Nov 22, 2009"
}
],
"proficiencies": [
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "history",
"parent": {
"collection": "Features",
"id": "X6TqHDmfrpN2uykRN"
},
"removed": true,
"removedAt": 1475119439.69,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "X6TqHDmfrpN2uykRN",
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Light Armor",
"parent": {
"collection": "Classes",
"id": "a7EY7uBWLGf7CYLi6"
},
"removed": true,
"removedAt": 1475440515.551,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "a7EY7uBWLGf7CYLi6",
"type": "armor",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Pan Flute",
"parent": {
"collection": "Classes",
"id": "a7EY7uBWLGf7CYLi6"
},
"removed": true,
"removedAt": 1475440515.551,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "a7EY7uBWLGf7CYLi6",
"type": "tool",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "insight",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Elvish",
"parent": {
"collection": "Characters",
"group": "background",
"id": "34HGdP9BywJezCywL"
},
"type": "language",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Common",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"type": "language",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "charismaSave",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "save",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Dagger",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "weapon",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "arcana",
"parent": {
"collection": "Features",
"id": "X6TqHDmfrpN2uykRN"
},
"removed": true,
"removedAt": 1475119439.69,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "X6TqHDmfrpN2uykRN",
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "constitutionSave",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "save",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Infernal",
"parent": {
"collection": "Features",
"id": "X6TqHDmfrpN2uykRN"
},
"removed": true,
"removedAt": 1475119439.69,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "X6TqHDmfrpN2uykRN",
"type": "language",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "history",
"parent": {
"collection": "Characters",
"group": "background",
"id": "34HGdP9BywJezCywL"
},
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"removed": true,
"removedAt": 1475117580.5,
"removedBy": "oqQwYSQBSBhKKBMPh",
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "persuasion",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Dart",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "weapon",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Infernal",
"parent": {
"collection": "Characters",
"group": "background",
"id": "34HGdP9BywJezCywL"
},
"type": "language",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Elvish",
"parent": {
"collection": "Features",
"id": "X6TqHDmfrpN2uykRN"
},
"removed": true,
"removedAt": 1475119439.69,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "X6TqHDmfrpN2uykRN",
"type": "language",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Quarterstaff",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "weapon",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "animalHandling",
"parent": {
"collection": "Classes",
"id": "a7EY7uBWLGf7CYLi6"
},
"removed": true,
"removedAt": 1475440515.551,
"removedBy": "oqQwYSQBSBhKKBMPh",
"removedWith": "a7EY7uBWLGf7CYLi6",
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Sling",
"parent": {
"collection": "Classes",
"id": "yp6vr4uBvzKRfGsha"
},
"type": "weapon",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"removed": true,
"removedAt": 1475114503.841,
"removedBy": "oqQwYSQBSBhKKBMPh",
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "Draconic",
"parent": {
"collection": "Characters",
"group": "racial",
"id": "34HGdP9BywJezCywL"
},
"type": "language",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"name": "arcana",
"parent": {
"collection": "Characters",
"group": "background",
"id": "34HGdP9BywJezCywL"
},
"type": "skill",
"value": 1
},
{
"charId": "34HGdP9BywJezCywL",
"enabled": true,
"parent": {
"collection": "Features",
"id": "zgbd4sedhi38iMFSN"
},
"removed": true,
"removedAt": 1476749761.849,
"removedBy": "oqQwYSQBSBhKKBMPh",
"type": "skill",
"value": 1
}
],
"spellLists": [
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "l",
"name": "Sorcerer Spells",
"saveDC": "8 + charismaMod + proficiencyBonus",
"settings": {
"showUnprepared": false
}
},
{
"attackBonus": "charismaMod + proficiencyBonus + 1",
"charId": "34HGdP9BywJezCywL",
"color": "m",
"name": "Abjuration Spells",
"saveDC": "8 + charismaMod + proficiencyBonus",
"settings": {
"showUnprepared": false
}
}
],
"spells": [
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"material": "A small crystal or glass cone",
"somatic": true,
"verbal": true
},
"description": "A blast of cold air erupts from your hands. Each creature in a 60-foot cone must make a constitution saving throw. A creature takes 8d8 cold damage on a failed save, or half as much damage on a successful one. \nA creature killed by this spell becomes a frozen statue until it thaws. \nAt Higher Levels: When you cast this spell using a spell slot of 6th level or higher, the damage increases by 1d8 for each slot level above 5th.",
"duration": "instantaneous",
"level": 5,
"name": "Cone of Cold",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "Self",
"removed": true,
"removedAt": 1481345526.651,
"removedBy": "oqQwYSQBSBhKKBMPh",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "n",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "A spectral, floating hand appears at a point you choose within range. The hand lasts for the duration or until you dismiss it as an action. The hand vanishes if it is ever more than 30 feet away from you or if you cast this spell again.\nYou can use your action to control the hand. You can use the hand to manipulate an object, open an unlocked door or container, stow or retrieve an item from an open container, or pour the contents out of a vial. You can move the hand up to 30 feet each time you use it.\nThe hand can't attack, activate magic items, or carry more than 10 pounds.",
"duration": "1 minute",
"level": 0,
"name": "Mage Hand",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "30 feet",
"restoredAt": 1475169408.778,
"restoredBy": "oqQwYSQBSBhKKBMPh",
"ritual": false,
"school": "Conjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "A frigid beam of blue white light streaks toward a creature within range. Make a ranged spell attack against the target. On a hit, it takes 3d8 cold damage, and its speed is reduced by 10 feet until the start of your next turn.",
"duration": "Instantaneous",
"level": 0,
"name": "Ray of Frost",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "60 feet",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "n",
"components": {
"concentration": false,
"somatic": false,
"verbal": true
},
"description": "You teleport yourself from your current location to any other spot within range. You arrive at exactly the spot desired. It can be a place you can see, one you can visualize, or one you can describe by stating distance and direction, such as \"200 feet straight downward\" or \"upward to the northwest at a 45 degree angle, 300 feet.\"\nYou can bring along objects as long as their weight doesn't exceed what you can carry. You can also bring one willing creature of your size or smaller who is carrying gear up to its carrying capacity. The creature must be within 5 feet of you when you cast this spell.\nIf you would arrive in a place already occupied by an object or a creature, you and any creature traveling with you each take 4d6 force damage, and the spell fails to teleport you.",
"duration": "Instantaneous",
"level": 4,
"name": "Dimension Door",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "500 feet",
"ritual": false,
"school": "Conjuration"
},
{
"castingTime": "reaction",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"somatic": true,
"verbal": false
},
"description": "You attempt to interrupt a creature in the process of casting a spell. If the creature is casting a spell of 3rd level or lower, its spell fails and has no effect. If it is casting a spell of 4th level or higher, make an ability check using your spellcasting ability. The DC equals 10 + the spell's level. On a success, the creature's spell fails and has no effect.\n\nAt Higher Levels. When you cast this spell using a spell slot of 4th level or higher, the interrupted spell has no effect if its level is less than or equal to the level of the spell slot you used.",
"duration": "Instantaneous",
"level": 3,
"name": "Counterspell",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "60 feet",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "f",
"components": {
"concentration": false,
"material": "A bit of fleece",
"somatic": true,
"verbal": false
},
"description": "You create a sound or an image of an object within range that lasts for the duration. The illusion also ends if you dismiss it as an action or cast this spell again. \nIf you create a sound, its volume can range from a whisper to a scream. It can be your voice, someone else\u2019s voice, a lion\u2019s roar, a beating of drums, or any other sound you choose. The sound continues unabated throughout the duration, or you can make discrete sounds at different times before the spell ends. \nIf you create an image of an object\u2014such as a chair, muddy footprints, or a small chest\u2014it must be no larger than a 5-foot cube. The image can\u2019t create sound, light, smell, or any other sensory effect. Physical interaction with the image reveals it to be an illusion, because things can pass through it. \nIf a creature uses its action to examine the sound or image, the creature can determine that it is an illusion with a successful Intelligence (Investigation) check against your spell save DC. If a creature discerns the illusion for what it is, the illusion becomes faint to the creature.",
"duration": "1 minute",
"level": 0,
"name": "Minor Illusion",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "30 feet",
"ritual": false,
"school": "Illusion"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"material": "a piece of cured leather",
"somatic": true,
"verbal": true
},
"description": "You touch a willing creature who isn't wearing armor, and a protective magical force surrounds it until the spell ends. The target's base AC becomes 13 + its Dexterity modifier. The spell ends if the target dons armor or if you dismiss the spell as an action.",
"duration": "8 hours",
"level": 1,
"name": "Mage Armor",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "Touch",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "s",
"components": {
"concentration": false,
"material": "A small clay model of a ziggurat",
"somatic": false,
"verbal": true
},
"description": "This spell grants the creature you touch the ability to understand any spoken language it hears. Moreover, when the target speaks, any creature that knows at least one language and can hear the target understands what it says.",
"duration": "1 hour",
"level": 3,
"name": "Tounges",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "touch",
"ritual": false,
"school": "Divination"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"material": "A diamond worth at least 50 gp",
"somatic": true,
"verbal": true
},
"description": "You hurl a 4-inch-diameter sphere of energy at a creature that you can see within range. You choose acid, cold, fire, lightning, poison, or thunder for the type of orb you create, and then make a ranged spell attack against the target. If the attack hits, the creature takes 3d8 damage of the type you chose.\n\nAt Higher Levels: When you cast this spell using a spell slot of 2nd level or higher, the damage increases by 1d8 for each slot level above 1st.",
"duration": "instantaneous",
"level": 1,
"name": "Chromatic Orb",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "90 feet",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "m",
"components": {
"concentration": true,
"material": "A small, straight piece of iron",
"somatic": true,
"verbal": true
},
"description": "Choose a humanoid that you can see within range. The target must succeed on a wisdom saving throw or be paralyzed for the duration. At the end of each of its turns, the target can make another wisdom saving throw. On a success, the spell ends on the target.\n\nAt Higher Levels: When you cast this spell using a spell slot of 3rd level or higher, you can target one additional humanoid for each slot level above 2nd. The humanoids must be within 30 feet of each other when you target them.",
"duration": "up to 1 minute",
"level": 2,
"name": "Hold Person",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "60 feet",
"removed": true,
"removedAt": 1482633074.85,
"removedBy": "oqQwYSQBSBhKKBMPh",
"ritual": false,
"school": "Enchantment"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "c",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "This spell is a minor magical trick that novice spellcasters use for practice. You create one of the following magical effects within range: \n\u2022You create an instantaneous, harmless sensory effect, such as a shower of sparks, a puff of wind, faint musical notes, or an odd odor. \n\u2022You instantaneously light or snuff out a candle, a torch, or a small campfire. \n\u2022You instantaneously clean or soil an object no larger than 1 cubic foot. \n\u2022You chill, warm, or flavor up to 1 cubic foot of nonliving material for 1 hour. \n\u2022You make a color, a small mark, or a symbol appear on an object or a surface for 1 hour. \n\u2022You create a nonmagical trinket or an illusory image that can fit in your hand and that lasts until the end of your next turn. \nIf you cast this spell multiple times, you can have up to three of its non instantaneous effects active at a time, and you can dismiss such an effect as an action.",
"duration": "1 hour",
"level": 0,
"name": "Prestidigitation",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "10 feet",
"ritual": false,
"school": "Transmutation"
},
{
"castingTime": "reaction",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "An invisible barrier of magical force appears and protects you. Until the start of your next turn, you have a +5 bonus to AC, including against the triggering attack, and you take no damage from magic missile.",
"duration": "1 round",
"level": 1,
"name": "Shield",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "Self",
"removed": true,
"removedAt": 1477705173.448,
"removedBy": "oqQwYSQBSBhKKBMPh",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "f",
"components": {
"concentration": true,
"material": "An eyelash encased in gum arabic",
"somatic": true,
"verbal": true
},
"description": "A creature you touch becomes invisible until the spell ends. Anything the target is wearing or carrying is invisible as long as it is on the target\u2019s person. The spell ends for a target that attacks or casts a spell.\n\nAt Higher Levels: When you cast this spell using a spell slot of 3rd level or higher, you can target one additional creature for each slot level above 2nd.",
"duration": "up to 1 hour",
"level": 2,
"name": "Invisibility",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "Touch",
"ritual": false,
"school": "Illusion"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"material": "A bit of fur; a piece of amber, glass, or a crystal rod; and three silver pins",
"somatic": true,
"verbal": true
},
"description": "You create a bolt of lightning that arcs toward a target of your choice that you can see within range. Three bolts then leap from that target to as many as three other targets, each of which must be within 30 feet of the first target. A target can be a creature or an object and can be targeted by only one of the bolts.\nA target must make a dexterity saving throw. The target takes 10d8 lightning damage on a failed save, or half as much damage on a successful one.\n\nAt Higher Levels: When you cast this spell using a spell slot of 7th level or higher, one additional bolt leaps from the first target to another target for each slot level above 6th.",
"duration": "Instantaneous",
"level": 6,
"name": "Chain Lightning",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "150 feet",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "c",
"components": {
"concentration": false,
"somatic": true,
"verbal": false
},
"description": "You choose an area of water that you can see within range and that fits within a 5-foot cube. You manipulate it in one of the following ways: \n\u2022 You instantaneously move or otherwise change the flow of the water as you direct, up to 5 feet in any direction. This movement doesn\u2019t have enough force to cause damage. \n\u2022 You cause the water to form into simple shapes and animate at your direction. This change lasts for 1 hour. \n\u2022 You change the water\u2019s color or opacity. The water must be changed in the same way throughout. This change lasts for 1 hour. \n\u2022 You freeze the water, provided that there are no creatures in it. The water unfreezes in 1 hour. \nIf you cast this spell multiple times, you can have no more than two of its non-instantaneous effects active at a time, and you can dismiss such an effect as an action.",
"duration": "Instantaneous or 1 hour",
"level": 0,
"name": "Shape Water",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "30 feet",
"ritual": false,
"school": "Transmutation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "You hurl a mote of fire at a creature or object within range. Make a ranged spell attack against the target. On a hit, the target takes 3d10 fire damage. A flammable object hit by this spell ignites if it isn't being worn or carried.",
"duration": "Instantaneous",
"level": 0,
"name": "Fire Bolt",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "120 feet",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "s",
"components": {
"concentration": false,
"material": "A dash of talc and a small amount of silver powder",
"somatic": true,
"verbal": true
},
"description": "For the duration of the spell, you see invisible creatures and objects as if they were visible, and you can see through Ethereal. The ethereal objects and creatures appear ghostly translucent.",
"duration": "1 hour",
"level": 2,
"name": "See Invisibility",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "Self",
"removed": true,
"removedAt": 1476752151.242,
"removedBy": "oqQwYSQBSBhKKBMPh",
"ritual": false,
"school": "Divination"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "Lightning springs from your hand to deliver a shock to a creature you try to touch. Make a melee spell attack against the target. You have advantage on the attack roll if the target is wearing armor made of metal. On a hit, the target takes 3d8 lightning damage, and it can't take reactions until the start of its next turn.",
"duration": "Instantaneous",
"level": 0,
"name": "Shocking Grasp",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "touch",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "a",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "You generate three rays of fire and will throw to targets in the range of the spell. You can project them on one or more targets.\nPerform a ranged spell attack for each ray. If it hits, the target takes 2d6 fire damage.\n\nAt Higher Levels: When you cast this spell using a 3 or higher level spell slot, you generate an additional ray for each level of higher spell slot 2.",
"duration": "Instantaneous",
"level": 2,
"name": "Scorching Ray",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "120 feet",
"ritual": false,
"school": "Evocation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "c",
"components": {
"concentration": true,
"material": "A lodestone and iron filings",
"somatic": true,
"verbal": true
},
"description": "This spell reverses gravity in a 50-foot-radius, 100-foot high cylinder centered on a point within range. All creatures and objects that aren\u2019t somehow anchored to the ground in the area fall upward and reach the top of the area when you cast this spell. A creature can make a dexterity saving throw to grab onto a fixed object it can reach, thus avoiding the fall.\nIf some solid object (such as a ceiling) is encountered in this fall, falling objects and creatures strike it just as they would during a normal downward fall. If an object or creature reaches the top of the area without striking anything, it remains there, oscillating slightly, for the duration. \nAt the end of the duration, affected objects and creatures fall back down.",
"duration": "up to 1 minute",
"level": 7,
"name": "Reverse Gravity",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "100 feet",
"restoredAt": 1476750004.628,
"restoredBy": "oqQwYSQBSBhKKBMPh",
"ritual": false,
"school": "Transmutation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "Choose one creature, object, or magical effect within range. Any spell of 3rd level or lower on the target ends. For each spell of 4th level or higher on the target, make an ability check using your spellcasting ability. The DC equals 10 + the spell\u2019s level. On a successful check, the spell ends. \nAt Higher Levels: When you cast this spell using a spell slot of 4th level or higher, you automatically end the effects of a spell on the target if the spell\u2019s level is equal to or less than the level of the spell slot you used.",
"duration": "Instantaneous",
"level": 3,
"name": "Dispel Magic",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "120 feet",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "c",
"components": {
"concentration": false,
"material": "either a pinch of dried carrot or an agate",
"somatic": true,
"verbal": true
},
"description": "You touch a willing creature to grant it the ability to see in the dark. For the duration, that creature has darkvision out to a range of 60 feet.",
"duration": "8 hours",
"level": 2,
"name": "Darkvision",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "touch",
"ritual": false,
"school": "Transmutation"
},
{
"castingTime": "reaction, which you take when you take acid, cold, fire, lightning, or thunder damage",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"somatic": true,
"verbal": false
},
"description": "The spell captures some of the incoming energy, lessening its effect on you and storing it for your next melee attack. You have resistance to the triggering damage type until the start of your next turn. Also, the first time you hit with a melee attack on your next turn, the target takes an extra 1d6 damage of the triggering type, and the spell ends.",
"duration": "1 round",
"level": 1,
"name": "Absorb Elements",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "Self",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "1 minute",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"material": "A tiny bell and a piece of fine silver wire.",
"somatic": true,
"verbal": true
},
"description": "You set an alarm against unwanted intrusion. Choose a door, a window, or an area within range that is no larger than a 20-foot cube. Until the spell ends, an alarm alerts you whenever a Tiny or larger creature touches or enters the warded area. When you cast the spell, you can designate creatures that won\u2019t set off the alarm. You also choose whether the alarm is mental or audible.\nA mental alarm alerts you with a ping in your mind if you are within 1 mile of the warded area. This ping awakens you if you are sleeping.\nAn audible alarm produces the sound of a hand bell for 10 seconds within 60 feet.",
"duration": "8 hours",
"level": 1,
"name": "Alarm",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "30 feet",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"material": "a cup of water",
"somatic": true,
"verbal": true
},
"description": "A protective magical force surrounds you, manifesting as a spectral frost that covers you and your gear. You gain 5 temporary hit points for the duration. If a creature hits you with a melee attack while you have these hit points, the creature takes 5 cold damage.",
"duration": "1 hour",
"level": 1,
"name": "Armor of Agathys",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "Self",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"material": "A piece of cured leather",
"somatic": true,
"verbal": true
},
"description": "You touch a willing creature who isn\u2019t wearing armor, and a protective magical force surrounds it until the spell ends. The target\u2019s base AC becomes 13 + its Dexterity modifier. The spell ends if the target dons armor or if you dismiss the spell as an action.",
"duration": "8 hours",
"level": 1,
"name": "Mage Armor",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "Touch",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": true,
"material": "Holy water or powdered silver and iron, which the spell consumes.",
"somatic": true,
"verbal": true
},
"description": "Until the spell ends, one willing creature you touch is protected against certain types of creatures: aberrations, celestials, elementals, fey, fiends, and undead.\nThe protection grants several benefits. Creatures of those types have disadvantage on attack rolls against the target. The target also can\u2019t be charmed, frightened, or possessed by them. If the target is already charmed, frightened, or possessed by such a creature, the target has advantage on any new saving throw against the relevant effect.",
"duration": "up to 10 minutes",
"level": 1,
"name": "Protection from Evil and Good",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "Touch",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "bonus action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"material": "A small silver mirror",
"somatic": true,
"verbal": true
},
"description": "You ward a creature within range against attack. Until the spell ends, any creature who targets the warded creature with an attack or a harmful spell must first make a wisdom saving throw. On a failed save, the creature must choose a new target or lose the attack or spell. This spell doesn\u2019t protect the warded creature from area effects, such as the explosion of a fireball.\nIf the warded creature makes an attack or casts a spell that affects an enemy creature, this spell ends.",
"duration": "1 minute",
"level": 1,
"name": "Sanctuary",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "30 feet",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "reaction",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": false,
"somatic": true,
"verbal": true
},
"description": "An invisible barrier of magical force appears and protects you. Until the start of your next turn, you have a +5 bonus to AC, including against the triggering attack, and you take no damage from magic missile.",
"duration": "1 round",
"level": 1,
"name": "Shield",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "Self",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "bonus action",
"charId": "34HGdP9BywJezCywL",
"color": "k",
"components": {
"concentration": true,
"material": "A small parchment with a bit of holy text written on it",
"somatic": true,
"verbal": true
},
"description": "A shimmering field appears and surrounds a creature of your choice within range, granting it a +2 bonus to AC for the duration.",
"duration": "Up to 10 minutes",
"level": 1,
"name": "Shield of Faith",
"parent": {
"collection": "SpellLists",
"id": "4CKFrvCfvnWC49xFL"
},
"prepared": "prepared",
"range": "60 feet",
"ritual": false,
"school": "Abjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "n",
"components": {
"concentration": false,
"somatic": false,
"verbal": true
},
"description": "This spell instantly transports you and up to eight willing creatures of your choice that you can see within range, or a single object, that you can see within range, to a destination you select. If you target an object, it must be able to fit entirely inside a 10-foot cube, and it can't be held or carried by an unwilling creature.\n\n**Known Sigils:** \nSilverkeep \nPort of Northcrest \nDragonborn Outpost of Kheogon \nNorth Point \nQulsai \nNivalis' Grave \n\nThe destination you choose must be known to you, and it must be on the same plane of existence as you. Your familiarity with the destination determines whether you arrive there successfully. The DM rolls d100 and consults the table.\n\n| Familiarity | Mishap | Similar Area | Off Target | On Target |\n|-------------------|--------|--------------|------------|-----------|\n| Permanent circle | --- | --- | --- | 01-100 |\n| Associated object | --- | --- | --- | 01-100 |\n| Very familiar | 01-05 | 06-13 | 14-24 | 25-100 |\n| Seen casually | 01-33 | 34-43 | 44-53 | 54-100 |\n| Viewed once | 01-43 | 44-53 | 54-73 | 74-100 |\n| Description | 01-43 | 44-53 | 54-73 | 74-100 |\n| False destination | 01-50 | 51-100 | --- | --- |\n\n**Familiarity.** \"Permanent circle\" means a permanent teleportation circle whose sigil sequence you know. \"Associated object\" means that you possess an object taken from the desired destination within the last six months, such as a book from a wizard's library, bed linen from a royal suite, or a chunk of marble from a lich's secret tomb.\n\n\"Very familiar\" is a place you have been very often, a place you have carefully studied, or a place you can see when you cast the spell. \"Seen casually\" is someplace you have seen more than once but with which you aren't very familiar. \"Viewed once\" is a place you have seen once, possibly using magic. \"Description\" is a place whose location and appearance you know through someone else's description, perhaps from a map.\n\n\"False destination\" is a place that doesn't exist. Perhaps you tried to scry an enemy's sanctum but instead view an illusion, or you were attempting to teleport to a familiar location that no longer exists.\n\n**On Target.** You and your group (or the target object) appear where you want to.\n\n**Off Target.** You and your group (or the target object) appear a random distance away from the destination in a random direction. Distance off target is 1d10 x 1d10 percent of the distance that was to be traveled. For example, if you tried to travel 120 miles, landed off target, and rolled a 5 and 3 on the two d10s, then you would be off target by 15 percent, or 18 miles. The DM determines the direction off target randomly by rolling a d8 and designating 1 as north, 2 as northeast, 3 as east, and so on around the points of the compass. If you were teleporting to a coastal city and wound up 18 miles out at sea, you could be in trouble.\n\n**Similar Area.** You and your group (or the target object) wind up in a different area that's visually or thematically similar to the target area. If you are heading for your home laboratory, for example, you might wind up in another wizard's laboratory or in an alchemical supply shop that has many of the same tools and implements as your laboratory. Generally, you appear in the closest similar place, but since the spell has no range limit, you could conceivably wind up anywhere on the plane.\n\n**Mishap.** The spell's unpredictable magic results in a difficult journey. Each teleporting creature (or the target object) takes 3d10 force damage, and the DM rerolls on the table to see where you wind up (multiple mishaps can occur, dealing damage each time).",
"duration": "Instantaneous",
"level": 7,
"name": "Teleport",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "10 feet",
"ritual": false,
"school": "Conjuration"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "c",
"components": {
"concentration": false,
"material": "a lodestone and a pinch of dust",
"somatic": true,
"verbal": true
},
"description": "A thin green ray springs from your pointing finger to a target that you can see within range. The target can be a creature, an object, or a creation of magical force, such as the wall created by *wall of force*.\n\nA creature targeted by this spell must make a Dexterity saving throw. On a failed save, the target takes 10d6 + 40 force damage. If this damage reduces the target to 0 hit points, it is disintegrated.\n\nA disintegrated creature and everything it is wearing and carrying, except magic items, are reduced to a pile of fine gray dust. The creature can be restored to life only by means of a *true resurrection* or a *wish* spell.\n\nThis spell automatically disintegrates a Large or smaller nonmagical object or a creation of magical force. If the target is a Huge or larger object or creation of force, this spell disintegrates a 10-foot-cube portion of it. A magic item is unaffected by this spell.\n\n**At Higher Levels.** When you cast this spell using a spell slot of 7th level or higher, the damage increases by 3d6 for each slot level above 6th.",
"duration": "Instantaneous",
"level": 6,
"name": "Disintegrate",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "60 feet",
"ritual": false,
"school": "Transmutation"
},
{
"castingTime": "action",
"charId": "34HGdP9BywJezCywL",
"color": "e",
"components": {
"concentration": true,
"material": "a small, straight piece of iron",
"somatic": true,
"verbal": true
},
"description": "Choose a creature that you can see within range. The target must succeed on a Wisdom saving throw or be paralyzed for the duration. This spell has no effect on undead. At the end of each of its turns, the target can make another Wisdom saving throw. On a success, the spell ends on the target.\n\n**At Higher Levels.** When you cast this spell using a spell slot of 6th level or higher, you can target one additional creature for each slot level above 5th. The creatures must be within 30 feet of each other when you target them.",
"duration": "up to 1 minute",
"level": 5,
"name": "Hold Monster",
"parent": {
"collection": "SpellLists",
"id": "8i9LtLcRefxqitRHM"
},
"prepared": "prepared",
"range": "90 feet",
"ritual": false,
"school": "Enchantment"
}
]
}
'''
Created on Jan 19, 2017
@author: andrew
'''
import asyncio
from math import *
import random
import re
from DDPClient import DDPClient
import discord
import numexpr
from cogs5e.sheets.sheetParser import SheetParser
class DicecloudParser(SheetParser):
def __init__(self, url):
self.url = url
self.character = None
async def get_character(self):
url = self.url
character = {}
client = DDPClient('ws://dicecloud.com/websocket', auto_reconnect=False)
client.is_connected = False
client.connect()
def connected():
client.is_connected = True
client.on('connected', connected)
while not client.is_connected:
await asyncio.sleep(1)
client.subscribe('singleCharacter', [url])
def update_character(collection, _id, fields):
if character.get(collection) is None:
character[collection] = []
fields['id'] = _id
character.get(collection).append(fields)
client.on('added', update_character)
await asyncio.sleep(10)
client.close()
character['id'] = url
self.character = character
return character
def get_sheet(self):
"""Returns a dict with character sheet data."""
if self.character is None: raise Exception('You must call get_character() first.')
try:
stats = self.get_stats()
levels = self.get_levels()
hp = self.calculate_stat('hitPoints')
dexArmor = self.calculate_stat('dexterityArmor', base=stats['dexterityMod'])
armor = self.calculate_stat('armor', replacements={'dexterityArmor':dexArmor})
attacks = self.get_attacks()
skills = self.get_skills()
temp_resist = self.get_resistances()
resistances = temp_resist['resist']
immunities = temp_resist['immune']
vulnerabilities = temp_resist['vuln']
except:
raise
saves = {}
for key in skills:
if 'Save' in key:
saves[key] = skills[key]
stat_vars = {}
stat_vars.update(stats)
stat_vars.update(levels)
stat_vars['hp'] = int(hp)
stat_vars['armor'] = int(armor)
stat_vars.update(saves)
sheet = {'type': 'dicecloud',
'version': 6, #v6: added stat cvars
'stats': stats,
'levels': levels,
'hp': int(hp),
'armor': int(armor),
'attacks': attacks,
'skills': skills,
'resist': resistances,
'immune': immunities,
'vuln': vulnerabilities,
'saves': saves,
'stat_cvars': stat_vars}
embed = self.get_embed(sheet)
return {'embed': embed, 'sheet': sheet}
def get_embed(self, sheet):
stats = sheet['stats']
hp = sheet['hp']
levels = sheet['levels']
skills = sheet['skills']
attacks = sheet['attacks']
saves = sheet['saves']
armor = sheet['armor']
resist= sheet['resist']
immune= sheet['immune']
vuln = sheet['vuln']
resistStr = ''
if len(resist) > 0:
resistStr += "\nResistances: " + ', '.join(resist).title()
if len(immune) > 0:
resistStr += "\nImmunities: " + ', '.join(immune).title()
if len(vuln) > 0:
resistStr += "\nVulnerabilities: " + ', '.join(vuln).title()
embed = discord.Embed()
embed.colour = random.randint(0, 0xffffff)
embed.title = stats['name']
embed.set_thumbnail(url=stats['image'])
embed.add_field(name="HP/Level", value="**HP:** {}\nLevel {}".format(hp, levels['level']) + resistStr)
embed.add_field(name="AC", value=str(armor))
embed.add_field(name="Stats", value="**STR:** {strength} ({strengthMod:+})\n" \
"**DEX:** {dexterity} ({dexterityMod:+})\n" \
"**CON:** {constitution} ({constitutionMod:+})\n" \
"**INT:** {intelligence} ({intelligenceMod:+})\n" \
"**WIS:** {wisdom} ({wisdomMod:+})\n" \
"**CHA:** {charisma} ({charismaMod:+})".format(**stats))
embed.add_field(name="Saves", value="**STR:** {strengthSave:+}\n" \
"**DEX:** {dexteritySave:+}\n" \
"**CON:** {constitutionSave:+}\n" \
"**INT:** {intelligenceSave:+}\n" \
"**WIS:** {wisdomSave:+}\n" \
"**CHA:** {charismaSave:+}".format(**saves))
skillsStr = ''
tempSkills = {}
for skill, mod in sorted(skills.items()):
if 'Save' not in skill:
skillsStr += '**{}**: {:+}\n'.format(re.sub(r'((?<=[a-z])[A-Z]|(?<!\A)[A-Z](?=[a-z]))', r' \1', skill), mod)
tempSkills[skill] = mod
sheet['skills'] = tempSkills
embed.add_field(name="Skills", value=skillsStr.title())
tempAttacks = []
for a in attacks:
if a['attackBonus'] is not None:
try:
bonus = numexpr.evaluate(a['attackBonus'])
except:
bonus = a['attackBonus']
tempAttacks.append("**{0}:** +{1} To Hit, {2} damage.".format(a['name'],
bonus,
a['damage'] if a['damage'] is not None else 'no'))
else:
tempAttacks.append("**{0}:** {1} damage.".format(a['name'],
a['damage'] if a['damage'] is not None else 'no'))
if tempAttacks == []:
tempAttacks = ['No attacks.']
a = '\n'.join(tempAttacks)
if len(a) > 1023:
a = ', '.join(atk['name'] for atk in attacks)
if len(a) > 1023:
a = "Too many attacks, values hidden!"
embed.add_field(name="Attacks", value=a)
return embed
def get_stat(self, stat, base=0):
"""Returns the stat value."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
effects = character.get('effects', [])
add = 0
mult = 1
maxV = None
minV = None
for effect in effects:
if effect.get('stat') == stat and effect.get('enabled', True) and not effect.get('removed', False):
operation = effect.get('operation', 'base')
value = int(effect.get('value', 0))
if operation == 'base' and value > base:
base = value
elif operation == 'add':
add += value
elif operation == 'mul' and value > mult:
mult = value
elif operation == 'min':
minV = value if minV is None else value if value < minV else minV
elif operation == 'max':
maxV = value if maxV is None else value if value > maxV else maxV
out = (base * mult) + add
if minV is not None:
out = max(out, minV)
if maxV is not None:
out = min(out, maxV)
return out
def get_stat_float(self, stat, base=0):
"""Returns the stat value."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
effects = character.get('effects', [])
add = 0
mult = 1
maxV = None
minV = None
for effect in effects:
if effect.get('stat') == stat and effect.get('enabled', True) and not effect.get('removed', False):
operation = effect.get('operation', 'base')
value = float(effect.get('value', 0))
if operation == 'base' and value > base:
base = value
elif operation == 'add':
add += value
elif operation == 'mul':
mult = value
elif operation == 'min':
minV = value if minV is None else value if value < minV else minV
elif operation == 'max':
maxV = value if maxV is None else value if value > maxV else maxV
out = (base * mult) + add
if minV is not None:
out = max(out, minV)
if maxV is not None:
out = min(out, maxV)
return out
def get_stats(self):
"""Returns a dict of stats."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
stats = {"name":"", "image":"", "description":"",
"strength":10, "dexterity":10, "constitution":10, "wisdom":10, "intelligence":10, "charisma":10,
"strengthMod":0, "dexterityMod":0, "constitutionMod":0, "wisdomMod":0, "intelligenceMod":0, "charismaMod":0,
"proficiencyBonus":0}
stats['name'] = character.get('characters')[0].get('name')
stats['description'] = character.get('characters')[0].get('description')
stats['image'] = character.get('characters')[0].get('picture', '')
profByLevel = floor(self.get_levels()['level'] / 4 + 1.75)
stats['proficiencyBonus'] = profByLevel + self.get_stat('proficiencyBonus', base=0)
for stat in ('strength', 'dexterity', 'constitution', 'wisdom', 'intelligence', 'charisma'):
stats[stat] = self.get_stat(stat)
stats[stat + 'Mod'] = floor((int(stats[stat]) - 10) / 2)
return stats
def get_levels(self):
"""Returns a dict with the character's level and class levels."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
levels = {"level":0}
for level in character.get('classes', []):
if level.get('removed', False): continue
levels['level'] += level.get('level')
levelName = level.get('name') + 'Level'
if levels.get(levelName) is None:
levels[levelName] = level.get('level')
else:
levels[levelName] += level.get('level')
return levels
def calculate_stat(self, stat, base=0, replacements:dict={}):
"""Calculates and returns the stat value."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
replacements.update(self.get_stats())
replacements.update(self.get_levels())
replacements = dict((k.lower(), v) for k,v in replacements.items())
effects = character.get('effects', [])
add = 0
mult = 1
maxV = None
minV = None
for effect in effects:
if effect.get('stat') == stat and effect.get('enabled', True) and not effect.get('removed', False):
operation = effect.get('operation', 'base')
if effect.get('value') is not None:
value = effect.get('value')
else:
calculation = effect.get('calculation', '').replace('{', '').replace('}', '').lower()
if calculation == '': continue
try:
value = numexpr.evaluate(calculation, local_dict=replacements)
except SyntaxError:
continue
except KeyError:
raise
if operation == 'base' and value > base:
base = value
elif operation == 'add':
add += value
elif operation == 'mul' and value > mult:
mult = value
elif operation == 'min':
minV = value if minV is None else value if value < minV else minV
elif operation == 'max':
maxV = value if maxV is None else value if value > maxV else maxV
out = (base * mult) + add
if minV is not None:
out = max(out, minV)
if maxV is not None:
out = min(out, maxV)
return out
def get_attack(self, atkIn):
"""Calculates and returns a dict."""
if self.character is None: raise Exception('You must call get_character() first.')
replacements = self.get_stats()
replacements.update(self.get_levels())
attack = {'attackBonus': '0', 'damage':'0', 'name': atkIn.get('name'), 'details': atkIn.get('details')}
#make a list of safe functions
safe_list = ['ceil', 'floor']
#use the list to filter the local namespace
safe_dict = dict([(k, locals().get(k, None)) for k in safe_list])
safe_dict['max'] = max
safe_dict['min'] = min
safe_dict.update(replacements)
attackBonus = re.split('([-+*/^().<>= ])', atkIn.get('attackBonus', '').replace('{', '').replace('}', ''))
attack['attackBonus'] = ''.join(str(replacements.get(word, word)) for word in attackBonus)
if attack['attackBonus'] == '':
attack['attackBonus'] = None
else:
try:
attack['attackBonus'] = str(eval(attack['attackBonus'], {"__builtins__": None}, safe_dict))
except:
pass
def damage_sub(match):
out = match.group(1)
try:
return str(eval(out, {"__builtins__": None}, safe_dict))
except:
return out
damage = re.sub(r'{(.*)}', damage_sub, atkIn.get('damage', ''))
damage = re.split('([-+*/^().<>= ])', damage.replace('{', '').replace('}', ''))
attack['damage'] = ''.join(str(replacements.get(word, word)) for word in damage) + ' [{}]'.format(atkIn.get('damageType'))
if ''.join(str(replacements.get(word, word)) for word in damage) == '':
attack['damage'] = None
return attack
def get_attacks(self):
"""Returns a list of dicts of all of the character's attacks."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
attacks = []
for attack in character.get('attacks', []):
if attack.get('enabled') and not attack.get('removed'):
atkDict = self.get_attack(attack)
atkNum = 2
if atkDict['name'] in (a['name'] for a in attacks):
while atkDict['name'] + str(atkNum) in (a['name'] for a in attacks):
atkNum += 1
atkDict['name'] = atkDict['name'] + str(atkNum)
attacks.append(atkDict)
return attacks
def get_skills(self):
"""Returns a dict of all the character's skills."""
if self.character is None: raise Exception('You must call get_character() first.')
character = self.character
stats = self.get_stats()
skillslist = ['acrobatics', 'animalHandling',
'arcana', 'athletics',
'charismaSave', 'constitutionSave',
'deception', 'dexteritySave',
'history', 'initiative',
'insight', 'intelligenceSave',
'intimidation', 'investigation',
'medicine', 'nature',
'perception', 'performance',
'persuasion', 'religion',
'sleightOfHand', 'stealth',
'strengthSave', 'survival',
'wisdomSave']
skills = {}
profs = {}
for skill in skillslist:
skills[skill] = stats.get(character.get('characters', [])[0].get(skill, {}).get('ability') + 'Mod', 0)
for prof in character.get('proficiencies', []):
if prof.get('enabled', False) and not prof.get('removed', False):
profs[prof.get('name')] = prof.get('value') \
if prof.get('value') > profs.get(prof.get('name', 'None'), 0) \
else profs[prof.get('name')]
for skill in skills:
skills[skill] = floor(skills[skill] + stats.get('proficiencyBonus') * profs.get(skill, 0))
skills[skill] = int(self.calculate_stat(skill, base=skills[skill]))
for stat in ('strength', 'dexterity', 'constitution', 'wisdom', 'intelligence', 'charisma'):
skills[stat] = stats.get(stat + 'Mod')
return skills
def get_resistances(self):
if self.character is None: raise Exception('You must call get_character() first.')
out = {'resist': [], 'immune': [], 'vuln': []}
damageTypes = ['acid', 'bludgeoning', 'cold', 'fire', 'force', 'lightning', 'necrotic', 'piercing', 'poison',
'psychic', 'radiant', 'slashing', 'thunder']
for dmgType in damageTypes:
mult = self.get_stat_float(dmgType + "Multiplier", 1)
if mult <= 0:
out['immune'].append(dmgType)
elif mult < 1:
out['resist'].append(dmgType)
elif mult > 1:
out['vuln'].append(dmgType)
return out
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment