ah_sce_unpacked/unpacked/Custom_Model_Bag Bloodborne - City of the Unseen 0.175 81651b/Custom_Model Bloodborne Custom Data Helper 3e1dd7.ttslua
2023-04-22 16:56:01 -04:00

402 lines
24 KiB
Plaintext

-- set true to enable debug logging
DEBUG = false
function log(message)
if DEBUG then
print(message)
end
end
--[[
Known locations and clues. We check this to determine if we should
atttempt to spawn clues, first we look for <LOCATION_NAME>_<GUID> and if
we find nothing we look for <LOCATION_NAME>
format is [location_guid -> clueCount]
]]
LOCATIONS_DATA_JSON = [[
{
"San Francisco": {"type": "fixed", "value": 1, "clueSide": "back"},
" Arkham": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"Buenos Aires": {"type": "fixed", "value": 2, "clueSide": "back"},
" London": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rome": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Istanbul": {"type": "perPlayer", "value": 4, "clueSide": "front"},
"Tokyo_123abc": {"type": "perPlayer", "value": 0, "clueSide": "back"},
"Tokyo_456efg": {"type": "perPlayer", "value": 4, "clueSide": "back"},
"Tokyo": {"type": "fixed", "value": 2, "clueSide": "back"},
"Shanghai_123": {"type": "fixed", "value": 12, "clueSide": "front"},
"Sydney": {"type": "fixed", "value": 0, "clueSide": "front"},
"Under the Great Bridge": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Somber Memorial": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Ominous Pyre": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Ominous Pyre ": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Narrow Alleyway": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moonlit Backstreet": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Moonlit Backstreet ": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Central Yharnam Promenade": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Hospital Courtyard": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Deserted Manor_adcfac": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"City Center Plaza": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Atop the Great Bridge": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Deserted Manor_e00007": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"1st Floor Sickroom": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"1st Floor Examination Room": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Chapel Transept": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chapel Sanctuary": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chapel Rectory": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chapel Nave": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Chapel Attic_0e64f5": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Untended Graves": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Tomb of the Queen": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Shadowed Woods": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rotting Thicket": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Oedon Chapel Subterrane": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moonlit Clearing": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Misty Weald": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Hemwick Charnel Lane": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Gibbeting Path": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Gates of Byrgenwerth": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Deserted Trapping Village": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Derelict Coachhouse": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Burial Grove": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Abandoned Mill": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Private Library": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Research Hall": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Faculty Offices": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rooftops_e00008": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Annex": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Astronomy Hall": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Lecture Hall": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"University Foyer": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"*The Portrait of the First Vicar": {"type": "perPlayer", "value": 2, "clueSide": "back"},
"*The Portrait of the Holy Blade": {"type": "perPlayer", "value": 2, "clueSide": "back"},
"*The Portrait of the Holy Blade": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"*The Portrait of the Headmaster": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"*The Portrait of the Governess": {"type": "perPlayer", "value": 2, "clueSide": "back"},
"Audience Chamber": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Cathedral Steps": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Cathedral Ward Cemetery": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Grand Cathedral of Yharnam": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Surgery Altar": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"The Bridge of Saints": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Grand Cathedral Sanctuary": {"type": "perPlayer", "value": 0, "clueSide": "front"},
"The Lumenflower Garden": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Steps of Penance": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mirror Chamber": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber ": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber ": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber ": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Branching Corridors": {"type": "fixed", "value": 1, "clueSide": "front"},
"Yale University": {"type": "fixed", "value": 1, "clueSide": "front"},
"The Cimmerian Descent": {"type": "fixed", "value": 1, "clueSide": "front"},
"The College of Mensis": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Ritual Cloister": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mensis Refectory": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Lair of the Brain": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"The Hypogean Gaol": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Spires of the Loft": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Featured Exhibit": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Depths of the Loft": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Dangling Cells": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Byrgenwerth": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Apostle's Gallery": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Wet Nurse's Lunarium": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Spire of Mensis": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"Aeonian Sickbeds": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Decaying Fishing Hamlet": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Lumenwood Garden": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Forgotten Coast": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Advent Plaza": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Sacrificial Pits": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Yahar'gul Chapel": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Yahar'gul Commons": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Defiled Pthumerian Shrine": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Pthumeru Ihyll Labyrinth": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Tomb of Oedon": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Moonside Lake": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Ailing Loran Frontier": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Bloodstained Gate": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"The Eastern Cathedral": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mergo's Loft": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Sanguine River": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Underground Corpse Pile": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Western Cathedral": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chalice Headstones": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Gates of the Dream": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chalice Headstones": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Grave-Marked Trail": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Misty Garden Path": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moon-Kissed Meadow": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Burning Workshop": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"The Dream Aflame": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Messengers' Bath": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Deserted Manor_1566a5": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moonlit Clearing_e00008": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Research Hall_e00007": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rooftops_e0008": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Lecture Hall_e00004": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Surgery Altar_e00007": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"The Lumenflower Gardens_1a433f": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Blood Healing Laboratory_998d8c": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Contact Chamber_10edc3": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Contact Chamber_31e857": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Audience Chamber_e00001": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mirror Chamber _e00003": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber _e00001": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber_e00004": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber _e00002": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Dangling Cells_49d503": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Depths of the Loft_e00007": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Lair of the Brain_e0000b": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Ritual Cloister_e00013": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mensis Refectory_e0000e": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Spires of the Loft_e00009": {"type": "perPlayer", "value": 2, "clueSide": "front"}
}
]]
PLAYER_CARD_DATA_JSON = [[
{
"Tool Belt (0)": {
"tokenType": "resource",
"tokenCount": 2
},
"Tool Belt (3)": {
"tokenType": "resource",
"tokenCount": 4
},
"Yithian Rifle": {
"tokenType": "resource",
"tokenCount": 3
},
"xxx": {
"tokenType": "resource",
"tokenCount": 3
}
}
]]
HIDDEN_CARD_DATA = {
"Unpleasant Card (Doom)",
"Unpleasant Card (Gloom)",
"The Case of the Scarlet DOOOOOM!"
}
LOCATIONS_DATA = JSON.decode(LOCATIONS_DATA_JSON)
PLAYER_CARD_DATA = JSON.decode(PLAYER_CARD_DATA_JSON)
function onload(save_state)
local playArea = getObjectFromGUID('721ba2')
playArea.call("updateLocations", {self.getGUID()})
local playerMatWhite = getObjectFromGUID('8b081b')
playerMatWhite.call("updatePlayerCards", {self.getGUID()})
local playerMatOrange = getObjectFromGUID('bd0ff4')
playerMatOrange.call("updatePlayerCards", {self.getGUID()})
local playerMatGreen = getObjectFromGUID('383d8b')
playerMatGreen.call("updatePlayerCards", {self.getGUID()})
local playerMatRed = getObjectFromGUID('0840d5')
playerMatRed.call("updatePlayerCards", {self.getGUID()})
local dataHelper = getObjectFromGUID('708279')
dataHelper.call("updateHiddenCards", {self.getGUID()})
end-- set true to enable debug logging
DEBUG = false
function log(message)
if DEBUG then
print(message)
end
end
--[[
Known locations and clues. We check this to determine if we should
atttempt to spawn clues, first we look for <LOCATION_NAME>_<GUID> and if
we find nothing we look for <LOCATION_NAME>
format is [location_guid -> clueCount]
]]
LOCATIONS_DATA_JSON = [[
{
"San Francisco": {"type": "fixed", "value": 1, "clueSide": "back"},
" Arkham": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"Buenos Aires": {"type": "fixed", "value": 2, "clueSide": "back"},
" London": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rome": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Istanbul": {"type": "perPlayer", "value": 4, "clueSide": "front"},
"Tokyo_123abc": {"type": "perPlayer", "value": 0, "clueSide": "back"},
"Tokyo_456efg": {"type": "perPlayer", "value": 4, "clueSide": "back"},
"Tokyo": {"type": "fixed", "value": 2, "clueSide": "back"},
"Shanghai_123": {"type": "fixed", "value": 12, "clueSide": "front"},
"Sydney": {"type": "fixed", "value": 0, "clueSide": "front"},
"Under the Great Bridge": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Somber Memorial": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Ominous Pyre": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Ominous Pyre ": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Narrow Alleyway": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moonlit Backstreet": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Moonlit Backstreet ": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Central Yharnam Promenade": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Hospital Courtyard": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Deserted Manor_adcfac": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"City Center Plaza": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Atop the Great Bridge": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Deserted Manor_e00007": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"1st Floor Sickroom": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"1st Floor Examination Room": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Chapel Transept": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chapel Sanctuary": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chapel Rectory": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chapel Nave": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Chapel Attic_0e64f5": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Untended Graves": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Tomb of the Queen": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Shadowed Woods": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rotting Thicket": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Oedon Chapel Subterrane": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moonlit Clearing": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Misty Weald": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Hemwick Charnel Lane": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Gibbeting Path": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Gates of Byrgenwerth": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Deserted Trapping Village": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Derelict Coachhouse": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Burial Grove": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Abandoned Mill": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Private Library": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Research Hall": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Faculty Offices": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rooftops_e00008": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Annex": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Astronomy Hall": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Lecture Hall": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"University Foyer": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"*The Portrait of the First Vicar": {"type": "perPlayer", "value": 2, "clueSide": "back"},
"*The Portrait of the Holy Blade": {"type": "perPlayer", "value": 2, "clueSide": "back"},
"*The Portrait of the Holy Blade": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"*The Portrait of the Headmaster": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"*The Portrait of the Governess": {"type": "perPlayer", "value": 2, "clueSide": "back"},
"Audience Chamber": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Cathedral Steps": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Cathedral Ward Cemetery": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Grand Cathedral of Yharnam": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Surgery Altar": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"The Bridge of Saints": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Grand Cathedral Sanctuary": {"type": "perPlayer", "value": 0, "clueSide": "front"},
"The Lumenflower Garden": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Steps of Penance": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mirror Chamber": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber ": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber ": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber ": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Branching Corridors": {"type": "fixed", "value": 1, "clueSide": "front"},
"Yale University": {"type": "fixed", "value": 1, "clueSide": "front"},
"The Cimmerian Descent": {"type": "fixed", "value": 1, "clueSide": "front"},
"The College of Mensis": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Ritual Cloister": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mensis Refectory": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Lair of the Brain": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"The Hypogean Gaol": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Spires of the Loft": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Featured Exhibit": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Depths of the Loft": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Dangling Cells": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Byrgenwerth": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Apostle's Gallery": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Wet Nurse's Lunarium": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Spire of Mensis": {"type": "perPlayer", "value": 1, "clueSide": "back"},
"Aeonian Sickbeds": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Decaying Fishing Hamlet": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Lumenwood Garden": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Forgotten Coast": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Advent Plaza": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Sacrificial Pits": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Yahar'gul Chapel": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Yahar'gul Commons": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Defiled Pthumerian Shrine": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Pthumeru Ihyll Labyrinth": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Tomb of Oedon": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Moonside Lake": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Ailing Loran Frontier": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Bloodstained Gate": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"The Eastern Cathedral": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mergo's Loft": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Sanguine River": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Underground Corpse Pile": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Western Cathedral": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chalice Headstones": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Gates of the Dream": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Chalice Headstones": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Grave-Marked Trail": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Misty Garden Path": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moon-Kissed Meadow": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Burning Workshop": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"The Dream Aflame": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Messengers' Bath": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Deserted Manor_1566a5": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Moonlit Clearing_e00008": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Research Hall_e00007": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Rooftops_e0008": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Lecture Hall_e00004": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"The Surgery Altar_e00007": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"The Lumenflower Gardens_1a433f": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Blood Healing Laboratory_998d8c": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Contact Chamber_10edc3": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Contact Chamber_31e857": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Audience Chamber_e00001": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mirror Chamber _e00003": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber _e00001": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber_e00004": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Mirror Chamber _e00002": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Dangling Cells_49d503": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Depths of the Loft_e00007": {"type": "perPlayer", "value": 1, "clueSide": "front"},
"Lair of the Brain_e0000b": {"type": "perPlayer", "value": 3, "clueSide": "front"},
"Ritual Cloister_e00013": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Mensis Refectory_e0000e": {"type": "perPlayer", "value": 2, "clueSide": "front"},
"Spires of the Loft_e00009": {"type": "perPlayer", "value": 2, "clueSide": "front"}
}
]]
PLAYER_CARD_DATA_JSON = [[
{
"Tool Belt (0)": {
"tokenType": "resource",
"tokenCount": 2
},
"Tool Belt (3)": {
"tokenType": "resource",
"tokenCount": 4
},
"Yithian Rifle": {
"tokenType": "resource",
"tokenCount": 3
},
"xxx": {
"tokenType": "resource",
"tokenCount": 3
}
}
]]
HIDDEN_CARD_DATA = {
"Unpleasant Card (Doom)",
"Unpleasant Card (Gloom)",
"The Case of the Scarlet DOOOOOM!"
}
LOCATIONS_DATA = JSON.decode(LOCATIONS_DATA_JSON)
PLAYER_CARD_DATA = JSON.decode(PLAYER_CARD_DATA_JSON)
function onload(save_state)
local playArea = getObjectFromGUID('721ba2')
playArea.call("updateLocations", {self.getGUID()})
local playerMatWhite = getObjectFromGUID('8b081b')
playerMatWhite.call("updatePlayerCards", {self.getGUID()})
local playerMatOrange = getObjectFromGUID('bd0ff4')
playerMatOrange.call("updatePlayerCards", {self.getGUID()})
local playerMatGreen = getObjectFromGUID('383d8b')
playerMatGreen.call("updatePlayerCards", {self.getGUID()})
local playerMatRed = getObjectFromGUID('0840d5')
playerMatRed.call("updatePlayerCards", {self.getGUID()})
local dataHelper = getObjectFromGUID('708279')
dataHelper.call("updateHiddenCards", {self.getGUID()})
end