-- 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 _ and if we find nothing we look for format is [location_guid -> clueCount] ]] LOCATIONS_DATA_JSON = [[ { "Cargo Hold": {"type": "fixed", "value": 1, "clueSide": "front"}, "Cryosleep Quarters": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Engine Room": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Escape Pod Bay": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Infirmary": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Mess Hall": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Ship's Bridge": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Ventilation Shaft": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Cafeteria": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Classroom K2": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Entrance Hall": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Gymnasium": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Biology Lab": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Library": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "School Grounds": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Cold Wastes": {"type": "fixed", "value": 1, "clueSide": "front"}, "Crystal Peak": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Ice Spires": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Main Facility": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Omni-Transmitters": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Q-Crystal Mines": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Airlocks": {"type": "fixed", "value": 2, "clueSide": "front"}, "Crew Quarters": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Engine Room": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Flight Deck": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Hydroponics": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Infirmary_N": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Ship Mainframe": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Telecoms": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "A Hiding Place": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "A Mutiny": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Adrift in Space": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "An Accident": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "City of Cats": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Fever Dream": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Abandoned Lander": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Cyclopean Caverns": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Hidden Passage": {"type": "fixed", "value": 1, "clueSide": "front"}, "Ice Cavity": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Stalagmite Forest": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Impassable Ravine": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "New Brooklyn": {"type": "fixed", "value": 1, "clueSide": "front"}, "Hope": {"type": "fixed", "value": 1, "clueSide": "front"}, "Yuggoth": {"type": "fixed", "value": 1, "clueSide": "front"}, "Mount Sinai": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Derelict Ship": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Martian Ruins": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Olympus Telescope": {"type": "perPlayer", "value": 1, "clueSide": "front"}, "Moonbase Laboratory": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Threshold of Yuggoth": {"type": "perPlayer", "value": 2, "clueSide": "front"}, "Earth": {"type": "perPlayer", "value": 2, "clueSide": "front"} } ]] HIDDEN_CARD_DATA = { "Hallucinatory Holograms", "Reminiscence (Secrets)", "Reminiscence (Pledge)", "Reminiscence (Covenant)", "Cabin Pressure", "Remember Me?", "Manifested Whispers", "Dark Reflections (Zealot)", "Dark Reflections (Murderer)", "Dark Reflections (Malingnerer)", "Dark Reflections (Sycophant)", "Perspective Switch", "Echoes of Tassilda (Mind)", "Echoes of Tassilda (Matter)", "Madness of Carcosa" } LOCATIONS_DATA = JSON.decode(LOCATIONS_DATA_JSON) function onload(save_state) local playArea = getObjectFromGUID('721ba2') playArea.call("updateLocations", {self.getGUID()}) local dataHelper = getObjectFromGUID('708279') dataHelper.call("updateHiddenCards", {self.getGUID()}) end