Sebaestschjin / gloomhaven-campaign-manager

Simplify the management of your Gloomhaven campaign progress in Tabletop Simulator.
MIT License
7 stars 5 forks source link

Does not load characters and errors a bunch #78

Closed alepocalypse closed 3 years ago

alepocalypse commented 3 years ago

Attaching my save.

Saving gives an error but does generate a file.

Loading does not set up players and does not pull unlocked characters out of the box.

Saves.zip

alepocalypse commented 3 years ago
{
  "enhancements": {
    "Doomstalker": {
      "Fresh Kill": {
        "1": "Plus 1"
      },
      "Press the Attack": {
        "1": "Plus 1"
      },
      "Swift Trickery": {
        "1": "Plus 1"
      }
    },
    "Scoundrel": {
      "Cull the Weak": {
        "1": "Plus 1"
      },
      "Flanking Strike": {
        "1": "Plus 1",
        "2": "Strengthen"
      },
      "Open Wound": {
        "2": "Dark"
      },
      "Sinister Opportunity": {
        "1": "Plus 1",
        "2": "Plus 1"
      },
      "Smoke Bomb": {
        "1": "Strengthen"
      },
      "Swift Bow": {
        "3": "Plus 1"
      }
    },
    "Soothsinger": {
      "Disorienting Dirge": {
        "1": "Curse"
      },
      "Singing Arrow": {
        "1": "AoE HEx"
      },
      "Throw Voice": {
        "1": "AoE HEx"
      }
    }
  },
  "events": {
    "city": {
      "bottomUp": [ 40, 36, 73, 33, 26, 20, 32, 25, 80, 27, 37, 74, 24, 39, 2, 75, 19 ],
      "remove": [ 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 21, 22, 23, 28, 29, 30 ]
    },
    "road": {
      "bottomUp": [ 49 ],
      "remove": [ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30 ]
    }
  },
  "global": {
    "achievements": {
      "Ancient Technology": 4,
      "City Rule: Militaristic": 1,
      "The Drake Aided": 1,
      "The Edge of Darkness": 1,
      "The Merchant Flees": 1,
      "The Power of Enhancement": 1,
      "The Rift Neutralized": 1,
      "The Voice Freed": 1,
      "Water-Breathing": 1
    },
    "prosperity": 40,
    "scenarios": {
      "1": "Done",
      "10": "Locked",
      "11": "Locked",
      "12": "Locked",
      "13": "Done",
      "14": "Locked",
      "15": "Locked",
      "16": "Locked",
      "18": "Locked",
      "19": "Done",
      "2": "Done",
      "20": "Done",
      "21": "Locked",
      "22": "Open",
      "23": "Locked",
      "24": "Done",
      "25": "Locked",
      "26": "Done",
      "27": "Locked",
      "28": "Locked",
      "29": "Done",
      "3": "Locked",
      "30": "Done",
      "32": "Done",
      "33": "Locked",
      "34": "Locked",
      "4": "Locked",
      "40": "Locked",
      "41": "Done",
      "42": "Locked",
      "43": "Open",
      "5": "Locked",
      "55": "Locked",
      "56": "Locked",
      "57": "Locked",
      "58": "Locked",
      "59": "Done",
      "6": "Open",
      "60": "Open",
      "61": "Done",
      "62": "Done",
      "66": "Locked",
      "67": "Open",
      "69": "Locked",
      "7": "Locked",
      "71": "Done",
      "72": "Done",
      "73": "Open",
      "76": "Open",
      "78": "Open",
      "79": "Open",
      "8": "Locked",
      "81": "Locked",
      "82": "Done",
      "83": "Done",
      "87": "Open",
      "9": "Locked",
      "93": "Done"
    }
  },
  "metadata": {
    "date": "2021-03-15'T'17:52",
    "version": "3.0"
  },
  "options": {
    "fantasySetup": "Round Tracker:\ncount:down                          (up/down)\nmove:no                               (yes/no)\n\nStart Round Options:\nflip revealed:yes                   (yes/no)\n\nAuto Setup:\nsetup tool:new                      (old/new)\ndeal battle goals:yes            (yes/no)\nscenario page:change           (spawn/change/none)\n3D model:no                         (no/exchange/add) \n\nBroadcast Options:\nbroadcast hp changes:all     (all/chars/monster/none)     \n\nWin/Lose Options:\nsolo/open information:no   (yes/no)\n\n\n{\nExplanations\n    scenario page: \n        change: means if you have the pdf on the table, it will change the site to the current scenario\n        spawn: it creates a obj with the side of the scenario page, that can be deleted after the scenario is finished\n        none: no scenario page at all\n   solo/open information:\n        if you play solo or with open information you should increase the scenario level by one for traps and monster but not for gold and xp. Here you can do that with increasing the difficulty on the party sheet and the gold and xp will be reduced when using the win/lose button \n}\n",
    "loadExtendedBattleGoals": false
  },
  "party": {
    "achievements": [ "Through the Ruins", " Bad Business", " THE DRAKES COMMAND", " a map to treasure", " stonebreakers censor", " the voices command", " poisons source", "jeksarashs plans", " dark bounty", " sun blessedd", " fishes aid" ],
    "characters": {
      "1": {
        "abilities": [ "Booming Proclamation", "Captivating Performance", "Change Tempo", "Commanding Presence", "Crippling Chrous", "Disorienting Dirge", "Echoing Aria", "Inspiring Anthem", "Melody and Harmony", "Mobilizing Measure", "Nightmare Serenade", "Provoke Terror", "Pull the Strings", "Shadow Puppets", "Soothing Lullaby", "Tranquil Trill" ],
        "checkmarks": 4,
        "class": "Soothsinger",
        "gold": 6,
        "hand": [ "Nimble Knife", "Unending Chant", "Wistful Wounding", "Throw Voice", "Warding Dagger", "Power Ballad", "Call to Action", "Singing Arrow", "Marching Beat", "Tuning the Outcome", "Song of Speed", "Defensive Ditty" ],
        "items": {
          "Bag1": [ "Minor Healing Potion" ],
          "Bag2": [ "Minor Stamina Potion" ],
          "Bag3": [ "Major Stamina Potion" ],
          "Boots": [ "Boots of Dashing" ],
          "HandLeft": [ "Master's Lute" ],
          "Head": [ "Pendant of Dark Pacts" ],
          "Unequipped": [ "Scroll of Healing", "Scroll of Stamina" ]
        },
        "name": "Marty is a butt",
        "perks": [ 1, 2, 3, 10, 14, 15 ],
        "quest": 517,
        "xp": 501
      },
      "2": {
        "abilities": [ "Camouflage", "Crashing Wave", "Darkened Skies", "Expose", "Feral Instincts", "Flight of Flame", "Impending End", "Inescapable Fate", "Lead to Slaughter", "Nature's Hunger", "Predator and Prey", "Press the Attack", "Relentless Offensive", "Rising Momentum", "Singular Focus", "Wild Commad" ],
        "checkmarks": 9,
        "class": "Doomstalker",
        "gold": 44,
        "hand": [ "Fresh Kill", "The Hunt Begins", "Sap Life", "Vital Charge", "Race to the Grave", "Multi-Pronged Assault", "Detonation", "Frightening Curse", "Foot Snare", "Solid Bow", "A Moment's Peace", "Swift Trickery", "Felling Swoop", "Rain of Arrows", "Crippling Noose" ],
        "items": {
          "Armor": [ "Cloak of Invisibility" ],
          "Bag1": [ "Major Stamina Potion" ],
          "Bag2": [ "Minor Stamina Potion" ],
          "Boots": [ "Boots of Striding" ],
          "Head": [ "Hawk Helm" ]
        },
        "perks": [ 1, 2, 3, 4, 5, 6, 7, 8, 12, 13, 14 ],
        "quest": 518,
        "xp": 527
      },
      "3": {
        "abilities": [ "Catastrophic Bomb", "Giant Club", "Reforge", "Reinforced Steel", "Scroll of Lightning", "Side Pouch" ],
        "checkmarks": 0,
        "class": "Quartermaster",
        "gold": 0,
        "hand": [ "Scroll of Recall", "Reserved Energy", "Crushing Hammer", "Impaling Spear", "Cleaving Axe", "Hastened Step", "Iron Bulwark", "Crippling Bow", "Oversized Pack", "Sharpening Kit", "Restock", "Proficiency" ],
        "items": {
          "Active1": [ "Steel Ring" ],
          "Armor": [ "Hide Armor" ],
          "Bag1": [ "Minor Healing Potion" ],
          "Bag2": [ "Minor Stamina Potion" ],
          "Boots": [ "Boots of Striding" ],
          "HandLeft": [ "Black Knife" ],
          "HandRight": [ "Spiked Shield" ],
          "Head": [ "Iron Helmet" ]
        },
        "perks": [ 1, 2, 4, 5, 6, 7, 8, 10, 12, 13, 15 ],
        "quest": 524,
        "xp": 345
      },
      "4": {
        "abilities": [ "Burning Oil", "Crippling Poison", "Cull the Weak", "Duelist's Advance", "Flintlock", "Flurry of Blades", "Gruesome Advantage", "Hidden Daggers", "Long Con", "Open Wound", "Pain's End", "Spring the Trap", "Stick to the Shadows", "Stiletto Storm", "Visage of the Inevitable", "Watch It Burn" ],
        "checkmarks": 9,
        "class": "Scoundrel",
        "gold": 38,
        "hand": [ "Flanking Strike", "Special Mixture", "Thief's Knack", "Sinister Opportunity", "Throwing Knives", "Quick Hands", "Backstab", "Smoke Bomb", "Trickster's Reversal", "Single Out", "Swift Bow", "Venom Shiv" ],
        "items": {
          "Armor": [ "Cloak of Invisibility" ],
          "Bag1": [ "Major Stamina Potion" ],
          "Bag2": [ "Minor Stamina Potion" ],
          "Bag3": [ "Ring of Skulls" ],
          "Boots": [ "Rocket Boots" ],
          "HandLeft": [ "Silent Stiletto" ],
          "HandRight": [ "Jagged Sword" ],
          "Head": [ "Eagle-Eye Goggles" ]
        },
        "perks": [ 1, 2, 4, 5, 6, 7, 8, 9, 10, 14, 15 ],
        "quest": 531,
        "xp": 432
      }
    },
    "location": "sdff",
    "notes": [ "s" ],
    "reputation": 20
  },
  "retired": [ {
    "class": "Mindthief",
    "level": 5,
    "player": "Ben",
    "quest": "A Helping Hand"
  }, {
    "class": "Scoundrel",
    "level": 3,
    "player": "Jared",
    "quest": "A Study of Anatomy"
  }, {
    "class": "Tinkerer",
    "level": 5,
    "player": "Dave",
    "quest": "Aberrant Slayer"
  }, {
    "class": "Brute",
    "level": 6,
    "player": "Marty",
    "quest": "Augmented Abilities"
  }, {
    "class": "Soothsinger",
    "level": 8,
    "player": "Marty",
    "quest": "Battle Legend"
  }, {
    "class": "Sawbones",
    "level": 7,
    "player": "Marty",
    "quest": "Finding the Cure"
  }, {
    "class": "Plagueherald",
    "level": 7,
    "player": "Ben",
    "quest": "Goliath Toppler"
  }, {
    "class": "Wiozard",
    "level": 9,
    "player": "David",
    "quest": "Greed is Good"
  }, {
    "class": "Nights",
    "level": 8,
    "player": "Jared",
    "quest": "Implement of Light"
  }, {
    "class": "scoundrel",
    "level": 6,
    "player": "jared",
    "quest": "Law Bringer"
  }, {
    "class": "sunbitch",
    "player": "ben",
    "quest": "Merchant Class"
  }, {
    "class": "rockguy",
    "player": "ben",
    "quest": "Piety in All Things"
  }, {
    "character": "a",
    "quest": "Seeker of Xorn"
  }, {
    "class": "a",
    "quest": "Take Back the Trees"
  }, {
    "quest": "The Fall of Man"
  }, {
    "quest": "The Perfect Poison"
  }, {
    "quest": "Vengeance"
  }, {
    "quest": "Zealot of the Blood God"
  } ],
  "unlocked": {
    "classes": [ "Berserker", "Elementalist", "Quartermaster", "Beast Tyrant", "Soothsinger", "Plagueherald", "Nightshroud", "Sawbones", "Sunkeeper", "Summoner", "Doomstalker" ],
    "items": [ "Boots of Levitation", "Boots of Levitation", "Brilliant Blade", "Curious Gear", "Doctor's Coat", "Doomed Compass", "Drakescale Armor", "Drakescale Boots", "Drakescale Helm", "Flea-Bitten Shawl", "Fueled Falchion", "Fueled Falchion", "Giant Remote Spider", "Helix Ring", "Helm of the Mountain", "Horned Helm", "Horned Helm", "Imposing Blade", "Master's Lute", "Minor Cure Potion", "Minor Cure Potion", "Night Blade", "Remote Spider", "Ring of Skulls", "Ring of Skulls", "Rocket Boots", "Rocket Boots", "Scroll of Healing", "Scroll of Healing", "Scroll of Stamina", "Scroll of Stamina", "Second Skin", "Silent Stiletto", "Skullbane Axe", "Steam Armor", "Steel Ring", "Steel Ring", "Storm Blade", "Storm Blade", "Sun Shield", "Thief's Hood", "Utility Belt", "Volatile Elixir", "Wand of Infernos", "Wand of Infernos" ],
    "sanctuary": 40,
    "treasures": [ 1, 3, 15, 16, 17, 22, 24, 32, 36, 39, 41, 45, 47, 50, 54, 58, 59, 65, 66, 68, 70, 72 ]
  }
}
Sebaestschjin commented 3 years ago

Thanks for the report. The error during saving come from the fact that you use a different kind of sheet for tracking opening conditions, so the mod can't find the other one and save it. This shouldn't be a fatal error though, just a warning. I'll change that. The error during loading comes from the events. I don't know yet why though. In the meantime you can remove the events part of your save and try again to load everything else.

Sebaestschjin commented 3 years ago

OK, finally found the reason. Your city event deck contains the event number 73 twice for some reason. This was saved and gives an error during load as the second event can not be found anymore. I changed that now, that during save duplicates won't be saved anymore. Your provided save will work if you remove the second version of event 73 from the city events.