2018 lines
		
	
	
		
			56 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			2018 lines
		
	
	
		
			56 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|   | ITEM_SOURCES_JSON = [ | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (0F): chest in room to the right", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 0 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (0F): chest in carpet room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 1 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (0F): chest in left hallway (accessed by falling from upstairs)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 2 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (0F): falling chest after beating orc", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 3 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (0F): chest in room visible from second entrance", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 4 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (1F): lower chest in wooden bridges room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 5 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (2F): upper chest in wooden bridges room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 6 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (2F): chest on spiked floor room balcony", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 7 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Swamp Shrine (3F): chest in boss arena", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "swamp_shrine", | ||
|  |         "chestId": 8 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (-1F): chest on elevated path near entrance", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "hidden in the depths of Mercator" | ||
|  |         ], | ||
|  |         "chestId": 9 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (-1F): chest in Moralis's cell", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "hidden in the depths of Mercator" | ||
|  |         ], | ||
|  |         "chestId": 10 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (-1F): left chest in undeground double chest room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "hidden in the depths of Mercator" | ||
|  |         ], | ||
|  |         "chestId": 11 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (-1F): right chest in undeground double chest room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "hidden in the depths of Mercator" | ||
|  |         ], | ||
|  |         "chestId": 12 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: castle kitchen chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator", | ||
|  |         "chestId": 13 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: chest in special shop backroom", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator", | ||
|  |         "chestId": 14 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (1F): left chest in tower double chest room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "inside a tower" | ||
|  |         ], | ||
|  |         "chestId": 15 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (1F): right chest in tower double chest room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "inside a tower" | ||
|  |         ], | ||
|  |         "chestId": 16 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: chest in castle tower (ladder revealed by slashing armor)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator", | ||
|  |         "hints": [ | ||
|  |             "inside a tower" | ||
|  |         ], | ||
|  |         "chestId": 17 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator Dungeon (4F): chest in topmost tower room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_dungeon", | ||
|  |         "hints": [ | ||
|  |             "inside a tower" | ||
|  |         ], | ||
|  |         "chestId": 18 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Palace: chest at entrance", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_palace", | ||
|  |         "chestId": 19 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Palace: chest along central pit", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_palace", | ||
|  |         "chestId": 20 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Palace: chest in floating button room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_palace", | ||
|  |         "chestId": 21 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Cave: chest in second room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_cave", | ||
|  |         "chestId": 22 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Cave: first chest in third room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_cave", | ||
|  |         "chestId": 24 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Cave: second chest in third room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_cave", | ||
|  |         "chestId": 25 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Cave: chest in isolated room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_cave", | ||
|  |         "chestId": 28 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Cave: chest in crate room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_cave", | ||
|  |         "chestId": 29 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Cave: boulder chase hallway chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_cave", | ||
|  |         "chestId": 31 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Waterfall Shrine: chest under entrance hallway", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "waterfall_shrine", | ||
|  |         "chestId": 33 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Waterfall Shrine: chest near Prospero", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "waterfall_shrine", | ||
|  |         "chestId": 34 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Waterfall Shrine: chest on right branch of biggest room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "waterfall_shrine", | ||
|  |         "chestId": 35 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Waterfall Shrine: upstairs chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "waterfall_shrine", | ||
|  |         "chestId": 36 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout: chest under water in entrance room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_pre_key", | ||
|  |         "chestId": 38 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): right chest after teal knight mini-boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 41 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): left chest after teal knight mini-boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 42 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout: left chest in Pockets cell", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_pre_key", | ||
|  |         "chestId": 43 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout: right chest in Pockets cell", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_pre_key", | ||
|  |         "chestId": 44 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): second chest in hallway after quick climb trial", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 45 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): first chest in hallway after quick climb trial", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 46 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest in moving platforms room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 47 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest in falling platforms room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 48 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): reward chest after moving balls room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 49 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout: rolling boulder chest near entrance", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_pre_key", | ||
|  |         "chestId": 50 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout: left chest in room on the way to goddess statue", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_pre_key", | ||
|  |         "chestId": 52 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout: right chest in room on the way to goddess statue", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_pre_key", | ||
|  |         "chestId": 53 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): left chest in room before boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 54 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): right chest in room before boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 55 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest #1 in boss reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 56 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest #2 in boss reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 57 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest #3 in boss reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 58 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest #4 in boss reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 59 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Thieves Hideout (back): chest #5 in boss reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "thieves_hideout_post_key", | ||
|  |         "chestId": 60 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: right chest in double chest room near entrance", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 66 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: left chest in double chest room near entrance", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 67 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: chest on jar staircase room balcony", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 68 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: Dex reward chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 69 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: Slasher reward chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 70 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: left chest in 3-chests room near Slasher", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 71 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: middle chest in 3-chests room near Slasher", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 72 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: right chest in 3-chests room near Slasher", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 73 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: right chest in button room near elevator shaft leading to Marley", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 74 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: left chest in button room near elevator shaft leading to Marley", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "chestId": 75 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: chest in hidden room accessed by walking on lava", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_mines_behind_lava", | ||
|  |         "hints": [ | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "chestId": 76 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (0F): 4 crates puzzle room chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 77 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (1F): chest on small stairs", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 78 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (1F): chest on narrow floating ground", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 79 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (1F): chest in spiky hallway", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 80 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (2F): chest in ghosts room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 81 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (2F): chest in falling platforms room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 82 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (2F): right chest in Pockets room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 83 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (2F): left chest in Pockets room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 84 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (3F): chest in first trapped arena", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 85 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (3F): chest in trapped giants room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 86 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (3F): chest in second trapped arena", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 87 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (4F): top chest in room before boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 88 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (4F): left chest in room before boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 89 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (4F): bottom chest in room before boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 90 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well (4F): right chest in room before boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "chestId": 91 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-1F): chest in crate room near green golem spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 92 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-1F): chest in hallway with hole leading downstairs", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 93 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-1F): chest in spikeballs hallway near green golem spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 94 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-1F): reward chest for golem hopping puzzle", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 95 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): chest on room corner accessed by falling from above", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 96 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): lower chest in throne room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 97 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): upper chest in throne room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 98 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): chest on floating platform in white golems room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 99 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): chest near Sword of Ice", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 100 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): chest in snake trapping puzzle room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 101 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): chest on cube accessed by falling from upstairs", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 102 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): chest in watery archway room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 103 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): left reward chest in boss room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 104 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): middle reward chest in boss room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 105 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): right reward chest in boss room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 106 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): chest near golden golems spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "chestId": 107 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (0F): chest in exterior room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_exterior", | ||
|  |         "chestId": 108 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (0F): left chest in room after key door", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 109 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (0F): right chest in room after key door", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 110 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): chest in maze room with healing tile", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 111 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (0F): chest in spike balls room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_pre_door", | ||
|  |         "chestId": 112 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): right chest in 3-chest dark room (left side)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 113 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): chest in 3-chest dark room (right side)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_pre_door", | ||
|  |         "chestId": 114 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): left chest in 3-chest dark room (left side)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 115 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): chest in maze room with two buttons", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 116 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): upper chest in lantern room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_pre_door", | ||
|  |         "chestId": 117 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): lower chest in lantern room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_pre_door", | ||
|  |         "chestId": 118 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): chest in ice shortcut room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_pre_door", | ||
|  |         "chestId": 119 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-2F): chest in save room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 120 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): chest in room with button and crates stairway", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 121 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): first chest before Firedemon", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "hints": [ | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "chestId": 122 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): second chest before Firedemon", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "hints": [ | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "chestId": 123 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): reward chest for beating Firedemon", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian", | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "chestId": 124 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-2F): chest in four buttons room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 125 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): first chest after falling from raft", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_raft", | ||
|  |         "chestId": 126 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): left chest in room before Spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_raft", | ||
|  |         "chestId": 127 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): right chest in room before Spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_raft", | ||
|  |         "chestId": 128 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): reward chest for beating Spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_raft", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 129 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): chest in room after Spinner", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_raft", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 130 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): chest in room before Miro", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_path_to_palace", | ||
|  |         "hints": [ | ||
|  |             "close to a waterfall" | ||
|  |         ], | ||
|  |         "chestId": 131 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): reward chest for beating Miro", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_path_to_palace", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 132 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): chest in hands room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "chestId": 133 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route between Gumi and Ryuma: chest on the way to Swordsman Kado", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_gumi_ryuma", | ||
|  |         "chestId": 134 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route between Massan and Gumi: chest on cliff", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_massan_gumi", | ||
|  |         "hints": [ | ||
|  |             "near a swamp" | ||
|  |         ], | ||
|  |         "chestId": 135 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route between Mercator and Verla: chest on cliff next to tree", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_sector", | ||
|  |         "chestId": 136 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route between Mercator and Verla: chest on cliff next to blocked cave", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_sector", | ||
|  |         "chestId": 137 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route between Mercator and Verla: chest near Twinkle village", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_sector", | ||
|  |         "chestId": 138 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Shore: chest on corner cliff after Verla tunnel", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_shore", | ||
|  |         "chestId": 139 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Shore: chest on highest cliff after Verla tunnel (accessible through Verla mines)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_shore_cliff", | ||
|  |         "chestId": 140 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Mir Tower: chest on cliff accessed by pressing hidden switch", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_sector", | ||
|  |         "chestId": 141 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Mir Tower: chest behind first sacred tree", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_sector_tree_ledge", | ||
|  |         "chestId": 142 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Shore: chest behind cabin", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_shore", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 143 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Destel: chest in map right after Verla mines exit", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "chestId": 144 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Destel: chest in small platform elevator map", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "chestId": 145 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Mir Tower: chest behind second sacred tree", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_sector_tree_coast", | ||
|  |         "chestId": 146 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Destel: hidden chest in map right before Destel", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 147 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: chest near teleport tree", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 148 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: chest on right side of map before the bridge", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 149 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: hidden chest in L-shaped path", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 150 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: hidden chest in uppermost path", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 151 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: isolated chest on cliff in bridge map", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 152 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: left chest on wall in bridge map", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 153 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: right chest on wall in bridge map", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 154 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: right chest in map before Zak arena", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 155 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: left chest in map before Zak arena", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 156 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route after Destel: chest on tiny cliff", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_after_destel", | ||
|  |         "chestId": 157 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route after Destel: hidden chest in map after seeing Duke raft", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_after_destel", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 158 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route after Destel: visible chest in map after seeing Duke raft", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_after_destel", | ||
|  |         "chestId": 159 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: chest hidden under rocky arch", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 160 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: chest on long cliff in crossroads map", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "chestId": 161 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: chest on middle cliff in crossroads map (reached from Mountainous Area)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_lake_shrine_cliff", | ||
|  |         "chestId": 162 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: chest in map in front of bridge statue", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "chestId": 163 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: right chest in volcano", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "chestId": 164 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: left chest in volcano", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "chestId": 165 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area Cave: chest in small hidden room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "in a small cave", | ||
|  |             "in a well-hidden chest", | ||
|  |             "in a cave in the mountains" | ||
|  |         ], | ||
|  |         "chestId": 166 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area Cave: chest in small visible room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "in a small cave", | ||
|  |             "in a cave in the mountains" | ||
|  |         ], | ||
|  |         "chestId": 167 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: chest on path to Cutter", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_cutter", | ||
|  |         "chestId": 168 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: chest on cliff near the swamp", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "chestId": 169 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: chest between Sunstone and Massan shortcut", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_post_whistle", | ||
|  |         "chestId": 170 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: chest in mages room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "chestId": 171 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: left chest in elbow cave", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "chestId": 172 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: right chest in elbow cave", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "chestId": 173 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: chest in waterfall cave", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "hints": [ | ||
|  |             "close to a waterfall" | ||
|  |         ], | ||
|  |         "chestId": 174 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: left chest in hidden room behind waterfall", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "hints": [ | ||
|  |             "close to a waterfall" | ||
|  |         ], | ||
|  |         "chestId": 175 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: right chest in hidden room behind waterfall", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "hints": [ | ||
|  |             "close to a waterfall" | ||
|  |         ], | ||
|  |         "chestId": 176 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: chest triggered by dog statue", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "massan", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 177 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: chest in house nearest to elder house", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "massan", | ||
|  |         "chestId": 178 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: chest in middle house", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "massan", | ||
|  |         "chestId": 179 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: chest in house farthest from elder house", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "massan", | ||
|  |         "chestId": 180 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Gumi: chest on top of bed in house", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "gumi", | ||
|  |         "chestId": 181 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Gumi: chest in elder house after saving Fara", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "gumi_after_swamp_shrine", | ||
|  |         "chestId": 182 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: chest in mayor's house", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "ryuma", | ||
|  |         "chestId": 183 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: chest in repaired lighthouse", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "ryuma_lighthouse_repaired", | ||
|  |         "chestId": 184 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Crypt: chest in main room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "crypt", | ||
|  |         "chestId": 185 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Crypt: reward chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "crypt", | ||
|  |         "chestId": 186 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: hidden casino chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator_casino", | ||
|  |         "hints": [ | ||
|  |             "hidden in the depths of Mercator", | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 191 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: chest in Greenpea's house", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator", | ||
|  |         "chestId": 192 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: chest in grandma's house (pot shelving trial)", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mercator", | ||
|  |         "chestId": 193 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla: chest in well after beating Marley", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "verla_after_mines", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 194 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: chest in inn next to innkeeper", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "destel", | ||
|  |         "chestId": 196 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: timed jump trial chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 197 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest after mimic room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 198 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: mimic room chest #1", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 199 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: mimic room chest #2", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 200 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: mimic room chest #3", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 201 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: mimic room chest #4", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 202 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest in mushroom pit room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 203 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest in room next to mummy switch room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_pre_garlic", | ||
|  |         "chestId": 204 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest in library accessible from teleporter maze", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "chestId": 205 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: hidden chest in room before library", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "hints": [ | ||
|  |             "in a well-hidden chest" | ||
|  |         ], | ||
|  |         "chestId": 206 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest in falling spikeballs room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "chestId": 207 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest in timed challenge room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "chestId": 208 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest in room where Miro closes the door", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "chestId": 209 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest after room where Miro closes the door", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "chestId": 210 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: reward chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 211 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: right chest in reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 212 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: left chest in reward room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 213 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: chest behind wall accessible after beating Mir", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "chestId": 214 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Witch Helga's Hut: end chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "helga_hut", | ||
|  |         "chestId": 215 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan Cave: right chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "massan_cave", | ||
|  |         "chestId": 216 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan Cave: left chest", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "massan_cave", | ||
|  |         "chestId": 217 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Tibor: reward chest after boss", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "tibor", | ||
|  |         "chestId": 218 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Tibor: chest in spike balls room", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "tibor", | ||
|  |         "chestId": 219 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Tibor: left chest on 2 chest group", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "tibor", | ||
|  |         "chestId": 220 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Tibor: right chest on 2 chest group", | ||
|  |         "type": "chest", | ||
|  |         "nodeId": "tibor", | ||
|  |         "chestId": 221 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Gumi: item on furniture in elder's house", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "gumi", | ||
|  |         "entity": {"mapId": 605, "entityId": 2}, | ||
|  |         "groundItemId": 1 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: item behind trees requiring Cutter", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "greenmaze_post_whistle", | ||
|  |         "entity": {"mapId": 564, "entityId": 0}, | ||
|  |         "groundItemId": 2 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla Mines: item in the corner of lava filled room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "verla_mines", | ||
|  |         "hints": [ | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "entity": {"mapId": 263, "entityId": 7}, | ||
|  |         "groundItemId": 3 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): item on ground at the SE exit of the golden golems roundabout", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "entity": {"mapId": 333, "entityId": 0}, | ||
|  |         "groundItemId": 4 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): item on ground behind waterfall after beating Spinner", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_raft", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "entity": {"mapId": 411, "entityId": 0}, | ||
|  |         "groundItemId": 5 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel Well: item on platform revealed after beating Quake", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "destel_well", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "entity": {"mapId": 288, "entityId": 0}, | ||
|  |         "groundItemId": 6 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-1F): item on ground in ninjas room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "entity": {"mapId": 374, "entityId": 3}, | ||
|  |         "groundItemId": 7 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan Cave: item on ground in treasure room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "massan_cave", | ||
|  |         "entity": {"mapId": 807, "entityId": 4}, | ||
|  |         "groundItemId": 8 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): item on floating hands", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "entity": {"mapId": 418, "entityId": 0}, | ||
|  |         "groundItemId": 9 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-3F): isolated item on ground requiring raised platform to reach", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 344, "entityId": 0}, | ||
|  |             {"mapId": 345, "entityId": 0} | ||
|  |         ], | ||
|  |         "groundItemId": 10 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-2F): item on ground after falling from exterior room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_fall_from_exterior", | ||
|  |         "entity": {"mapId": 363, "entityId": 0}, | ||
|  |         "groundItemId": 11 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route after Destel: item on ground on the cliff", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "route_after_destel", | ||
|  |         "entity": {"mapId": 483, "entityId": 0}, | ||
|  |         "groundItemId": 12 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area cave: item on ground behind hidden path", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "in a small cave", | ||
|  |             "in a cave in the mountains" | ||
|  |         ], | ||
|  |         "entity": {"mapId": 553, "entityId": 0}, | ||
|  |         "groundItemId": 13 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Witch Helga's Hut: item on furniture", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "helga_hut", | ||
|  |         "entity": {"mapId": 479, "entityId": 1}, | ||
|  |         "groundItemId": 14 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): item on ground climbing back from Firedemon", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "hints": [ | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "entity": {"mapId": 399, "entityId": 0}, | ||
|  |         "groundItemId": 15 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: falling item in castle court", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 32, "entityId": 2}, | ||
|  |         "groundItemId": 16 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): north item on ground in quadruple items room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "entity": {"mapId": 318, "entityId": 0}, | ||
|  |         "groundItemId": 17 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): south item on ground in quadruple items room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "entity": {"mapId": 318, "entityId": 1}, | ||
|  |         "groundItemId": 18 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): west item on ground in quadruple items room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "entity": {"mapId": 318, "entityId": 2}, | ||
|  |         "groundItemId": 19 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine (-2F): east item on ground in quadruple items room", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "entity": {"mapId": 318, "entityId": 3}, | ||
|  |         "groundItemId": 20 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Twinkle Village: first item on ground", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "twinkle_village", | ||
|  |         "entity": {"mapId": 462, "entityId": 5}, | ||
|  |         "groundItemId": 21 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Twinkle Village: second item on ground", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "twinkle_village", | ||
|  |         "entity": {"mapId": 462, "entityId": 4}, | ||
|  |         "groundItemId": 22 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Twinkle Village: third item on ground", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "twinkle_village", | ||
|  |         "entity": {"mapId": 462, "entityId": 3}, | ||
|  |         "groundItemId": 23 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: Priest room item #1", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "entity": {"mapId": 775, "entityId": 7}, | ||
|  |         "groundItemId": 24 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: Priest room item #2", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "entity": {"mapId": 775, "entityId": 6}, | ||
|  |         "groundItemId": 25 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mir Tower: Priest room item #3", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "mir_tower_post_garlic", | ||
|  |         "entity": {"mapId": 775, "entityId": 1}, | ||
|  |         "groundItemId": 26 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-2F): Left item dropped by sacred tree", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_sacred_tree", | ||
|  |         "entity": {"mapId": 415, "entityId": 2}, | ||
|  |         "groundItemId": 27 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-2F): Right item dropped by sacred tree", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_sacred_tree", | ||
|  |         "entity": {"mapId": 415, "entityId": 1}, | ||
|  |         "groundItemId": 28 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "King Nole's Labyrinth (-3F): First item on ground before Firedemon", | ||
|  |         "type": "ground", | ||
|  |         "nodeId": "king_nole_labyrinth_post_door", | ||
|  |         "hints": [ | ||
|  |             "in a very hot place" | ||
|  |         ], | ||
|  |         "entity": {"mapId": 400, "entityId": 0}, | ||
|  |         "groundItemId": 29 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: Shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "massan", | ||
|  |         "entity": {"mapId": 596, "entityId": 1}, | ||
|  |         "shopItemId": 1 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: Shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "massan", | ||
|  |         "entity": {"mapId": 596, "entityId": 2}, | ||
|  |         "shopItemId": 2 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: Shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "massan", | ||
|  |         "entity": {"mapId": 596, "entityId": 3}, | ||
|  |         "shopItemId": 3 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Gumi: Inn item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "gumi", | ||
|  |         "entity": {"mapId": 608, "entityId": 4}, | ||
|  |         "shopItemId": 4 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Gumi: Inn item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "gumi", | ||
|  |         "entity": {"mapId": 608, "entityId": 2}, | ||
|  |         "shopItemId": 5 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "entity": {"mapId": 615, "entityId": 2}, | ||
|  |         "shopItemId": 6 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "entity": {"mapId": 615, "entityId": 3}, | ||
|  |         "shopItemId": 7 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "entity": {"mapId": 615, "entityId": 4}, | ||
|  |         "shopItemId": 8 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "entity": {"mapId": 615, "entityId": 5}, | ||
|  |         "shopItemId": 9 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Shop item #5", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "entity": {"mapId": 615, "entityId": 6}, | ||
|  |         "shopItemId": 10 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Inn item", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "ryuma", | ||
|  |         "entity": {"mapId": 624, "entityId": 3}, | ||
|  |         "shopItemId": 11 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 679, "entityId": 1}, | ||
|  |         "shopItemId": 12 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 679, "entityId": 2}, | ||
|  |         "shopItemId": 13 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 679, "entityId": 3}, | ||
|  |         "shopItemId": 14 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 679, "entityId": 4}, | ||
|  |         "shopItemId": 15 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Shop item #5", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 679, "entityId": 5}, | ||
|  |         "shopItemId": 16 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Shop item #6", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator", | ||
|  |         "entity": {"mapId": 679, "entityId": 6}, | ||
|  |         "shopItemId": 17 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Special shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_special_shop", | ||
|  |         "entity": {"mapId": 696, "entityId": 1}, | ||
|  |         "shopItemId": 18 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Special shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_special_shop", | ||
|  |         "entity": {"mapId": 696, "entityId": 2}, | ||
|  |         "shopItemId": 19 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Special shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_special_shop", | ||
|  |         "entity": {"mapId": 696, "entityId": 3}, | ||
|  |         "shopItemId": 20 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Special shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_special_shop", | ||
|  |         "entity": {"mapId": 696, "entityId": 4}, | ||
|  |         "shopItemId": 21 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Docks shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_repaired_docks", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 644, "entityId": 3}, | ||
|  |             {"mapId": 643, "entityId": 9} | ||
|  |         ], | ||
|  |         "shopItemId": 22 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Docks shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_repaired_docks", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 644, "entityId": 4}, | ||
|  |             {"mapId": 643, "entityId": 10} | ||
|  |         ], | ||
|  |         "shopItemId": 23 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Docks shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "mercator_repaired_docks", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 644, "entityId": 5}, | ||
|  |             {"mapId": 643, "entityId": 11} | ||
|  |         ], | ||
|  |         "shopItemId": 24 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla: Shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "verla", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 719, "entityId": 0}, | ||
|  |             {"mapId": 720, "entityId": 1} | ||
|  |         ], | ||
|  |         "shopItemId": 25 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla: Shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "verla", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 719, "entityId": 1}, | ||
|  |             {"mapId": 720, "entityId": 2} | ||
|  |         ], | ||
|  |         "shopItemId": 26 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla: Shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "verla", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 719, "entityId": 2}, | ||
|  |             {"mapId": 720, "entityId": 3} | ||
|  |         ], | ||
|  |         "shopItemId": 27 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla: Shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "verla", | ||
|  |         "entities": [ | ||
|  |             {"mapId": 719, "entityId": 4}, | ||
|  |             {"mapId": 720, "entityId": 4} | ||
|  |         ], | ||
|  |         "shopItemId": 28 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Verla: Shop item #5 (extra item after saving town)", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "verla_after_mines", | ||
|  |         "entity": {"mapId": 720, "entityId": 5}, | ||
|  |         "shopItemId": 29 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route from Verla to Destel: Kelketo shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "entity": {"mapId": 517, "entityId": 1}, | ||
|  |         "shopItemId": 30 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route from Verla to Destel: Kelketo shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "entity": {"mapId": 517, "entityId": 2}, | ||
|  |         "shopItemId": 31 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route from Verla to Destel: Kelketo shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "entity": {"mapId": 517, "entityId": 3}, | ||
|  |         "shopItemId": 32 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route from Verla to Destel: Kelketo shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "entity": {"mapId": 517, "entityId": 4}, | ||
|  |         "shopItemId": 33 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route from Verla to Destel: Kelketo shop item #5", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_verla_destel", | ||
|  |         "entity": {"mapId": 517, "entityId": 5}, | ||
|  |         "shopItemId": 34 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: Inn item", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "destel", | ||
|  |         "entity": {"mapId": 729, "entityId": 2}, | ||
|  |         "shopItemId": 35 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: Shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "destel", | ||
|  |         "entity": {"mapId": 733, "entityId": 1}, | ||
|  |         "shopItemId": 36 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: Shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "destel", | ||
|  |         "entity": {"mapId": 733, "entityId": 2}, | ||
|  |         "shopItemId": 37 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: Shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "destel", | ||
|  |         "entity": {"mapId": 733, "entityId": 3}, | ||
|  |         "shopItemId": 38 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: Shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "destel", | ||
|  |         "entity": {"mapId": 733, "entityId": 4}, | ||
|  |         "shopItemId": 39 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Destel: Shop item #5", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "destel", | ||
|  |         "entity": {"mapId": 733, "entityId": 5}, | ||
|  |         "shopItemId": 40 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: Greedly's shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "entity": {"mapId": 526, "entityId": 0}, | ||
|  |         "shopItemId": 41 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: Greedly's shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "entity": {"mapId": 526, "entityId": 2}, | ||
|  |         "shopItemId": 42 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: Greedly's shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "entity": {"mapId": 526, "entityId": 3}, | ||
|  |         "shopItemId": 43 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route to Lake Shrine: Greedly's shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "route_lake_shrine", | ||
|  |         "entity": {"mapId": 526, "entityId": 4}, | ||
|  |         "shopItemId": 44 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Kazalt: Shop item #1", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "kazalt", | ||
|  |         "entity": {"mapId": 747, "entityId": 0}, | ||
|  |         "shopItemId": 45 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Kazalt: Shop item #2", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "kazalt", | ||
|  |         "entity": {"mapId": 747, "entityId": 2}, | ||
|  |         "shopItemId": 46 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Kazalt: Shop item #3", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "kazalt", | ||
|  |         "entity": {"mapId": 747, "entityId": 3}, | ||
|  |         "shopItemId": 47 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Kazalt: Shop item #4", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "kazalt", | ||
|  |         "entity": {"mapId": 747, "entityId": 4}, | ||
|  |         "shopItemId": 48 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Kazalt: Shop item #5", | ||
|  |         "type": "shop", | ||
|  |         "nodeId": "kazalt", | ||
|  |         "entity": {"mapId": 747, "entityId": 5}, | ||
|  |         "shopItemId": 49 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Massan: Elder reward after freeing Fara in Swamp Shrine", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "massan_after_swamp_shrine", | ||
|  |         "address": 162337, | ||
|  |         "flag": {"byte": "0x1004", "bit": 2}, | ||
|  |         "rewardId": 0 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Lake Shrine: Mir reward after beating Duke", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "lake_shrine", | ||
|  |         "address": 166463, | ||
|  |         "flag": {"byte": "0x1003", "bit": 0}, | ||
|  |         "rewardId": 1 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: Cutter reward for saving Einstein", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "greenmaze_cutter", | ||
|  |         "address": 166021, | ||
|  |         "flag": {"byte": "0x1024", "bit": 4}, | ||
|  |         "rewardId": 2 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mountainous Area: Zak reward after fighting", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "mountainous_area", | ||
|  |         "hints": [ | ||
|  |             "kept by a threatening guardian" | ||
|  |         ], | ||
|  |         "address": 166515, | ||
|  |         "flag": {"byte": "0x1027", "bit": 0}, | ||
|  |         "rewardId": 3 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Route between Gumi and Ryuma: Swordsman Kado reward", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "route_gumi_ryuma", | ||
|  |         "address": 166219, | ||
|  |         "flag": {"byte": "0x101B", "bit": 7}, | ||
|  |         "rewardId": 4 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Greenmaze: dwarf hidden in the trees", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "greenmaze_pre_whistle", | ||
|  |         "address": 166111, | ||
|  |         "flag": {"byte": "0x1022", "bit": 7}, | ||
|  |         "rewardId": 5 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Arthur reward (in castle throne room)", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "mercator", | ||
|  |         "address": 164191, | ||
|  |         "flag": {"byte": "0x101B", "bit": 6}, | ||
|  |         "rewardId": 6 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Mercator: Fahl's dojo challenge reward", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "mercator", | ||
|  |         "address": 165029, | ||
|  |         "flag": {"byte": "0x101C", "bit": 4}, | ||
|  |         "rewardId": 7 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Mayor's first reward", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "address": 164731, | ||
|  |         "flag": {"byte": "0x1004", "bit": 3}, | ||
|  |         "rewardId": 8 | ||
|  |     }, | ||
|  |     { | ||
|  |         "name": "Ryuma: Mayor's second reward", | ||
|  |         "type": "reward", | ||
|  |         "nodeId": "ryuma_after_thieves_hideout", | ||
|  |         "address": 164735, | ||
|  |         "flag": {"byte": "0x1004", "bit": 3}, | ||
|  |         "rewardId": 9 | ||
|  |     } | ||
|  | ] |