From 1fa176c81043a4ab51b73cdb8af92401e213177e Mon Sep 17 00:00:00 2001 From: Dennis Date: Wed, 23 Sep 2020 16:39:10 +0200 Subject: [PATCH 1/5] removed Gossip Stone map --- ootrando_overworldmap_hamsda/changelog.md | 4 + .../images/gossip_stone.png | Bin 2618 -> 0 bytes .../layouts/layouts.json | 20 - .../locations/overworld.json | 890 +----------------- ootrando_overworldmap_hamsda/maps/maps.json | 6 - 5 files changed, 16 insertions(+), 904 deletions(-) delete mode 100644 ootrando_overworldmap_hamsda/images/gossip_stone.png diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index ddde3e10..61c4f312 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -1,5 +1,9 @@ # Changelog +## x + +- removed Gossip Stone map + ## 2.9.6.0 - added Kakariko Gate and Complete Mask Quest settings diff --git a/ootrando_overworldmap_hamsda/images/gossip_stone.png b/ootrando_overworldmap_hamsda/images/gossip_stone.png deleted file mode 100644 index 89b320a731523b7a2acc6f0322f304007d97a837..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2618 zcmV-A3dQw_P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02p*dSaefwW^{L9 za%BK;VQFr3E^cLXAT%y9E;VFFSW*B039Cs&K~z{rwN_bBo97ix(#$03w9_<+qzp-4g=vp~l*s!0> zI&3ZD3)2Dg*ULXV@qfbR!2x^o!GUFUZ}VS{{Vg~TwsHG#2S-mHV#)2q=={yU-k2G` zH99?(W}KbRg6ve+PFTJ;akQzQFqa zHsWUh9aq;_1xEF)TJfyHVR{!HXIKUw#+C19Elx+s? z;~fl4T*vY03HF|R4EKZka2@VpV#$ipg&7Re20j`eMc4Hq6ltp3H$uGZkhV?-0fBDe0+$#mwpo`X0-KI*c(^|o#eG!YU4Ky0BA-}u~DdG$$iVBgHp96_p z+Qfu@J{Wq9srp_MCT>pRHue1AJF=ag;_>NYJpA+_j_=>Y+TAV8ZmeN?Wf@~OD@t@V zsA{Z3&pS9D%p~+5^`gD|8d^F# zVH_Q$N^D@3n7`BU9JixtqdG~m(cBYggc&+*CcK7nzt2ZGF0G#c8mL>yS#a$$7bjQomHs5_b= z&d-Fg-w1tAC$vrV$W`VcUJxJ7gnv2!yu9Le{-d_56G?J8=IwJh{CFR(V;8o5vjw}` zj*}-RFi)G&+Sv-RRElnroY^vot41RdB#9_jsZiUjgG3>RqOurDRS{ApX^l*Zr(2_ewZh<&Uj3iMKvAhqq%_TVQIN-kP#*L|Q#3c#QLA{@xpU1@P z1a6pbKvkoGluph`J2MKt!_H zAQ-FsR=6k=|94qZciD6gqT zR-O#CO?5E#bwf+4DXUdORZj{iEkQ(lJkDLbi1S`vQ%ssO@p5ss>YJXC0V2~)6luy4 z85fILI(7f_Bt~XtFk`VGT_Qo>^(#k4#*I6^+c6B5W3 z%aKH`=pPmgPd~rkGkMO2AUWwT{Ud|uF^>=lH_<;h2p=CGM8rlSGBygHo}NfZPC|>x zgz@QV6jWBiIM9s_a!yra4a9{qMDybC`WtT`fW-of&qHQT4)`gF^nT3Wm^5djs$P9B zF(nCBnuHeDGWsUQP_0#C%Y6qLjRuQWD^{EiOi@(^CvRYQ;s#8E0~lXepmq!)C?p7h z)bC5QX_kP8C~g7-L`*4piclmvV$z%qu1GK|D^h@$oQ&M6Qus!OAxoZxRZ@d($%b%t z44QjPXzT4lW2XTXWH{BdjNK-%iEN=!k%;HDnl+tWlJ4dt&a2_hl@nA%qKRPVFI>PyFE2z#M?;n`Lt&K)(bRKpVj|Ry4WKI-kuebgAtB$d*n|W= zljdxYTZJo%l;q*1=(#?CN|IJiNdcOS20CpcxO_fRsU=y(#SoFb?27a>j{Kp2rP>if;7Q(O3-GU1;MT}RtzIzuaXDJiJC)&@%RX1Vm4dQ8OA z*4IGS)&x~;1#^Z`B>>)+FXIDp&v!3ekTT()jW|9(J6@Rh-fIlk8s48mI$jp^NNfK13%TQ8N1$9F$`9vl{Sz-9~e?uW({UP!T;@r7&KfC1TR~r-({3V-ay`riT zx~?|5Wbnx0LXnXzri+Jy?gCtd#;|C5#vqy#O}5PW*6)h{pWZote&p5HU*|I6eiUB$ zg@;F&e`u&EzqGI@~07*qoM6N<$g0Se^&Hw-a diff --git a/ootrando_overworldmap_hamsda/layouts/layouts.json b/ootrando_overworldmap_hamsda/layouts/layouts.json index 775b15d0..210f682e 100644 --- a/ootrando_overworldmap_hamsda/layouts/layouts.json +++ b/ootrando_overworldmap_hamsda/layouts/layouts.json @@ -82,16 +82,6 @@ } ] } - }, - { - "title": "Gossip Stones", - "icon": "images/gossip_stone.png", - "content": { - "type": "map", - "maps": [ - "gossips" - ] - } } ] }, @@ -202,16 +192,6 @@ "adult" ] } - }, - { - "title": "Gossip Stones", - "icon": "images/gossip_stone.png", - "content": { - "type": "map", - "maps": [ - "gossips" - ] - } } ] } diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index 87ead9e8..014cf8f6 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -222,101 +222,10 @@ "y": 981 } ] - }, - { - "name": "Kokiri Forest Gossip Stone", - "short_name": "Kokiri Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2090, - "y": 845 - } - ] - }, - { - "name": "Kokiri Forest Storms Grotto Gossip Stone", - "short_name": "Kokiri Storms Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "ocarina,storm" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2120, - "y": 845 - } - ] - }, - { - "name": "Deku Tree Gossip Stone (Left)", - "short_name": "DT Gossip Stone (Left)", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2390, - "y": 830 } ] }, { - "name": "Deku Tree Gossip Stone (Right)", - "short_name": "DT Gossip Stone (Right)", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2490, - "y": 900 - } - ] - } - ] - }, - { "name": "Lost Woods", "children": [ { @@ -669,57 +578,10 @@ "y": 740 } ] - }, - { - "name": "Lost Woods Generic Grotto Gossip Stone", - "short_name": "Goron City Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2149, - "y": 776 } ] }, { - "name": "Lost Woods Gossip Stone", - "short_name": "LW Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2016, - "y": 927 - } - ] - } - ] - }, - { "name": "Sacred Forest Meadow", "children": [ { @@ -868,55 +730,10 @@ "y": 664 } ] - }, - { - "name": "Sacred Forest Meadow Maze Gossip Stones", - "short_name": "SFM Maze Gossip Stones", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "clear_as_group": false, - "item_count": 2 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2190, - "y": 685 } ] - }, - { - "name": "Sacred Forest Meadow Saria Gossip Stone", - "short_name": "SFM Saria Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2130, - "y": 635 } ] - } - ] - } - ] }, { "name": "Outside Forest", @@ -1223,104 +1040,6 @@ } ] }, - { - "name": "Field Near Lake Outside Fence Grotto Gossip Stone", - "short_name": "Grotto Outside Fence Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1206, - "y": 997 - } - ] - }, - { - "name": "Field West Castle Town Grotto Gossip Stone", - "short_name": "Grotto near Bridge Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1372, - "y": 440 - } - ] - }, - { - "name": "Remote Southern Grotto Gossip Stone", - "short_name": "Open Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1427, - "y": 925 - } - ] - }, - { - "name": "Field Valley Grotto Gossip Stone", - "short_name": "Field Valley Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$has_age|child,$has_explosives,dinsfire,magic", - "$has_age|adult,hammer,$has_fire" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 972, - "y": 658 - } - ] - }, { "name": "Lake Hylia", "color": "#0936a0", @@ -1684,74 +1403,6 @@ ] }, { - "name": "Lake Hylia Lab Gossip Stone", - "short_name": "LH Lab Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 900, - "y": 1190 - } - ] - }, - { - "name": "Lake Hylia Gossip Stone (Southeast)", - "short_name": "LH Gossip Stone (SE)", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1200, - "y": 1510 - } - ] - }, - { - "name": "Lake Hylia Gossip Stone (Southwest)", - "short_name": "LH Gossip Stone (SW)", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 780, - "y": 1415 - } - ] - } - ] - }, - { "name": "Lon Lon Ranch", "color": "#09a09d", "children": [ @@ -2614,28 +2265,6 @@ } ] }, - { - "name": "Kakariko Back Grotto Gossip Stone", - "short_name": "Back Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1865, - "y": 326 - } - ] - }, { "name": "Graveyard", "children": [ @@ -2904,43 +2533,18 @@ "y": 335 } ] - }, - { - "name": "Graveyard Gossip Stone", - "short_name": "Graveyard Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "ocarina,nocturne" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2144, - "y": 326 - } - ] - } - ] - } - ] - }, - { - "name": "Death Mountain", - "color": "#a01009", - "children": [ - { - "name": "Goron City", - "children": [ + } + ] + } + ] + }, + { + "name": "Death Mountain", + "color": "#a01009", + "children": [ + { + "name": "Goron City", + "children": [ { "name": "Goron City Maze Right", "short_name": "Boulder Maze Right", @@ -3217,62 +2821,10 @@ "y": 128 } ] - }, - { - "name": "Goron City Maze Gossip Stone", - "short_name": "GC Maze Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast", - "$has_age|adult,lift2" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1606, - "y": 98 } ] }, { - "name": "Goron City Medigoron Gossip Stone", - "short_name": "Medigoron Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast", - "lift1" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1655, - "y": 130 - } - ] - } - ] - }, - { "name": "Death Mountain Trail", "children": [ { @@ -3576,91 +3128,10 @@ "y": 285 } ] - }, - { - "name": "Mountain Storms Grotto Gossip Stone", - "short_name": "DMT Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "ocarina,storm" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1705, - "y": 158 } ] }, { - "name": "Death Mountain Trail Gossip Stone", - "short_name": "DMT Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast", - "$link_the_goron", - "ocarina,bolero,setting_plant_no,beans", - "ocarina,bolero,bean_crater_yes", - "ocarina,bolero,hoverboots", - "ocarina,bolero,hookshot" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1825, - "y": 94 - } - ] - }, - { - "name": "Dodongos Cavern Gossip Stone", - "short_name": "DC Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast", - "lift1" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1684, - "y": 220 - } - ] - } - ] - }, - { "name": "Death Mountain Crater", "children": [ { @@ -3910,60 +3381,10 @@ "y": 66 } ] - }, - { - "name": "Top of Crater Grotto Gossip Stone", - "short_name": "DMC Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$can_blast" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1798, - "y": 42 } ] - }, - { - "name": "Death Mountain Crater Gossip Stone", - "short_name": "DMC Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$has_explosives" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1840, - "y": 42 } ] - } - ] - } - ] }, { "name": "Hyrule Town", @@ -4307,28 +3728,6 @@ "y": 390 } ] - }, - { - "name": "Temple of Time Gossip Stones", - "short_name": "ToT Gossip Stones", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 4 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1539, - "y": 294 - } - ] } ] }, @@ -4479,75 +3878,6 @@ "y": 206 } ] - }, - { - "name": "Hyrule Castle Malon Gossip Stone", - "short_name": "HC Malon Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1439, - "y": 246 - } - ] - }, - { - "name": "Hyrule Castle Rock Wall Gossip Stone", - "short_name": "HC Wall Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1380, - "y": 216 - } - ] - }, - { - "name": "Castle Storms Grotto Gossip Stone", - "short_name": "HC Storms Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "ocarina,storm,$has_explosives" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 1479, - "y": 206 - } - ] } ] }, @@ -4899,87 +4229,6 @@ "y": 465 } ] - }, - { - "name": "Zora River Plateau Open Grotto Gossip Stone", - "short_name": "Plateau Grotto Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$has_age|adult", - "$has_age|child,$has_explosives", - "$has_age|child,scale1" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2092, - "y": 540 - } - ] - }, - { - "name": "Zoras River Plateau Gossip Stone", - "short_name": "ZR Plateau Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$has_age|adult", - "$has_age|child,$has_explosives", - "$has_age|child,scale1" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2094, - "y": 481 - } - ] - }, - { - "name": "Zoras River Waterfall Gossip Stone", - "short_name": "ZR Waterfall Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$has_age|adult", - "$has_age|child,$has_explosives", - "$has_age|child,scale1" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2360, - "y": 458 - } - ] } ] }, @@ -5048,28 +4297,6 @@ "y": 367 } ] - }, - { - "name": "Zoras Domain Gossip Stone", - "short_name": "ZD Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2624, - "y": 367 - } - ] } ] }, @@ -5365,52 +4592,6 @@ "y": 350 } ] - }, - { - "name": "Zoras Fountain Fairy Gossip Stone", - "short_name": "ZF Fairy Gossip Stone", - "access_rules": [ - "$hintable,$child_fountain", - "$hintable,$adult_fountain" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2553, - "y": 333 - } - ] - }, - { - "name": "Zoras Fountain Jabu Gossip Stone", - "short_name": "ZF Jabu Gossip Stone", - "access_rules": [ - "$hintable,$child_fountain", - "$hintable,$adult_fountain" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 2458, - "y": 298 - } - ] } ] } @@ -5558,28 +4739,6 @@ "y": 600 } ] - }, - { - "name": "Gerudo Valley Gossip Stone", - "short_name": "GV Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 682, - "y": 555 - } - ] } ] }, @@ -6108,31 +5267,6 @@ "y": 322 } ] - }, - { - "name": "Desert Colossus Gossip Stone", - "short_name": "Colossus Gossip Stone", - "access_rules": [ - "$hintable" - ], - "sections": [ - { - "name": "Check it", - "access_rules": [ - "$adult_colossus" - ], - "chest_unopened_img": "images/gossip_stone.png", - "chest_opened_img": "images/gossip_stone.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "gossips", - "x": 50, - "y": 360 - } - ] } ] } diff --git a/ootrando_overworldmap_hamsda/maps/maps.json b/ootrando_overworldmap_hamsda/maps/maps.json index a8284ff6..04c60260 100644 --- a/ootrando_overworldmap_hamsda/maps/maps.json +++ b/ootrando_overworldmap_hamsda/maps/maps.json @@ -10,11 +10,5 @@ "location_size": 35, "location_border_thickness": 5, "img": "images/overworld_map.png" - }, - { - "name": "gossips", - "location_size": 35, - "location_border_thickness": 5, - "img": "images/overworld_map.png" } ] \ No newline at end of file From 6baed6ee419eba76d9e495b644fdabf2c2a6dd52 Mon Sep 17 00:00:00 2001 From: Dennis Date: Wed, 23 Sep 2020 16:48:17 +0200 Subject: [PATCH 2/5] changed names of most locations --- ootrando_overworldmap_hamsda/changelog.md | 1 + .../locations/dung_mq.json | 201 +-- .../locations/dung_reg.json | 214 ++-- .../locations/overworld.json | 1096 ++++++++--------- .../locations/overworld_entrance.json | 356 +++--- .../scripts/logic.lua | 37 +- .../scripts/update.lua | 300 ++--- .../scripts/update_entrance.lua | 1 + 8 files changed, 1115 insertions(+), 1091 deletions(-) diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index 61c4f312..a496d406 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -3,6 +3,7 @@ ## x - removed Gossip Stone map +- changed names of most locations based on [this PR](https://github.com/TestRunnerSRL/OoT-Randomizer/pull/1021) ## 2.9.6.0 diff --git a/ootrando_overworldmap_hamsda/locations/dung_mq.json b/ootrando_overworldmap_hamsda/locations/dung_mq.json index f26b4ce1..a4d57e0e 100644 --- a/ootrando_overworldmap_hamsda/locations/dung_mq.json +++ b/ootrando_overworldmap_hamsda/locations/dung_mq.json @@ -55,14 +55,14 @@ "item_count": 1 }, { - "name": "Lobby Chest", + "name": "Map Chest", "short_name": "Map", "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 }, { - "name": "GS8 - Lobby", - "short_name": "Map", + "name": "GS Lobby", + "short_name": "Lobby", "access_rules": [ "$can_child_attack" ], @@ -82,7 +82,7 @@ "item_count": 1 }, { - "name": "Slingshot Room Back", + "name": "Slingshot Room Back Chest", "short_name": "Slingshot Back", "access_rules": [ "sticks", @@ -100,7 +100,7 @@ "item_count": 1 }, { - "name": "GS9 - Compass Room", + "name": "GS Compass Room", "short_name": "Compass", "access_rules": [ "@Deku Tree MQ/Compass Room,boomerang,bombs,ocarina,time", @@ -117,7 +117,8 @@ "item_count": 1 }, { - "name": "Basement", + "name": "Basement Chest", + "short_name": "Basement", "access_rules": [ "sticks", "dinsfire,magic" @@ -143,7 +144,7 @@ "item_count": 1 }, { - "name": "GS10 - Basement Ceiling", + "name": "GS Basement Graves Room", "short_name": "Ceiling", "access_rules": [ "@Deku Tree MQ/Basement Back Room,boomerang,ocarina,time", @@ -159,7 +160,7 @@ "item_count": 1 }, { - "name": "GS11 - Basement Back Room", + "name": "GS Basement Back Room", "short_name": "Back Room", "access_rules": [ "@Deku Tree MQ/Basement Back Room,sticks,boomerang", @@ -176,8 +177,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Shield", - "short_name": "Basement", + "name": "Deku Scrub", "access_rules": [ "@Deku Tree MQ/Basement Ledge,nuts", "@Deku Tree MQ/Basement Ledge,shield1", @@ -290,7 +290,7 @@ "item_count": 1 }, { - "name": "GS41 - Scrub Room", + "name": "GS Scrub Room", "short_name": "Scrub", "access_rules": [ "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,boomerang,lift1", @@ -315,7 +315,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Red Potion", + "name": "Deku Scrub Side Room Near Lower Lizalfos", "short_name": "East Side", "access_rules": [ "@Dodongos Cavern MQ/Lower Right Side,$can_stun_deku" @@ -341,7 +341,7 @@ "item_count": 1 }, { - "name": "GS40 - Lizalfos Room", + "name": "GS Lizalfos Room", "short_name": "Lizalfos", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_blast" @@ -354,8 +354,8 @@ "item_count": 1 }, { - "name": "Larva Room Chest", - "short_name": "Larva", + "name": "Larvae Room Chest", + "short_name": "Larvae", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$has_fire", "@Dodongos Cavern MQ/Lobby,$has_age|child,sticks,$has_explosives", @@ -364,10 +364,10 @@ "item_count": 1 }, { - "name": "GS39 - Larva Room", - "short_name": "Larva", + "name": "GS Larvae Room", + "short_name": "Larvae", "access_rules": [ - "@Dodongos Cavern MQ/Larva Room Chest" + "@Dodongos Cavern MQ/Larvae Room Chest" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -388,7 +388,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Shield", + "name": "Deku Scrub Staircase", "short_name": "Above Stairs", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_stun_deku" @@ -401,7 +401,7 @@ "item_count": 1 }, { - "name": "GS38 - Song of Time Block Room", + "name": "GS Song of Time Block Room", "short_name": "Song of Time", "access_rules": [ "@Dodongos Cavern MQ/Lobby,ocarina,time,$can_child_attack", @@ -415,8 +415,8 @@ "item_count": 1 }, { - "name": "Deku Sticks / Deku Seeds", - "short_name": "Main Room", + "name": "Deku Scrubs Lobby", + "short_name": "Lobby", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_stun_deku" ], @@ -429,7 +429,7 @@ "item_count": 2 }, { - "name": "GS42 - Back Area", + "name": "GS Back Area", "short_name": "Back Area", "access_rules": [ "@Dodongos Cavern MQ/Boss Area" @@ -442,14 +442,16 @@ "item_count": 1 }, { - "name": "Under Grave", + "name": "Under Grave Chest", + "short_name": "Under Grave", "access_rules": [ "@Dodongos Cavern MQ/Boss Area" ], "item_count": 1 }, { - "name": "Above Boss", + "name": "Boss Room Chest", + "short_name": "Boss Room", "access_rules": [ "@Dodongos Cavern MQ/Boss Area" ], @@ -542,8 +544,8 @@ "item_count": 1 }, { - "name": "Entry Side Chest", - "short_name": "Entry", + "name": "First Room Side Chest", + "short_name": "First Room", "access_rules": [ "sling" ], @@ -583,7 +585,7 @@ "item_count": 2 }, { - "name": "GS51 - Boomerang Room", + "name": "GS Boomerang Chest Room", "short_name": "Boomerang", "access_rules": [ "@Jabu Jabus Belly MQ/Main,ocarina,time", @@ -605,7 +607,7 @@ "item_count": 1 }, { - "name": "GS52 - Tailpasaran Room", + "name": "GS Tailpasaran Room", "short_name": "Tailpasaran", "access_rules": [ "@Jabu Jabus Belly MQ/Depths,sticks", @@ -619,7 +621,7 @@ "item_count": 1 }, { - "name": "GS53 - Invisible Enemies Room", + "name": "GS Invisible Enemies Room", "short_name": "Invis Enemies", "access_rules": [ "@Jabu Jabus Belly MQ/Depths,[logic_lens_jabu_mq]", @@ -655,7 +657,7 @@ "item_count": 1 }, { - "name": "GS54 - Near Boss", + "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ "@Jabu Jabus Belly MQ/Boss Area" @@ -718,7 +720,7 @@ "item_count": 1 }, { - "name": "Freestanding HP", + "name": "Freestanding PoH", "short_name": "Frozen HP", "access_rules": [ "$has_explosives", @@ -730,7 +732,7 @@ "item_count": 1 }, { - "name": "GS70 - Red Ice", + "name": "GS Red Ice", "short_name": "Red Ice", "access_rules": [ "ocarina,time" @@ -743,7 +745,7 @@ "item_count": 1 }, { - "name": "GS71 - Scarecrow", + "name": "GS Scarecrow", "short_name": "Scarecrow", "access_rules": [ "hookshot,ocarina,scarecrow", @@ -758,7 +760,7 @@ "item_count": 1 }, { - "name": "GS72 - Ice Block", + "name": "GS Ice Block", "short_name": "Ice Block", "visibility_rules": [ "setting_tokens_dungeons" @@ -774,7 +776,7 @@ }, { "name": "Sheik in Ice Cavern", - "short_name": "Sheik", + "short_name": "Song", "access_rules": [ "$has_bottle", "{$hintable}" @@ -925,7 +927,7 @@ "item_count": 1 }, { - "name": "First Chest", + "name": "First Room Chest", "short_name": "Tree", "access_rules": [ "$has_age|adult" @@ -934,7 +936,7 @@ "item_count": 1 }, { - "name": "GS60 - First Hallway", + "name": "GS First Hallway", "short_name": "First Hallway", "access_rules": [ "$has_age|adult,hookshot" @@ -947,7 +949,7 @@ "item_count": 1 }, { - "name": "Chest Behind Lobby", + "name": "Wolfos Chest", "short_name": "Wolfos", "access_rules": [ "@Forest Temple MQ/Central Area,ocarina,time", @@ -957,7 +959,7 @@ "item_count": 1 }, { - "name": "GS63 - Outdoor East", + "name": "GS Raised Island Courtyard", "short_name": "Outdoor East", "access_rules": [ "@Forest Temple MQ/NE Outdoors,hookshot" @@ -970,7 +972,7 @@ "item_count": 1 }, { - "name": "NE Outdoors Upper Chest", + "name": "Raised Island Courtyard Upper Chest", "short_name": "Balcony", "access_rules": [ "@Forest Temple MQ/Outdoors Top Ledges" @@ -988,7 +990,7 @@ "item_count": 1 }, { - "name": "GS64 - Well", + "name": "GS Well", "short_name": "Well", "access_rules": [ "@Forest Temple MQ/NE Outdoors,ironboots,hookshot", @@ -1002,7 +1004,7 @@ "item_count": 1 }, { - "name": "GS62 - Outdoor West", + "name": "GS Level Island Courtyard", "short_name": "Outdoor West", "access_rules": [ "@Forest Temple MQ/NW Outdoors" @@ -1015,7 +1017,7 @@ "item_count": 1 }, { - "name": "GS61 - Block Push Room", + "name": "GS Block Push Room", "short_name": "Block Push", "access_rules": [ "@Forest Temple MQ/Central Area" @@ -1073,7 +1075,7 @@ "item_count": 1 }, { - "name": "Falling Room Chest", + "name": "Falling Ceiling Room Chest", "short_name": "Checkerboard", "access_rules": [ "@Forest Temple MQ/Falling Room" @@ -1081,7 +1083,7 @@ "item_count": 1 }, { - "name": "NE Outdoors Lower Chest", + "name": "Raised Island Courtyard Lower Chest", "short_name": "Island", "access_rules": [ "@Forest Temple MQ/NE Outdoors Ledge" @@ -1090,7 +1092,7 @@ "item_count": 1 }, { - "name": "Near Boss Chest", + "name": "Basement Chest", "short_name": "Basement", "access_rules": [ "@Forest Temple MQ/Boss Region" @@ -1194,7 +1196,7 @@ "item_count": 1 }, { - "name": "Chest Near Boss", + "name": "Near Boss Chest", "short_name": "Near Boss", "access_rules": [ "$FTR_or_goron,$has_fire,hoverboots", @@ -1209,7 +1211,7 @@ "item_count": 1 }, { - "name": "Entrance Hallway Small Chest", + "name": "Map Room Side Chest", "short_name": "Like Like", "access_rules": [ "$has_age|adult" @@ -1234,7 +1236,7 @@ "item_count": 1 }, { - "name": "Big Lava Room Bombable Chest", + "name": "Big Lava Room Blocked Door Chest", "short_name": "Lava Room Bombable", "access_rules": [ "@Fire Temple MQ/Big Lava Room,$has_fire,$has_explosives,hookshot", @@ -1256,7 +1258,7 @@ "item_count": 1 }, { - "name": "GS65 - Big Lava Room", + "name": "GS Big Lava Room Open Door", "short_name": "Lava Room", "access_rules": [ "@Fire Temple MQ/Big Lava Room" @@ -1269,7 +1271,7 @@ "item_count": 1 }, { - "name": "Maze Lower Chest", + "name": "Lizalfos Maze Lower Chest", "short_name": "Maze Lower", "access_rules": [ "@Fire Temple MQ/Lower Maze" @@ -1277,7 +1279,7 @@ "item_count": 1 }, { - "name": "Maze Side Room", + "name": "Lizalfos Maze Side Room Chest", "short_name": "Maze Side", "access_rules": [ "@Fire Temple MQ/Lower Maze,$has_explosives,[logic_fire_mq_maze_side_room]", @@ -1287,7 +1289,7 @@ "item_count": 1 }, { - "name": "Maze Upper Chest", + "name": "Lizalfos Maze Upper Chest", "short_name": "Maze Upper", "access_rules": [ "@Fire Temple MQ/Upper Maze" @@ -1304,7 +1306,7 @@ "item_count": 1 }, { - "name": "GS66 - East Tower Top", + "name": "GS Skull On Fire", "short_name": "East Tower Top", "access_rules": [ "@Fire Temple MQ/Upper Maze,ocarina,time", @@ -1318,7 +1320,7 @@ "item_count": 1 }, { - "name": "GS67 - Fire Wall Maze Side Room", + "name": "GS Fire Wall Maze Side Room", "short_name": "Fire Maze Side", "access_rules": [ "@Fire Temple MQ/West Top,ocarina,time", @@ -1333,7 +1335,7 @@ "item_count": 1 }, { - "name": "GS69 - Fire Wall Maze Center", + "name": "GS Fire Wall Maze Center", "short_name": "Fire Maze Center", "access_rules": [ "@Fire Temple MQ/West Top,$has_explosives" @@ -1356,7 +1358,7 @@ "item_count": 1 }, { - "name": "West Tower Top Chest", + "name": "Chest On Fire", "short_name": "West Tower Top", "access_rules": [ "@Fire Temple MQ/West Top,fire_small_keys:3,[fire_small_keys:4]", @@ -1367,7 +1369,7 @@ "item_count": 1 }, { - "name": "GS68 - Above Fire Wall Maze", + "name": "GS Above Fire Wall Maze", "short_name": "Above Fire Maze", "access_rules": [ "@Fire Temple MQ/West Top,fire_small_keys:4,[fire_small_keys:5]", @@ -1481,7 +1483,7 @@ "item_count": 1 }, { - "name": "GS76 - Lizalfos Hallway", + "name": "GS Lizalfos Hallway", "short_name": "Lizalfos", "access_rules": [ "@Water Temple MQ/Lowered Water Levels,dinsfire,magic" @@ -1494,7 +1496,7 @@ "item_count": 1 }, { - "name": "GS77 - Before Upper Water Switch", + "name": "GS Before Upper Water Switch", "short_name": "Before Upper Water Switch", "access_rules": [ "@Water Temple MQ/Lowered Water Levels,longshot" @@ -1508,7 +1510,7 @@ }, { "name": "Central Pillar Chest", - "short_name": "Basement", + "short_name": "Central Pillar", "access_rules": [ "@Water Temple MQ/Dive,[bluetunic],hookshot,bow,firearrow,magic", "@Water Temple MQ/Dive,[bluetunic],hookshot,dinsfire,magic,ocarina,time" @@ -1517,7 +1519,7 @@ "item_count": 1 }, { - "name": "GS75 - Serpent River", + "name": "GS River", "short_name": "River", "access_rules": [ "@Water Temple MQ/Dark Link Region" @@ -1556,7 +1558,7 @@ "item_count": 1 }, { - "name": "GS74 - North Basement", + "name": "GS Freestanding Key Area", "short_name": "North Basement", "access_rules": [ "@Water Temple MQ/Basement Gated Areas,water_small_keys:2,hoverboots", @@ -1573,7 +1575,7 @@ "item_count": 1 }, { - "name": "GS73 - South Basement", + "name": "GS Triple Wall Torch", "short_name": "South Basement", "access_rules": [ "@Water Temple MQ/Basement Gated Areas,bow,firearrow,magic,hoverboots", @@ -1774,7 +1776,7 @@ "item_count": 1 }, { - "name": "GS81 - Crusher Room", + "name": "GS Falling Spikes Room", "short_name": "Crusher", "access_rules": [ "@Shadow Temple MQ/Lower Huge Pit,hookshot", @@ -1828,7 +1830,7 @@ "item_count": 1 }, { - "name": "GS82 - Wind Hint Room", + "name": "GS Wind Hint Room", "short_name": "Wind Hint", "access_rules": [ "@Shadow Temple MQ/Wind Tunnel" @@ -1849,7 +1851,7 @@ "item_count": 2 }, { - "name": "GS83 - After Wind", + "name": "GS After Wind", "short_name": "After Wind", "access_rules": [ "@Shadow Temple MQ/Wind Tunnel" @@ -1862,7 +1864,7 @@ "item_count": 1 }, { - "name": "GS84 - After Ship", + "name": "GS After Ship", "short_name": "After Ship", "access_rules": [ "@Shadow Temple MQ/Beyond Boat" @@ -1913,7 +1915,7 @@ "item_count": 1 }, { - "name": "GS85 - Near Boss", + "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ "@Shadow Temple MQ/Beyond Boat,bow", @@ -2061,7 +2063,7 @@ "item_count": 1 }, { - "name": "Child Left Chest", + "name": "Map Room Enemy Chest", "short_name": "Child Left", "access_rules": [ "@Spirit Temple MQ/Child,$has_bombchus,sling,dinsfire,magic,sticks", @@ -2082,8 +2084,8 @@ "item_count": 1 }, { - "name": "Child Center Chest", - "short_name": "Child Center", + "name": "Child Hammer Switch Chest", + "short_name": "Hammer Switch", "access_rules": [ "@Spirit Temple MQ/Child,@Spirit Temple MQ/Adult,spirit_small_keys:2,[spirit_small_keys:7],hammer", "{$hintable}" @@ -2124,7 +2126,7 @@ "item_count": 1 }, { - "name": "GS96 - Sun Block Room", + "name": "GS Sun Block Room", "short_name": "Sun Block", "access_rules": [ "@Spirit Temple MQ/Shared,[logic_spirit_mq_sun_block_gs],ocarina,time,boomerang", @@ -2166,7 +2168,7 @@ "item_count": 1 }, { - "name": "Lower NE Main Room Chest", + "name": "Statue Room Lullaby Chest", "short_name": "Statue Boxes", "access_rules": [ "@Spirit Temple MQ/Adult,ocarina,lullaby" @@ -2174,7 +2176,7 @@ "item_count": 1 }, { - "name": "Upper NE Main Room Chest", + "name": "Statue Room Invisible Chest", "short_name": "Statue Ledge", "access_rules": [ "@Spirit Temple MQ/Adult,[logic_lens_spirit_mq]", @@ -2183,16 +2185,16 @@ "item_count": 1 }, { - "name": "Lower Adult Left Chest", - "short_name": "Adult Left", + "name": "Leever Room Chest", + "short_name": "Leever", "access_rules": [ "@Spirit Temple MQ/Lower Adult" ], "item_count": 1 }, { - "name": "GS97 - Lower Adult Left", - "short_name": "Adult Left", + "name": "GS Leever Room", + "short_name": "Leever", "access_rules": [ "@Spirit Temple MQ/Lower Adult" ], @@ -2204,8 +2206,8 @@ "item_count": 1 }, { - "name": "Lower Adult Right Chest", - "short_name": "Adult Right", + "name": "Symphony Room Chest", + "short_name": "Symphony", "access_rules": [ "@Spirit Temple MQ/Lower Adult,spirit_small_keys:1,[spirit_small_keys:7],hammer,ocarina,time,epona,sun,storm,lullaby", "{$hintable}" @@ -2214,8 +2216,8 @@ "item_count": 1 }, { - "name": "GS98 - Lower Adult Right", - "short_name": "Adult Right", + "name": "GS Symphony Room", + "short_name": "Symphony", "access_rules": [ "@Spirit Temple MQ/Lower Adult,spirit_small_keys:1,[spirit_small_keys:7],hammer,ocarina,time,epona,sun,storm,lullaby", "{$hintable}" @@ -2246,8 +2248,8 @@ "item_count": 1 }, { - "name": "Ice Trap Chest", - "short_name": "Ice Trap", + "name": "Chest Switch Chest", + "short_name": "Chest Switch", "access_rules": [ "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time" ], @@ -2273,7 +2275,7 @@ "item_count": 1 }, { - "name": "GS99 - Iron Knuckle North", + "name": "GS Nine Thrones Room North", "short_name": "Iron Knuckle 1", "access_rules": [ "@Spirit Temple MQ/Adult,spirit_small_keys:3,[spirit_small_keys:7]" @@ -2286,7 +2288,7 @@ "item_count": 1 }, { - "name": "GS100 - Iron Knuckle West", + "name": "GS Nine Thrones Room West", "short_name": "Iron Knuckle 2", "access_rules": [ "@Spirit Temple MQ/Adult,spirit_small_keys:3,[spirit_small_keys:7]" @@ -2358,7 +2360,7 @@ "item_count": 1 }, { - "name": "GS78 - West Inner Room", + "name": "GS West Inner Room", "short_name": "West Inner", "access_rules": [ "$can_child_attack,ocarina,lullaby", @@ -2373,7 +2375,7 @@ }, { "name": "East Inner Room Freestanding Key", - "short_name": "Inner Key", + "short_name": "East Inner", "access_rules": [ "$has_explosives", "ocarina,lullaby" @@ -2406,7 +2408,7 @@ "item_count": 1 }, { - "name": "Lens Chest", + "name": "Lens of Truth Chest", "short_name": "Lens", "access_rules": [ "$has_explosives,botw_small_keys:1,[botw_small_keys:2]" @@ -2414,7 +2416,7 @@ "item_count": 1 }, { - "name": "GS79 - Basement", + "name": "GS Basement", "short_name": "Basement", "access_rules": [ "$can_child_attack" @@ -2427,7 +2429,7 @@ "item_count": 1 }, { - "name": "GS80 - Coffin Room", + "name": "GS Coffin Room", "short_name": "Coffin", "access_rules": [ "$can_child_attack,botw_small_keys:1,[botw_small_keys:2]" @@ -2477,7 +2479,7 @@ "item_count": 1 }, { - "name": "Forest Trial First Chest", + "name": "Forest Trial Eye Switch Chest", "short_name": "Forest Trial 1", "access_rules": [ "bow" @@ -2485,7 +2487,7 @@ "item_count": 1 }, { - "name": "Forest Trial Second Chest", + "name": "Forest Trial Frozen Eye Switch Chest", "short_name": "Forest Trial 2", "access_rules": [ "$has_fire" @@ -2523,7 +2525,7 @@ "hosted_item": "trial_water" }, { - "name": "Shadow Trial First Chest", + "name": "Shadow Trial Bomb Flower Chest", "short_name": "Shadow Trial 1", "access_rules": [ "bow,hookshot", @@ -2538,7 +2540,7 @@ "item_count": 1 }, { - "name": "Shadow Trial Second Chest", + "name": "Shadow Trial Eye Switch Chest", "short_name": "Shadow Trial 2", "access_rules": [ "bow,[logic_lens_castle_mq],hoverboots", @@ -2611,7 +2613,7 @@ "item_count": 1 }, { - "name": "Spirit Trial Second Chest", + "name": "Spirit Trial Invisible Chest", "short_name": "Spirit Trial 2", "access_rules": [ "@Ganons Castle MQ/Spirit Trial First Chest,$has_bombchus,[logic_lens_castle_mq]", @@ -2654,7 +2656,8 @@ "item_count": 5 }, { - "name": "Castle Tower", + "name": "Ganons Tower Boss Key Chest", + "short_name": "Boss Key", "access_rules": [ "$trials_barrier_dispelled" ], diff --git a/ootrando_overworldmap_hamsda/locations/dung_reg.json b/ootrando_overworldmap_hamsda/locations/dung_reg.json index 97ae51b3..74414b42 100644 --- a/ootrando_overworldmap_hamsda/locations/dung_reg.json +++ b/ootrando_overworldmap_hamsda/locations/dung_reg.json @@ -8,13 +8,13 @@ ], "sections": [ { - "name": "Lobby Chest", + "name": "Map Chest", "short_name": "Map", "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 }, { - "name": "Slingshot Room", + "name": "Slingshot Room Chests", "short_name": "Slingshot", "access_rules": [ "shield1" @@ -22,13 +22,13 @@ "item_count": 2 }, { - "name": "Compass Room", + "name": "Compass Room Chests", "short_name": "Compass", "chest_unopened_img": "images/chest_brown_compass.png", "item_count": 2 }, { - "name": "GS8 - Compass Room", + "name": "GS Compass Room", "short_name": "Compass", "access_rules": [ "$can_child_attack" @@ -50,7 +50,7 @@ "item_count": 1 }, { - "name": "GS9 - Basement Vines", + "name": "GS Basement Vines", "short_name": "Vines", "access_rules": [ "sling", @@ -68,7 +68,7 @@ "item_count": 1 }, { - "name": "GS10 - Basement Gate", + "name": "GS Basement Gate", "short_name": "Gate", "access_rules": [ "$can_child_attack" @@ -81,7 +81,7 @@ "item_count": 1 }, { - "name": "GS11 - Basement Back Room", + "name": "GS Basement Back Room", "short_name": "Back Room", "access_rules": [ "$has_explosives,boomerang,sticks,sling", @@ -195,7 +195,7 @@ "item_count": 1 }, { - "name": "GS38 - East Side Room", + "name": "GS Side Room Near Lower Lizalfos", "short_name": "East Side", "access_rules": [ "@Dodongos Cavern/Lobby,$has_explosives", @@ -213,7 +213,7 @@ "item_count": 1 }, { - "name": "GS42 - Scarecrow", + "name": "GS Scarecrow", "short_name": "Scarecrow", "access_rules": [ "@Dodongos Cavern/Lobby,$has_age|adult,ocarina,scarecrow,hookshot", @@ -230,7 +230,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Sticks", + "name": "Deku Scrub Side Room Near Dodongos", "short_name": "East Side", "access_rules": [ "@Dodongos Cavern/Lobby,$has_age|adult", @@ -256,7 +256,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Shield", + "name": "Deku Scrub Lobby", "short_name": "Lobby", "access_rules": [ "@Dodongos Cavern/Lobby" @@ -282,7 +282,7 @@ "item_count": 1 }, { - "name": "GS41 - Alcove Above Stairs", + "name": "GS Alcove Above Stairs", "short_name": "Above Stairs", "access_rules": [ "@Dodongos Cavern/Far Bridge,$has_age|child,boomerang,$has_explosives", @@ -303,7 +303,7 @@ "item_count": 1 }, { - "name": "GS39 - Vines Above Stairs", + "name": "GS Vines Above Stairs", "short_name": "Vines", "access_rules": [ "@Dodongos Cavern/Climb" @@ -316,7 +316,7 @@ "item_count": 1 }, { - "name": "Bomb Flower Platform", + "name": "Bomb Flower Platform Chest", "short_name": "Bomb Flower", "access_rules": [ "@Dodongos Cavern/Climb" @@ -324,8 +324,8 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Seeds / Deku Nuts", - "short_name": "Near Bombs", + "name": "Deku Scrubs Near Bomb Bag", + "short_name": "Near Bomb Bag", "access_rules": [ "@Dodongos Cavern/Climb,$can_blast" ], @@ -354,7 +354,7 @@ "item_count": 1 }, { - "name": "GS40 - Back Room", + "name": "GS Back Room", "short_name": "Back Room", "access_rules": [ "@Dodongos Cavern/Boss Area" @@ -367,8 +367,8 @@ "item_count": 1 }, { - "name": "Chest Above King Dodongo", - "short_name": "Above Boss", + "name": "Boss Room Chest", + "short_name": "Boss Room", "access_rules": [ "@Dodongos Cavern/Boss Area" ], @@ -454,7 +454,7 @@ "item_count": 1 }, { - "name": "GS51 - Water Switch Room", + "name": "GS Water Switch Room", "short_name": "Water Switch", "access_rules": [ "@Jabu Jabus Belly/Main" @@ -467,8 +467,7 @@ "item_count": 1 }, { - "name": "Deku Nuts", - "short_name": "B1 Dive", + "name": "Deku Scrub", "access_rules": [ "@Jabu Jabus Belly/Main" ], @@ -506,7 +505,7 @@ "item_count": 1 }, { - "name": "GS52 - Lobby Basement Lower", + "name": "GS Lobby Basement Lower", "short_name": "Basement 1", "access_rules": [ "@Jabu Jabus Belly/Main,boomerang", @@ -522,7 +521,7 @@ "item_count": 1 }, { - "name": "GS53 - Lobby Basement Upper", + "name": "GS Lobby Basement Upper", "short_name": "Basement 2", "access_rules": [ "@Jabu Jabus Belly/Main,boomerang", @@ -538,7 +537,7 @@ "item_count": 1 }, { - "name": "GS54 - Near Boss", + "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ "@Jabu Jabus Belly/Boss Area" @@ -581,7 +580,7 @@ ], "sections": [ { - "name": "GS71 - Spinning Scythe Room", + "name": "GS Spinning Scythe Room", "short_name": "Spinning Scythe", "access_rules": [ "hookshot", @@ -616,7 +615,7 @@ "item_count": 1 }, { - "name": "GS70 - Heart Piece Room", + "name": "GS Heart Piece Room", "short_name": "Compass", "access_rules": [ "hookshot", @@ -632,7 +631,7 @@ "item_count": 1 }, { - "name": "GS72 - Push Block Room", + "name": "GS Push Block Room", "short_name": "Push Block", "access_rules": [ "hookshot", @@ -654,7 +653,7 @@ }, { "name": "Sheik in Ice Cavern", - "short_name": "Sheik", + "short_name": "Song", "access_rules": [ "$has_bottle", "{$hintable}" @@ -795,7 +794,7 @@ "item_count": 1 }, { - "name": "GS60 - First Room", + "name": "GS First Room", "short_name": "First Room", "access_rules": [ "dinsfire,magic", @@ -811,13 +810,13 @@ "item_count": 1 }, { - "name": "First Chest", + "name": "First Room Chest", "short_name": "Tree", "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 1 }, { - "name": "GS61 - Lobby", + "name": "GS Lobby", "short_name": "Lobby", "access_rules": [ "$has_age|adult,hookshot" @@ -830,7 +829,7 @@ "item_count": 1 }, { - "name": "Chest Behind Lobby", + "name": "First Stalfos Chest", "short_name": "Stalfos", "access_rules": [ "$has_age|adult" @@ -839,7 +838,7 @@ "item_count": 1 }, { - "name": "Outside Hookshot Chest", + "name": "Raised Island Courtyard Chest", "short_name": "Island", "access_rules": [ "@Forest Temple/NE Outdoors,hookshot", @@ -849,8 +848,8 @@ "item_count": 1 }, { - "name": "GS62 - Outdoor East", - "short_name": "Outdoor East", + "name": "GS Raised Island Courtyard", + "short_name": "Island", "access_rules": [ "@Forest Temple/NE Outdoors,hookshot", "@Forest Temple/Falling Room,$has_age|adult,bow", @@ -883,7 +882,7 @@ "item_count": 1 }, { - "name": "GS63 - Outdoor West", + "name": "GS Level Island Courtyard", "short_name": "Outdoor West", "access_rules": [ "@Forest Temple/NW Outdoors,longshot", @@ -899,7 +898,7 @@ "item_count": 1 }, { - "name": "Block Push Chest", + "name": "Eye Switch Chest", "short_name": "Block Push", "access_rules": [ "@Forest Temple/Block Push Room,lift1,$has_age|adult,bow" @@ -954,7 +953,7 @@ "item_count": 1 }, { - "name": "Falling Room Chest", + "name": "Falling Ceiling Room Chest", "short_name": "Checkerboard", "access_rules": [ "@Forest Temple/Falling Room" @@ -962,7 +961,7 @@ "item_count": 1 }, { - "name": "Near Boss Chest", + "name": "Basement Chest", "short_name": "Basement", "access_rules": [ "@Forest Temple/Boss Region" @@ -970,7 +969,7 @@ "item_count": 1 }, { - "name": "GS64 - Basement", + "name": "GS Basement", "short_name": "Basement", "access_rules": [ "@Forest Temple/Boss Region,$has_age|adult,hookshot" @@ -1081,7 +1080,7 @@ "item_count": 1 }, { - "name": "Chest Near Boss", + "name": "Near Boss Chest", "short_name": "Near Boss", "access_rules": [ "$FTR_or_goron" @@ -1090,8 +1089,8 @@ "item_count": 1 }, { - "name": "GS69 - Basement", - "short_name": "Basement", + "name": "GS Boss Key Loop", + "short_name": "Boss Key", "access_rules": [ "@Fire Temple/Boss Key Region" ], @@ -1103,7 +1102,7 @@ "item_count": 1 }, { - "name": "Fire Dancer Chest", + "name": "Flare Dancer Chest", "short_name": "Flare Dancer", "access_rules": [ "@Fire Temple/Boss Key Region" @@ -1121,7 +1120,7 @@ "item_count": 1 }, { - "name": "GS65 - Song of Time Room", + "name": "GS Song of Time Room", "short_name": "Time Block", "access_rules": [ "@Fire Temple/Big Lava Room,$has_age|adult,ocarina,time", @@ -1135,7 +1134,7 @@ "item_count": 1 }, { - "name": "Big Lava Room Open Chest", + "name": "Big Lava Room Lower Open Door Chest", "short_name": "Lava Room Open", "access_rules": [ "@Fire Temple/Big Lava Room" @@ -1144,7 +1143,7 @@ "item_count": 1 }, { - "name": "Big Lava Room Bombable Chest", + "name": "Big Lava Room Blocked Door Chest", "short_name": "Lava Room Bombable", "access_rules": [ "@Fire Temple/Big Lava Room,$has_age|adult,$has_explosives" @@ -1162,7 +1161,7 @@ "item_count": 1 }, { - "name": "Boulder Maze Side Room", + "name": "Boulder Maze Side Room Chest", "short_name": "Boulder Maze Side", "access_rules": [ "@Fire Temple/Maze Lower" @@ -1171,7 +1170,7 @@ "item_count": 1 }, { - "name": "GS66 - Unmarked Bomb Wall", + "name": "GS Boulder Maze", "short_name": "Boulder Maze", "access_rules": [ "@Fire Temple/Maze Lower,$has_explosives" @@ -1203,7 +1202,7 @@ "item_count": 1 }, { - "name": "Boulder Maze Bombable Pit", + "name": "Boulder Maze Shortcut Chest", "short_name": "Shortcut", "access_rules": [ "@Fire Temple/Maze Upper,$has_explosives" @@ -1212,7 +1211,7 @@ "item_count": 1 }, { - "name": "GS67 - East Tower Climb", + "name": "GS Scarecrow Climb", "short_name": "Scarecrow 1", "access_rules": [ "@Fire Temple/East Tower" @@ -1225,7 +1224,7 @@ "item_count": 1 }, { - "name": "GS68 - East Tower Top", + "name": "GS Scarecrow Top", "short_name": "Scarecrow 2", "access_rules": [ "@Fire Temple/East Tower" @@ -1431,7 +1430,7 @@ "item_count": 1 }, { - "name": "GS73 - South Basement", + "name": "GS Behind Gate", "short_name": "South Basement", "access_rules": [ "@Water Temple/Dive,hookshot,$has_explosives,ocarina,lullaby,ironboots", @@ -1468,8 +1467,8 @@ "item_count": 1 }, { - "name": "GS75 - Central Room", - "short_name": "Central Room", + "name": "GS Central Pillar", + "short_name": "Central Pillar", "access_rules": [ "@Water Temple/Middle Water Level,longshot,water_small_keys:1,[water_small_keys:5]", "@Water Temple/Middle Water Level,longshot,bow", @@ -1489,7 +1488,7 @@ }, { "name": "Central Pillar Chest", - "short_name": "Basement", + "short_name": "Central Pillar", "access_rules": [ "@Water Temple/Middle Water Level,ironboots,[bluetunic],hookshot,water_small_keys:1,[water_small_keys:5]", "@Water Temple/Middle Water Level,ironboots,[bluetunic],hookshot,bow", @@ -1499,7 +1498,7 @@ "item_count": 1 }, { - "name": "GS76 - Falling Platform Room", + "name": "GS Falling Platform Room", "short_name": "Platform Room", "access_rules": [ "@Water Temple/Falling Platforms,longshot", @@ -1515,15 +1514,15 @@ "item_count": 1 }, { - "name": "Dark Link Chest", - "short_name": "Dark Link", + "name": "Longshot Chest", + "short_name": "Longshot", "access_rules": [ "@Water Temple/Dark Link Region" ], "item_count": 1 }, { - "name": "GS74 - Serpent River", + "name": "GS River", "short_name": "River", "access_rules": [ "@Water Temple/Dark Link Region,ocarina,time,ironboots", @@ -1562,7 +1561,7 @@ "item_count": 1 }, { - "name": "GS77 - Near Boss Key Chest", + "name": "GS Near Boss Key Chest", "short_name": "Near Boss Key", "access_rules": [ "@Water Temple/North Basement" @@ -1721,7 +1720,7 @@ "item_count": 2 }, { - "name": "GS81 - Like Like Room", + "name": "GS Like Like Room", "short_name": "Like Like", "access_rules": [ "@Shadow Temple/Huge Pit" @@ -1742,7 +1741,7 @@ "item_count": 1 }, { - "name": "GS82 - Crusher Room", + "name": "GS Falling Spikes Room", "short_name": "Crusher", "access_rules": [ "@Shadow Temple/Huge Pit,hookshot", @@ -1793,7 +1792,7 @@ "item_count": 1 }, { - "name": "GS83 - Single Giant Pot", + "name": "GS Single Giant Pot", "short_name": "Single Skull", "access_rules": [ "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,[logic_lens_shadow_back]", @@ -1824,7 +1823,7 @@ "item_count": 2 }, { - "name": "GS84 - Near Ship", + "name": "GS Near Ship", "short_name": "Near Boat", "access_rules": [ "@Shadow Temple/Wind Tunnel,shadow_small_keys:4,longshot", @@ -1857,7 +1856,7 @@ "item_count": 1 }, { - "name": "GS85 - Triple Giant Pot", + "name": "GS Triple Giant Pot", "short_name": "Triple Skull", "access_rules": [ "@Shadow Temple/Beyond Boat" @@ -1870,7 +1869,7 @@ "item_count": 1 }, { - "name": "Hidden Floormaster Chest", + "name": "Invisible Floormaster Chest", "short_name": "Floormaster", "access_rules": [ "@Shadow Temple/Beyond Boat", @@ -2015,7 +2014,7 @@ "item_count": 1 }, { - "name": "Child Left Chest", + "name": "Child Bridge Chest", "short_name": "Child Left", "access_rules": [ "@Spirit Temple/Child Back" @@ -2023,7 +2022,7 @@ "item_count": 1 }, { - "name": "Child Right Chest", + "name": "Child Early Torches Chest", "short_name": "Child Right", "access_rules": [ "@Spirit Temple/Child Back,sticks", @@ -2033,7 +2032,7 @@ "item_count": 1 }, { - "name": "GS96 - Metal Fence", + "name": "GS Metal Fence", "short_name": "Metal Fence", "access_rules": [ "@Spirit Temple/Child Back" @@ -2057,7 +2056,7 @@ "item_count": 2 }, { - "name": "GS97 - Bomb for Light Room", + "name": "GS Sun on Floor Room", "short_name": "Child Climb", "access_rules": [ "@Spirit Temple/Child Climb,$has_projectile|both", @@ -2099,7 +2098,7 @@ "item_count": 1 }, { - "name": "GS98 - Hall to West Iron Knuckle", + "name": "GS Hall After Sun Block Room", "short_name": "Before Knuckle", "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,boomerang,hookshot", @@ -2149,7 +2148,7 @@ "item_count": 1 }, { - "name": "GS100 - Lobby", + "name": "GS Lobby", "short_name": "Lobby", "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hookshot", @@ -2194,7 +2193,7 @@ "item_count": 1 }, { - "name": "GS99 - Boulder Room", + "name": "GS Boulder Room", "short_name": "Boulders", "access_rules": [ "@Spirit Temple/Early Adult Right Chest,ocarina,time", @@ -2217,7 +2216,7 @@ "item_count": 2 }, { - "name": "Statue Hand Chest", + "name": "Statue Room Hand Chest", "short_name": "Statue Hand", "access_rules": [ "@Spirit Temple/Central Chamber,[spirit_small_keys:3],$has_age|adult,lift2,ocarina,lullaby" @@ -2226,11 +2225,11 @@ "item_count": 1 }, { - "name": "NE Main Room Chest", + "name": "Statue Room Northeast Chest", "short_name": "Statue Ledge", "access_rules": [ - "@Spirit Temple/Statue Hand Chest,hookshot", - "@Spirit Temple/Statue Hand Chest,hoverboots" + "@Spirit Temple/Statue Room Hand Chest,hookshot", + "@Spirit Temple/Statue Room Hand Chest,hoverboots" ], "item_count": 1 }, @@ -2321,7 +2320,7 @@ ], "sections": [ { - "name": "Front Left Hidden Wall", + "name": "Front Left Fake Wall Chest", "short_name": "Front Hidden", "access_rules": [ "[logic_lens_botw]", @@ -2331,7 +2330,7 @@ "item_count": 1 }, { - "name": "Right Bottom Hidden Wall", + "name": "Right Bottom Fake Wall Chest", "short_name": "Right Hidden", "access_rules": [ "[logic_lens_botw]", @@ -2341,7 +2340,7 @@ "item_count": 1 }, { - "name": "Center Large Chest", + "name": "Compass Chest", "short_name": "Center Large", "access_rules": [ "[logic_lens_botw]", @@ -2351,7 +2350,7 @@ "item_count": 1 }, { - "name": "Center Small Chest", + "name": "Center Skulltula Chest", "short_name": "Center Small", "access_rules": [ "[logic_lens_botw]", @@ -2360,7 +2359,7 @@ "item_count": 1 }, { - "name": "GS79 - West Inner Room", + "name": "GS West Inner Room", "short_name": "West Inner", "access_rules": [ "botw_small_keys:1,[botw_small_keys:3],boomerang,[logic_lens_botw]", @@ -2377,7 +2376,7 @@ "item_count": 1 }, { - "name": "GS80 - East Inner Room", + "name": "GS East Inner Room", "short_name": "East Inner", "access_rules": [ "botw_small_keys:1,[botw_small_keys:3],boomerang,[logic_lens_botw]", @@ -2394,7 +2393,7 @@ "item_count": 1 }, { - "name": "Locked Pits", + "name": "Fire Keese Chest", "access_rules": [ "botw_small_keys:1,[botw_small_keys:3],[logic_lens_botw]", "botw_small_keys:1,[botw_small_keys:3],$can_use_lens" @@ -2402,19 +2401,19 @@ "item_count": 1 }, { - "name": "Behind Right Grate", + "name": "Like Like Chest", "short_name": "Like Like", "access_rules": [ - "@Bottom of the Well/Locked Pits" + "@Bottom of the Well/Fire Keese Chest" ], "item_count": 1 }, { - "name": "GS78 - Like Like Cage", + "name": "GS Like Like Cage", "short_name": "Like Like", "access_rules": [ - "@Bottom of the Well/Behind Right Grate,boomerang", - "@Bottom of the Well/Behind Right Grate,[logic_botw_cage_gs],$can_child_attack" + "@Bottom of the Well/Like Like Chest,boomerang", + "@Bottom of the Well/Like Like Chest,[logic_botw_cage_gs],$can_child_attack" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -2432,7 +2431,7 @@ "item_count": 1 }, { - "name": "Front Center Bombable", + "name": "Front Center Bombable Chest", "short_name": "Front Bombable", "access_rules": [ "$has_explosives" @@ -2440,7 +2439,7 @@ "item_count": 1 }, { - "name": "Back Left Bombable", + "name": "Back Left Bombable Chest", "short_name": "Back Bombable", "access_rules": [ "$has_explosives,[logic_lens_botw]", @@ -2449,7 +2448,7 @@ "item_count": 1 }, { - "name": "Basement Chest", + "name": "Map Chest", "short_name": "Basement", "access_rules": [ "$has_explosives", @@ -2462,23 +2461,23 @@ "item_count": 1 }, { - "name": "Underwater Front Chest", - "short_name": "Underwater Front", + "name": "Underwater Left Chest", + "short_name": "Underwater Left", "access_rules": [ "ocarina,lullaby" ], "item_count": 1 }, { - "name": "Underwater Left Chest", - "short_name": "Underwater Left", + "name": "Underwater Front Chest", + "short_name": "Underwater Front", "access_rules": [ "ocarina,lullaby" ], "item_count": 1 }, { - "name": "Defeat Boss", + "name": "Lens of Truth Chest", "short_name": "Dead Hand", "access_rules": [ "ocarina,lullaby,sword1", @@ -2553,7 +2552,7 @@ "hosted_item": "trial_water" }, { - "name": "Shadow Trial First Chest", + "name": "Shadow Trial Front Chest", "short_name": "Shadow Trial 1", "access_rules": [ "hookshot", @@ -2564,7 +2563,7 @@ "item_count": 1 }, { - "name": "Shadow Trial Second Chest", + "name": "Shadow Trial Golden Gauntlets Chest", "short_name": "Shadow Trial 2", "access_rules": [ "longshot,hoverboots", @@ -2639,7 +2638,7 @@ "hosted_item": "trial_light" }, { - "name": "Spirit Trial First Chest", + "name": "Spirit Trial Crystal Switch Chest", "short_name": "Spirit Trial 1", "access_rules": [ "[logic_spirit_trial_hookshot]", @@ -2648,7 +2647,7 @@ "item_count": 1 }, { - "name": "Spirit Trial Second Chest", + "name": "Spirit Trial Invisible Chest", "short_name": "Spirit Trial 2", "access_rules": [ "$has_bombchus,[logic_lens_castle],[logic_spirit_trial_hookshot]", @@ -2685,7 +2684,8 @@ "item_count": 4 }, { - "name": "Castle Tower", + "name": "Ganons Tower Boss Key Chest", + "short_name": "Boss Key", "access_rules": [ "$trials_barrier_dispelled" ], @@ -2712,6 +2712,7 @@ "sections": [ { "name": "North F1 Carpenter", + "short_name": "North F1", "access_rules": [ "$has_age|adult" ], @@ -2720,6 +2721,7 @@ }, { "name": "North F2 Carpenter", + "short_name": "North F2", "access_rules": [ "$has_age|adult,$gerudo_card", "$has_age|adult,bow", @@ -2735,6 +2737,7 @@ }, { "name": "South F1 Carpenter", + "short_name": "South F1", "access_rules": [ "$has_age|adult" ], @@ -2746,6 +2749,7 @@ }, { "name": "South F2 Carpenter", + "short_name": "South F2", "access_rules": [ "$has_age|adult" ], @@ -2756,7 +2760,7 @@ "item_count": 1 }, { - "name": "Free the carpenters", + "name": "Gerudo Membership Card", "access_rules": [ "gerudo_fortress_normal,gf_small_keys:4,$has_age|adult,$gerudo_card", "gerudo_fortress_normal,gf_small_keys:4,$has_age|adult,bow", diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index 014cf8f6..1a7bd0bc 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -12,8 +12,7 @@ "name": "Kokiri Village", "children": [ { - "name": "Kokiri Sword Chest", - "short_name": "Kokiri Sword", + "name": "KF Kokiri Sword Chest", "sections": [ { "name": "Dodge Boulder", @@ -33,10 +32,10 @@ ] }, { - "name": "Mido House", + "name": "KF Midos House", "sections": [ { - "name": "Mido Chests", + "name": "KF Midos Chests", "item_count": 4 } ], @@ -54,14 +53,14 @@ ] }, { - "name": "Kokiri Forest Storms Grotto", - "short_name": "Kokiri Storms Grotto", + "name": "KF Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Chest", + "name": "KF Storms Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -79,7 +78,7 @@ ] }, { - "name": "Kokiri Shop", + "name": "KF Kokiri Shop", "sections": [ { "name": "Item 1", @@ -122,10 +121,10 @@ ] }, { - "name": "Links House", + "name": "KF Links House", "sections": [ { - "name": "Links House Cow", + "name": "KF Links House Cow", "short_name": "Cow", "access_rules": [ "$has_age|adult,ocarina,epona" @@ -147,10 +146,11 @@ ] }, { - "name": "Know It All House", + "name": "KF Know It All House", "sections": [ { - "name": "GS1 (N)", + "name": "KF GS Know It All House (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,$can_child_attack,$can_leave_forest", "$has_age|child,$night_gs,$can_child_attack,ocarina,sun" @@ -172,10 +172,11 @@ ] }, { - "name": "Kokiri Bean Patch", + "name": "KF Bean Patch", "sections": [ { - "name": "GS2", + "name": "KF GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -196,10 +197,11 @@ ] }, { - "name": "House of Twins", + "name": "KF House of Twins", "sections": [ { - "name": "GS3 (N)", + "name": "KF GS House of Twins (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hookshot", "$has_age|adult,$night_gs,hoverboots,[logic_adult_kokiri_gs]", //TODO: can be done itemless, no trick yet @@ -222,14 +224,14 @@ "y": 981 } ] - } - ] - }, - { + } + ] + }, + { "name": "Lost Woods", "children": [ { - "name": "Skull Kid", + "name": "LW Skull Kid", "sections": [ { "name": "Play Sarias Song", @@ -260,14 +262,14 @@ ] }, { - "name": "Lost Woods Generic Grotto", - "short_name": "Goron City Grotto", + "name": "LW Near Shortcuts Grotto", + "access_rules": [ + "$can_blast" + ], "sections": [ { - "name": "Blast it", - "access_rules": [ - "$can_blast" - ], + "name": "LW Near Shortcuts Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -285,11 +287,11 @@ ] }, { - "name": "Ocarina Memory Game", + "name": "LW Ocarina Memory Game", "short_name": "Ocarina Game", "sections": [ { - "name": "Repeat", + "name": "ResidentSleeper", "access_rules": [ "$has_age|child,ocarina" ], @@ -305,7 +307,7 @@ ] }, { - "name": "Target in Woods", + "name": "LW Target in Woods", "sections": [ { "name": "Shoot it", @@ -398,11 +400,10 @@ ] }, { - "name": "LW Deku Scrub Deku Stick Upgrade", - "short_name": "Scrub Below Bridge", + "name": "LW Deku Scrub Near Bridge", "sections": [ { - "name": "Pay up", + "name": "Stick upgrade", "access_rules": [ "$has_age|child,$can_child_attack", "$has_age|child,nuts", @@ -422,23 +423,22 @@ ] }, { - "name": "Lost Woods Sales Grotto", - "short_name": "Sales Grotto", + "name": "LW Scrubs Grotto", "access_rules": [ "$has_explosives", "$has_age|adult,hammer,$beyond_mido" ], "sections": [ { - "name": "LW Grotto Deku Scrub Deku Nut Upgrade", - "short_name": "Nut Capacity", + "name": "LW Deku Scrub Grotto Front", + "short_name": "Front", "chest_unopened_img": "images/deku_scrub.png", "chest_opened_img": "images/deku_scrub_grey.png", "item_count": 1 }, { - "name": "LW Grotto Deku Scrub Arrows", - "short_name": "Arrows", + "name": "LW Deku Scrub Grotto Rear", + "short_name": "Rear", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -461,12 +461,15 @@ ] }, { - "name": "LW Deku Scrubs", + "name": "LW Deku Scrubs Near Deku Theater", + "short_name": "LW Deku Scrubs", "sections": [ { "name": "Deku Nuts / Deku Sticks", "access_rules": [ - "$has_age|child,$can_stun_deku" + "$has_age|child,$can_child_attack", + "$has_age|child,nuts", + "$has_age|child,shield1" ], "visibility_rules": [ "setting_scrub_shuffle_yes" @@ -486,11 +489,11 @@ ] }, { - "name": "Lost Woods Bean Patch Near Bridge", - "short_name": "Bean Patch Near Bridge", + "name": "LW Bean Patch Near Bridge", "sections": [ { - "name": "GS4", + "name": "LW GS Bean Patch Near Bridge", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -511,8 +514,7 @@ ] }, { - "name": "Lost Woods Bean Patch Near Stage", - "short_name": "Bean Patch Near Stage", + "name": "LW Bean Patch Near Theater", "sections": [ { "name": "Plant Bean", @@ -525,10 +527,11 @@ "hosted_item": "bean_stage_yes" }, { - "name": "GS5", + "name": "LW GS Bean Patch Near Theater", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack", - "$has_age|child,$has_bottle,shield1" + "$has_age|child,$has_bottle,shield1,setting_scrub_shuffle_no" ], "visibility_rules": [ "setting_tokens_overworld" @@ -547,14 +550,14 @@ ] }, { - "name": "Lost Woods Above Stage", - "short_name": "Above Stage", + "name": "LW Above Theater", "access_rules": [ "$night_gs,$has_age|adult,$beyond_mido" ], "sections": [ { - "name": "GS6 (N)", + "name": "LW GS Above Theater (N)", + "short_name": "GS", "access_rules": [ "setting_plant_no,beans", "bean_stage_yes", @@ -578,22 +581,22 @@ "y": 740 } ] - } - ] - }, - { + } + ] + }, + { "name": "Sacred Forest Meadow", "children": [ { - "name": "Front of Meadow Grotto", - "short_name": "Wolfos Grotto", + "name": "SFM Wolfos Grotto", "access_rules": [ "$hidden_grotto,$has_explosives", "$hidden_grotto,$has_age|adult,hammer,$beyond_mido" ], "sections": [ { - "name": "Kill them", + "name": "SFM Wolfos Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -637,8 +640,7 @@ ] }, { - "name": "Sheik Forest Song", - "short_name": "Sheik in Meadow", + "name": "Sheik in Forest", "sections": [ { "name": "Song", @@ -661,13 +663,14 @@ ] }, { - "name": "Meadow Storms Grotto", + "name": "SFM Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Deku Scrubs", + "name": "SFM Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$has_age|adult,$beyond_mido", "$has_age|child,minuet,nuts", @@ -701,13 +704,14 @@ ] }, { - "name": "Top of Maze", + "name": "SFM Maze", "access_rules": [ "$night_gs,$has_age|adult,$beyond_mido" ], "sections": [ { - "name": "GS7 (N)", + "name": "SFM GS (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -730,10 +734,10 @@ "y": 664 } ] - } - ] - } - ] + } + ] + } + ] }, { "name": "Outside Forest", @@ -746,11 +750,11 @@ "color": "#09a09d", "children": [ { - "name": "Lost Woods Bridge", + "name": "LW Bridge", "color": "#18a50e", "sections": [ { - "name": "Gift from Saria", + "name": "LW Gift from Saria", "capture_item": true, "item_count": 1 } @@ -769,19 +773,21 @@ ] }, { - "name": "Ocarina of Time", + "name": "HF Ocarina of Time", "access_rules": [ "$has_age|child,stones:3", "{$hintable}" ], "sections": [ { - "name": "Item", + "name": "HF Ocarina of Time Item", + "short_name": "Item", "capture_item": true, "item_count": 1 }, { - "name": "Song", + "name": "Song from Ocarina of Time", + "short_name": "Song", "capture_item": true, "chest_unopened_img": "images/grey_note.png", "chest_opened_img": "images/grey_note_check.png", @@ -797,14 +803,14 @@ ] }, { - "name": "Field North Lon Lon Grotto", - "short_name": "Tektite Grotto", + "name": "HF Tektite Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "Dive down", + "name": "HF Tektite Grotto Freestanding PoH", + "short_name": "HP", "access_rules": [ "scale2", "$has_age|adult,ironboots", @@ -830,14 +836,14 @@ ] }, { - "name": "Field Near Lake Inside Fence Grotto", - "short_name": "Grotto Inside Fence", + "name": "HF Inside Fence Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "Deku Scrub", + "name": "HF Deku Scrub Grotto", + "short_name": "Deku Scrub", "access_rules": [ "$can_stun_deku" ], @@ -860,11 +866,11 @@ ] }, { - "name": "Field Near Lake Outside Fence Grotto", - "short_name": "Grotto Outside Fence", + "name": "HF Open Grotto", "sections": [ { - "name": "Chest", + "name": "HF Open Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -882,14 +888,15 @@ ] }, { - "name": "Field West Castle Town Grotto", - "short_name": "Grotto near Bridge", + "name": "HF Near Market Grotto", + "short_name": "Boulda", + "access_rules": [ + "$can_blast" + ], "sections": [ { - "name": "Boulda", - "access_rules": [ - "$can_blast" - ], + "name": "HF Near Market Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -907,13 +914,14 @@ ] }, { - "name": "Remote Southern Grotto", + "name": "HF Southeast Grotto", + "access_rules": [ + "$can_blast" + ], "sections": [ { - "name": "Blast it", - "access_rules": [ - "$can_blast" - ], + "name": "HF Southeast Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -953,13 +961,14 @@ ] }, { - "name": "Field Kakariko Grotto", + "name": "HF Near Kak Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "GS12", + "name": "HF GS Near Kak Grotto", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_explosives,boomerang", "{$has_age|child,$has_explosives,sling}", @@ -990,13 +999,14 @@ ] }, { - "name": "Field Valley Grotto", + "name": "HF Cow Grotto", "access_rules": [ "$hidden_grotto" ], "sections": [ { - "name": "GS13", + "name": "HF GS Cow Grotto", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_explosives,dinsfire,magic,boomerang", "{$has_age|child,$has_explosives,dinsfire,magic}", @@ -1013,7 +1023,7 @@ "item_count": 1 }, { - "name": "HF Grotto Cow", + "name": "HF Cow Grotto Cow", "short_name": "Cow", "access_rules": [ "$has_age|child,$has_explosives,dinsfire,magic,ocarina,epona", @@ -1045,7 +1055,7 @@ "color": "#0936a0", "children": [ { - "name": "Underwater Bottle", + "name": "LH Underwater Item", "sections": [ { "name": "Dive down", @@ -1066,7 +1076,7 @@ ] }, { - "name": "Child Fishing", + "name": "LH Child Fishing", "sections": [ { "name": "Bite pls", @@ -1086,7 +1096,7 @@ ] }, { - "name": "Adult Fishing", + "name": "LH Adult Fishing", "sections": [ { "name": "Bite pls", @@ -1110,7 +1120,7 @@ ] }, { - "name": "Lake Hylia Sun", + "name": "LH Sun", "sections": [ { "name": "Shoot it", @@ -1133,11 +1143,10 @@ ] }, { - "name": "Lake Hylia Freestanding PoH", - "short_name": "Lab Tower", + "name": "LH Lab Tower", "sections": [ { - "name": "Freestanding PoH", + "name": "LH Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|adult,setting_plant_no,beans", @@ -1158,12 +1167,10 @@ ] }, { - "name": "Lake Hylia Lab", - "short_name": "Lakeside Lab", + "name": "LH Lab", "sections": [ { - "name": "Diving in the Lab", - "short_name": "Dive down", + "name": "LH Lab Dive", "access_rules": [ "scale2", "$has_age|adult,[logic_lab_diving],ironboots,hookshot" @@ -1179,6 +1186,19 @@ "speedfrog" ], "hosted_item": "capture_eyedrops" + }, + { + "name": "LH GS Lab Crate", + "short_name": "GS", + "access_rules": [ + "$has_age|adult,ironboots,hookshot" + ], + "visibility_rules": [ + "setting_tokens_overworld" + ], + "chest_unopened_img": "images/skulltula.png", + "chest_opened_img": "images/skulltula_token.png", + "item_count": 1 } ], "map_locations": [ @@ -1233,11 +1253,11 @@ ] }, { - "name": "Lake Hylia Grotto", - "short_name": "Under Gravestone", + "name": "LH Grotto", "sections": [ { - "name": "Deku Scrubs", + "name": "LH Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$can_stun_deku" ], @@ -1264,7 +1284,7 @@ ] }, { - "name": "Lake Hylia Bean Patch", + "name": "LH Bean Patch", "sections": [ { "name": "Plant Bean", @@ -1277,7 +1297,8 @@ "hosted_item": "bean_lake_yes" }, { - "name": "GS55", + "name": "LH GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -1298,13 +1319,14 @@ ] }, { - "name": "Lab Wall", + "name": "LH Lab Wall", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS56 (N)", + "name": "LH GS Lab Wall (N)", + "short_name": "GS", "access_rules": [ "boomerang", "[logic_lab_wall_gs],sticks", @@ -1330,10 +1352,11 @@ ] }, { - "name": "Small Island", + "name": "LH Small Island", "sections": [ { - "name": "GS57 (N)", + "name": "LH GS Small Island (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,$can_child_attack" ], @@ -1354,10 +1377,11 @@ ] }, { - "name": "Giant Tree", + "name": "LH Tree", "sections": [ { - "name": "GS58 (N)", + "name": "LH GS Tree (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,longshot" ], @@ -1376,33 +1400,10 @@ "y": 1415 } ] - }, - { - "name": "Lab Underwater Crate", - "short_name": "Lab Crate", - "sections": [ - { - "name": "GS59", - "access_rules": [ - "$has_age|adult,ironboots,hookshot" - ], - "visibility_rules": [ - "setting_tokens_overworld" - ], - "chest_unopened_img": "images/skulltula.png", - "chest_opened_img": "images/skulltula_token.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "adult", - "x": 959, - "y": 1229 - } - ] - }, - { + } + ] + }, + { "name": "Lon Lon Ranch", "color": "#09a09d", "children": [ @@ -1429,10 +1430,10 @@ ] }, { - "name": "Talon House", + "name": "LLR Talons House", "sections": [ { - "name": "Talons Chickens", + "name": "LLR Talons Chickens", "access_rules": [ "$has_age|child,postzelda" ], @@ -1448,10 +1449,10 @@ ] }, { - "name": "Corner Tower", + "name": "LLR Tower", "sections": [ { - "name": "Freestanding PoH", + "name": "LLR Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child" @@ -1488,8 +1489,7 @@ ] }, { - "name": "Ingo Barn", - "short_name": "Stables", + "name": "LLR Stables", "sections": [ { "name": "LLR Stables Cows", @@ -1519,10 +1519,11 @@ ] }, { - "name": "Lon Lon Grotto", + "name": "LLR Grotto", "sections": [ { - "name": "Deku Scrubs", + "name": "LLR Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$has_age|child,$can_child_attack", "$has_age|child,nuts", @@ -1546,11 +1547,11 @@ ] }, { - "name": "Lon Lon Ranch Tree", - "short_name": "Lone Tree", + "name": "LLR Tree", "sections": [ { - "name": "GS18", + "name": "LLR GS Tree", + "short_name": "GS", "access_rules": [ "$has_age|child" ], @@ -1571,11 +1572,11 @@ ] }, { - "name": "Lon Lon Ranch Rain Shed", - "short_name": "Rain Shed", + "name": "LLR Rain Shed", "sections": [ { - "name": "GS19 (N)", + "name": "LLR GS Rain Shed (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -1596,11 +1597,11 @@ ] }, { - "name": "Lon Lon Ranch House Window", - "short_name": "House Window", + "name": "LLR House Window", "sections": [ { - "name": "GS20 (N)", + "name": "LLR GS House Window (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,boomerang", "{$has_age|child,sling}", @@ -1624,11 +1625,11 @@ ] }, { - "name": "Lon Lon Ranch Back Wall", - "short_name": "Back Wall", + "name": "LLR Back Wall", "sections": [ { - "name": "GS21 (N)", + "name": "LLR GS Back Wall (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,boomerang", "{$has_age|child,sling}", @@ -1661,14 +1662,14 @@ "color": "#6909a0", "children": [ { - "name": "Kakariko Bombable Grotto", - "short_name": "Center Grotto", + "name": "Kak Redead Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "Kill them", + "name": "Kak Redead Grotto Chest", + "short_name": "Chest", "access_rules": [ "$has_age|adult", "$has_age|child,sticks", @@ -1692,11 +1693,11 @@ ] }, { - "name": "Kakariko Back Grotto", - "short_name": "Back Grotto", + "name": "Kak Open Grotto", "sections": [ { - "name": "Chest", + "name": "Kak Open Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -1714,17 +1715,17 @@ ] }, { - "name": "Impa House", + "name": "Kak Impas House", "sections": [ { - "name": "Freestanding PoH", + "name": "Kak Impas House Freestanding PoH", "short_name": "HP", "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", "item_count": 1 }, { - "name": "Impas House Cow", + "name": "Kak Impas House Cow", "short_name": "Cow", "access_rules": [ "ocarina,epona" @@ -1751,7 +1752,7 @@ ] }, { - "name": "Man on Roof", + "name": "Kak Man on Roof", "sections": [ { "name": "Talk to him", @@ -1776,10 +1777,11 @@ ] }, { - "name": "Kakariko Shooting Gallery", + "name": "Kak Shooting Gallery", "sections": [ { - "name": "Adult Shooting Gallery", + "name": "Kak Shooting Gallery Reward", + "short_name": "Reward", "access_rules": [ "$has_age|adult,bow", "{$hintable}" @@ -1797,10 +1799,10 @@ ] }, { - "name": "Windmill", + "name": "Kak Windmill", "sections": [ { - "name": "Freestanding PoH", + "name": "Kak Windmill Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child,boomerang", @@ -1812,27 +1814,10 @@ "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", "item_count": 1 - } - ], - "map_locations": [ - { - "map": "child", - "x": 1935, - "y": 346 }, { - "map": "adult", - "x": 1935, - "y": 346 - } - ] - }, - { - "name": "Song at Windmill", - "short_name": "Guru-Guru", - "sections": [ - { - "name": "Song", + "name": "Song from Windmill", + "short_name": "Guru-Guru", "access_rules": [ "$has_age|adult,ocarina", "{$hintable}" @@ -1844,10 +1829,15 @@ } ], "map_locations": [ + { + "map": "child", + "x": 1935, + "y": 346 + }, { "map": "adult", - "x": 1945, - "y": 376 + "x": 1935, + "y": 346 } ] }, @@ -1875,10 +1865,10 @@ ] }, { - "name": "Anjus Chickens", + "name": "Kak Anju as Child", "sections": [ { - "name": "Catch them", + "name": "Chickens", "access_rules": [ "$has_age|child" ], @@ -1894,7 +1884,7 @@ ] }, { - "name": "Anju as Adult", + "name": "Kak Anju as Adult", "sections": [ { "name": "Talk to her", @@ -1952,7 +1942,7 @@ ] }, { - "name": "Old Hag", + "name": "Kak Odd Medicine Building", "sections": [ { "name": "Give Mushroom", @@ -1974,17 +1964,19 @@ ] }, { - "name": "House of Skulltula", + "name": "Kak House of Skulltula", "sections": [ { - "name": "10 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "10 Tokens", "access_rules": [ "skulltula:10" ], "item_count": 1 }, { - "name": "20 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "20 Tokens", "access_rules": [ "skulltula:20", "{$hintable}" @@ -1993,7 +1985,8 @@ "item_count": 1 }, { - "name": "30 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "30 Tokens", "access_rules": [ "skulltula:30", "{$hintable}" @@ -2002,7 +1995,8 @@ "item_count": 1 }, { - "name": "40 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "40 Tokens", "access_rules": [ "skulltula:40", "{$hintable}" @@ -2011,7 +2005,8 @@ "item_count": 1 }, { - "name": "50 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "50 Tokens", "access_rules": [ "skulltula:50", "{$hintable}" @@ -2034,7 +2029,7 @@ ] }, { - "name": "Kakariko Potion Shop", + "name": "Kak Potion Shop", "access_rules": [ "$has_age|adult" ], @@ -2072,7 +2067,7 @@ ] }, { - "name": "Kakariko Bazaar", + "name": "Kak Bazaar", "access_rules": [ "$has_age|adult" ], @@ -2110,11 +2105,11 @@ ] }, { - "name": "Kakariko Above Impa's House", - "short_name": "Above Impa's House", + "name": "Kak Above Impas House", "sections": [ { - "name": "GS27 (N)", + "name": "Kak GS Above Impas House (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hookshot" ], @@ -2135,11 +2130,11 @@ ] }, { - "name": "Kakariko Tree", - "short_name": "Tree", + "name": "Kak Tree", "sections": [ { - "name": "GS22 (N)", + "name": "Kak GS Tree (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2160,11 +2155,11 @@ ] }, { - "name": "Kakariko Skulltula House", - "short_name": "Skulltula House", + "name": "Kak Skulltula House", "sections": [ { - "name": "GS23 (N)", + "name": "Kak GS Skulltula House (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2185,11 +2180,11 @@ ] }, { - "name": "Kakariko House Under Construction", - "short_name": "Under Construction", + "name": "Kak House Under Construction", "sections": [ { - "name": "GS24 (N)", + "name": "Kak GS House Under Construction (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2210,11 +2205,11 @@ ] }, { - "name": "Kakariko Guard's House", - "short_name": "Bazaar Wall", + "name": "Kak Guards House", "sections": [ { - "name": "GS25 (N)", + "name": "Kak GS Guards House (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2235,14 +2230,14 @@ ] }, { - "name": "Kakariko Watchtower", - "short_name": "Watchtower", + "name": "Kak Watchtower", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS26 (N)", + "name": "Kak GS Watchtower (N)", + "short_name": "GS", "access_rules": [ "sling", "$has_bombchus", @@ -2272,7 +2267,8 @@ "name": "Dampe", "sections": [ { - "name": "Gravedigging Tour", + "name": "Graveyard Dampe Gravedigging Tour", + "short_name": "HP", "access_rules": [ "$has_age|child" ], @@ -2290,18 +2286,19 @@ ] }, { - "name": "Dampes Grave", + "name": "Graveyard Dampes Grave", + "short_name": "Dampes Grave", "access_rules": [ "$has_age|adult" ], "sections": [ { - "name": "Hookshot Chest", - "short_name": "Hookshot", + "name": "Graveyard Hookshot Chest", + "short_name": "Chest", "item_count": 1 }, { - "name": "Freestanding PoH", + "name": "Graveyard Dampe Race Freestanding PoH", "short_name": "HP", "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", @@ -2317,10 +2314,12 @@ ] }, { - "name": "Shield Grave", + "name": "Graveyard Shield Grave", + "short_name": "Shield Grave", "sections": [ { - "name": "Chest", + "name": "Graveyard Shield Grave Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -2338,11 +2337,12 @@ ] }, { - "name": "Heart Piece Grave", - "short_name": "Redead Grave", + "name": "Graveyard Heart Piece Grave", + "short_name": "HP Grave", "sections": [ { - "name": "Play Suns Song", + "name": "Graveyard Heart Piece Grave Chest", + "short_name": "Play Suns Song", "access_rules": [ "ocarina,sun", "{$hintable}" @@ -2397,7 +2397,7 @@ ] }, { - "name": "Composer Grave", + "name": "Graveyard Composers Grave", "short_name": "Royal Tomb", "access_rules": [ "ocarina,lullaby", @@ -2405,7 +2405,7 @@ ], "sections": [ { - "name": "Song from Composer Grave", + "name": "Song from Composers Grave", "short_name": "Song", "access_rules": [ "$has_age|adult", @@ -2422,8 +2422,8 @@ "item_count": 1 }, { - "name": "Composer Grave Chest", - "short_name": "Torches", + "name": "Graveyard Composers Grave Chest", + "short_name": "Chest", "access_rules": [ "$has_fire", "$has_age|child,sticks,[$has_fire]", @@ -2470,13 +2470,13 @@ }, { "name": "Graveyard Wall", - "short_name": "Wall", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS28 (N)", + "name": "Graveyard GS Wall (N)", + "short_name": "GS", "access_rules": [ "boomerang", "{sling}", @@ -2514,7 +2514,8 @@ "hosted_item": "bean_graveyard_yes" }, { - "name": "GS29", + "name": "Graveyard GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -2546,37 +2547,18 @@ "name": "Goron City", "children": [ { - "name": "Goron City Maze Right", - "short_name": "Boulder Maze Right", + "name": "GC Maze", "sections": [ { - "name": "Chests", + "name": "Right and Center Chests", "access_rules": [ "$can_blast", "$has_age|adult,lift2" ], "item_count": 2 - } - ], - "map_locations": [ - { - "map": "child", - "x": 1606, - "y": 98 }, { - "map": "adult", - "x": 1606, - "y": 98 - } - ] - }, - { - "name": "Goron City Maze Leftmost", - "short_name": "Boulder Maze Left", - "sections": [ - { - "name": "Chest", + "name": "Left Chest", "access_rules": [ "$has_age|adult,hammer", "$has_age|adult,lift2", @@ -2585,18 +2567,37 @@ ], "capture_item": true, "item_count": 1 + }, + { + "name": "GC GS Boulder Maze", + "short_name": "GS", + "access_rules": [ + "$has_age|child,$has_explosives" + ], + "visibility_rules": [ + "setting_tokens_overworld" + ], + "chest_unopened_img": "images/skulltula.png", + "chest_opened_img": "images/skulltula_token.png", + "item_count": 1 } ], "map_locations": [ + { + "map": "child", + "x": 1606, + "y": 98 + }, { "map": "adult", - "x": 1576, + "x": 1606, "y": 98 } ] }, { - "name": "Link the Goron", + "name": "GC Rolling Goron as Adult", + "short_name": "Link the Goron", "sections": [ { "name": "Stop him", @@ -2615,8 +2616,8 @@ ] }, { - "name": "Rolling Goron as Child", - "short_name": "Hot Rodder Goron", + "name": "GC Rolling Goron as Child", + "short_name": "Hot Rodder", "sections": [ { "name": "Blow him up", @@ -2636,8 +2637,7 @@ ] }, { - "name": "Goron City Pot", - "short_name": "Spinning Pot", + "name": "GC Pot", "sections": [ { "name": "Freestanding PoH", @@ -2668,7 +2668,7 @@ ] }, { - "name": "Darunias Joy", + "name": "GC Darunias Joy", "sections": [ { "name": "Play Sarias Song", @@ -2689,14 +2689,14 @@ ] }, { - "name": "Goron City Grotto", - "short_name": "Lava Room Grotto", + "name": "GC Grotto", "access_rules": [ "$has_age|adult" ], "sections": [ { - "name": "Deku Scrubs", + "name": "GC Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "ocarina,time,$damage_below_quadruple", "ocarina,time,redtunic", @@ -2723,36 +2723,11 @@ ] }, { - "name": "Goron City Boulder Maze", - "short_name": "Boulder Maze Crate", + "name": "GC Center Platform", "sections": [ { - "name": "GS34", - "access_rules": [ - "$has_age|child,$has_explosives" - ], - "visibility_rules": [ - "setting_tokens_overworld" - ], - "chest_unopened_img": "images/skulltula.png", - "chest_opened_img": "images/skulltula_token.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "child", - "x": 1591, - "y": 68 - } - ] - }, - { - "name": "Goron City Center Platform", - "short_name": "Center Platform", - "sections": [ - { - "name": "GS35", + "name": "GC GS Center Platform", + "short_name": "GS", "access_rules": [ "$has_age|adult" ], @@ -2773,7 +2748,7 @@ ] }, { - "name": "Goron Shop", + "name": "GC Shop", "access_rules": [ "$link_the_goron", "$has_age|child,$has_explosives", @@ -2821,21 +2796,26 @@ "y": 128 } ] - } - ] - }, - { + } + ] + }, + { "name": "Death Mountain Trail", "children": [ { "name": "Top of DC", "sections": [ { - "name": "DM Trail Freestanding PoH", + "name": "DMT Freestanding PoH", "short_name": "HP", "access_rules": [ - "$has_age|adult", - "$child_death_mountain" + "$damage_below_ohko", + "nayrus,magic", + "$has_bottle", + "$has_age|adult,hoverboots", + "$has_age|both,setting_plant_no,beans,$has_explosives", + "$has_age|both,setting_plant_no,beans,lift1,$child_death_mountain", + "$has_age|both,bean_trail_yes" ], "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", @@ -2856,11 +2836,10 @@ ] }, { - "name": "Death Mountain Bombable Chest", - "short_name": "Bombable Wall", + "name": "DMT Chest", "sections": [ { - "name": "Blast it", + "name": "Blast wall", "access_rules": [ "$can_blast", "$child_death_mountain,lift1,[logic_dmt_bombable]" @@ -2882,13 +2861,14 @@ ] }, { - "name": "Mountain Storms Grotto", + "name": "DMT Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Chest", + "name": "DMT Storms Grotto Chest", + "short_name": "Chest", "access_rules": [ "$has_age|adult", "$child_death_mountain" @@ -2910,10 +2890,10 @@ ] }, { - "name": "Mountain Summit Fairy", + "name": "DMT Great Fairy Fountain", "sections": [ { - "name": "Fairy Fountain", + "name": "Great Fairy", "access_rules": [ "ocarina,lullaby,$can_blast" ], @@ -2934,7 +2914,7 @@ ] }, { - "name": "Biggoron", + "name": "DMT Biggoron", "access_rules": [ "$has_age|adult,$dmc_upper", "{$hintable}" @@ -2979,10 +2959,10 @@ ] }, { - "name": "Mountain Bombable Grotto", + "name": "DMT Cow Grotto", "sections": [ { - "name": "DMT Grotto Cow", + "name": "DMT Cow Grotto Cow", "short_name": "Cow", "access_rules": [ "$can_blast,ocarina,epona" @@ -3009,11 +2989,12 @@ ] }, { - "name": "Mountain Trail Above Dodongo's Cavern", + "name": "DMT Above Dodongos Cavern", "short_name": "Rock Above DC", "sections": [ { - "name": "GS32 (N)", + "name": "DMT GS Above Dodongos Cavern (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hammer", "$has_age|adult,$night_gs,[logic_trail_gs_lower_hookshot],hookshot", @@ -3038,11 +3019,11 @@ ] }, { - "name": "Mountain Trail Path to Crater", - "short_name": "Path to Crater", + "name": "DMT Falling Rocks Path", "sections": [ { - "name": "GS33 (N)", + "name": "DMT GS Falling Rocks Path (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hammer", "$has_age|adult,$night_gs,[logic_trail_gs_upper]" @@ -3064,7 +3045,7 @@ ] }, { - "name": "Mountain Trail Bean Patch", + "name": "DMT Bean Patch", "sections": [ { "name": "Plant Bean", @@ -3078,7 +3059,8 @@ "hosted_item": "bean_trail_yes" }, { - "name": "GS30", + "name": "DMT GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$has_explosives", "$child_death_mountain,$has_bottle,lift1", @@ -3101,10 +3083,11 @@ ] }, { - "name": "Mountain Trail Bomb Alcove", + "name": "DMT Near Kak", "sections": [ { - "name": "GS31", + "name": "DMT GS Near Kak", + "short_name": "GS", "access_rules": [ "$can_blast" ], @@ -3128,17 +3111,18 @@ "y": 285 } ] - } - ] - }, - { + } + ] + }, + { "name": "Death Mountain Crater", "children": [ { - "name": "Top of Crater Grotto", + "name": "DMC Upper Grotto", "sections": [ { - "name": "Blast it", + "name": "DMC Upper Grotto Chest", + "short_name": "Chest", "access_rules": [ "$can_blast" ], @@ -3159,10 +3143,10 @@ ] }, { - "name": "DM Crater Wall", + "name": "DMC Wall", "sections": [ { - "name": "Freestanding PoH", + "name": "DMC Wall Freestanding PoH", "short_name": "HP", "access_rules": [ "$dmc_upper", @@ -3188,10 +3172,10 @@ ] }, { - "name": "Volcano", + "name": "DMC Volcano", "sections": [ { - "name": "Freestanding PoH", + "name": "DMC Volcano Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|both,ocarina,bolero,setting_plant_no,beans", @@ -3219,15 +3203,16 @@ ] }, { - "name": "Crater Fairy", + "name": "DMC Great Fairy Fountain", "access_rules": [ - "ocarina,lullaby,$has_age|adult,hammer" + "$dmc_lower,$has_age|adult,hammer" ], "sections": [ { - "name": "Fairy Fountain", + "name": "DMC Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$dmc_lower" + "ocarina,lullaby" ], "item_count": 1 } @@ -3242,16 +3227,13 @@ }, { "name": "DMC Hammer Grotto", - "short_name": "Hammer Grotto", "access_rules": [ - "$has_age|adult,hammer" + "$dmc_lower,$has_age|adult,hammer" ], "sections": [ { - "name": "Deku Scrubs", - "access_rules": [ - "$dmc_lower" - ], + "name": "DMC Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -3321,11 +3303,11 @@ ] }, { - "name": "Death Mountain Crater Crate", - "short_name": "Crate at Entrance", + "name": "DMC Crate", "sections": [ { - "name": "GS36", + "name": "DMC GS Crate", + "short_name": "GS", "access_rules": [ "$can_blast,$has_age|child,$can_child_attack" ], @@ -3346,7 +3328,7 @@ ] }, { - "name": "Mountain Crater Bean Patch", + "name": "DMC Bean Patch", "access_rules": [ "$has_age|child,ocarina,bolero" ], @@ -3362,7 +3344,8 @@ "hosted_item": "bean_crater_yes" }, { - "name": "GS37", + "name": "DMC GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_bottle,$can_child_attack" ], @@ -3381,10 +3364,10 @@ "y": 66 } ] - } - ] - } - ] + } + ] + } + ] }, { "name": "Hyrule Town", @@ -3394,10 +3377,10 @@ "name": "Market", "children": [ { - "name": "Dog Lady", + "name": "Market Dog Lady House", "sections": [ { - "name": "RichardZ", + "name": "Market Lost Dog", "access_rules": [ "$has_age|child" ], @@ -3413,11 +3396,11 @@ ] }, { - "name": "Castle Town Shooting Gallery", - "short_name": "Market Shooting Gallery", + "name": "Market Shooting Gallery", "sections": [ { - "name": "Child Shooting Gallery", + "name": "Market Shooting Gallery Reward", + "short_name": "Reward", "access_rules": [ "$has_age|child" ], @@ -3433,7 +3416,7 @@ ] }, { - "name": "Mask Shop", + "name": "Market Mask Shop", "access_rules": [ "$has_age|child" ], @@ -3490,7 +3473,7 @@ ] }, { - "name": "Bombchu Bowling", + "name": "Market Bombchu Bowling", "access_rules": [ "$has_age|child,setting_logic_chus_yes,bombchu", "$has_age|child,setting_logic_chus_no,bombs", @@ -3498,12 +3481,14 @@ ], "sections": [ { - "name": "1st round", + "name": "Market Bombchu Bowling First Prize", + "short_name": "1st prize", "capture_item": true, "item_count": 1 }, { - "name": "2nd round", + "name": "Market Bombchu Bowling Second Prize", + "short_name": "2nd prize", "capture_item": true, "item_count": 1 } @@ -3517,10 +3502,11 @@ ] }, { - "name": "Treasure Chest Game", + "name": "Market Treasure Chest Game", "sections": [ { - "name": "Cheater", + "name": "Market Treasure Chest Game Reward", + "short_name": "Reward", "access_rules": [ "$has_age|child,[$can_use_lens]", "{$hintable}" @@ -3538,7 +3524,7 @@ ] }, { - "name": "Bombchu Shop", + "name": "Market Bombchu Shop", "access_rules": [ "$has_age|child" ], @@ -3576,8 +3562,7 @@ ] }, { - "name": "Castle Town Potion Shop", - "short_name": "Market Potion Shop", + "name": "Market Potion Shop", "access_rules": [ "$has_age|child" ], @@ -3615,8 +3600,7 @@ ] }, { - "name": "Castle Town Bazaar", - "short_name": "Market Bazaar", + "name": "Market Bazaar", "access_rules": [ "$has_age|child" ], @@ -3668,7 +3652,8 @@ "item_count": 1 }, { - "name": "Zelda", + "name": "ToT Light Arrows Cutscene", + "short_name": "LACS", "access_rules": [ "$has_age|adult,lacs_meds:2" ], @@ -3684,32 +3669,22 @@ ] }, { - "name": "Big Poes", + "name": "Market Guard House", "sections": [ { - "name": "Happy Hunting", + "name": "Market 10 Big Poes", + "short_name": "Big Poes", "access_rules": [ "$has_age|adult,bow,[ocarina],[epona],$has_bottle", + "$has_age|adult,[bow],ocarina,epona,$has_bottle", "{$hintable}" ], "capture_item": true, "item_count": 1 - } - ], - "map_locations": [ - { - "map": "adult", - "x": 1464, - "y": 390 - } - ] - }, - { - "name": "Castle Market Guard House", - "short_name": "Guardhouse", - "sections": [ + }, { - "name": "GS14", + "name": "Market GS Guard House", + "short_name": "GS", "access_rules": [ "$has_age|child" ], @@ -3723,7 +3698,7 @@ ], "map_locations": [ { - "map": "child", + "map": "adult", "x": 1464, "y": 390 } @@ -3732,13 +3707,13 @@ ] }, { - "name": "Hyrule Castle", + "name": "Hyrule Castle Grounds", "children": [ { "name": "Malon at Castle", "sections": [ { - "name": "Talk to her", + "name": "HC Malon Egg", "access_rules": [ "$has_age|child" ], @@ -3777,20 +3752,20 @@ ] }, { - "name": "Hyrule Castle Garden", + "name": "HC Garden", "access_rules": [ "$has_age|child,childcucco" ], "sections": [ { - "name": "Impa at Castle", + "name": "Song from Impa", "short_name": "Song", "chest_unopened_img": "images/grey_note.png", "chest_opened_img": "images/grey_note_check.png", "item_count": 1 }, { - "name": "Zeldas Letter", + "name": "HC Zeldas Letter", "visibility_rules": [ "childcucco" ], @@ -3806,12 +3781,16 @@ ] }, { - "name": "Hyrule Castle Fairy", + "name": "HC Great Fairy Fountain", + "access_rules": [ + "$has_age|child,$has_explosives" + ], "sections": [ { - "name": "Fairy Fountain", + "name": "HC Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$has_age|child,ocarina,lullaby,$has_explosives" + "ocarina,lullaby" ], "item_count": 1 } @@ -3825,11 +3804,11 @@ ] }, { - "name": "Hyrule Castle Tree", - "short_name": "Tree near Malon", + "name": "HC Tree", "sections": [ { - "name": "GS15", + "name": "HC GS Tree", + "short_name": "GS", "access_rules": [ "$has_age|child,$can_child_attack" ], @@ -3850,13 +3829,14 @@ ] }, { - "name": "Castle Storms Grotto", + "name": "HC Storms Grotto", "access_rules": [ "$hidden_grotto,$has_age|child,ocarina,storm" ], "sections": [ { - "name": "GS16", + "name": "HC GS Storms Grotto", + "short_name": "GS", "access_rules": [ "boomerang,$has_explosives", "{$has_explosives}", @@ -3885,10 +3865,11 @@ "name": "Ganons Castle Grounds", "children": [ { - "name": "Outside Ganon's Castle", + "name": "OGC", "sections": [ { - "name": "GS17", + "name": "OGC GS", + "short_name": "GS", "access_rules": [ "$has_age|adult" ], @@ -3909,12 +3890,16 @@ ] }, { - "name": "Ganons Castle Fairy", + "name": "OGC Great Fairy Fountain", + "access_rules": [ + "$has_age|adult,lift3" + ], "sections": [ { - "name": "Fairy Fountain", + "name": "OGC Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "ocarina,lullaby,lift3,$has_age|adult" + "ocarina,lullaby" ], "item_count": 1 } @@ -3936,10 +3921,10 @@ "color": "#0936a0", "children": [ { - "name": "Zoras River", + "name": "Zora River", "children": [ { - "name": "Frogs", + "name": "ZR Frogs", "access_rules": [ "$has_age|child,$has_explosives", "$has_age|child,scale1", @@ -3947,14 +3932,14 @@ ], "sections": [ { - "name": "Frogs in the Rain", + "name": "ZR Frogs in the Rain", "access_rules": [ "$has_age|child,ocarina,storm" ], "item_count": 1 }, { - "name": "Frog Ocarina Game", + "name": "ZR Frogs Ocarina Game", "access_rules": [ "$has_age|child,ocarina,lullaby,saria,epona,sun,time,storm", "{$hintable}" @@ -3972,14 +3957,14 @@ ] }, { - "name": "Magic Bean Salesman", + "name": "ZR Magic Bean Salesman", + "access_rules": [ + "$has_age|child,$has_explosives", + "$has_age|child,scale1" + ], "sections": [ { "name": "Buy Item", - "access_rules": [ - "$has_age|child,$has_explosives", - "$has_age|child,scale1" - ], "capture_item": true, "item_count": 1 } @@ -3993,16 +3978,16 @@ ] }, { - "name": "Zora River Plateau Open Grotto", - "short_name": "Plateau Grotto", + "name": "ZR Open Grotto", + "access_rules": [ + "$has_age|child,$has_explosives", + "$has_age|child,scale1", + "$has_age|adult" + ], "sections": [ { - "name": "Jump in", - "access_rules": [ - "$has_age|child,$has_explosives", - "$has_age|child,scale1", - "$has_age|adult" - ], + "name": "ZR Open Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -4020,10 +4005,10 @@ ] }, { - "name": "Zora River Lower", + "name": "ZR Near Open Grotto", "sections": [ { - "name": "Freestanding PoH", + "name": "ZR Near Open Grotto Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child,$has_explosives", @@ -4051,10 +4036,10 @@ ] }, { - "name": "Zora River Upper", + "name": "ZR Near Domain", "sections": [ { - "name": "Freestanding PoH", + "name": "ZR Near Domain Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child,$has_explosives", @@ -4082,13 +4067,14 @@ ] }, { - "name": "Zora River Storms Grotto", + "name": "ZR Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Deku Scrubs", + "name": "ZR Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$has_age|child,$has_explosives,$can_stun_deku", "$has_age|child,scale1,$can_stun_deku", @@ -4117,10 +4103,11 @@ ] }, { - "name": "Zora River Tree", + "name": "ZR Tree", "sections": [ { - "name": "GS43", + "name": "ZR GS Tree", + "short_name": "GS", "access_rules": [ "$has_age|child,$can_child_attack" ], @@ -4141,13 +4128,14 @@ ] }, { - "name": "Zora River Ladder", + "name": "ZR Ladder", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS44 (N)", + "name": "ZR GS Ladder (N)", + "short_name": "GS", "access_rules": [ "$has_explosives", "scale1,$can_child_attack" @@ -4169,14 +4157,14 @@ ] }, { - "name": "Zora River Near Raised Grottos", - "short_name": "Plateau Wall", + "name": "ZR Near Raised Grottos", "access_rules": [ "$night_gs,$has_age|adult" ], "sections": [ { - "name": "GS45 (N)", + "name": "ZR GS Near Raised Grottos (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4201,14 +4189,14 @@ ] }, { - "name": "Zora River Above Bridge", - "short_name": "Wall Above Bridge", + "name": "ZR Above Bridge", "access_rules": [ "$night_gs,$has_age|adult" ], "sections": [ { - "name": "GS46 (N)", + "name": "ZR GS Above Bridge (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}" @@ -4241,10 +4229,10 @@ ], "children": [ { - "name": "Torch Run", + "name": "ZD Chest", "sections": [ { - "name": "Run", + "name": "Torches", "access_rules": [ "sticks" ], @@ -4260,7 +4248,7 @@ ] }, { - "name": "Diving Minigame", + "name": "ZD Diving Minigame", "sections": [ { "name": "Dive down", @@ -4310,14 +4298,11 @@ { "name": "King Zora", "access_rules": [ - "$has_bottle,[wallet2]", - "$has_bottle,$adult_fountain", - "$has_bottle,@Ganons Castle/Water Trial", - "$has_bottle,@Gerudo Training Grounds MQ/Before Heavy Block Chest" + "$has_blue_fire" ], "sections": [ { - "name": "Unfreeze him", + "name": "ZD King Zora Thawed", "access_rules": [ "$has_age|adult", "{$hintable}" @@ -4345,13 +4330,14 @@ ] }, { - "name": "Frozen Waterfall", + "name": "ZD Frozen Waterfall", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS47 (N)", + "name": "ZD GS Frozen Waterfall (N)", + "short_name": "GS", "access_rules": [ "hookshot", "bow", @@ -4376,12 +4362,13 @@ ] }, { - "name": "Zora Shop", + "name": "ZD Shop", "access_rules": [ - "$has_age|child,$has_explosives,[ocarina],[lullaby]", "$has_age|child,scale1", - "$has_age|adult,ocarina,lullaby,$has_bottle", - "$has_age|adult,hoverboots,[ocarina],[lullaby],$has_bottle" + "$has_age|child,$has_explosives,ocarina,lullaby", + "$has_age|child,$has_explosives,[logic_zora_with_cucco]", + "$has_age|adult,$has_blue_fire,ocarina,lullaby", + "$has_age|adult,$has_blue_fire,hoverboots,[logic_zora_with_hovers]" ], "sections": [ { @@ -4428,16 +4415,17 @@ "name": "Zoras Fountain", "children": [ { - "name": "Zoras Fountain Fairy", + "name": "ZF Great Fairy Fountain", "access_rules": [ - "ocarina,lullaby,$has_explosives" + "$child_fountain,$has_explosives", + "$adult_fountain,$has_explosives" ], "sections": [ { - "name": "Fairy Fountain", + "name": "ZF Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$child_fountain", - "$adult_fountain" + "ocarina,lullaby" ], "item_count": 1 } @@ -4456,11 +4444,10 @@ ] }, { - "name": "Zoras Fountain Bottom", - "short_name": "Under Water", + "name": "ZF Bottom", "sections": [ { - "name": "Freestanding PoH", + "name": "ZF Bottom Freestanding PoH", "short_name": "HP", "access_rules": [ "$adult_fountain,ironboots,$FTR_or_zora", @@ -4481,11 +4468,10 @@ ] }, { - "name": "Zoras Fountain Iceberg", - "short_name": "Ice Floe", + "name": "ZF Iceberg", "sections": [ { - "name": "Freestanding PoH", + "name": "ZF Iceberg Freestanding PoH", "short_name": "HP", "access_rules": [ "$adult_fountain" @@ -4504,14 +4490,14 @@ ] }, { - "name": "Zora's Fountain Hidden Cave", - "short_name": "Hidden Cave", + "name": "ZF Hidden Cave", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS50 (N)", + "name": "ZF GS Hidden Cave (N)", + "short_name": "GS", "access_rules": [ "$adult_fountain,lift2,$can_blast,hookshot", "{$adult_fountain,lift2,$has_explosives}", @@ -4537,11 +4523,11 @@ ] }, { - "name": "Zora's Fountain Tree", - "short_name": "Tree", + "name": "ZF Tree", "sections": [ { - "name": "GS48", + "name": "ZF GS Tree", + "short_name": "GS", "access_rules": [ "$child_fountain" ], @@ -4562,14 +4548,14 @@ ] }, { - "name": "Zora's Fountain Above the Log", - "short_name": "Wall near Log", + "name": "ZF Above the Log", "access_rules": [ "$night_gs,$child_fountain" ], "sections": [ { - "name": "GS49 (N)", + "name": "ZF GS Above the Log (N)", + "short_name": "GS", "access_rules": [ "boomerang", "{sling}", @@ -4605,11 +4591,10 @@ "name": "Gerudo Valley", "children": [ { - "name": "Gerudo Valley Crate", - "short_name": "Valley Crate", + "name": "GV Crate", "sections": [ { - "name": "Freestanding PoH", + "name": "GV Crate Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child", @@ -4635,11 +4620,10 @@ ] }, { - "name": "Gerudo Valley Waterfall", - "short_name": "Valley Waterfall", + "name": "GV Waterfall", "sections": [ { - "name": "Freestanding PoH", + "name": "GV Waterfall Freestanding PoH", "short_name": "HP", "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", @@ -4660,8 +4644,7 @@ ] }, { - "name": "Gerudo Valley Cow", - "short_name": "Valley Cow", + "name": "GV Cow", "sections": [ { "name": "Cow", @@ -4685,14 +4668,14 @@ ] }, { - "name": "Gerudo Valley Small Bridge", - "short_name": "Waterfall Near Entrance", + "name": "GV Small Bridge", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS86 (N)", + "name": "GV GS Small Bridge (N)", + "short_name": "GS", "access_rules": [ "boomerang", "{sling}", @@ -4717,10 +4700,11 @@ ] }, { - "name": "Gerudo Valley Bean Patch", + "name": "GV Bean Patch", "sections": [ { - "name": "GS87", + "name": "GV GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -4743,13 +4727,13 @@ ] }, { - "name": "Bridge Crossing", + "name": "GV Fortress Side", "access_rules": [ "$gerudo_valley_far_side" ], "children": [ { - "name": "Hammer Rocks", + "name": "GV Chest", "sections": [ { "name": "Smash 'em", @@ -4790,13 +4774,14 @@ ] }, { - "name": "Gerudo Valley Storms Grotto", + "name": "GV Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Deku Scrubs", + "name": "GV Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -4815,14 +4800,14 @@ ] }, { - "name": "Gerudo Valley Behind Tent", - "short_name": "GV Behind Tent", + "name": "GV Behind Tent", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS88 (N)", + "name": "GV GS Behind Tent (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4847,14 +4832,14 @@ ] }, { - "name": "Gerudo Valley Pillar", - "short_name": "GV Pillar", + "name": "GV Pillar", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS89 (N)", + "name": "GV GS Pillar (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4881,7 +4866,7 @@ "name": "Gerudo Fortress", "children": [ { - "name": "Rooftop Chest", + "name": "GF Chest", "sections": [ { "name": "Open it", @@ -4902,19 +4887,19 @@ ] }, { - "name": "Horseback Archery", + "name": "GF HBA", + "access_rules": [ + "ocarina,epona,bow,$gerudo_card" + ], "sections": [ { - "name": "1000", - "access_rules": [ - "ocarina,epona,bow,$gerudo_card" - ], + "name": "1000 Points", "item_count": 1 }, { - "name": "1500", + "name": "1500 Points", "access_rules": [ - "ocarina,epona,bow,$gerudo_card", + "bow", "{$hintable}" ], "capture_item": true, @@ -4930,13 +4915,14 @@ ] }, { - "name": "Archery Range", + "name": "GF Archery Range", "access_rules": [ "$night_gs,$gerudo_card" ], "sections": [ { - "name": "GS90 (N)", + "name": "GF GS Archery Range (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4960,13 +4946,14 @@ ] }, { - "name": "Top Floor", + "name": "GF Top Floor", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS91 (N)", + "name": "GF GS Top Floor (N)", + "short_name": "GS", "access_rules": [ "$gerudo_card", "bow", @@ -5002,32 +4989,21 @@ ], "children": [ { - "name": "Haunted Wasteland Structure", - "short_name": "Central Structure", + "name": "Wasteland Structure", "sections": [ { - "name": "Torches", + "name": "Wasteland Chest", + "short_name": "Chest", "access_rules": [ "$has_fire", "{$hintable}" ], "capture_item": true, "item_count": 1 - } - ], - "map_locations": [ - { - "map": "adult", - "x": 360, - "y": 283 - } - ] - }, - { - "name": "Wasteland Ruins", - "sections": [ + }, { - "name": "GS92", + "name": "Wasteland GS", + "short_name": "GS", "access_rules": [ "hookshot", "[hookshot],bombs,shield2", @@ -5047,7 +5023,7 @@ { "map": "adult", "x": 360, - "y": 313 + "y": 283 } ] } @@ -5057,12 +5033,16 @@ "name": "Desert Colossus", "children": [ { - "name": "Colossus Fairy", + "name": "Colossus Great Fairy Fountain", + "access_rules": [ + "$adult_colossus,$has_explosives" + ], "sections": [ { - "name": "Fairy Fountain", + "name": "Colossus Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$adult_colossus,ocarina,lullaby,$has_explosives" + "ocarina,lullaby" ], "item_count": 1 } @@ -5081,11 +5061,10 @@ ] }, { - "name": "Colossus Freestanding PoH", - "short_name": "Arch HP", + "name": "Colossus Arch", "sections": [ { - "name": "Freestanding PoH", + "name": "Colossus Freestanding PoH", "short_name": "HP", "access_rules": [ "$child_colossus,setting_plant_no,beans,$has_age|adult", @@ -5141,14 +5120,14 @@ ] }, { - "name": "Desert Colossus Grotto", - "short_name": "Under Silver Rock", + "name": "Colossus Grotto", + "access_rules": [ + "$adult_colossus,$has_age|adult,lift2" + ], "sections": [ { - "name": "Deku Scrubs", - "access_rules": [ - "$adult_colossus,$has_age|adult,lift2" - ], + "name": "Colossus Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -5167,7 +5146,7 @@ ] }, { - "name": "Desert Colossus Bean Patch", + "name": "Colossus Bean Patch", "access_rules": [ "$child_colossus" ], @@ -5183,7 +5162,8 @@ "hosted_item": "bean_colossus_yes" }, { - "name": "GS93", + "name": "Colossus GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_bottle,$can_child_attack" ], @@ -5204,14 +5184,14 @@ ] }, { - "name": "Desert Colossus Tree", - "short_name": "Tree Near Oasis", + "name": "Colossus Tree", "access_rules": [ "$adult_colossus,$has_age|adult,$night_gs" ], "sections": [ { - "name": "GS94 (N)", + "name": "Colossus GS Tree (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -5236,14 +5216,14 @@ ] }, { - "name": "Desert Colossus Hill", - "short_name": "Top Of Platform", + "name": "Colossus Hill", "access_rules": [ "$has_age|adult,$night_gs" ], "sections": [ { - "name": "GS95 (N)", + "name": "Colossus GS Hill (N)", + "short_name": "GS", "access_rules": [ "$child_colossus,setting_plant_no,beans", "$child_colossus,bean_colossus_yes", diff --git a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json index 373897dd..f6420790 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json +++ b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json @@ -9,8 +9,8 @@ "color": "#18a50e", "children": [ { - "name": "Kokiri Forest -> Kokiri Forest Storms Grotto", - "short_name": "Kokiri Storms Grotto", + "name": "Kokiri Forest -> KF Storms Grotto", + "short_name": "KF Storms Grotto", "sections": [ { "name": "Grotto", @@ -28,8 +28,8 @@ ] }, { - "name": "Kokiri Forest -> House of Twins", - "short_name": "House of Twins", + "name": "Kokiri Forest -> KF House of Twins", + "short_name": "KF House of Twins", "sections": [ { "name": "House", @@ -47,8 +47,8 @@ ] }, { - "name": "Kokiri Forest -> Know It All House", - "short_name": "Know It All House", + "name": "Kokiri Forest -> KF Know It All House", + "short_name": "KF Know It All House", "sections": [ { "name": "House", @@ -66,8 +66,8 @@ ] }, { - "name": "Kokiri Forest -> Kokiri Shop", - "short_name": "Kokiri Shop", + "name": "Kokiri Forest -> KF Kokiri Shop", + "short_name": "KF Kokiri Shop", "sections": [ { "name": "House", @@ -85,8 +85,8 @@ ] }, { - "name": "Kokiri Forest -> Links House", - "short_name": "Links House", + "name": "Kokiri Forest -> KF Links House", + "short_name": "KF Links House", "sections": [ { "name": "House", @@ -104,8 +104,8 @@ ] }, { - "name": "Kokiri Forest -> Mido House", - "short_name": "Mido House", + "name": "Kokiri Forest -> KF Midos House", + "short_name": "KF Midos House", "sections": [ { "name": "House", @@ -123,8 +123,8 @@ ] }, { - "name": "Kokiri Forest -> Saria House", - "short_name": "Saria House", + "name": "Kokiri Forest -> KF Sarias House", + "short_name": "KF Sarias House", "sections": [ { "name": "House", @@ -142,7 +142,7 @@ ] }, { - "name": "Outside Deku Tree -> Deku Tree Lobby", + "name": "KF Outside Deku Tree -> Deku Tree Lobby", "short_name": "Deku Tree", "sections": [ { @@ -180,7 +180,7 @@ ] }, { - "name": "Kokiri Forest -> Lost Woods Bridge From Forest", + "name": "Kokiri Forest -> LW Bridge From Forest", "short_name": "KF -> Bridge", "sections": [ { @@ -205,8 +205,8 @@ "color": "#18a50e", "children": [ { - "name": "Lost Woods -> Lost Woods Generic Grotto", - "short_name": "LW Generic Grotto", + "name": "Lost Woods -> LW Near Shortcuts Grotto", + "short_name": "LW Near Shortcuts Grotto", "sections": [ { "name": "Grotto", @@ -224,7 +224,7 @@ ] }, { - "name": "Lost Woods Beyond Mido -> Deku Theater", + "name": "LW Beyond Mido -> Deku Theater", "short_name": "Deku Theater", "sections": [ { @@ -243,8 +243,8 @@ ] }, { - "name": "Lost Woods Beyond Mido -> Lost Woods Sales Grotto", - "short_name": "LW Sales Grotto", + "name": "LW Beyond Mido -> LW Scrubs Grotto", + "short_name": "LW Scrubs Grotto", "sections": [ { "name": "Grotto", @@ -262,7 +262,7 @@ ] }, { - "name": "Lost Woods -> Goron City Woods Warp", + "name": "Lost Woods -> GC Woods Warp", "short_name": "LW -> GC", "sections": [ { @@ -300,7 +300,7 @@ ] }, { - "name": "Lost Woods Beyond Mido -> Sacred Forest Meadow Entryway", + "name": "LW Beyond Mido -> SFM Entryway", "short_name": "LW -> SFM", "sections": [ { @@ -319,7 +319,7 @@ ] }, { - "name": "Lost Woods Forest Exit -> Kokiri Forest", + "name": "LW Forest Exit -> Kokiri Forest", "short_name": "LW -> KF", "sections": [ { @@ -338,7 +338,7 @@ ] }, { - "name": "Lost Woods Bridge -> Kokiri Forest", + "name": "LW Bridge -> Kokiri Forest", "short_name": "Bridge -> KF", "sections": [ { @@ -357,7 +357,7 @@ ] }, { - "name": "Lost Woods Bridge -> Hyrule Field", + "name": "LW Bridge -> Hyrule Field", "short_name": "Bridge -> HF", "sections": [ { @@ -382,7 +382,7 @@ "color": "#18a50e", "children": [ { - "name": "Sacred Forest Meadow -> Meadow Fairy Grotto", + "name": "Sacred Forest Meadow -> SFM Fairy Grotto", "short_name": "SFM Fairy Grotto", "sections": [ { @@ -401,7 +401,7 @@ ] }, { - "name": "Sacred Forest Meadow -> Meadow Storms Grotto", + "name": "Sacred Forest Meadow -> SFM Storms Grotto", "short_name": "SFM Storms Grotto", "sections": [ { @@ -420,8 +420,8 @@ ] }, { - "name": "Sacred Forest Meadow Entryway -> Front of Meadow Grotto", - "short_name": "Wolfos Grotto", + "name": "SFM Entryway -> SFM Wolfos Grotto", + "short_name": "SFM Wolfos Grotto", "sections": [ { "name": "Grotto", @@ -458,7 +458,7 @@ ] }, { - "name": "Sacred Forest Meadow Entryway -> Lost Woods Beyond Mido", + "name": "SFM Entryway -> LW Beyond Mido", "short_name": "SFM -> LW", "sections": [ { @@ -483,7 +483,7 @@ "color": "#09a09d", "children": [ { - "name": "Hyrule Field -> Field Far West Castle Town Grotto", + "name": "Hyrule Field -> HF Fairy Grotto", "short_name": "HF Fairy Grotto", "sections": [ { @@ -502,8 +502,8 @@ ] }, { - "name": "Hyrule Field -> Field Kakariko Grotto", - "short_name": "HF Kakariko Grotto", + "name": "Hyrule Field -> HF Near Kak Grotto", + "short_name": "HF Near Kak Grotto", "sections": [ { "name": "Grotto", @@ -521,7 +521,7 @@ ] }, { - "name": "Hyrule Field -> Field Near Lake Inside Fence Grotto", + "name": "Hyrule Field -> HF Inside Fence Grotto", "short_name": "HF Inside Fence Grotto", "sections": [ { @@ -540,8 +540,8 @@ ] }, { - "name": "Hyrule Field -> Field Near Lake Outside Fence Grotto", - "short_name": "HF Outside Fence Grotto", + "name": "Hyrule Field -> HF Open Grotto", + "short_name": "HF Open Grotto", "sections": [ { "name": "Grotto", @@ -559,7 +559,7 @@ ] }, { - "name": "Hyrule Field -> Field North Lon Lon Grotto", + "name": "Hyrule Field -> HF Tektite Grotto", "short_name": "HF Tektite Grotto", "sections": [ { @@ -578,8 +578,8 @@ ] }, { - "name": "Hyrule Field -> Field Valley Grotto", - "short_name": "HF Valley Grotto", + "name": "Hyrule Field -> HF Cow Grotto", + "short_name": "HF Cow Grotto", "sections": [ { "name": "Grotto", @@ -597,8 +597,8 @@ ] }, { - "name": "Hyrule Field -> Field West Castle Town Grotto", - "short_name": "HF Near Bridge Grotto", + "name": "Hyrule Field -> HF Near Market Grotto", + "short_name": "HF Near Market Grotto", "sections": [ { "name": "Grotto", @@ -616,8 +616,8 @@ ] }, { - "name": "Hyrule Field -> Remote Southern Grotto", - "short_name": "Remote Southern Grotto", + "name": "Hyrule Field -> HF Southeast Grotto", + "short_name": "HF Southeast Grotto", "sections": [ { "name": "Grotto", @@ -635,7 +635,7 @@ ] }, { - "name": "Hyrule Field -> Castle Town Entrance", + "name": "Hyrule Field -> Market Entrance", "short_name": "HF -> CTE", "sections": [ { @@ -730,7 +730,7 @@ ] }, { - "name": "Hyrule Field -> Lost Woods Bridge", + "name": "Hyrule Field -> LW Bridge", "short_name": "HF -> Bridge", "sections": [ { @@ -749,7 +749,7 @@ ] }, { - "name": "Hyrule Field -> Zora River Front", + "name": "Hyrule Field -> ZR Front", "short_name": "HF -> ZR", "sections": [ { @@ -774,7 +774,7 @@ "color": "#09a09d", "children": [ { - "name": "Lon Lon Ranch -> Lon Lon Grotto", + "name": "Lon Lon Ranch -> LLR Grotto", "short_name": "LLR Grotto", "sections": [ { @@ -793,8 +793,8 @@ ] }, { - "name": "Lon Lon Ranch -> Ingo Barn", - "short_name": "Ingo Barn", + "name": "Lon Lon Ranch -> LLR Stables", + "short_name": "LLR Stables", "sections": [ { "name": "House", @@ -812,7 +812,7 @@ ] }, { - "name": "Lon Lon Ranch -> Lon Lon Corner Tower", + "name": "Lon Lon Ranch -> LLR Tower", "short_name": "LLR Tower", "sections": [ { @@ -831,8 +831,8 @@ ] }, { - "name": "Lon Lon Ranch -> Talon House", - "short_name": "Talon House", + "name": "Lon Lon Ranch -> LLR Talons House", + "short_name": "LLR Talons House", "sections": [ { "name": "House", @@ -875,8 +875,8 @@ "color": "#6909a0", "children": [ { - "name": "Kakariko Village -> Kakariko Bombable Grotto", - "short_name": "Kakariko Bombable Grotto", + "name": "Kakariko Village -> Kak Redead Grotto", + "short_name": "Kak Redead Grotto", "sections": [ { "name": "Grotto", @@ -894,8 +894,8 @@ ] }, { - "name": "Kakariko Village Backyard -> Kakariko Back Grotto", - "short_name": "Kakariko Back Grotto", + "name": "Kak Backyard -> Kak Open Grotto", + "short_name": "Kak Open Grotto", "sections": [ { "name": "Grotto", @@ -913,8 +913,8 @@ ] }, { - "name": "Kakariko Village -> Carpenter Boss House", - "short_name": "Carpenter Boss House", + "name": "Kakariko Village -> Kak Carpenter Boss House", + "short_name": "Kak Carpenter Boss House", "sections": [ { "name": "House", @@ -932,8 +932,8 @@ ] }, { - "name": "Kakariko Village -> House of Skulltula", - "short_name": "House of Skulltula", + "name": "Kakariko Village -> Kak House of Skulltula", + "short_name": "Kak House of Skulltula", "sections": [ { "name": "House", @@ -951,8 +951,8 @@ ] }, { - "name": "Kakariko Village -> Impas House", - "short_name": "Impas House", + "name": "Kakariko Village -> Kak Impas House", + "short_name": "Kak Impas House", "sections": [ { "name": "House", @@ -970,8 +970,8 @@ ] }, { - "name": "Kakariko Village -> Impas House Back", - "short_name": "Impas House Back", + "name": "Kak Impas Ledge -> Kak Impas House Back", + "short_name": "Kak Impas House Back", "sections": [ { "name": "House", @@ -989,8 +989,8 @@ ] }, { - "name": "Kakariko Village -> Kakariko Bazaar", - "short_name": "Kakariko Bazaar", + "name": "Kakariko Village -> Kak Bazaar", + "short_name": "Kak Bazaar", "sections": [ { "name": "House", @@ -1008,8 +1008,8 @@ ] }, { - "name": "Kakariko Village -> Kakariko Potion Shop Front", - "short_name": "Kakariko Potion Shop Front", + "name": "Kakariko Village -> Kak Potion Shop Front", + "short_name": "Kak Potion Shop Front", "sections": [ { "name": "House", @@ -1027,8 +1027,8 @@ ] }, { - "name": "Kakariko Village -> Kakariko Shooting Gallery", - "short_name": "Kakariko Shooting Gallery", + "name": "Kakariko Village -> Kak Shooting Gallery", + "short_name": "Kak Shooting Gallery", "sections": [ { "name": "House", @@ -1046,8 +1046,8 @@ ] }, { - "name": "Kakariko Village -> Windmill", - "short_name": "Windmill", + "name": "Kakariko Village -> Kak Windmill", + "short_name": "Kak Windmill", "sections": [ { "name": "House", @@ -1065,8 +1065,8 @@ ] }, { - "name": "Kakariko Village Backyard -> Kakariko Potion Shop Back", - "short_name": "Kakariko Potion Shop Back", + "name": "Kak Backyard -> Kak Potion Shop Back", + "short_name": "Kak Potion Shop Back", "sections": [ { "name": "House", @@ -1084,8 +1084,8 @@ ] }, { - "name": "Kakariko Village Backyard -> Odd Medicine Building", - "short_name": "Odd Medicine Building", + "name": "Kak Backyard -> Kak Odd Medicine Building", + "short_name": "Kak Odd Medicine Building", "sections": [ { "name": "House", @@ -1160,7 +1160,7 @@ ] }, { - "name": "Kakariko Village Behind Gate -> Death Mountain", + "name": "Kak Behind Gate -> Death Mountain", "short_name": "Kak -> DMT", "sections": [ { @@ -1185,7 +1185,7 @@ "color": "#6909a0", "children": [ { - "name": "Graveyard -> Composer Grave", + "name": "Graveyard -> Graveyard Composers Grave", "short_name": "Composer Grave", "sections": [ { @@ -1204,7 +1204,7 @@ ] }, { - "name": "Graveyard -> Dampes Grave", + "name": "Graveyard -> Graveyard Dampes Grave", "short_name": "Dampes Grave", "sections": [ { @@ -1223,7 +1223,7 @@ ] }, { - "name": "Graveyard -> Heart Piece Grave", + "name": "Graveyard -> Graveyard Heart Piece Grave", "short_name": "Heart Piece Grave", "sections": [ { @@ -1242,7 +1242,7 @@ ] }, { - "name": "Graveyard -> Shield Grave", + "name": "Graveyard -> Graveyard Shield Grave", "short_name": "Shield Grave", "sections": [ { @@ -1261,7 +1261,7 @@ ] }, { - "name": "Graveyard -> Dampes House", + "name": "Graveyard -> Graveyard Dampes House", "short_name": "Dampes House", "sections": [ { @@ -1280,7 +1280,7 @@ ] }, { - "name": "Shadow Temple Warp Region -> Shadow Temple Entryway", + "name": "Graveyard Warp Pad Region -> Shadow Temple Entryway", "short_name": "Shadow Temple", "sections": [ { @@ -1320,12 +1320,12 @@ ] }, { - "name": "Castle Town", + "name": "Market", "color": "#09a09d", "children": [ { - "name": "Castle Town -> Castle Town Bazaar", - "short_name": "Castle Town Bazaar", + "name": "Market -> Market Bazaar", + "short_name": "Market Bazaar", "sections": [ { "name": "House", @@ -1343,8 +1343,8 @@ ] }, { - "name": "Castle Town -> Castle Town Bombchu Bowling", - "short_name": "Bombchu Bowling", + "name": "Market -> Market Bombchu Bowling", + "short_name": "Market Bombchu Bowling", "sections": [ { "name": "House", @@ -1362,8 +1362,8 @@ ] }, { - "name": "Castle Town -> Castle Town Bombchu Shop", - "short_name": "Bombchu Shop", + "name": "Market -> Market Bombchu Shop", + "short_name": "Market Bombchu Shop", "sections": [ { "name": "House", @@ -1381,8 +1381,8 @@ ] }, { - "name": "Castle Town -> Castle Town Man in Green House", - "short_name": "Man in Green House", + "name": "Market -> Market Man in Green House", + "short_name": "Market Man in Green House", "sections": [ { "name": "House", @@ -1400,8 +1400,8 @@ ] }, { - "name": "Castle Town -> Castle Town Mask Shop", - "short_name": "Mask Shop", + "name": "Market -> Market Mask Shop", + "short_name": "Market Mask Shop", "sections": [ { "name": "House", @@ -1419,8 +1419,8 @@ ] }, { - "name": "Castle Town -> Castle Town Potion Shop", - "short_name": "Potion Shop", + "name": "Market -> Market Potion Shop", + "short_name": "Market Potion Shop", "sections": [ { "name": "House", @@ -1438,8 +1438,8 @@ ] }, { - "name": "Castle Town -> Castle Town Shooting Gallery", - "short_name": "Castle Town Shooting Gallery", + "name": "Market -> Market Shooting Gallery", + "short_name": "Market Shooting Gallery", "sections": [ { "name": "House", @@ -1457,8 +1457,8 @@ ] }, { - "name": "Castle Town -> Castle Town Treasure Chest Game", - "short_name": "Treasure Chest Game", + "name": "Market -> Market Treasure Chest Game", + "short_name": "Market Treasure Chest Game", "sections": [ { "name": "House", @@ -1476,8 +1476,8 @@ ] }, { - "name": "Castle Town Entrance -> Castle Town Rupee Room", - "short_name": "Castle Town Rupee Room", + "name": "Market Entrance -> Market Guard House", + "short_name": "Market Guard House", "sections": [ { "name": "House", @@ -1495,7 +1495,7 @@ ] }, { - "name": "Temple of Time Exterior -> Temple of Time", + "name": "ToT Entrance -> Temple of Time", "short_name": "Temple of Time", "sections": [ { @@ -1514,7 +1514,7 @@ ] }, { - "name": "Castle Town -> Castle Grounds", + "name": "Market -> Castle Grounds", "short_name": "CT -> CG", "sections": [ { @@ -1533,7 +1533,7 @@ ] }, { - "name": "Castle Town -> Castle Town Entrance", + "name": "Market -> Market Entrance", "short_name": "CT -> CTE", "sections": [ { @@ -1552,7 +1552,7 @@ ] }, { - "name": "Castle Town -> Temple of Time Exterior", + "name": "Market -> ToT Entrance", "short_name": "CT -> ToT", "sections": [ { @@ -1571,7 +1571,7 @@ ] }, { - "name": "Castle Town Entrance -> Castle Town", + "name": "Market Entrance -> Market", "short_name": "CTE -> CT", "sections": [ { @@ -1590,7 +1590,7 @@ ] }, { - "name": "Castle Town Entrance -> Hyrule Field", + "name": "Market Entrance -> Hyrule Field", "short_name": "CTE -> HF", "sections": [ { @@ -1609,7 +1609,7 @@ ] }, { - "name": "Temple of Time Exterior -> Castle Town", + "name": "ToT Entrance -> Market", "short_name": "ToT -> CT", "sections": [ { @@ -1634,8 +1634,8 @@ "color": "#09a09d", "children": [ { - "name": "Hyrule Castle Grounds -> Castle Storms Grotto", - "short_name": "Castle Storms Grotto", + "name": "Hyrule Castle Grounds -> HC Storms Grotto", + "short_name": "HC Storms Grotto", "sections": [ { "name": "Grotto", @@ -1653,8 +1653,8 @@ ] }, { - "name": "Ganons Castle Grounds -> Ganons Castle Fairy", - "short_name": "Ganons Castle Fairy", + "name": "Ganons Castle Grounds -> OGC Great Fairy Fountain", + "short_name": "OGC Great Fairy Fountain", "sections": [ { "name": "House", @@ -1672,8 +1672,8 @@ ] }, { - "name": "Hyrule Castle Grounds -> Hyrule Castle Fairy", - "short_name": "Hyrule Castle Fairy", + "name": "Hyrule Castle Grounds -> HC Great Fairy Fountain", + "short_name": "HC Great Fairy Fountain", "sections": [ { "name": "House", @@ -1691,7 +1691,7 @@ ] }, { - "name": "Castle Grounds -> Castle Town", + "name": "Castle Grounds -> Market", "short_name": "CG -> CT", "sections": [ { @@ -1716,8 +1716,8 @@ "color": "#a01009", "children": [ { - "name": "Death Mountain -> Mountain Bombable Grotto", - "short_name": "DMT Bombable Grotto", + "name": "Death Mountain Summit -> DMT Cow Grotto", + "short_name": "DMT Cow Grotto", "sections": [ { "name": "Grotto", @@ -1735,7 +1735,7 @@ ] }, { - "name": "Death Mountain -> Mountain Storms Grotto", + "name": "Death Mountain -> DMT Storms Grotto", "short_name": "DMT Storms Grotto", "sections": [ { @@ -1754,8 +1754,8 @@ ] }, { - "name": "Death Mountain Summit -> Mountain Summit Fairy", - "short_name": "DMT Fairy", + "name": "Death Mountain Summit -> DMT Great Fairy Fountain", + "short_name": "DMT Great Fairy Fountain", "sections": [ { "name": "House", @@ -1811,7 +1811,7 @@ ] }, { - "name": "Death Mountain -> Kakariko Village Behind Gate", + "name": "Death Mountain -> Kak Behind Gate", "short_name": "DMT -> Kak", "sections": [ { @@ -1830,7 +1830,7 @@ ] }, { - "name": "Death Mountain Summit -> Death Mountain Crater Upper", + "name": "Death Mountain Summit -> DMC Upper Local", "short_name": "DMT -> DMC", "sections": [ { @@ -1849,8 +1849,8 @@ ] }, { - "name": "Death Mountain Summit Owl Flight -> Kakariko Village", - "short_name": "DMT Owl", + "name": "DMT Owl Flight -> Kak Impas Ledge", + "short_name": "DMT Owl Flight", "sections": [ { "name": "Overworld", @@ -1874,8 +1874,8 @@ "color": "#a01009", "children": [ { - "name": "Death Mountain Crater Upper -> Top of Crater Grotto", - "short_name": "Top of DMC Grotto", + "name": "DMC Upper Nearby -> DMC Upper Grotto", + "short_name": "DMC Upper Grotto", "sections": [ { "name": "Grotto", @@ -1893,7 +1893,7 @@ ] }, { - "name": "Death Mountain Crater Lower -> DMC Hammer Grotto", + "name": "DMC Lower Nearby -> DMC Hammer Grotto", "short_name": "DMC Hammer Grotto", "sections": [ { @@ -1912,8 +1912,8 @@ ] }, { - "name": "Death Mountain Crater Lower -> Crater Fairy", - "short_name": "DMC Fairy", + "name": "DMC Lower Nearby -> DMC Great Fairy Fountain", + "short_name": "DMC Great Fairy Fountain", "sections": [ { "name": "House", @@ -1931,7 +1931,7 @@ ] }, { - "name": "Death Mountain Crater Central -> Fire Temple Lower", + "name": "Fire Temple Entrance -> Fire Temple Lower", "short_name": "Fire Temple", "sections": [ { @@ -1950,7 +1950,7 @@ ] }, { - "name": "Death Mountain Crater Lower -> Darunias Chamber", + "name": "DMC Lower Nearby -> GC Darunias Chamber", "short_name": "DMC -> GC", "sections": [ { @@ -1969,7 +1969,7 @@ ] }, { - "name": "Death Mountain Crater Upper -> Death Mountain Summit", + "name": "DMC Upper Nearby -> Death Mountain Summit", "short_name": "DMC -> DMT", "sections": [ { @@ -1994,8 +1994,8 @@ "color": "#a01009", "children": [ { - "name": "Goron City -> Goron City Grotto", - "short_name": "Goron City Grotto", + "name": "Goron City -> GC Grotto", + "short_name": "GC Grotto", "sections": [ { "name": "Grotto", @@ -2013,8 +2013,8 @@ ] }, { - "name": "Goron City -> Goron Shop", - "short_name": "Goron Shop", + "name": "Goron City -> GC Shop", + "short_name": "GC Shop", "sections": [ { "name": "House", @@ -2032,7 +2032,7 @@ ] }, { - "name": "Darunias Chamber -> Death Mountain Crater Lower", + "name": "GC Darunias Chamber -> DMC Lower Local", "short_name": "GC -> DMC", "sections": [ { @@ -2070,7 +2070,7 @@ ] }, { - "name": "Goron City Woods Warp -> Lost Woods", + "name": "GC Woods Warp -> Lost Woods", "short_name": "GC -> LW", "sections": [ { @@ -2095,8 +2095,8 @@ "color": "#0936a0", "children": [ { - "name": "Lake Hylia -> Lake Hylia Grotto", - "short_name": "Lake Hylia Grotto", + "name": "Lake Hylia -> LH Grotto", + "short_name": "LH Grotto", "sections": [ { "name": "Grotto", @@ -2114,8 +2114,8 @@ ] }, { - "name": "Lake Hylia -> Fishing Hole", - "short_name": "Fishing Hole", + "name": "Lake Hylia -> LH Fishing Hole", + "short_name": "LH Fishing Hole", "sections": [ { "name": "House", @@ -2133,8 +2133,8 @@ ] }, { - "name": "Lake Hylia -> Lake Hylia Lab", - "short_name": "Lake Hylia Lab", + "name": "Lake Hylia -> LH Lab", + "short_name": "LH Lab", "sections": [ { "name": "House", @@ -2209,8 +2209,8 @@ ] }, { - "name": "Lake Hylia Owl Flight -> Hyrule Field", - "short_name": "LH Owl", + "name": "LH Owl Flight -> Hyrule Field", + "short_name": "LH Owl Flight", "sections": [ { "name": "Overworld", @@ -2234,8 +2234,8 @@ "color": "#0936a0", "children": [ { - "name": "Zora River -> Zora River Plateau Bombable Grotto", - "short_name": "ZR Plateau Bombable Grotto", + "name": "Zora River -> ZR Fairy Grotto", + "short_name": "ZR Fairy Grotto", "sections": [ { "name": "Grotto", @@ -2253,8 +2253,8 @@ ] }, { - "name": "Zora River -> Zora River Plateau Open Grotto", - "short_name": "ZR Plateau Open Grotto", + "name": "Zora River -> ZR Open Grotto", + "short_name": "ZR Open Grotto", "sections": [ { "name": "Grotto", @@ -2272,7 +2272,7 @@ ] }, { - "name": "Zora River -> Zora River Storms Grotto", + "name": "Zora River -> ZR Storms Grotto", "short_name": "ZR Storms Grotto", "sections": [ { @@ -2310,7 +2310,7 @@ ] }, { - "name": "Zora River Behind Waterfall -> Zoras Domain", + "name": "ZR Behind Waterfall -> Zoras Domain", "short_name": "ZR -> ZD", "sections": [ { @@ -2329,7 +2329,7 @@ ] }, { - "name": "Zora River Front -> Hyrule Field", + "name": "ZR Front -> Hyrule Field", "short_name": "ZR -> HF", "sections": [ { @@ -2354,7 +2354,7 @@ "color": "#0936a0", "children": [ { - "name": "Zoras Domain -> Zoras Domain Storms Grotto", + "name": "Zoras Domain -> ZD Storms Grotto", "short_name": "ZD Storms Grotto", "sections": [ { @@ -2373,8 +2373,8 @@ ] }, { - "name": "Zoras Domain -> Zora Shop", - "short_name": "Zora Shop", + "name": "Zoras Domain -> ZD Shop", + "short_name": "ZD Shop", "sections": [ { "name": "House", @@ -2411,7 +2411,7 @@ ] }, { - "name": "Zoras Domain -> Zora River Behind Waterfall", + "name": "Zoras Domain -> ZR Behind Waterfall", "short_name": "ZD -> ZR", "sections": [ { @@ -2430,7 +2430,7 @@ ] }, { - "name": "Zoras Domain Behind King Zora -> Zoras Fountain", + "name": "ZD Behind King Zora -> Zoras Fountain", "short_name": "ZD -> ZF", "sections": [ { @@ -2455,8 +2455,8 @@ "color": "#0936a0", "children": [ { - "name": "Zoras Fountain -> Zoras Fountain Fairy", - "short_name": "ZF Fairy", + "name": "Zoras Fountain -> ZF Great Fairy Fountain", + "short_name": "ZF Great Fairy Fountain", "sections": [ { "name": "House", @@ -2512,7 +2512,7 @@ ] }, { - "name": "Zoras Fountain -> Zoras Domain Behind King Zora", + "name": "Zoras Fountain -> ZD Behind King Zora", "short_name": "ZF -> ZD", "sections": [ { @@ -2537,8 +2537,8 @@ "color": "#a09509", "children": [ { - "name": "Gerudo Valley -> Gerudo Valley Octorok Grotto", - "short_name": "Octorok Grotto", + "name": "Gerudo Valley -> GV Octorok Grotto", + "short_name": "GV Octorok Grotto", "sections": [ { "name": "Grotto", @@ -2556,7 +2556,7 @@ ] }, { - "name": "Gerudo Valley Far Side -> Gerudo Valley Storms Grotto", + "name": "GV Fortress Side -> GV Storms Grotto", "short_name": "GV Storms Grotto", "sections": [ { @@ -2575,8 +2575,8 @@ ] }, { - "name": "Gerudo Valley Far Side -> Carpenter Tent", - "short_name": "Carpenter Tent", + "name": "GV Fortress Side -> GV Carpenter Tent", + "short_name": "GV Carpenter Tent", "sections": [ { "name": "House", @@ -2613,7 +2613,7 @@ ] }, { - "name": "Gerudo Valley Far Side -> Gerudo Fortress", + "name": "GV Fortress Side -> Gerudo Fortress", "short_name": "GV -> GF", "sections": [ { @@ -2638,7 +2638,7 @@ "color": "#a09509", "children": [ { - "name": "Gerudo Fortress -> Gerudo Fortress Storms Grotto", + "name": "Gerudo Fortress -> GF Storms Grotto", "short_name": "GF Storms Grotto", "sections": [ { @@ -2676,7 +2676,7 @@ ] }, { - "name": "Gerudo Fortress -> Gerudo Valley Far Side", + "name": "Gerudo Fortress -> GV Fortress Side", "short_name": "GF -> GV", "sections": [ { @@ -2695,7 +2695,7 @@ ] }, { - "name": "Gerudo Fortress Outside Gate -> Haunted Wasteland Near Fortress", + "name": "GF Outside Gate -> Wasteland Near Fortress", "short_name": "GF -> WL", "sections": [ { @@ -2720,7 +2720,7 @@ "color": "#a09509", "children": [ { - "name": "Haunted Wasteland Near Colossus -> Desert Colossus", + "name": "Wasteland Near Colossus -> Desert Colossus", "short_name": "WL -> Col", "sections": [ { @@ -2739,7 +2739,7 @@ ] }, { - "name": "Haunted Wasteland Near Fortress -> Gerudo Fortress Outside Gate", + "name": "Wasteland Near Fortress -> GF Outside Gate", "short_name": "WL -> GF", "sections": [ { @@ -2764,7 +2764,7 @@ "color": "#a09509", "children": [ { - "name": "Desert Colossus -> Desert Colossus Grotto", + "name": "Desert Colossus -> Colossus Grotto", "short_name": "Colossus Grotto", "sections": [ { @@ -2783,8 +2783,8 @@ ] }, { - "name": "Desert Colossus -> Colossus Fairy", - "short_name": "Colossus Fairy", + "name": "Desert Colossus -> Colossus Great Fairy Fountain", + "short_name": "Colossus Great Fairy Fountain", "sections": [ { "name": "House", @@ -2821,7 +2821,7 @@ ] }, { - "name": "Desert Colossus -> Haunted Wasteland Near Colossus", + "name": "Desert Colossus -> Wasteland Near Colossus", "short_name": "Col -> WL", "sections": [ { diff --git a/ootrando_overworldmap_hamsda/scripts/logic.lua b/ootrando_overworldmap_hamsda/scripts/logic.lua index 204a9ea5..4430397a 100644 --- a/ootrando_overworldmap_hamsda/scripts/logic.lua +++ b/ootrando_overworldmap_hamsda/scripts/logic.lua @@ -203,7 +203,7 @@ end function can_leave_forest() if has("setting_forest_open") or has("setting_forest_deku") - --or has_age("adult") + or has("setting_age_adult") then return 1, AccessibilityLevel.Normal end @@ -714,6 +714,41 @@ function has_bottle() return usable_bottles, level end +blue_fire_locations = { + "@Ganons Castle/Water Trial Chests", + "@Ganons Castle MQ/Water Trial Chest", + "@Gerudo Training Grounds MQ/Before Heavy Block Chest" +} +function has_blue_fire() + local bottle_count, bottle_level = has_bottle() + + if bottle_count == 0 then + return 0, AccessibilityLevel.None + end + + if has("wallet2") then + return 1, bottle_level + end + + local zf_count, zf_level = adult_fountain() + if zf_count > 0 and zf_level == AccessibilityLevel.Normal then + return 1, bottle_level + end + + for _,location in ipairs(blue_fire_locations) do + local location_object = Tracker:FindObjectForCode(location) + if location_object + and location_object.AccessibilityLevel + and location_object.AccessibilityLevel == AccessibilityLevel.Normal + then + --TODO: trigger dummy update + return 1, bottle_level + end + end + + return 1, AccessibilityLevel.SequenceBreak +end + function has_projectile(age) local explo = has_explosives() > 0 local sling = has("sling") diff --git a/ootrando_overworldmap_hamsda/scripts/update.lua b/ootrando_overworldmap_hamsda/scripts/update.lua index 25b51b3c..02425aa1 100644 --- a/ootrando_overworldmap_hamsda/scripts/update.lua +++ b/ootrando_overworldmap_hamsda/scripts/update.lua @@ -108,20 +108,20 @@ end vanilla_captures = { ["setting_shuffle_sword1_yes"] = { - ["@Kokiri Sword Chest/Dodge Boulder"] = "sword1" + ["@KF Kokiri Sword Chest/Dodge Boulder"] = "sword1" }, ["setting_shuffle_ocarinas_yes"] = { - ["@Lost Woods Bridge/Gift from Saria"] = "ocarina", - ["@Ocarina of Time/Item"] = "ocarina" + ["@LW Bridge/LW Gift from Saria"] = "ocarina", + ["@HF Ocarina of Time/HF Ocarina of Time Item"] = "ocarina" }, ["setting_shuffle_egg_yes"] = { - ["@Malon at Castle/Talk to her"] = "capture_childegg" + ["@Malon at Castle/HC Malon Egg"] = "capture_childegg" }, ["setting_shuffle_card_yes"] = { - ["@Carpenter Rescue/Free the carpenters"] = "gerudocard" + ["@Carpenter Rescue/Gerudo Membership Card"] = "gerudocard" }, ["setting_shuffle_beans_yes"] = { - ["@Magic Bean Salesman/Buy Item"] = "beans" + ["@ZR Magic Bean Salesman/Buy Item"] = "beans" } } function update_vanilla_captures() @@ -293,152 +293,152 @@ end skulltula_locations = { --overworld - "@Know It All House/GS1 (N)", - "@Kokiri Bean Patch/GS2", - "@House of Twins/GS3 (N)", - "@Lost Woods Bean Patch Near Bridge/GS4", - "@Lost Woods Bean Patch Near Stage/GS5", - "@Lost Woods Above Stage/GS6 (N)", - "@Top of Maze/GS7 (N)", - "@Field Kakariko Grotto/GS12", - "@Field Valley Grotto/GS13", - "@Castle Market Guard House/GS14", - "@Hyrule Castle Tree/GS15", - "@Castle Storms Grotto/GS16", - "@Outside Ganon's Castle/GS17", - "@Lon Lon Ranch Tree/GS18", - "@Lon Lon Ranch Rain Shed/GS19 (N)", - "@Lon Lon Ranch House Window/GS20 (N)", - "@Lon Lon Ranch Back Wall/GS21 (N)", - "@Kakariko Tree/GS22 (N)", - "@Kakariko Skulltula House/GS23 (N)", - "@Kakariko House Under Construction/GS24 (N)", - "@Kakariko Guard's House/GS25 (N)", - "@Kakariko Watchtower/GS26 (N)", - "@Kakariko Above Impa's House/GS27 (N)", - "@Graveyard Wall/GS28 (N)", - "@Graveyard Bean Patch/GS29", - "@Mountain Trail Bean Patch/GS30", - "@Mountain Trail Bomb Alcove/GS31", - "@Mountain Trail Above Dodongo's Cavern/GS32 (N)", - "@Mountain Trail Path to Crater/GS33 (N)", - "@Goron City Boulder Maze/GS34", - "@Goron City Center Platform/GS35", - "@Death Mountain Crater Crate/GS36", - "@Mountain Crater Bean Patch/GS37", - "@Zora River Tree/GS43", - "@Zora River Ladder/GS44 (N)", - "@Zora River Near Raised Grottos/GS45 (N)", - "@Zora River Above Bridge/GS46 (N)", - "@Frozen Waterfall/GS47 (N)", - "@Zora's Fountain Tree/GS48", - "@Zora's Fountain Above the Log/GS49 (N)", - "@Zora's Fountain Hidden Cave/GS50 (N)", - "@Lake Hylia Bean Patch/GS55", - "@Lab Wall/GS56 (N)", - "@Small Island/GS57 (N)", - "@Giant Tree/GS58 (N)", - "@Lab Underwater Crate/GS59", - "@Gerudo Valley Small Bridge/GS86 (N)", - "@Gerudo Valley Bean Patch/GS87", - "@Gerudo Valley Behind Tent/GS88 (N)", - "@Gerudo Valley Pillar/GS89 (N)", - "@Archery Range/GS90 (N)", - "@Top Floor/GS91 (N)", - "@Wasteland Ruins/GS92", - "@Desert Colossus Bean Patch/GS93", - "@Desert Colossus Tree/GS94 (N)", - "@Desert Colossus Hill/GS95 (N)", + "@KF Know It All House/KF GS Know It All House (N)", + "@KF Bean Patch/KF GS Bean Patch", + "@KF House of Twins/KF GS House of Twins (N)", + "@LW Bean Patch Near Bridge/LW GS Bean Patch Near Bridge", + "@LW Bean Patch Near Theater/LW GS Bean Patch Near Theater", + "@LW Above Theater/LW GS Above Theater (N)", + "@SFM Maze/SFM GS (N)", + "@HF Near Kak Grotto/HF GS Near Kak Grotto", + "@HF Cow Grotto/HF GS Cow Grotto", + "@LH Lab/LH GS Lab Crate", + "@LH Bean Patch/LH GS Bean Patch", + "@LH Lab Wall/LH GS Lab Wall (N)", + "@LH Small Island/LH GS Small Island (N)", + "@LH Tree/LH GS Tree (N)", + "@LLR Tree/LLR GS Tree", + "@LLR Rain Shed/LLR GS Rain Shed (N)", + "@LLR House Window/LLR GS House Window (N)", + "@LLR Back Wall/LLR GS Back Wall (N)", + "@Kak Above Impas House/Kak GS Above Impas House (N)", + "@Kak Tree/Kak GS Tree (N)", + "@Kak Skulltula House/Kak GS Skulltula House (N)", + "@Kak House Under Construction/Kak GS House Under Construction (N)", + "@Kak Guards House/Kak GS Guards House (N)", + "@Kak Watchtower/Kak GS Watchtower (N)", + "@Graveyard Wall/Graveyard GS Wall (N)", + "@Graveyard Bean Patch/Graveyard GS Bean Patch", + "@GC Maze/GC GS Boulder Maze", + "@GC Center Platform/GC GS Center Platform", + "@DMT Above Dodongos Cavern/DMT GS Above Dodongos Cavern (N)", + "@DMT Falling Rocks Path/DMT GS Falling Rocks Path (N)", + "@DMT Bean Patch/DMT GS Bean Patch", + "@DMT Near Kak/DMT GS Near Kak", + "@DMC Crate/DMC GS Crate", + "@DMC Bean Patch/DMC GS Bean Patch", + "@Market Guard House/Market GS Guard House", + "@HC Tree/HC GS Tree", + "@HC Storms Grotto/HC GS Storms Grotto", + "@OGC/OGC GS", + "@ZR Tree/ZR GS Tree", + "@ZR Ladder/ZR GS Ladder (N)", + "@ZR Near Raised Grottos/ZR GS Near Raised Grottos (N)", + "@ZR Above Bridge/ZR GS Above Bridge (N)", + "@ZD Frozen Waterfall/ZD GS Frozen Waterfall (N)", + "@ZF Hidden Cave/ZF GS Hidden Cave (N)", + "@ZF Tree/ZF GS Tree", + "@ZF Above the Log/ZF GS Above the Log (N)", + "@GV Small Bridge/GV GS Small Bridge (N)", + "@GV Bean Patch/GV GS Bean Patch", + "@GV Behind Tent/GV GS Behind Tent (N)", + "@GV Pillar/GV GS Pillar (N)", + "@GF Archery Range/GF GS Archery Range (N)", + "@GF Top Floor/GF GS Top Floor (N)", + "@Wasteland Structure/Wasteland GS", + "@Colossus Bean Patch/Colossus GS Bean Patch", + "@Colossus Tree/Colossus GS Tree (N)", + "@Colossus Hill/Colossus GS Hill (N)", --regular dungeons - "@Deku Tree/GS8 - Compass Room", - "@Deku Tree/GS9 - Basement Vines", - "@Deku Tree/GS10 - Basement Gate", - "@Deku Tree/GS11 - Basement Back Room", - "@Dodongos Cavern/GS38 - East Side Room", - "@Dodongos Cavern/GS39 - Vines Above Stairs", - "@Dodongos Cavern/GS40 - Back Room", - "@Dodongos Cavern/GS41 - Alcove Above Stairs", - "@Dodongos Cavern/GS42 - Scarecrow", - "@Jabu Jabus Belly/GS51 - Water Switch Room", - "@Jabu Jabus Belly/GS52 - Lobby Basement Lower", - "@Jabu Jabus Belly/GS53 - Lobby Basement Upper", - "@Jabu Jabus Belly/GS54 - Near Boss", - "@Forest Temple/GS60 - First Room", - "@Forest Temple/GS61 - Lobby", - "@Forest Temple/GS62 - Outdoor East", - "@Forest Temple/GS63 - Outdoor West", - "@Forest Temple/GS64 - Basement", - "@Fire Temple/GS65 - Song of Time Room", - "@Fire Temple/GS66 - Unmarked Bomb Wall", - "@Fire Temple/GS67 - East Tower Climb", - "@Fire Temple/GS68 - East Tower Top", - "@Fire Temple/GS69 - Basement", - "@Ice Cavern/GS70 - Heart Piece Room", - "@Ice Cavern/GS71 - Spinning Scythe Room", - "@Ice Cavern/GS72 - Push Block Room", - "@Water Temple/GS73 - South Basement", - "@Water Temple/GS74 - Serpent River", - "@Water Temple/GS75 - Central Room", - "@Water Temple/GS76 - Falling Platform Room", - "@Water Temple/GS77 - Near Boss Key Chest", - "@Bottom of the Well/GS78 - Like Like Cage", - "@Bottom of the Well/GS79 - West Inner Room", - "@Bottom of the Well/GS80 - East Inner Room", - "@Shadow Temple/GS81 - Like Like Room", - "@Shadow Temple/GS82 - Crusher Room", - "@Shadow Temple/GS83 - Single Giant Pot", - "@Shadow Temple/GS84 - Near Ship", - "@Shadow Temple/GS85 - Triple Giant Pot", - "@Spirit Temple/GS96 - Metal Fence", - "@Spirit Temple/GS97 - Bomb for Light Room", - "@Spirit Temple/GS98 - Hall to West Iron Knuckle", - "@Spirit Temple/GS99 - Boulder Room", - "@Spirit Temple/GS100 - Lobby", + "@Deku Tree/GS Compass Room", + "@Deku Tree/GS Basement Vines", + "@Deku Tree/GS Basement Gate", + "@Deku Tree/GS Basement Back Room", + "@Dodongos Cavern/GS Side Room Near Lower Lizalfos", + "@Dodongos Cavern/GS Scarecrow", + "@Dodongos Cavern/GS Alcove Above Stairs", + "@Dodongos Cavern/GS Vines Above Stairs", + "@Dodongos Cavern/GS Back Room", + "@Jabu Jabus Belly/GS Water Switch Room", + "@Jabu Jabus Belly/GS Lobby Basement Lower", + "@Jabu Jabus Belly/GS Lobby Basement Upper", + "@Jabu Jabus Belly/GS Near Boss", + "@Ice Cavern/GS Spinning Scythe Room", + "@Ice Cavern/GS Heart Piece Room", + "@Ice Cavern/GS Push Block Room", + "@Forest Temple/GS First Room", + "@Forest Temple/GS Lobby", + "@Forest Temple/GS Raised Island Courtyard", + "@Forest Temple/GS Level Island Courtyard", + "@Forest Temple/GS Basement", + "@Fire Temple/GS Boss Key Loop", + "@Fire Temple/GS Song of Time Room", + "@Fire Temple/GS Boulder Maze", + "@Fire Temple/GS Scarecrow Climb", + "@Fire Temple/GS Scarecrow Top", + "@Water Temple/GS Behind Gate", + "@Water Temple/GS Central Pillar", + "@Water Temple/GS Falling Platform Room", + "@Water Temple/GS River", + "@Water Temple/GS Near Boss Key Chest", + "@Shadow Temple/GS Like Like Room", + "@Shadow Temple/GS Falling Spikes Room", + "@Shadow Temple/GS Single Giant Pot", + "@Shadow Temple/GS Near Ship", + "@Shadow Temple/GS Triple Giant Pot", + "@Spirit Temple/GS Metal Fence", + "@Spirit Temple/GS Sun on Floor Room", + "@Spirit Temple/GS Hall After Sun Block Room", + "@Spirit Temple/GS Lobby", + "@Spirit Temple/GS Boulder Room", + "@Bottom of the Well/GS West Inner Room", + "@Bottom of the Well/GS East Inner Room", + "@Bottom of the Well/GS Like Like Cage", --MQ dungeons - "@Deku Tree MQ/GS8 - Lobby", - "@Deku Tree MQ/GS9 - Compass Room", - "@Deku Tree MQ/GS10 - Basement Ceiling", - "@Deku Tree MQ/GS11 - Basement Back Room", - "@Dodongos Cavern MQ/GS38 - Song of Time Block Room", - "@Dodongos Cavern MQ/GS39 - Larva Room", - "@Dodongos Cavern MQ/GS40 - Lizalfos Room", - "@Dodongos Cavern MQ/GS41 - Scrub Room", - "@Dodongos Cavern MQ/GS42 - Back Area", - "@Jabu Jabus Belly MQ/GS51 - Boomerang Room", - "@Jabu Jabus Belly MQ/GS52 - Tailpasaran Room", - "@Jabu Jabus Belly MQ/GS53 - Invisible Enemies Room", - "@Jabu Jabus Belly MQ/GS54 - Near Boss", - "@Forest Temple MQ/GS60 - First Hallway", - "@Forest Temple MQ/GS61 - Block Push Room", - "@Forest Temple MQ/GS62 - Outdoor West", - "@Forest Temple MQ/GS63 - Outdoor East", - "@Forest Temple MQ/GS64 - Well", - "@Fire Temple MQ/GS65 - Big Lava Room", - "@Fire Temple MQ/GS66 - East Tower Top", - "@Fire Temple MQ/GS67 - Fire Wall Maze Side Room", - "@Fire Temple MQ/GS68 - Above Fire Wall Maze", - "@Fire Temple MQ/GS69 - Fire Wall Maze Center", - "@Ice Cavern MQ/GS70 - Red Ice", - "@Ice Cavern MQ/GS71 - Scarecrow", - "@Ice Cavern MQ/GS72 - Ice Block", - "@Water Temple MQ/GS73 - South Basement", - "@Water Temple MQ/GS74 - North Basement", - "@Water Temple MQ/GS75 - Serpent River", - "@Water Temple MQ/GS76 - Lizalfos Hallway", - "@Water Temple MQ/GS77 - Before Upper Water Switch", - "@Bottom of the Well MQ/GS78 - West Inner Room", - "@Bottom of the Well MQ/GS79 - Basement", - "@Bottom of the Well MQ/GS80 - Coffin Room", - "@Shadow Temple MQ/GS81 - Crusher Room", - "@Shadow Temple MQ/GS82 - Wind Hint Room", - "@Shadow Temple MQ/GS83 - After Wind", - "@Shadow Temple MQ/GS84 - After Ship", - "@Shadow Temple MQ/GS85 - Near Boss", - "@Spirit Temple MQ/GS96 - Sun Block Room", - "@Spirit Temple MQ/GS97 - Lower Adult Left", - "@Spirit Temple MQ/GS98 - Lower Adult Right", - "@Spirit Temple MQ/GS99 - Iron Knuckle North", - "@Spirit Temple MQ/GS100 - Iron Knuckle West", + "@Deku Tree MQ/GS Lobby", + "@Deku Tree MQ/GS Compass Room", + "@Deku Tree MQ/GS Basement Graves Room", + "@Deku Tree MQ/GS Basement Back Room", + "@Dodongos Cavern MQ/GS Scrub Room", + "@Dodongos Cavern MQ/GS Lizalfos Room", + "@Dodongos Cavern MQ/GS Larvae Room", + "@Dodongos Cavern MQ/GS Song of Time Block Room", + "@Dodongos Cavern MQ/GS Back Area", + "@Jabu Jabus Belly MQ/GS Boomerang Chest Room", + "@Jabu Jabus Belly MQ/GS Tailpasaran Room", + "@Jabu Jabus Belly MQ/GS Invisible Enemies Room", + "@Jabu Jabus Belly MQ/GS Near Boss", + "@Ice Cavern MQ/GS Red Ice", + "@Ice Cavern MQ/GS Scarecrow", + "@Ice Cavern MQ/GS Ice Block", + "@Forest Temple MQ/GS First Hallway", + "@Forest Temple MQ/GS Raised Island Courtyard", + "@Forest Temple MQ/GS Well", + "@Forest Temple MQ/GS Level Island Courtyard", + "@Forest Temple MQ/GS Block Push Room", + "@Fire Temple MQ/GS Big Lava Room Open Door", + "@Fire Temple MQ/GS Skull On Fire", + "@Fire Temple MQ/GS Fire Wall Maze Side Room", + "@Fire Temple MQ/GS Fire Wall Maze Center", + "@Fire Temple MQ/GS Above Fire Wall Maze", + "@Water Temple MQ/GS Lizalfos Hallway", + "@Water Temple MQ/GS Before Upper Water Switch", + "@Water Temple MQ/GS River", + "@Water Temple MQ/GS Freestanding Key Area", + "@Water Temple MQ/GS Triple Wall Torch", + "@Shadow Temple MQ/GS Falling Spikes Room", + "@Shadow Temple MQ/GS Wind Hint Room", + "@Shadow Temple MQ/GS After Wind", + "@Shadow Temple MQ/GS After Ship", + "@Shadow Temple MQ/GS Near Boss", + "@Spirit Temple MQ/GS Sun Block Room", + "@Spirit Temple MQ/GS Leever Room", + "@Spirit Temple MQ/GS Symphony Room", + "@Spirit Temple MQ/GS Nine Thrones Room North", + "@Spirit Temple MQ/GS Nine Thrones Room West", + "@Bottom of the Well MQ/GS West Inner Room", + "@Bottom of the Well MQ/GS Basement", + "@Bottom of the Well MQ/GS Coffin Room", } function count_skulltulas() local total = 0 diff --git a/ootrando_overworldmap_hamsda/scripts/update_entrance.lua b/ootrando_overworldmap_hamsda/scripts/update_entrance.lua index 2713c2bd..7d3dc544 100644 --- a/ootrando_overworldmap_hamsda/scripts/update_entrance.lua +++ b/ootrando_overworldmap_hamsda/scripts/update_entrance.lua @@ -50,6 +50,7 @@ end +--outdated names capture_badge_locations = { ["@Death Mountain -> Mountain Bombable Grotto"] = "@Death Mountain -> Mountain Bombable Grotto/Grotto", ["@Death Mountain -> Mountain Storms Grotto"] = "@Death Mountain -> Mountain Storms Grotto/Grotto", From 5c77714d4acd58931a778b59690fbc3fe3a56727 Mon Sep 17 00:00:00 2001 From: Dennis Date: Wed, 23 Sep 2020 16:48:17 +0200 Subject: [PATCH 3/5] changed names of most locations --- ootrando_overworldmap_hamsda/changelog.md | 1 + .../locations/dung_mq.json | 201 +-- .../locations/dung_reg.json | 214 ++-- .../locations/overworld.json | 1097 ++++++++--------- .../locations/overworld_entrance.json | 356 +++--- .../scripts/logic.lua | 37 +- .../scripts/update.lua | 300 ++--- .../scripts/update_entrance.lua | 1 + 8 files changed, 1116 insertions(+), 1091 deletions(-) diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index 61c4f312..a496d406 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -3,6 +3,7 @@ ## x - removed Gossip Stone map +- changed names of most locations based on [this PR](https://github.com/TestRunnerSRL/OoT-Randomizer/pull/1021) ## 2.9.6.0 diff --git a/ootrando_overworldmap_hamsda/locations/dung_mq.json b/ootrando_overworldmap_hamsda/locations/dung_mq.json index f26b4ce1..a4d57e0e 100644 --- a/ootrando_overworldmap_hamsda/locations/dung_mq.json +++ b/ootrando_overworldmap_hamsda/locations/dung_mq.json @@ -55,14 +55,14 @@ "item_count": 1 }, { - "name": "Lobby Chest", + "name": "Map Chest", "short_name": "Map", "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 }, { - "name": "GS8 - Lobby", - "short_name": "Map", + "name": "GS Lobby", + "short_name": "Lobby", "access_rules": [ "$can_child_attack" ], @@ -82,7 +82,7 @@ "item_count": 1 }, { - "name": "Slingshot Room Back", + "name": "Slingshot Room Back Chest", "short_name": "Slingshot Back", "access_rules": [ "sticks", @@ -100,7 +100,7 @@ "item_count": 1 }, { - "name": "GS9 - Compass Room", + "name": "GS Compass Room", "short_name": "Compass", "access_rules": [ "@Deku Tree MQ/Compass Room,boomerang,bombs,ocarina,time", @@ -117,7 +117,8 @@ "item_count": 1 }, { - "name": "Basement", + "name": "Basement Chest", + "short_name": "Basement", "access_rules": [ "sticks", "dinsfire,magic" @@ -143,7 +144,7 @@ "item_count": 1 }, { - "name": "GS10 - Basement Ceiling", + "name": "GS Basement Graves Room", "short_name": "Ceiling", "access_rules": [ "@Deku Tree MQ/Basement Back Room,boomerang,ocarina,time", @@ -159,7 +160,7 @@ "item_count": 1 }, { - "name": "GS11 - Basement Back Room", + "name": "GS Basement Back Room", "short_name": "Back Room", "access_rules": [ "@Deku Tree MQ/Basement Back Room,sticks,boomerang", @@ -176,8 +177,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Shield", - "short_name": "Basement", + "name": "Deku Scrub", "access_rules": [ "@Deku Tree MQ/Basement Ledge,nuts", "@Deku Tree MQ/Basement Ledge,shield1", @@ -290,7 +290,7 @@ "item_count": 1 }, { - "name": "GS41 - Scrub Room", + "name": "GS Scrub Room", "short_name": "Scrub", "access_rules": [ "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,boomerang,lift1", @@ -315,7 +315,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Red Potion", + "name": "Deku Scrub Side Room Near Lower Lizalfos", "short_name": "East Side", "access_rules": [ "@Dodongos Cavern MQ/Lower Right Side,$can_stun_deku" @@ -341,7 +341,7 @@ "item_count": 1 }, { - "name": "GS40 - Lizalfos Room", + "name": "GS Lizalfos Room", "short_name": "Lizalfos", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_blast" @@ -354,8 +354,8 @@ "item_count": 1 }, { - "name": "Larva Room Chest", - "short_name": "Larva", + "name": "Larvae Room Chest", + "short_name": "Larvae", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$has_fire", "@Dodongos Cavern MQ/Lobby,$has_age|child,sticks,$has_explosives", @@ -364,10 +364,10 @@ "item_count": 1 }, { - "name": "GS39 - Larva Room", - "short_name": "Larva", + "name": "GS Larvae Room", + "short_name": "Larvae", "access_rules": [ - "@Dodongos Cavern MQ/Larva Room Chest" + "@Dodongos Cavern MQ/Larvae Room Chest" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -388,7 +388,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Shield", + "name": "Deku Scrub Staircase", "short_name": "Above Stairs", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_stun_deku" @@ -401,7 +401,7 @@ "item_count": 1 }, { - "name": "GS38 - Song of Time Block Room", + "name": "GS Song of Time Block Room", "short_name": "Song of Time", "access_rules": [ "@Dodongos Cavern MQ/Lobby,ocarina,time,$can_child_attack", @@ -415,8 +415,8 @@ "item_count": 1 }, { - "name": "Deku Sticks / Deku Seeds", - "short_name": "Main Room", + "name": "Deku Scrubs Lobby", + "short_name": "Lobby", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_stun_deku" ], @@ -429,7 +429,7 @@ "item_count": 2 }, { - "name": "GS42 - Back Area", + "name": "GS Back Area", "short_name": "Back Area", "access_rules": [ "@Dodongos Cavern MQ/Boss Area" @@ -442,14 +442,16 @@ "item_count": 1 }, { - "name": "Under Grave", + "name": "Under Grave Chest", + "short_name": "Under Grave", "access_rules": [ "@Dodongos Cavern MQ/Boss Area" ], "item_count": 1 }, { - "name": "Above Boss", + "name": "Boss Room Chest", + "short_name": "Boss Room", "access_rules": [ "@Dodongos Cavern MQ/Boss Area" ], @@ -542,8 +544,8 @@ "item_count": 1 }, { - "name": "Entry Side Chest", - "short_name": "Entry", + "name": "First Room Side Chest", + "short_name": "First Room", "access_rules": [ "sling" ], @@ -583,7 +585,7 @@ "item_count": 2 }, { - "name": "GS51 - Boomerang Room", + "name": "GS Boomerang Chest Room", "short_name": "Boomerang", "access_rules": [ "@Jabu Jabus Belly MQ/Main,ocarina,time", @@ -605,7 +607,7 @@ "item_count": 1 }, { - "name": "GS52 - Tailpasaran Room", + "name": "GS Tailpasaran Room", "short_name": "Tailpasaran", "access_rules": [ "@Jabu Jabus Belly MQ/Depths,sticks", @@ -619,7 +621,7 @@ "item_count": 1 }, { - "name": "GS53 - Invisible Enemies Room", + "name": "GS Invisible Enemies Room", "short_name": "Invis Enemies", "access_rules": [ "@Jabu Jabus Belly MQ/Depths,[logic_lens_jabu_mq]", @@ -655,7 +657,7 @@ "item_count": 1 }, { - "name": "GS54 - Near Boss", + "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ "@Jabu Jabus Belly MQ/Boss Area" @@ -718,7 +720,7 @@ "item_count": 1 }, { - "name": "Freestanding HP", + "name": "Freestanding PoH", "short_name": "Frozen HP", "access_rules": [ "$has_explosives", @@ -730,7 +732,7 @@ "item_count": 1 }, { - "name": "GS70 - Red Ice", + "name": "GS Red Ice", "short_name": "Red Ice", "access_rules": [ "ocarina,time" @@ -743,7 +745,7 @@ "item_count": 1 }, { - "name": "GS71 - Scarecrow", + "name": "GS Scarecrow", "short_name": "Scarecrow", "access_rules": [ "hookshot,ocarina,scarecrow", @@ -758,7 +760,7 @@ "item_count": 1 }, { - "name": "GS72 - Ice Block", + "name": "GS Ice Block", "short_name": "Ice Block", "visibility_rules": [ "setting_tokens_dungeons" @@ -774,7 +776,7 @@ }, { "name": "Sheik in Ice Cavern", - "short_name": "Sheik", + "short_name": "Song", "access_rules": [ "$has_bottle", "{$hintable}" @@ -925,7 +927,7 @@ "item_count": 1 }, { - "name": "First Chest", + "name": "First Room Chest", "short_name": "Tree", "access_rules": [ "$has_age|adult" @@ -934,7 +936,7 @@ "item_count": 1 }, { - "name": "GS60 - First Hallway", + "name": "GS First Hallway", "short_name": "First Hallway", "access_rules": [ "$has_age|adult,hookshot" @@ -947,7 +949,7 @@ "item_count": 1 }, { - "name": "Chest Behind Lobby", + "name": "Wolfos Chest", "short_name": "Wolfos", "access_rules": [ "@Forest Temple MQ/Central Area,ocarina,time", @@ -957,7 +959,7 @@ "item_count": 1 }, { - "name": "GS63 - Outdoor East", + "name": "GS Raised Island Courtyard", "short_name": "Outdoor East", "access_rules": [ "@Forest Temple MQ/NE Outdoors,hookshot" @@ -970,7 +972,7 @@ "item_count": 1 }, { - "name": "NE Outdoors Upper Chest", + "name": "Raised Island Courtyard Upper Chest", "short_name": "Balcony", "access_rules": [ "@Forest Temple MQ/Outdoors Top Ledges" @@ -988,7 +990,7 @@ "item_count": 1 }, { - "name": "GS64 - Well", + "name": "GS Well", "short_name": "Well", "access_rules": [ "@Forest Temple MQ/NE Outdoors,ironboots,hookshot", @@ -1002,7 +1004,7 @@ "item_count": 1 }, { - "name": "GS62 - Outdoor West", + "name": "GS Level Island Courtyard", "short_name": "Outdoor West", "access_rules": [ "@Forest Temple MQ/NW Outdoors" @@ -1015,7 +1017,7 @@ "item_count": 1 }, { - "name": "GS61 - Block Push Room", + "name": "GS Block Push Room", "short_name": "Block Push", "access_rules": [ "@Forest Temple MQ/Central Area" @@ -1073,7 +1075,7 @@ "item_count": 1 }, { - "name": "Falling Room Chest", + "name": "Falling Ceiling Room Chest", "short_name": "Checkerboard", "access_rules": [ "@Forest Temple MQ/Falling Room" @@ -1081,7 +1083,7 @@ "item_count": 1 }, { - "name": "NE Outdoors Lower Chest", + "name": "Raised Island Courtyard Lower Chest", "short_name": "Island", "access_rules": [ "@Forest Temple MQ/NE Outdoors Ledge" @@ -1090,7 +1092,7 @@ "item_count": 1 }, { - "name": "Near Boss Chest", + "name": "Basement Chest", "short_name": "Basement", "access_rules": [ "@Forest Temple MQ/Boss Region" @@ -1194,7 +1196,7 @@ "item_count": 1 }, { - "name": "Chest Near Boss", + "name": "Near Boss Chest", "short_name": "Near Boss", "access_rules": [ "$FTR_or_goron,$has_fire,hoverboots", @@ -1209,7 +1211,7 @@ "item_count": 1 }, { - "name": "Entrance Hallway Small Chest", + "name": "Map Room Side Chest", "short_name": "Like Like", "access_rules": [ "$has_age|adult" @@ -1234,7 +1236,7 @@ "item_count": 1 }, { - "name": "Big Lava Room Bombable Chest", + "name": "Big Lava Room Blocked Door Chest", "short_name": "Lava Room Bombable", "access_rules": [ "@Fire Temple MQ/Big Lava Room,$has_fire,$has_explosives,hookshot", @@ -1256,7 +1258,7 @@ "item_count": 1 }, { - "name": "GS65 - Big Lava Room", + "name": "GS Big Lava Room Open Door", "short_name": "Lava Room", "access_rules": [ "@Fire Temple MQ/Big Lava Room" @@ -1269,7 +1271,7 @@ "item_count": 1 }, { - "name": "Maze Lower Chest", + "name": "Lizalfos Maze Lower Chest", "short_name": "Maze Lower", "access_rules": [ "@Fire Temple MQ/Lower Maze" @@ -1277,7 +1279,7 @@ "item_count": 1 }, { - "name": "Maze Side Room", + "name": "Lizalfos Maze Side Room Chest", "short_name": "Maze Side", "access_rules": [ "@Fire Temple MQ/Lower Maze,$has_explosives,[logic_fire_mq_maze_side_room]", @@ -1287,7 +1289,7 @@ "item_count": 1 }, { - "name": "Maze Upper Chest", + "name": "Lizalfos Maze Upper Chest", "short_name": "Maze Upper", "access_rules": [ "@Fire Temple MQ/Upper Maze" @@ -1304,7 +1306,7 @@ "item_count": 1 }, { - "name": "GS66 - East Tower Top", + "name": "GS Skull On Fire", "short_name": "East Tower Top", "access_rules": [ "@Fire Temple MQ/Upper Maze,ocarina,time", @@ -1318,7 +1320,7 @@ "item_count": 1 }, { - "name": "GS67 - Fire Wall Maze Side Room", + "name": "GS Fire Wall Maze Side Room", "short_name": "Fire Maze Side", "access_rules": [ "@Fire Temple MQ/West Top,ocarina,time", @@ -1333,7 +1335,7 @@ "item_count": 1 }, { - "name": "GS69 - Fire Wall Maze Center", + "name": "GS Fire Wall Maze Center", "short_name": "Fire Maze Center", "access_rules": [ "@Fire Temple MQ/West Top,$has_explosives" @@ -1356,7 +1358,7 @@ "item_count": 1 }, { - "name": "West Tower Top Chest", + "name": "Chest On Fire", "short_name": "West Tower Top", "access_rules": [ "@Fire Temple MQ/West Top,fire_small_keys:3,[fire_small_keys:4]", @@ -1367,7 +1369,7 @@ "item_count": 1 }, { - "name": "GS68 - Above Fire Wall Maze", + "name": "GS Above Fire Wall Maze", "short_name": "Above Fire Maze", "access_rules": [ "@Fire Temple MQ/West Top,fire_small_keys:4,[fire_small_keys:5]", @@ -1481,7 +1483,7 @@ "item_count": 1 }, { - "name": "GS76 - Lizalfos Hallway", + "name": "GS Lizalfos Hallway", "short_name": "Lizalfos", "access_rules": [ "@Water Temple MQ/Lowered Water Levels,dinsfire,magic" @@ -1494,7 +1496,7 @@ "item_count": 1 }, { - "name": "GS77 - Before Upper Water Switch", + "name": "GS Before Upper Water Switch", "short_name": "Before Upper Water Switch", "access_rules": [ "@Water Temple MQ/Lowered Water Levels,longshot" @@ -1508,7 +1510,7 @@ }, { "name": "Central Pillar Chest", - "short_name": "Basement", + "short_name": "Central Pillar", "access_rules": [ "@Water Temple MQ/Dive,[bluetunic],hookshot,bow,firearrow,magic", "@Water Temple MQ/Dive,[bluetunic],hookshot,dinsfire,magic,ocarina,time" @@ -1517,7 +1519,7 @@ "item_count": 1 }, { - "name": "GS75 - Serpent River", + "name": "GS River", "short_name": "River", "access_rules": [ "@Water Temple MQ/Dark Link Region" @@ -1556,7 +1558,7 @@ "item_count": 1 }, { - "name": "GS74 - North Basement", + "name": "GS Freestanding Key Area", "short_name": "North Basement", "access_rules": [ "@Water Temple MQ/Basement Gated Areas,water_small_keys:2,hoverboots", @@ -1573,7 +1575,7 @@ "item_count": 1 }, { - "name": "GS73 - South Basement", + "name": "GS Triple Wall Torch", "short_name": "South Basement", "access_rules": [ "@Water Temple MQ/Basement Gated Areas,bow,firearrow,magic,hoverboots", @@ -1774,7 +1776,7 @@ "item_count": 1 }, { - "name": "GS81 - Crusher Room", + "name": "GS Falling Spikes Room", "short_name": "Crusher", "access_rules": [ "@Shadow Temple MQ/Lower Huge Pit,hookshot", @@ -1828,7 +1830,7 @@ "item_count": 1 }, { - "name": "GS82 - Wind Hint Room", + "name": "GS Wind Hint Room", "short_name": "Wind Hint", "access_rules": [ "@Shadow Temple MQ/Wind Tunnel" @@ -1849,7 +1851,7 @@ "item_count": 2 }, { - "name": "GS83 - After Wind", + "name": "GS After Wind", "short_name": "After Wind", "access_rules": [ "@Shadow Temple MQ/Wind Tunnel" @@ -1862,7 +1864,7 @@ "item_count": 1 }, { - "name": "GS84 - After Ship", + "name": "GS After Ship", "short_name": "After Ship", "access_rules": [ "@Shadow Temple MQ/Beyond Boat" @@ -1913,7 +1915,7 @@ "item_count": 1 }, { - "name": "GS85 - Near Boss", + "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ "@Shadow Temple MQ/Beyond Boat,bow", @@ -2061,7 +2063,7 @@ "item_count": 1 }, { - "name": "Child Left Chest", + "name": "Map Room Enemy Chest", "short_name": "Child Left", "access_rules": [ "@Spirit Temple MQ/Child,$has_bombchus,sling,dinsfire,magic,sticks", @@ -2082,8 +2084,8 @@ "item_count": 1 }, { - "name": "Child Center Chest", - "short_name": "Child Center", + "name": "Child Hammer Switch Chest", + "short_name": "Hammer Switch", "access_rules": [ "@Spirit Temple MQ/Child,@Spirit Temple MQ/Adult,spirit_small_keys:2,[spirit_small_keys:7],hammer", "{$hintable}" @@ -2124,7 +2126,7 @@ "item_count": 1 }, { - "name": "GS96 - Sun Block Room", + "name": "GS Sun Block Room", "short_name": "Sun Block", "access_rules": [ "@Spirit Temple MQ/Shared,[logic_spirit_mq_sun_block_gs],ocarina,time,boomerang", @@ -2166,7 +2168,7 @@ "item_count": 1 }, { - "name": "Lower NE Main Room Chest", + "name": "Statue Room Lullaby Chest", "short_name": "Statue Boxes", "access_rules": [ "@Spirit Temple MQ/Adult,ocarina,lullaby" @@ -2174,7 +2176,7 @@ "item_count": 1 }, { - "name": "Upper NE Main Room Chest", + "name": "Statue Room Invisible Chest", "short_name": "Statue Ledge", "access_rules": [ "@Spirit Temple MQ/Adult,[logic_lens_spirit_mq]", @@ -2183,16 +2185,16 @@ "item_count": 1 }, { - "name": "Lower Adult Left Chest", - "short_name": "Adult Left", + "name": "Leever Room Chest", + "short_name": "Leever", "access_rules": [ "@Spirit Temple MQ/Lower Adult" ], "item_count": 1 }, { - "name": "GS97 - Lower Adult Left", - "short_name": "Adult Left", + "name": "GS Leever Room", + "short_name": "Leever", "access_rules": [ "@Spirit Temple MQ/Lower Adult" ], @@ -2204,8 +2206,8 @@ "item_count": 1 }, { - "name": "Lower Adult Right Chest", - "short_name": "Adult Right", + "name": "Symphony Room Chest", + "short_name": "Symphony", "access_rules": [ "@Spirit Temple MQ/Lower Adult,spirit_small_keys:1,[spirit_small_keys:7],hammer,ocarina,time,epona,sun,storm,lullaby", "{$hintable}" @@ -2214,8 +2216,8 @@ "item_count": 1 }, { - "name": "GS98 - Lower Adult Right", - "short_name": "Adult Right", + "name": "GS Symphony Room", + "short_name": "Symphony", "access_rules": [ "@Spirit Temple MQ/Lower Adult,spirit_small_keys:1,[spirit_small_keys:7],hammer,ocarina,time,epona,sun,storm,lullaby", "{$hintable}" @@ -2246,8 +2248,8 @@ "item_count": 1 }, { - "name": "Ice Trap Chest", - "short_name": "Ice Trap", + "name": "Chest Switch Chest", + "short_name": "Chest Switch", "access_rules": [ "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time" ], @@ -2273,7 +2275,7 @@ "item_count": 1 }, { - "name": "GS99 - Iron Knuckle North", + "name": "GS Nine Thrones Room North", "short_name": "Iron Knuckle 1", "access_rules": [ "@Spirit Temple MQ/Adult,spirit_small_keys:3,[spirit_small_keys:7]" @@ -2286,7 +2288,7 @@ "item_count": 1 }, { - "name": "GS100 - Iron Knuckle West", + "name": "GS Nine Thrones Room West", "short_name": "Iron Knuckle 2", "access_rules": [ "@Spirit Temple MQ/Adult,spirit_small_keys:3,[spirit_small_keys:7]" @@ -2358,7 +2360,7 @@ "item_count": 1 }, { - "name": "GS78 - West Inner Room", + "name": "GS West Inner Room", "short_name": "West Inner", "access_rules": [ "$can_child_attack,ocarina,lullaby", @@ -2373,7 +2375,7 @@ }, { "name": "East Inner Room Freestanding Key", - "short_name": "Inner Key", + "short_name": "East Inner", "access_rules": [ "$has_explosives", "ocarina,lullaby" @@ -2406,7 +2408,7 @@ "item_count": 1 }, { - "name": "Lens Chest", + "name": "Lens of Truth Chest", "short_name": "Lens", "access_rules": [ "$has_explosives,botw_small_keys:1,[botw_small_keys:2]" @@ -2414,7 +2416,7 @@ "item_count": 1 }, { - "name": "GS79 - Basement", + "name": "GS Basement", "short_name": "Basement", "access_rules": [ "$can_child_attack" @@ -2427,7 +2429,7 @@ "item_count": 1 }, { - "name": "GS80 - Coffin Room", + "name": "GS Coffin Room", "short_name": "Coffin", "access_rules": [ "$can_child_attack,botw_small_keys:1,[botw_small_keys:2]" @@ -2477,7 +2479,7 @@ "item_count": 1 }, { - "name": "Forest Trial First Chest", + "name": "Forest Trial Eye Switch Chest", "short_name": "Forest Trial 1", "access_rules": [ "bow" @@ -2485,7 +2487,7 @@ "item_count": 1 }, { - "name": "Forest Trial Second Chest", + "name": "Forest Trial Frozen Eye Switch Chest", "short_name": "Forest Trial 2", "access_rules": [ "$has_fire" @@ -2523,7 +2525,7 @@ "hosted_item": "trial_water" }, { - "name": "Shadow Trial First Chest", + "name": "Shadow Trial Bomb Flower Chest", "short_name": "Shadow Trial 1", "access_rules": [ "bow,hookshot", @@ -2538,7 +2540,7 @@ "item_count": 1 }, { - "name": "Shadow Trial Second Chest", + "name": "Shadow Trial Eye Switch Chest", "short_name": "Shadow Trial 2", "access_rules": [ "bow,[logic_lens_castle_mq],hoverboots", @@ -2611,7 +2613,7 @@ "item_count": 1 }, { - "name": "Spirit Trial Second Chest", + "name": "Spirit Trial Invisible Chest", "short_name": "Spirit Trial 2", "access_rules": [ "@Ganons Castle MQ/Spirit Trial First Chest,$has_bombchus,[logic_lens_castle_mq]", @@ -2654,7 +2656,8 @@ "item_count": 5 }, { - "name": "Castle Tower", + "name": "Ganons Tower Boss Key Chest", + "short_name": "Boss Key", "access_rules": [ "$trials_barrier_dispelled" ], diff --git a/ootrando_overworldmap_hamsda/locations/dung_reg.json b/ootrando_overworldmap_hamsda/locations/dung_reg.json index 97ae51b3..74414b42 100644 --- a/ootrando_overworldmap_hamsda/locations/dung_reg.json +++ b/ootrando_overworldmap_hamsda/locations/dung_reg.json @@ -8,13 +8,13 @@ ], "sections": [ { - "name": "Lobby Chest", + "name": "Map Chest", "short_name": "Map", "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 }, { - "name": "Slingshot Room", + "name": "Slingshot Room Chests", "short_name": "Slingshot", "access_rules": [ "shield1" @@ -22,13 +22,13 @@ "item_count": 2 }, { - "name": "Compass Room", + "name": "Compass Room Chests", "short_name": "Compass", "chest_unopened_img": "images/chest_brown_compass.png", "item_count": 2 }, { - "name": "GS8 - Compass Room", + "name": "GS Compass Room", "short_name": "Compass", "access_rules": [ "$can_child_attack" @@ -50,7 +50,7 @@ "item_count": 1 }, { - "name": "GS9 - Basement Vines", + "name": "GS Basement Vines", "short_name": "Vines", "access_rules": [ "sling", @@ -68,7 +68,7 @@ "item_count": 1 }, { - "name": "GS10 - Basement Gate", + "name": "GS Basement Gate", "short_name": "Gate", "access_rules": [ "$can_child_attack" @@ -81,7 +81,7 @@ "item_count": 1 }, { - "name": "GS11 - Basement Back Room", + "name": "GS Basement Back Room", "short_name": "Back Room", "access_rules": [ "$has_explosives,boomerang,sticks,sling", @@ -195,7 +195,7 @@ "item_count": 1 }, { - "name": "GS38 - East Side Room", + "name": "GS Side Room Near Lower Lizalfos", "short_name": "East Side", "access_rules": [ "@Dodongos Cavern/Lobby,$has_explosives", @@ -213,7 +213,7 @@ "item_count": 1 }, { - "name": "GS42 - Scarecrow", + "name": "GS Scarecrow", "short_name": "Scarecrow", "access_rules": [ "@Dodongos Cavern/Lobby,$has_age|adult,ocarina,scarecrow,hookshot", @@ -230,7 +230,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Sticks", + "name": "Deku Scrub Side Room Near Dodongos", "short_name": "East Side", "access_rules": [ "@Dodongos Cavern/Lobby,$has_age|adult", @@ -256,7 +256,7 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Shield", + "name": "Deku Scrub Lobby", "short_name": "Lobby", "access_rules": [ "@Dodongos Cavern/Lobby" @@ -282,7 +282,7 @@ "item_count": 1 }, { - "name": "GS41 - Alcove Above Stairs", + "name": "GS Alcove Above Stairs", "short_name": "Above Stairs", "access_rules": [ "@Dodongos Cavern/Far Bridge,$has_age|child,boomerang,$has_explosives", @@ -303,7 +303,7 @@ "item_count": 1 }, { - "name": "GS39 - Vines Above Stairs", + "name": "GS Vines Above Stairs", "short_name": "Vines", "access_rules": [ "@Dodongos Cavern/Climb" @@ -316,7 +316,7 @@ "item_count": 1 }, { - "name": "Bomb Flower Platform", + "name": "Bomb Flower Platform Chest", "short_name": "Bomb Flower", "access_rules": [ "@Dodongos Cavern/Climb" @@ -324,8 +324,8 @@ "item_count": 1 }, { - "name": "Deku Scrub Deku Seeds / Deku Nuts", - "short_name": "Near Bombs", + "name": "Deku Scrubs Near Bomb Bag", + "short_name": "Near Bomb Bag", "access_rules": [ "@Dodongos Cavern/Climb,$can_blast" ], @@ -354,7 +354,7 @@ "item_count": 1 }, { - "name": "GS40 - Back Room", + "name": "GS Back Room", "short_name": "Back Room", "access_rules": [ "@Dodongos Cavern/Boss Area" @@ -367,8 +367,8 @@ "item_count": 1 }, { - "name": "Chest Above King Dodongo", - "short_name": "Above Boss", + "name": "Boss Room Chest", + "short_name": "Boss Room", "access_rules": [ "@Dodongos Cavern/Boss Area" ], @@ -454,7 +454,7 @@ "item_count": 1 }, { - "name": "GS51 - Water Switch Room", + "name": "GS Water Switch Room", "short_name": "Water Switch", "access_rules": [ "@Jabu Jabus Belly/Main" @@ -467,8 +467,7 @@ "item_count": 1 }, { - "name": "Deku Nuts", - "short_name": "B1 Dive", + "name": "Deku Scrub", "access_rules": [ "@Jabu Jabus Belly/Main" ], @@ -506,7 +505,7 @@ "item_count": 1 }, { - "name": "GS52 - Lobby Basement Lower", + "name": "GS Lobby Basement Lower", "short_name": "Basement 1", "access_rules": [ "@Jabu Jabus Belly/Main,boomerang", @@ -522,7 +521,7 @@ "item_count": 1 }, { - "name": "GS53 - Lobby Basement Upper", + "name": "GS Lobby Basement Upper", "short_name": "Basement 2", "access_rules": [ "@Jabu Jabus Belly/Main,boomerang", @@ -538,7 +537,7 @@ "item_count": 1 }, { - "name": "GS54 - Near Boss", + "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ "@Jabu Jabus Belly/Boss Area" @@ -581,7 +580,7 @@ ], "sections": [ { - "name": "GS71 - Spinning Scythe Room", + "name": "GS Spinning Scythe Room", "short_name": "Spinning Scythe", "access_rules": [ "hookshot", @@ -616,7 +615,7 @@ "item_count": 1 }, { - "name": "GS70 - Heart Piece Room", + "name": "GS Heart Piece Room", "short_name": "Compass", "access_rules": [ "hookshot", @@ -632,7 +631,7 @@ "item_count": 1 }, { - "name": "GS72 - Push Block Room", + "name": "GS Push Block Room", "short_name": "Push Block", "access_rules": [ "hookshot", @@ -654,7 +653,7 @@ }, { "name": "Sheik in Ice Cavern", - "short_name": "Sheik", + "short_name": "Song", "access_rules": [ "$has_bottle", "{$hintable}" @@ -795,7 +794,7 @@ "item_count": 1 }, { - "name": "GS60 - First Room", + "name": "GS First Room", "short_name": "First Room", "access_rules": [ "dinsfire,magic", @@ -811,13 +810,13 @@ "item_count": 1 }, { - "name": "First Chest", + "name": "First Room Chest", "short_name": "Tree", "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 1 }, { - "name": "GS61 - Lobby", + "name": "GS Lobby", "short_name": "Lobby", "access_rules": [ "$has_age|adult,hookshot" @@ -830,7 +829,7 @@ "item_count": 1 }, { - "name": "Chest Behind Lobby", + "name": "First Stalfos Chest", "short_name": "Stalfos", "access_rules": [ "$has_age|adult" @@ -839,7 +838,7 @@ "item_count": 1 }, { - "name": "Outside Hookshot Chest", + "name": "Raised Island Courtyard Chest", "short_name": "Island", "access_rules": [ "@Forest Temple/NE Outdoors,hookshot", @@ -849,8 +848,8 @@ "item_count": 1 }, { - "name": "GS62 - Outdoor East", - "short_name": "Outdoor East", + "name": "GS Raised Island Courtyard", + "short_name": "Island", "access_rules": [ "@Forest Temple/NE Outdoors,hookshot", "@Forest Temple/Falling Room,$has_age|adult,bow", @@ -883,7 +882,7 @@ "item_count": 1 }, { - "name": "GS63 - Outdoor West", + "name": "GS Level Island Courtyard", "short_name": "Outdoor West", "access_rules": [ "@Forest Temple/NW Outdoors,longshot", @@ -899,7 +898,7 @@ "item_count": 1 }, { - "name": "Block Push Chest", + "name": "Eye Switch Chest", "short_name": "Block Push", "access_rules": [ "@Forest Temple/Block Push Room,lift1,$has_age|adult,bow" @@ -954,7 +953,7 @@ "item_count": 1 }, { - "name": "Falling Room Chest", + "name": "Falling Ceiling Room Chest", "short_name": "Checkerboard", "access_rules": [ "@Forest Temple/Falling Room" @@ -962,7 +961,7 @@ "item_count": 1 }, { - "name": "Near Boss Chest", + "name": "Basement Chest", "short_name": "Basement", "access_rules": [ "@Forest Temple/Boss Region" @@ -970,7 +969,7 @@ "item_count": 1 }, { - "name": "GS64 - Basement", + "name": "GS Basement", "short_name": "Basement", "access_rules": [ "@Forest Temple/Boss Region,$has_age|adult,hookshot" @@ -1081,7 +1080,7 @@ "item_count": 1 }, { - "name": "Chest Near Boss", + "name": "Near Boss Chest", "short_name": "Near Boss", "access_rules": [ "$FTR_or_goron" @@ -1090,8 +1089,8 @@ "item_count": 1 }, { - "name": "GS69 - Basement", - "short_name": "Basement", + "name": "GS Boss Key Loop", + "short_name": "Boss Key", "access_rules": [ "@Fire Temple/Boss Key Region" ], @@ -1103,7 +1102,7 @@ "item_count": 1 }, { - "name": "Fire Dancer Chest", + "name": "Flare Dancer Chest", "short_name": "Flare Dancer", "access_rules": [ "@Fire Temple/Boss Key Region" @@ -1121,7 +1120,7 @@ "item_count": 1 }, { - "name": "GS65 - Song of Time Room", + "name": "GS Song of Time Room", "short_name": "Time Block", "access_rules": [ "@Fire Temple/Big Lava Room,$has_age|adult,ocarina,time", @@ -1135,7 +1134,7 @@ "item_count": 1 }, { - "name": "Big Lava Room Open Chest", + "name": "Big Lava Room Lower Open Door Chest", "short_name": "Lava Room Open", "access_rules": [ "@Fire Temple/Big Lava Room" @@ -1144,7 +1143,7 @@ "item_count": 1 }, { - "name": "Big Lava Room Bombable Chest", + "name": "Big Lava Room Blocked Door Chest", "short_name": "Lava Room Bombable", "access_rules": [ "@Fire Temple/Big Lava Room,$has_age|adult,$has_explosives" @@ -1162,7 +1161,7 @@ "item_count": 1 }, { - "name": "Boulder Maze Side Room", + "name": "Boulder Maze Side Room Chest", "short_name": "Boulder Maze Side", "access_rules": [ "@Fire Temple/Maze Lower" @@ -1171,7 +1170,7 @@ "item_count": 1 }, { - "name": "GS66 - Unmarked Bomb Wall", + "name": "GS Boulder Maze", "short_name": "Boulder Maze", "access_rules": [ "@Fire Temple/Maze Lower,$has_explosives" @@ -1203,7 +1202,7 @@ "item_count": 1 }, { - "name": "Boulder Maze Bombable Pit", + "name": "Boulder Maze Shortcut Chest", "short_name": "Shortcut", "access_rules": [ "@Fire Temple/Maze Upper,$has_explosives" @@ -1212,7 +1211,7 @@ "item_count": 1 }, { - "name": "GS67 - East Tower Climb", + "name": "GS Scarecrow Climb", "short_name": "Scarecrow 1", "access_rules": [ "@Fire Temple/East Tower" @@ -1225,7 +1224,7 @@ "item_count": 1 }, { - "name": "GS68 - East Tower Top", + "name": "GS Scarecrow Top", "short_name": "Scarecrow 2", "access_rules": [ "@Fire Temple/East Tower" @@ -1431,7 +1430,7 @@ "item_count": 1 }, { - "name": "GS73 - South Basement", + "name": "GS Behind Gate", "short_name": "South Basement", "access_rules": [ "@Water Temple/Dive,hookshot,$has_explosives,ocarina,lullaby,ironboots", @@ -1468,8 +1467,8 @@ "item_count": 1 }, { - "name": "GS75 - Central Room", - "short_name": "Central Room", + "name": "GS Central Pillar", + "short_name": "Central Pillar", "access_rules": [ "@Water Temple/Middle Water Level,longshot,water_small_keys:1,[water_small_keys:5]", "@Water Temple/Middle Water Level,longshot,bow", @@ -1489,7 +1488,7 @@ }, { "name": "Central Pillar Chest", - "short_name": "Basement", + "short_name": "Central Pillar", "access_rules": [ "@Water Temple/Middle Water Level,ironboots,[bluetunic],hookshot,water_small_keys:1,[water_small_keys:5]", "@Water Temple/Middle Water Level,ironboots,[bluetunic],hookshot,bow", @@ -1499,7 +1498,7 @@ "item_count": 1 }, { - "name": "GS76 - Falling Platform Room", + "name": "GS Falling Platform Room", "short_name": "Platform Room", "access_rules": [ "@Water Temple/Falling Platforms,longshot", @@ -1515,15 +1514,15 @@ "item_count": 1 }, { - "name": "Dark Link Chest", - "short_name": "Dark Link", + "name": "Longshot Chest", + "short_name": "Longshot", "access_rules": [ "@Water Temple/Dark Link Region" ], "item_count": 1 }, { - "name": "GS74 - Serpent River", + "name": "GS River", "short_name": "River", "access_rules": [ "@Water Temple/Dark Link Region,ocarina,time,ironboots", @@ -1562,7 +1561,7 @@ "item_count": 1 }, { - "name": "GS77 - Near Boss Key Chest", + "name": "GS Near Boss Key Chest", "short_name": "Near Boss Key", "access_rules": [ "@Water Temple/North Basement" @@ -1721,7 +1720,7 @@ "item_count": 2 }, { - "name": "GS81 - Like Like Room", + "name": "GS Like Like Room", "short_name": "Like Like", "access_rules": [ "@Shadow Temple/Huge Pit" @@ -1742,7 +1741,7 @@ "item_count": 1 }, { - "name": "GS82 - Crusher Room", + "name": "GS Falling Spikes Room", "short_name": "Crusher", "access_rules": [ "@Shadow Temple/Huge Pit,hookshot", @@ -1793,7 +1792,7 @@ "item_count": 1 }, { - "name": "GS83 - Single Giant Pot", + "name": "GS Single Giant Pot", "short_name": "Single Skull", "access_rules": [ "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,[logic_lens_shadow_back]", @@ -1824,7 +1823,7 @@ "item_count": 2 }, { - "name": "GS84 - Near Ship", + "name": "GS Near Ship", "short_name": "Near Boat", "access_rules": [ "@Shadow Temple/Wind Tunnel,shadow_small_keys:4,longshot", @@ -1857,7 +1856,7 @@ "item_count": 1 }, { - "name": "GS85 - Triple Giant Pot", + "name": "GS Triple Giant Pot", "short_name": "Triple Skull", "access_rules": [ "@Shadow Temple/Beyond Boat" @@ -1870,7 +1869,7 @@ "item_count": 1 }, { - "name": "Hidden Floormaster Chest", + "name": "Invisible Floormaster Chest", "short_name": "Floormaster", "access_rules": [ "@Shadow Temple/Beyond Boat", @@ -2015,7 +2014,7 @@ "item_count": 1 }, { - "name": "Child Left Chest", + "name": "Child Bridge Chest", "short_name": "Child Left", "access_rules": [ "@Spirit Temple/Child Back" @@ -2023,7 +2022,7 @@ "item_count": 1 }, { - "name": "Child Right Chest", + "name": "Child Early Torches Chest", "short_name": "Child Right", "access_rules": [ "@Spirit Temple/Child Back,sticks", @@ -2033,7 +2032,7 @@ "item_count": 1 }, { - "name": "GS96 - Metal Fence", + "name": "GS Metal Fence", "short_name": "Metal Fence", "access_rules": [ "@Spirit Temple/Child Back" @@ -2057,7 +2056,7 @@ "item_count": 2 }, { - "name": "GS97 - Bomb for Light Room", + "name": "GS Sun on Floor Room", "short_name": "Child Climb", "access_rules": [ "@Spirit Temple/Child Climb,$has_projectile|both", @@ -2099,7 +2098,7 @@ "item_count": 1 }, { - "name": "GS98 - Hall to West Iron Knuckle", + "name": "GS Hall After Sun Block Room", "short_name": "Before Knuckle", "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,boomerang,hookshot", @@ -2149,7 +2148,7 @@ "item_count": 1 }, { - "name": "GS100 - Lobby", + "name": "GS Lobby", "short_name": "Lobby", "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hookshot", @@ -2194,7 +2193,7 @@ "item_count": 1 }, { - "name": "GS99 - Boulder Room", + "name": "GS Boulder Room", "short_name": "Boulders", "access_rules": [ "@Spirit Temple/Early Adult Right Chest,ocarina,time", @@ -2217,7 +2216,7 @@ "item_count": 2 }, { - "name": "Statue Hand Chest", + "name": "Statue Room Hand Chest", "short_name": "Statue Hand", "access_rules": [ "@Spirit Temple/Central Chamber,[spirit_small_keys:3],$has_age|adult,lift2,ocarina,lullaby" @@ -2226,11 +2225,11 @@ "item_count": 1 }, { - "name": "NE Main Room Chest", + "name": "Statue Room Northeast Chest", "short_name": "Statue Ledge", "access_rules": [ - "@Spirit Temple/Statue Hand Chest,hookshot", - "@Spirit Temple/Statue Hand Chest,hoverboots" + "@Spirit Temple/Statue Room Hand Chest,hookshot", + "@Spirit Temple/Statue Room Hand Chest,hoverboots" ], "item_count": 1 }, @@ -2321,7 +2320,7 @@ ], "sections": [ { - "name": "Front Left Hidden Wall", + "name": "Front Left Fake Wall Chest", "short_name": "Front Hidden", "access_rules": [ "[logic_lens_botw]", @@ -2331,7 +2330,7 @@ "item_count": 1 }, { - "name": "Right Bottom Hidden Wall", + "name": "Right Bottom Fake Wall Chest", "short_name": "Right Hidden", "access_rules": [ "[logic_lens_botw]", @@ -2341,7 +2340,7 @@ "item_count": 1 }, { - "name": "Center Large Chest", + "name": "Compass Chest", "short_name": "Center Large", "access_rules": [ "[logic_lens_botw]", @@ -2351,7 +2350,7 @@ "item_count": 1 }, { - "name": "Center Small Chest", + "name": "Center Skulltula Chest", "short_name": "Center Small", "access_rules": [ "[logic_lens_botw]", @@ -2360,7 +2359,7 @@ "item_count": 1 }, { - "name": "GS79 - West Inner Room", + "name": "GS West Inner Room", "short_name": "West Inner", "access_rules": [ "botw_small_keys:1,[botw_small_keys:3],boomerang,[logic_lens_botw]", @@ -2377,7 +2376,7 @@ "item_count": 1 }, { - "name": "GS80 - East Inner Room", + "name": "GS East Inner Room", "short_name": "East Inner", "access_rules": [ "botw_small_keys:1,[botw_small_keys:3],boomerang,[logic_lens_botw]", @@ -2394,7 +2393,7 @@ "item_count": 1 }, { - "name": "Locked Pits", + "name": "Fire Keese Chest", "access_rules": [ "botw_small_keys:1,[botw_small_keys:3],[logic_lens_botw]", "botw_small_keys:1,[botw_small_keys:3],$can_use_lens" @@ -2402,19 +2401,19 @@ "item_count": 1 }, { - "name": "Behind Right Grate", + "name": "Like Like Chest", "short_name": "Like Like", "access_rules": [ - "@Bottom of the Well/Locked Pits" + "@Bottom of the Well/Fire Keese Chest" ], "item_count": 1 }, { - "name": "GS78 - Like Like Cage", + "name": "GS Like Like Cage", "short_name": "Like Like", "access_rules": [ - "@Bottom of the Well/Behind Right Grate,boomerang", - "@Bottom of the Well/Behind Right Grate,[logic_botw_cage_gs],$can_child_attack" + "@Bottom of the Well/Like Like Chest,boomerang", + "@Bottom of the Well/Like Like Chest,[logic_botw_cage_gs],$can_child_attack" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -2432,7 +2431,7 @@ "item_count": 1 }, { - "name": "Front Center Bombable", + "name": "Front Center Bombable Chest", "short_name": "Front Bombable", "access_rules": [ "$has_explosives" @@ -2440,7 +2439,7 @@ "item_count": 1 }, { - "name": "Back Left Bombable", + "name": "Back Left Bombable Chest", "short_name": "Back Bombable", "access_rules": [ "$has_explosives,[logic_lens_botw]", @@ -2449,7 +2448,7 @@ "item_count": 1 }, { - "name": "Basement Chest", + "name": "Map Chest", "short_name": "Basement", "access_rules": [ "$has_explosives", @@ -2462,23 +2461,23 @@ "item_count": 1 }, { - "name": "Underwater Front Chest", - "short_name": "Underwater Front", + "name": "Underwater Left Chest", + "short_name": "Underwater Left", "access_rules": [ "ocarina,lullaby" ], "item_count": 1 }, { - "name": "Underwater Left Chest", - "short_name": "Underwater Left", + "name": "Underwater Front Chest", + "short_name": "Underwater Front", "access_rules": [ "ocarina,lullaby" ], "item_count": 1 }, { - "name": "Defeat Boss", + "name": "Lens of Truth Chest", "short_name": "Dead Hand", "access_rules": [ "ocarina,lullaby,sword1", @@ -2553,7 +2552,7 @@ "hosted_item": "trial_water" }, { - "name": "Shadow Trial First Chest", + "name": "Shadow Trial Front Chest", "short_name": "Shadow Trial 1", "access_rules": [ "hookshot", @@ -2564,7 +2563,7 @@ "item_count": 1 }, { - "name": "Shadow Trial Second Chest", + "name": "Shadow Trial Golden Gauntlets Chest", "short_name": "Shadow Trial 2", "access_rules": [ "longshot,hoverboots", @@ -2639,7 +2638,7 @@ "hosted_item": "trial_light" }, { - "name": "Spirit Trial First Chest", + "name": "Spirit Trial Crystal Switch Chest", "short_name": "Spirit Trial 1", "access_rules": [ "[logic_spirit_trial_hookshot]", @@ -2648,7 +2647,7 @@ "item_count": 1 }, { - "name": "Spirit Trial Second Chest", + "name": "Spirit Trial Invisible Chest", "short_name": "Spirit Trial 2", "access_rules": [ "$has_bombchus,[logic_lens_castle],[logic_spirit_trial_hookshot]", @@ -2685,7 +2684,8 @@ "item_count": 4 }, { - "name": "Castle Tower", + "name": "Ganons Tower Boss Key Chest", + "short_name": "Boss Key", "access_rules": [ "$trials_barrier_dispelled" ], @@ -2712,6 +2712,7 @@ "sections": [ { "name": "North F1 Carpenter", + "short_name": "North F1", "access_rules": [ "$has_age|adult" ], @@ -2720,6 +2721,7 @@ }, { "name": "North F2 Carpenter", + "short_name": "North F2", "access_rules": [ "$has_age|adult,$gerudo_card", "$has_age|adult,bow", @@ -2735,6 +2737,7 @@ }, { "name": "South F1 Carpenter", + "short_name": "South F1", "access_rules": [ "$has_age|adult" ], @@ -2746,6 +2749,7 @@ }, { "name": "South F2 Carpenter", + "short_name": "South F2", "access_rules": [ "$has_age|adult" ], @@ -2756,7 +2760,7 @@ "item_count": 1 }, { - "name": "Free the carpenters", + "name": "Gerudo Membership Card", "access_rules": [ "gerudo_fortress_normal,gf_small_keys:4,$has_age|adult,$gerudo_card", "gerudo_fortress_normal,gf_small_keys:4,$has_age|adult,bow", diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index 014cf8f6..a1148f26 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -12,8 +12,7 @@ "name": "Kokiri Village", "children": [ { - "name": "Kokiri Sword Chest", - "short_name": "Kokiri Sword", + "name": "KF Kokiri Sword Chest", "sections": [ { "name": "Dodge Boulder", @@ -33,10 +32,10 @@ ] }, { - "name": "Mido House", + "name": "KF Midos House", "sections": [ { - "name": "Mido Chests", + "name": "KF Midos Chests", "item_count": 4 } ], @@ -54,14 +53,14 @@ ] }, { - "name": "Kokiri Forest Storms Grotto", - "short_name": "Kokiri Storms Grotto", + "name": "KF Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Chest", + "name": "KF Storms Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -79,7 +78,7 @@ ] }, { - "name": "Kokiri Shop", + "name": "KF Kokiri Shop", "sections": [ { "name": "Item 1", @@ -122,10 +121,10 @@ ] }, { - "name": "Links House", + "name": "KF Links House", "sections": [ { - "name": "Links House Cow", + "name": "KF Links House Cow", "short_name": "Cow", "access_rules": [ "$has_age|adult,ocarina,epona" @@ -147,10 +146,11 @@ ] }, { - "name": "Know It All House", + "name": "KF Know It All House", "sections": [ { - "name": "GS1 (N)", + "name": "KF GS Know It All House (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,$can_child_attack,$can_leave_forest", "$has_age|child,$night_gs,$can_child_attack,ocarina,sun" @@ -172,10 +172,11 @@ ] }, { - "name": "Kokiri Bean Patch", + "name": "KF Bean Patch", "sections": [ { - "name": "GS2", + "name": "KF GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -196,10 +197,11 @@ ] }, { - "name": "House of Twins", + "name": "KF House of Twins", "sections": [ { - "name": "GS3 (N)", + "name": "KF GS House of Twins (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hookshot", "$has_age|adult,$night_gs,hoverboots,[logic_adult_kokiri_gs]", //TODO: can be done itemless, no trick yet @@ -222,14 +224,14 @@ "y": 981 } ] - } - ] - }, - { + } + ] + }, + { "name": "Lost Woods", "children": [ { - "name": "Skull Kid", + "name": "LW Skull Kid", "sections": [ { "name": "Play Sarias Song", @@ -260,14 +262,14 @@ ] }, { - "name": "Lost Woods Generic Grotto", - "short_name": "Goron City Grotto", + "name": "LW Near Shortcuts Grotto", + "access_rules": [ + "$can_blast" + ], "sections": [ { - "name": "Blast it", - "access_rules": [ - "$can_blast" - ], + "name": "LW Near Shortcuts Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -285,11 +287,11 @@ ] }, { - "name": "Ocarina Memory Game", + "name": "LW Ocarina Memory Game", "short_name": "Ocarina Game", "sections": [ { - "name": "Repeat", + "name": "ResidentSleeper", "access_rules": [ "$has_age|child,ocarina" ], @@ -305,7 +307,7 @@ ] }, { - "name": "Target in Woods", + "name": "LW Target in Woods", "sections": [ { "name": "Shoot it", @@ -398,11 +400,10 @@ ] }, { - "name": "LW Deku Scrub Deku Stick Upgrade", - "short_name": "Scrub Below Bridge", + "name": "LW Deku Scrub Near Bridge", "sections": [ { - "name": "Pay up", + "name": "Stick upgrade", "access_rules": [ "$has_age|child,$can_child_attack", "$has_age|child,nuts", @@ -422,23 +423,22 @@ ] }, { - "name": "Lost Woods Sales Grotto", - "short_name": "Sales Grotto", + "name": "LW Scrubs Grotto", "access_rules": [ "$has_explosives", "$has_age|adult,hammer,$beyond_mido" ], "sections": [ { - "name": "LW Grotto Deku Scrub Deku Nut Upgrade", - "short_name": "Nut Capacity", + "name": "LW Deku Scrub Grotto Front", + "short_name": "Front", "chest_unopened_img": "images/deku_scrub.png", "chest_opened_img": "images/deku_scrub_grey.png", "item_count": 1 }, { - "name": "LW Grotto Deku Scrub Arrows", - "short_name": "Arrows", + "name": "LW Deku Scrub Grotto Rear", + "short_name": "Rear", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -461,12 +461,15 @@ ] }, { - "name": "LW Deku Scrubs", + "name": "LW Deku Scrubs Near Deku Theater", + "short_name": "LW Deku Scrubs", "sections": [ { "name": "Deku Nuts / Deku Sticks", "access_rules": [ - "$has_age|child,$can_stun_deku" + "$has_age|child,$can_child_attack", + "$has_age|child,nuts", + "$has_age|child,shield1" ], "visibility_rules": [ "setting_scrub_shuffle_yes" @@ -486,11 +489,11 @@ ] }, { - "name": "Lost Woods Bean Patch Near Bridge", - "short_name": "Bean Patch Near Bridge", + "name": "LW Bean Patch Near Bridge", "sections": [ { - "name": "GS4", + "name": "LW GS Bean Patch Near Bridge", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -511,8 +514,7 @@ ] }, { - "name": "Lost Woods Bean Patch Near Stage", - "short_name": "Bean Patch Near Stage", + "name": "LW Bean Patch Near Theater", "sections": [ { "name": "Plant Bean", @@ -525,10 +527,11 @@ "hosted_item": "bean_stage_yes" }, { - "name": "GS5", + "name": "LW GS Bean Patch Near Theater", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack", - "$has_age|child,$has_bottle,shield1" + "$has_age|child,$has_bottle,shield1,setting_scrub_shuffle_no" ], "visibility_rules": [ "setting_tokens_overworld" @@ -547,14 +550,14 @@ ] }, { - "name": "Lost Woods Above Stage", - "short_name": "Above Stage", + "name": "LW Above Theater", "access_rules": [ "$night_gs,$has_age|adult,$beyond_mido" ], "sections": [ { - "name": "GS6 (N)", + "name": "LW GS Above Theater (N)", + "short_name": "GS", "access_rules": [ "setting_plant_no,beans", "bean_stage_yes", @@ -578,22 +581,22 @@ "y": 740 } ] - } - ] - }, - { + } + ] + }, + { "name": "Sacred Forest Meadow", "children": [ { - "name": "Front of Meadow Grotto", - "short_name": "Wolfos Grotto", + "name": "SFM Wolfos Grotto", "access_rules": [ "$hidden_grotto,$has_explosives", "$hidden_grotto,$has_age|adult,hammer,$beyond_mido" ], "sections": [ { - "name": "Kill them", + "name": "SFM Wolfos Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -637,8 +640,7 @@ ] }, { - "name": "Sheik Forest Song", - "short_name": "Sheik in Meadow", + "name": "Sheik in Forest", "sections": [ { "name": "Song", @@ -661,13 +663,14 @@ ] }, { - "name": "Meadow Storms Grotto", + "name": "SFM Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Deku Scrubs", + "name": "SFM Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$has_age|adult,$beyond_mido", "$has_age|child,minuet,nuts", @@ -701,13 +704,14 @@ ] }, { - "name": "Top of Maze", + "name": "SFM Maze", "access_rules": [ "$night_gs,$has_age|adult,$beyond_mido" ], "sections": [ { - "name": "GS7 (N)", + "name": "SFM GS (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -730,10 +734,10 @@ "y": 664 } ] - } - ] - } - ] + } + ] + } + ] }, { "name": "Outside Forest", @@ -746,11 +750,11 @@ "color": "#09a09d", "children": [ { - "name": "Lost Woods Bridge", + "name": "LW Bridge", "color": "#18a50e", "sections": [ { - "name": "Gift from Saria", + "name": "LW Gift from Saria", "capture_item": true, "item_count": 1 } @@ -769,19 +773,21 @@ ] }, { - "name": "Ocarina of Time", + "name": "HF Ocarina of Time", "access_rules": [ "$has_age|child,stones:3", "{$hintable}" ], "sections": [ { - "name": "Item", + "name": "HF Ocarina of Time Item", + "short_name": "Item", "capture_item": true, "item_count": 1 }, { - "name": "Song", + "name": "Song from Ocarina of Time", + "short_name": "Song", "capture_item": true, "chest_unopened_img": "images/grey_note.png", "chest_opened_img": "images/grey_note_check.png", @@ -797,14 +803,14 @@ ] }, { - "name": "Field North Lon Lon Grotto", - "short_name": "Tektite Grotto", + "name": "HF Tektite Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "Dive down", + "name": "HF Tektite Grotto Freestanding PoH", + "short_name": "HP", "access_rules": [ "scale2", "$has_age|adult,ironboots", @@ -830,14 +836,14 @@ ] }, { - "name": "Field Near Lake Inside Fence Grotto", - "short_name": "Grotto Inside Fence", + "name": "HF Inside Fence Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "Deku Scrub", + "name": "HF Deku Scrub Grotto", + "short_name": "Deku Scrub", "access_rules": [ "$can_stun_deku" ], @@ -860,11 +866,11 @@ ] }, { - "name": "Field Near Lake Outside Fence Grotto", - "short_name": "Grotto Outside Fence", + "name": "HF Open Grotto", "sections": [ { - "name": "Chest", + "name": "HF Open Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -882,14 +888,15 @@ ] }, { - "name": "Field West Castle Town Grotto", - "short_name": "Grotto near Bridge", + "name": "HF Near Market Grotto", + "short_name": "Boulda", + "access_rules": [ + "$can_blast" + ], "sections": [ { - "name": "Boulda", - "access_rules": [ - "$can_blast" - ], + "name": "HF Near Market Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -907,13 +914,14 @@ ] }, { - "name": "Remote Southern Grotto", + "name": "HF Southeast Grotto", + "access_rules": [ + "$can_blast" + ], "sections": [ { - "name": "Blast it", - "access_rules": [ - "$can_blast" - ], + "name": "HF Southeast Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -953,13 +961,14 @@ ] }, { - "name": "Field Kakariko Grotto", + "name": "HF Near Kak Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "GS12", + "name": "HF GS Near Kak Grotto", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_explosives,boomerang", "{$has_age|child,$has_explosives,sling}", @@ -990,13 +999,14 @@ ] }, { - "name": "Field Valley Grotto", + "name": "HF Cow Grotto", "access_rules": [ "$hidden_grotto" ], "sections": [ { - "name": "GS13", + "name": "HF GS Cow Grotto", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_explosives,dinsfire,magic,boomerang", "{$has_age|child,$has_explosives,dinsfire,magic}", @@ -1013,7 +1023,7 @@ "item_count": 1 }, { - "name": "HF Grotto Cow", + "name": "HF Cow Grotto Cow", "short_name": "Cow", "access_rules": [ "$has_age|child,$has_explosives,dinsfire,magic,ocarina,epona", @@ -1045,7 +1055,7 @@ "color": "#0936a0", "children": [ { - "name": "Underwater Bottle", + "name": "LH Underwater Item", "sections": [ { "name": "Dive down", @@ -1066,7 +1076,7 @@ ] }, { - "name": "Child Fishing", + "name": "LH Child Fishing", "sections": [ { "name": "Bite pls", @@ -1086,7 +1096,7 @@ ] }, { - "name": "Adult Fishing", + "name": "LH Adult Fishing", "sections": [ { "name": "Bite pls", @@ -1110,7 +1120,7 @@ ] }, { - "name": "Lake Hylia Sun", + "name": "LH Sun", "sections": [ { "name": "Shoot it", @@ -1133,11 +1143,10 @@ ] }, { - "name": "Lake Hylia Freestanding PoH", - "short_name": "Lab Tower", + "name": "LH Lab Tower", "sections": [ { - "name": "Freestanding PoH", + "name": "LH Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|adult,setting_plant_no,beans", @@ -1158,12 +1167,10 @@ ] }, { - "name": "Lake Hylia Lab", - "short_name": "Lakeside Lab", + "name": "LH Lab", "sections": [ { - "name": "Diving in the Lab", - "short_name": "Dive down", + "name": "LH Lab Dive", "access_rules": [ "scale2", "$has_age|adult,[logic_lab_diving],ironboots,hookshot" @@ -1179,6 +1186,19 @@ "speedfrog" ], "hosted_item": "capture_eyedrops" + }, + { + "name": "LH GS Lab Crate", + "short_name": "GS", + "access_rules": [ + "$has_age|adult,ironboots,hookshot" + ], + "visibility_rules": [ + "setting_tokens_overworld" + ], + "chest_unopened_img": "images/skulltula.png", + "chest_opened_img": "images/skulltula_token.png", + "item_count": 1 } ], "map_locations": [ @@ -1233,11 +1253,11 @@ ] }, { - "name": "Lake Hylia Grotto", - "short_name": "Under Gravestone", + "name": "LH Grotto", "sections": [ { - "name": "Deku Scrubs", + "name": "LH Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$can_stun_deku" ], @@ -1264,7 +1284,7 @@ ] }, { - "name": "Lake Hylia Bean Patch", + "name": "LH Bean Patch", "sections": [ { "name": "Plant Bean", @@ -1277,7 +1297,8 @@ "hosted_item": "bean_lake_yes" }, { - "name": "GS55", + "name": "LH GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -1298,13 +1319,14 @@ ] }, { - "name": "Lab Wall", + "name": "LH Lab Wall", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS56 (N)", + "name": "LH GS Lab Wall (N)", + "short_name": "GS", "access_rules": [ "boomerang", "[logic_lab_wall_gs],sticks", @@ -1330,10 +1352,11 @@ ] }, { - "name": "Small Island", + "name": "LH Small Island", "sections": [ { - "name": "GS57 (N)", + "name": "LH GS Small Island (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,$can_child_attack" ], @@ -1354,10 +1377,11 @@ ] }, { - "name": "Giant Tree", + "name": "LH Tree", "sections": [ { - "name": "GS58 (N)", + "name": "LH GS Tree (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,longshot" ], @@ -1376,33 +1400,10 @@ "y": 1415 } ] - }, - { - "name": "Lab Underwater Crate", - "short_name": "Lab Crate", - "sections": [ - { - "name": "GS59", - "access_rules": [ - "$has_age|adult,ironboots,hookshot" - ], - "visibility_rules": [ - "setting_tokens_overworld" - ], - "chest_unopened_img": "images/skulltula.png", - "chest_opened_img": "images/skulltula_token.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "adult", - "x": 959, - "y": 1229 - } - ] - }, - { + } + ] + }, + { "name": "Lon Lon Ranch", "color": "#09a09d", "children": [ @@ -1429,10 +1430,10 @@ ] }, { - "name": "Talon House", + "name": "LLR Talons House", "sections": [ { - "name": "Talons Chickens", + "name": "LLR Talons Chickens", "access_rules": [ "$has_age|child,postzelda" ], @@ -1448,10 +1449,10 @@ ] }, { - "name": "Corner Tower", + "name": "LLR Tower", "sections": [ { - "name": "Freestanding PoH", + "name": "LLR Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child" @@ -1488,8 +1489,7 @@ ] }, { - "name": "Ingo Barn", - "short_name": "Stables", + "name": "LLR Stables", "sections": [ { "name": "LLR Stables Cows", @@ -1519,10 +1519,11 @@ ] }, { - "name": "Lon Lon Grotto", + "name": "LLR Grotto", "sections": [ { - "name": "Deku Scrubs", + "name": "LLR Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$has_age|child,$can_child_attack", "$has_age|child,nuts", @@ -1546,11 +1547,11 @@ ] }, { - "name": "Lon Lon Ranch Tree", - "short_name": "Lone Tree", + "name": "LLR Tree", "sections": [ { - "name": "GS18", + "name": "LLR GS Tree", + "short_name": "GS", "access_rules": [ "$has_age|child" ], @@ -1571,11 +1572,11 @@ ] }, { - "name": "Lon Lon Ranch Rain Shed", - "short_name": "Rain Shed", + "name": "LLR Rain Shed", "sections": [ { - "name": "GS19 (N)", + "name": "LLR GS Rain Shed (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -1596,11 +1597,11 @@ ] }, { - "name": "Lon Lon Ranch House Window", - "short_name": "House Window", + "name": "LLR House Window", "sections": [ { - "name": "GS20 (N)", + "name": "LLR GS House Window (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,boomerang", "{$has_age|child,sling}", @@ -1624,11 +1625,11 @@ ] }, { - "name": "Lon Lon Ranch Back Wall", - "short_name": "Back Wall", + "name": "LLR Back Wall", "sections": [ { - "name": "GS21 (N)", + "name": "LLR GS Back Wall (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs,boomerang", "{$has_age|child,sling}", @@ -1661,14 +1662,14 @@ "color": "#6909a0", "children": [ { - "name": "Kakariko Bombable Grotto", - "short_name": "Center Grotto", + "name": "Kak Redead Grotto", "access_rules": [ "$hidden_grotto,$can_blast" ], "sections": [ { - "name": "Kill them", + "name": "Kak Redead Grotto Chest", + "short_name": "Chest", "access_rules": [ "$has_age|adult", "$has_age|child,sticks", @@ -1692,11 +1693,11 @@ ] }, { - "name": "Kakariko Back Grotto", - "short_name": "Back Grotto", + "name": "Kak Open Grotto", "sections": [ { - "name": "Chest", + "name": "Kak Open Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -1714,17 +1715,17 @@ ] }, { - "name": "Impa House", + "name": "Kak Impas House", "sections": [ { - "name": "Freestanding PoH", + "name": "Kak Impas House Freestanding PoH", "short_name": "HP", "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", "item_count": 1 }, { - "name": "Impas House Cow", + "name": "Kak Impas House Cow", "short_name": "Cow", "access_rules": [ "ocarina,epona" @@ -1751,7 +1752,7 @@ ] }, { - "name": "Man on Roof", + "name": "Kak Man on Roof", "sections": [ { "name": "Talk to him", @@ -1776,10 +1777,11 @@ ] }, { - "name": "Kakariko Shooting Gallery", + "name": "Kak Shooting Gallery", "sections": [ { - "name": "Adult Shooting Gallery", + "name": "Kak Shooting Gallery Reward", + "short_name": "Reward", "access_rules": [ "$has_age|adult,bow", "{$hintable}" @@ -1797,10 +1799,10 @@ ] }, { - "name": "Windmill", + "name": "Kak Windmill", "sections": [ { - "name": "Freestanding PoH", + "name": "Kak Windmill Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child,boomerang", @@ -1812,27 +1814,10 @@ "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", "item_count": 1 - } - ], - "map_locations": [ - { - "map": "child", - "x": 1935, - "y": 346 }, { - "map": "adult", - "x": 1935, - "y": 346 - } - ] - }, - { - "name": "Song at Windmill", - "short_name": "Guru-Guru", - "sections": [ - { - "name": "Song", + "name": "Song from Windmill", + "short_name": "Guru-Guru", "access_rules": [ "$has_age|adult,ocarina", "{$hintable}" @@ -1844,10 +1829,15 @@ } ], "map_locations": [ + { + "map": "child", + "x": 1935, + "y": 346 + }, { "map": "adult", - "x": 1945, - "y": 376 + "x": 1935, + "y": 346 } ] }, @@ -1875,10 +1865,10 @@ ] }, { - "name": "Anjus Chickens", + "name": "Kak Anju as Child", "sections": [ { - "name": "Catch them", + "name": "Chickens", "access_rules": [ "$has_age|child" ], @@ -1894,7 +1884,7 @@ ] }, { - "name": "Anju as Adult", + "name": "Kak Anju as Adult", "sections": [ { "name": "Talk to her", @@ -1952,7 +1942,7 @@ ] }, { - "name": "Old Hag", + "name": "Kak Odd Medicine Building", "sections": [ { "name": "Give Mushroom", @@ -1974,17 +1964,19 @@ ] }, { - "name": "House of Skulltula", + "name": "Kak House of Skulltula", "sections": [ { - "name": "10 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "10 Tokens", "access_rules": [ "skulltula:10" ], "item_count": 1 }, { - "name": "20 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "20 Tokens", "access_rules": [ "skulltula:20", "{$hintable}" @@ -1993,7 +1985,8 @@ "item_count": 1 }, { - "name": "30 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "30 Tokens", "access_rules": [ "skulltula:30", "{$hintable}" @@ -2002,7 +1995,8 @@ "item_count": 1 }, { - "name": "40 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "40 Tokens", "access_rules": [ "skulltula:40", "{$hintable}" @@ -2011,7 +2005,8 @@ "item_count": 1 }, { - "name": "50 Skulltulas", + "name": "Kak 10 Gold Skulltula Reward", + "short_name": "50 Tokens", "access_rules": [ "skulltula:50", "{$hintable}" @@ -2034,7 +2029,7 @@ ] }, { - "name": "Kakariko Potion Shop", + "name": "Kak Potion Shop", "access_rules": [ "$has_age|adult" ], @@ -2072,7 +2067,7 @@ ] }, { - "name": "Kakariko Bazaar", + "name": "Kak Bazaar", "access_rules": [ "$has_age|adult" ], @@ -2110,11 +2105,11 @@ ] }, { - "name": "Kakariko Above Impa's House", - "short_name": "Above Impa's House", + "name": "Kak Above Impas House", "sections": [ { - "name": "GS27 (N)", + "name": "Kak GS Above Impas House (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hookshot" ], @@ -2135,11 +2130,11 @@ ] }, { - "name": "Kakariko Tree", - "short_name": "Tree", + "name": "Kak Tree", "sections": [ { - "name": "GS22 (N)", + "name": "Kak GS Tree (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2160,11 +2155,11 @@ ] }, { - "name": "Kakariko Skulltula House", - "short_name": "Skulltula House", + "name": "Kak Skulltula House", "sections": [ { - "name": "GS23 (N)", + "name": "Kak GS Skulltula House (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2185,11 +2180,11 @@ ] }, { - "name": "Kakariko House Under Construction", - "short_name": "Under Construction", + "name": "Kak House Under Construction", "sections": [ { - "name": "GS24 (N)", + "name": "Kak GS House Under Construction (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2210,11 +2205,11 @@ ] }, { - "name": "Kakariko Guard's House", - "short_name": "Bazaar Wall", + "name": "Kak Guards House", "sections": [ { - "name": "GS25 (N)", + "name": "Kak GS Guards House (N)", + "short_name": "GS", "access_rules": [ "$has_age|child,$night_gs" ], @@ -2235,14 +2230,14 @@ ] }, { - "name": "Kakariko Watchtower", - "short_name": "Watchtower", + "name": "Kak Watchtower", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS26 (N)", + "name": "Kak GS Watchtower (N)", + "short_name": "GS", "access_rules": [ "sling", "$has_bombchus", @@ -2272,7 +2267,8 @@ "name": "Dampe", "sections": [ { - "name": "Gravedigging Tour", + "name": "Graveyard Dampe Gravedigging Tour", + "short_name": "HP", "access_rules": [ "$has_age|child" ], @@ -2290,18 +2286,19 @@ ] }, { - "name": "Dampes Grave", + "name": "Graveyard Dampes Grave", + "short_name": "Dampes Grave", "access_rules": [ "$has_age|adult" ], "sections": [ { - "name": "Hookshot Chest", - "short_name": "Hookshot", + "name": "Graveyard Hookshot Chest", + "short_name": "Chest", "item_count": 1 }, { - "name": "Freestanding PoH", + "name": "Graveyard Dampe Race Freestanding PoH", "short_name": "HP", "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", @@ -2317,10 +2314,12 @@ ] }, { - "name": "Shield Grave", + "name": "Graveyard Shield Grave", + "short_name": "Shield Grave", "sections": [ { - "name": "Chest", + "name": "Graveyard Shield Grave Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -2338,11 +2337,12 @@ ] }, { - "name": "Heart Piece Grave", - "short_name": "Redead Grave", + "name": "Graveyard Heart Piece Grave", + "short_name": "HP Grave", "sections": [ { - "name": "Play Suns Song", + "name": "Graveyard Heart Piece Grave Chest", + "short_name": "Play Suns Song", "access_rules": [ "ocarina,sun", "{$hintable}" @@ -2397,7 +2397,7 @@ ] }, { - "name": "Composer Grave", + "name": "Graveyard Composers Grave", "short_name": "Royal Tomb", "access_rules": [ "ocarina,lullaby", @@ -2405,7 +2405,7 @@ ], "sections": [ { - "name": "Song from Composer Grave", + "name": "Song from Composers Grave", "short_name": "Song", "access_rules": [ "$has_age|adult", @@ -2422,8 +2422,8 @@ "item_count": 1 }, { - "name": "Composer Grave Chest", - "short_name": "Torches", + "name": "Graveyard Composers Grave Chest", + "short_name": "Chest", "access_rules": [ "$has_fire", "$has_age|child,sticks,[$has_fire]", @@ -2470,13 +2470,13 @@ }, { "name": "Graveyard Wall", - "short_name": "Wall", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS28 (N)", + "name": "Graveyard GS Wall (N)", + "short_name": "GS", "access_rules": [ "boomerang", "{sling}", @@ -2514,7 +2514,8 @@ "hosted_item": "bean_graveyard_yes" }, { - "name": "GS29", + "name": "Graveyard GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -2546,37 +2547,18 @@ "name": "Goron City", "children": [ { - "name": "Goron City Maze Right", - "short_name": "Boulder Maze Right", + "name": "GC Maze", "sections": [ { - "name": "Chests", + "name": "Right and Center Chests", "access_rules": [ "$can_blast", "$has_age|adult,lift2" ], "item_count": 2 - } - ], - "map_locations": [ - { - "map": "child", - "x": 1606, - "y": 98 }, { - "map": "adult", - "x": 1606, - "y": 98 - } - ] - }, - { - "name": "Goron City Maze Leftmost", - "short_name": "Boulder Maze Left", - "sections": [ - { - "name": "Chest", + "name": "Left Chest", "access_rules": [ "$has_age|adult,hammer", "$has_age|adult,lift2", @@ -2585,18 +2567,37 @@ ], "capture_item": true, "item_count": 1 + }, + { + "name": "GC GS Boulder Maze", + "short_name": "GS", + "access_rules": [ + "$has_age|child,$has_explosives" + ], + "visibility_rules": [ + "setting_tokens_overworld" + ], + "chest_unopened_img": "images/skulltula.png", + "chest_opened_img": "images/skulltula_token.png", + "item_count": 1 } ], "map_locations": [ + { + "map": "child", + "x": 1606, + "y": 98 + }, { "map": "adult", - "x": 1576, + "x": 1606, "y": 98 } ] }, { - "name": "Link the Goron", + "name": "GC Rolling Goron as Adult", + "short_name": "Link the Goron", "sections": [ { "name": "Stop him", @@ -2615,8 +2616,8 @@ ] }, { - "name": "Rolling Goron as Child", - "short_name": "Hot Rodder Goron", + "name": "GC Rolling Goron as Child", + "short_name": "Hot Rodder", "sections": [ { "name": "Blow him up", @@ -2636,8 +2637,7 @@ ] }, { - "name": "Goron City Pot", - "short_name": "Spinning Pot", + "name": "GC Pot", "sections": [ { "name": "Freestanding PoH", @@ -2668,7 +2668,7 @@ ] }, { - "name": "Darunias Joy", + "name": "GC Darunias Joy", "sections": [ { "name": "Play Sarias Song", @@ -2689,14 +2689,14 @@ ] }, { - "name": "Goron City Grotto", - "short_name": "Lava Room Grotto", + "name": "GC Grotto", "access_rules": [ "$has_age|adult" ], "sections": [ { - "name": "Deku Scrubs", + "name": "GC Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "ocarina,time,$damage_below_quadruple", "ocarina,time,redtunic", @@ -2723,36 +2723,11 @@ ] }, { - "name": "Goron City Boulder Maze", - "short_name": "Boulder Maze Crate", + "name": "GC Center Platform", "sections": [ { - "name": "GS34", - "access_rules": [ - "$has_age|child,$has_explosives" - ], - "visibility_rules": [ - "setting_tokens_overworld" - ], - "chest_unopened_img": "images/skulltula.png", - "chest_opened_img": "images/skulltula_token.png", - "item_count": 1 - } - ], - "map_locations": [ - { - "map": "child", - "x": 1591, - "y": 68 - } - ] - }, - { - "name": "Goron City Center Platform", - "short_name": "Center Platform", - "sections": [ - { - "name": "GS35", + "name": "GC GS Center Platform", + "short_name": "GS", "access_rules": [ "$has_age|adult" ], @@ -2773,7 +2748,7 @@ ] }, { - "name": "Goron Shop", + "name": "GC Shop", "access_rules": [ "$link_the_goron", "$has_age|child,$has_explosives", @@ -2821,21 +2796,26 @@ "y": 128 } ] - } - ] - }, - { + } + ] + }, + { "name": "Death Mountain Trail", "children": [ { "name": "Top of DC", "sections": [ { - "name": "DM Trail Freestanding PoH", + "name": "DMT Freestanding PoH", "short_name": "HP", "access_rules": [ - "$has_age|adult", - "$child_death_mountain" + "$damage_below_ohko", + "nayrus,magic", + "$has_bottle", + "$has_age|adult,hoverboots", + "$has_age|both,setting_plant_no,beans,$has_explosives", + "$has_age|both,setting_plant_no,beans,lift1,$child_death_mountain", + "$has_age|both,bean_trail_yes" ], "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", @@ -2856,11 +2836,10 @@ ] }, { - "name": "Death Mountain Bombable Chest", - "short_name": "Bombable Wall", + "name": "DMT Chest", "sections": [ { - "name": "Blast it", + "name": "Blast wall", "access_rules": [ "$can_blast", "$child_death_mountain,lift1,[logic_dmt_bombable]" @@ -2882,13 +2861,14 @@ ] }, { - "name": "Mountain Storms Grotto", + "name": "DMT Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Chest", + "name": "DMT Storms Grotto Chest", + "short_name": "Chest", "access_rules": [ "$has_age|adult", "$child_death_mountain" @@ -2910,10 +2890,11 @@ ] }, { - "name": "Mountain Summit Fairy", + "name": "DMT Great Fairy Fountain", "sections": [ { - "name": "Fairy Fountain", + "name": "DMT Great Fairy Reward", + "short_name": "Reward", "access_rules": [ "ocarina,lullaby,$can_blast" ], @@ -2934,7 +2915,7 @@ ] }, { - "name": "Biggoron", + "name": "DMT Biggoron", "access_rules": [ "$has_age|adult,$dmc_upper", "{$hintable}" @@ -2979,10 +2960,10 @@ ] }, { - "name": "Mountain Bombable Grotto", + "name": "DMT Cow Grotto", "sections": [ { - "name": "DMT Grotto Cow", + "name": "DMT Cow Grotto Cow", "short_name": "Cow", "access_rules": [ "$can_blast,ocarina,epona" @@ -3009,11 +2990,12 @@ ] }, { - "name": "Mountain Trail Above Dodongo's Cavern", + "name": "DMT Above Dodongos Cavern", "short_name": "Rock Above DC", "sections": [ { - "name": "GS32 (N)", + "name": "DMT GS Above Dodongos Cavern (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hammer", "$has_age|adult,$night_gs,[logic_trail_gs_lower_hookshot],hookshot", @@ -3038,11 +3020,11 @@ ] }, { - "name": "Mountain Trail Path to Crater", - "short_name": "Path to Crater", + "name": "DMT Falling Rocks Path", "sections": [ { - "name": "GS33 (N)", + "name": "DMT GS Falling Rocks Path (N)", + "short_name": "GS", "access_rules": [ "$has_age|adult,$night_gs,hammer", "$has_age|adult,$night_gs,[logic_trail_gs_upper]" @@ -3064,7 +3046,7 @@ ] }, { - "name": "Mountain Trail Bean Patch", + "name": "DMT Bean Patch", "sections": [ { "name": "Plant Bean", @@ -3078,7 +3060,8 @@ "hosted_item": "bean_trail_yes" }, { - "name": "GS30", + "name": "DMT GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$has_explosives", "$child_death_mountain,$has_bottle,lift1", @@ -3101,10 +3084,11 @@ ] }, { - "name": "Mountain Trail Bomb Alcove", + "name": "DMT Near Kak", "sections": [ { - "name": "GS31", + "name": "DMT GS Near Kak", + "short_name": "GS", "access_rules": [ "$can_blast" ], @@ -3128,17 +3112,18 @@ "y": 285 } ] - } - ] - }, - { + } + ] + }, + { "name": "Death Mountain Crater", "children": [ { - "name": "Top of Crater Grotto", + "name": "DMC Upper Grotto", "sections": [ { - "name": "Blast it", + "name": "DMC Upper Grotto Chest", + "short_name": "Chest", "access_rules": [ "$can_blast" ], @@ -3159,10 +3144,10 @@ ] }, { - "name": "DM Crater Wall", + "name": "DMC Wall", "sections": [ { - "name": "Freestanding PoH", + "name": "DMC Wall Freestanding PoH", "short_name": "HP", "access_rules": [ "$dmc_upper", @@ -3188,10 +3173,10 @@ ] }, { - "name": "Volcano", + "name": "DMC Volcano", "sections": [ { - "name": "Freestanding PoH", + "name": "DMC Volcano Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|both,ocarina,bolero,setting_plant_no,beans", @@ -3219,15 +3204,16 @@ ] }, { - "name": "Crater Fairy", + "name": "DMC Great Fairy Fountain", "access_rules": [ - "ocarina,lullaby,$has_age|adult,hammer" + "$dmc_lower,$has_age|adult,hammer" ], "sections": [ { - "name": "Fairy Fountain", + "name": "DMC Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$dmc_lower" + "ocarina,lullaby" ], "item_count": 1 } @@ -3242,16 +3228,13 @@ }, { "name": "DMC Hammer Grotto", - "short_name": "Hammer Grotto", "access_rules": [ - "$has_age|adult,hammer" + "$dmc_lower,$has_age|adult,hammer" ], "sections": [ { - "name": "Deku Scrubs", - "access_rules": [ - "$dmc_lower" - ], + "name": "DMC Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -3321,11 +3304,11 @@ ] }, { - "name": "Death Mountain Crater Crate", - "short_name": "Crate at Entrance", + "name": "DMC Crate", "sections": [ { - "name": "GS36", + "name": "DMC GS Crate", + "short_name": "GS", "access_rules": [ "$can_blast,$has_age|child,$can_child_attack" ], @@ -3346,7 +3329,7 @@ ] }, { - "name": "Mountain Crater Bean Patch", + "name": "DMC Bean Patch", "access_rules": [ "$has_age|child,ocarina,bolero" ], @@ -3362,7 +3345,8 @@ "hosted_item": "bean_crater_yes" }, { - "name": "GS37", + "name": "DMC GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_bottle,$can_child_attack" ], @@ -3381,10 +3365,10 @@ "y": 66 } ] - } - ] - } - ] + } + ] + } + ] }, { "name": "Hyrule Town", @@ -3394,10 +3378,10 @@ "name": "Market", "children": [ { - "name": "Dog Lady", + "name": "Market Dog Lady House", "sections": [ { - "name": "RichardZ", + "name": "Market Lost Dog", "access_rules": [ "$has_age|child" ], @@ -3413,11 +3397,11 @@ ] }, { - "name": "Castle Town Shooting Gallery", - "short_name": "Market Shooting Gallery", + "name": "Market Shooting Gallery", "sections": [ { - "name": "Child Shooting Gallery", + "name": "Market Shooting Gallery Reward", + "short_name": "Reward", "access_rules": [ "$has_age|child" ], @@ -3433,7 +3417,7 @@ ] }, { - "name": "Mask Shop", + "name": "Market Mask Shop", "access_rules": [ "$has_age|child" ], @@ -3490,7 +3474,7 @@ ] }, { - "name": "Bombchu Bowling", + "name": "Market Bombchu Bowling", "access_rules": [ "$has_age|child,setting_logic_chus_yes,bombchu", "$has_age|child,setting_logic_chus_no,bombs", @@ -3498,12 +3482,14 @@ ], "sections": [ { - "name": "1st round", + "name": "Market Bombchu Bowling First Prize", + "short_name": "1st prize", "capture_item": true, "item_count": 1 }, { - "name": "2nd round", + "name": "Market Bombchu Bowling Second Prize", + "short_name": "2nd prize", "capture_item": true, "item_count": 1 } @@ -3517,10 +3503,11 @@ ] }, { - "name": "Treasure Chest Game", + "name": "Market Treasure Chest Game", "sections": [ { - "name": "Cheater", + "name": "Market Treasure Chest Game Reward", + "short_name": "Reward", "access_rules": [ "$has_age|child,[$can_use_lens]", "{$hintable}" @@ -3538,7 +3525,7 @@ ] }, { - "name": "Bombchu Shop", + "name": "Market Bombchu Shop", "access_rules": [ "$has_age|child" ], @@ -3576,8 +3563,7 @@ ] }, { - "name": "Castle Town Potion Shop", - "short_name": "Market Potion Shop", + "name": "Market Potion Shop", "access_rules": [ "$has_age|child" ], @@ -3615,8 +3601,7 @@ ] }, { - "name": "Castle Town Bazaar", - "short_name": "Market Bazaar", + "name": "Market Bazaar", "access_rules": [ "$has_age|child" ], @@ -3668,7 +3653,8 @@ "item_count": 1 }, { - "name": "Zelda", + "name": "ToT Light Arrows Cutscene", + "short_name": "LACS", "access_rules": [ "$has_age|adult,lacs_meds:2" ], @@ -3684,32 +3670,22 @@ ] }, { - "name": "Big Poes", + "name": "Market Guard House", "sections": [ { - "name": "Happy Hunting", + "name": "Market 10 Big Poes", + "short_name": "Big Poes", "access_rules": [ "$has_age|adult,bow,[ocarina],[epona],$has_bottle", + "$has_age|adult,[bow],ocarina,epona,$has_bottle", "{$hintable}" ], "capture_item": true, "item_count": 1 - } - ], - "map_locations": [ - { - "map": "adult", - "x": 1464, - "y": 390 - } - ] - }, - { - "name": "Castle Market Guard House", - "short_name": "Guardhouse", - "sections": [ + }, { - "name": "GS14", + "name": "Market GS Guard House", + "short_name": "GS", "access_rules": [ "$has_age|child" ], @@ -3723,7 +3699,7 @@ ], "map_locations": [ { - "map": "child", + "map": "adult", "x": 1464, "y": 390 } @@ -3732,13 +3708,13 @@ ] }, { - "name": "Hyrule Castle", + "name": "Hyrule Castle Grounds", "children": [ { "name": "Malon at Castle", "sections": [ { - "name": "Talk to her", + "name": "HC Malon Egg", "access_rules": [ "$has_age|child" ], @@ -3777,20 +3753,20 @@ ] }, { - "name": "Hyrule Castle Garden", + "name": "HC Garden", "access_rules": [ "$has_age|child,childcucco" ], "sections": [ { - "name": "Impa at Castle", + "name": "Song from Impa", "short_name": "Song", "chest_unopened_img": "images/grey_note.png", "chest_opened_img": "images/grey_note_check.png", "item_count": 1 }, { - "name": "Zeldas Letter", + "name": "HC Zeldas Letter", "visibility_rules": [ "childcucco" ], @@ -3806,12 +3782,16 @@ ] }, { - "name": "Hyrule Castle Fairy", + "name": "HC Great Fairy Fountain", + "access_rules": [ + "$has_age|child,$has_explosives" + ], "sections": [ { - "name": "Fairy Fountain", + "name": "HC Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$has_age|child,ocarina,lullaby,$has_explosives" + "ocarina,lullaby" ], "item_count": 1 } @@ -3825,11 +3805,11 @@ ] }, { - "name": "Hyrule Castle Tree", - "short_name": "Tree near Malon", + "name": "HC Tree", "sections": [ { - "name": "GS15", + "name": "HC GS Tree", + "short_name": "GS", "access_rules": [ "$has_age|child,$can_child_attack" ], @@ -3850,13 +3830,14 @@ ] }, { - "name": "Castle Storms Grotto", + "name": "HC Storms Grotto", "access_rules": [ "$hidden_grotto,$has_age|child,ocarina,storm" ], "sections": [ { - "name": "GS16", + "name": "HC GS Storms Grotto", + "short_name": "GS", "access_rules": [ "boomerang,$has_explosives", "{$has_explosives}", @@ -3885,10 +3866,11 @@ "name": "Ganons Castle Grounds", "children": [ { - "name": "Outside Ganon's Castle", + "name": "OGC", "sections": [ { - "name": "GS17", + "name": "OGC GS", + "short_name": "GS", "access_rules": [ "$has_age|adult" ], @@ -3909,12 +3891,16 @@ ] }, { - "name": "Ganons Castle Fairy", + "name": "OGC Great Fairy Fountain", + "access_rules": [ + "$has_age|adult,lift3" + ], "sections": [ { - "name": "Fairy Fountain", + "name": "OGC Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "ocarina,lullaby,lift3,$has_age|adult" + "ocarina,lullaby" ], "item_count": 1 } @@ -3936,10 +3922,10 @@ "color": "#0936a0", "children": [ { - "name": "Zoras River", + "name": "Zora River", "children": [ { - "name": "Frogs", + "name": "ZR Frogs", "access_rules": [ "$has_age|child,$has_explosives", "$has_age|child,scale1", @@ -3947,14 +3933,14 @@ ], "sections": [ { - "name": "Frogs in the Rain", + "name": "ZR Frogs in the Rain", "access_rules": [ "$has_age|child,ocarina,storm" ], "item_count": 1 }, { - "name": "Frog Ocarina Game", + "name": "ZR Frogs Ocarina Game", "access_rules": [ "$has_age|child,ocarina,lullaby,saria,epona,sun,time,storm", "{$hintable}" @@ -3972,14 +3958,14 @@ ] }, { - "name": "Magic Bean Salesman", + "name": "ZR Magic Bean Salesman", + "access_rules": [ + "$has_age|child,$has_explosives", + "$has_age|child,scale1" + ], "sections": [ { "name": "Buy Item", - "access_rules": [ - "$has_age|child,$has_explosives", - "$has_age|child,scale1" - ], "capture_item": true, "item_count": 1 } @@ -3993,16 +3979,16 @@ ] }, { - "name": "Zora River Plateau Open Grotto", - "short_name": "Plateau Grotto", + "name": "ZR Open Grotto", + "access_rules": [ + "$has_age|child,$has_explosives", + "$has_age|child,scale1", + "$has_age|adult" + ], "sections": [ { - "name": "Jump in", - "access_rules": [ - "$has_age|child,$has_explosives", - "$has_age|child,scale1", - "$has_age|adult" - ], + "name": "ZR Open Grotto Chest", + "short_name": "Chest", "item_count": 1 } ], @@ -4020,10 +4006,10 @@ ] }, { - "name": "Zora River Lower", + "name": "ZR Near Open Grotto", "sections": [ { - "name": "Freestanding PoH", + "name": "ZR Near Open Grotto Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child,$has_explosives", @@ -4051,10 +4037,10 @@ ] }, { - "name": "Zora River Upper", + "name": "ZR Near Domain", "sections": [ { - "name": "Freestanding PoH", + "name": "ZR Near Domain Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child,$has_explosives", @@ -4082,13 +4068,14 @@ ] }, { - "name": "Zora River Storms Grotto", + "name": "ZR Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Deku Scrubs", + "name": "ZR Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "access_rules": [ "$has_age|child,$has_explosives,$can_stun_deku", "$has_age|child,scale1,$can_stun_deku", @@ -4117,10 +4104,11 @@ ] }, { - "name": "Zora River Tree", + "name": "ZR Tree", "sections": [ { - "name": "GS43", + "name": "ZR GS Tree", + "short_name": "GS", "access_rules": [ "$has_age|child,$can_child_attack" ], @@ -4141,13 +4129,14 @@ ] }, { - "name": "Zora River Ladder", + "name": "ZR Ladder", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS44 (N)", + "name": "ZR GS Ladder (N)", + "short_name": "GS", "access_rules": [ "$has_explosives", "scale1,$can_child_attack" @@ -4169,14 +4158,14 @@ ] }, { - "name": "Zora River Near Raised Grottos", - "short_name": "Plateau Wall", + "name": "ZR Near Raised Grottos", "access_rules": [ "$night_gs,$has_age|adult" ], "sections": [ { - "name": "GS45 (N)", + "name": "ZR GS Near Raised Grottos (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4201,14 +4190,14 @@ ] }, { - "name": "Zora River Above Bridge", - "short_name": "Wall Above Bridge", + "name": "ZR Above Bridge", "access_rules": [ "$night_gs,$has_age|adult" ], "sections": [ { - "name": "GS46 (N)", + "name": "ZR GS Above Bridge (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}" @@ -4241,10 +4230,10 @@ ], "children": [ { - "name": "Torch Run", + "name": "ZD Chest", "sections": [ { - "name": "Run", + "name": "Torches", "access_rules": [ "sticks" ], @@ -4260,7 +4249,7 @@ ] }, { - "name": "Diving Minigame", + "name": "ZD Diving Minigame", "sections": [ { "name": "Dive down", @@ -4310,14 +4299,11 @@ { "name": "King Zora", "access_rules": [ - "$has_bottle,[wallet2]", - "$has_bottle,$adult_fountain", - "$has_bottle,@Ganons Castle/Water Trial", - "$has_bottle,@Gerudo Training Grounds MQ/Before Heavy Block Chest" + "$has_blue_fire" ], "sections": [ { - "name": "Unfreeze him", + "name": "ZD King Zora Thawed", "access_rules": [ "$has_age|adult", "{$hintable}" @@ -4345,13 +4331,14 @@ ] }, { - "name": "Frozen Waterfall", + "name": "ZD Frozen Waterfall", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS47 (N)", + "name": "ZD GS Frozen Waterfall (N)", + "short_name": "GS", "access_rules": [ "hookshot", "bow", @@ -4376,12 +4363,13 @@ ] }, { - "name": "Zora Shop", + "name": "ZD Shop", "access_rules": [ - "$has_age|child,$has_explosives,[ocarina],[lullaby]", "$has_age|child,scale1", - "$has_age|adult,ocarina,lullaby,$has_bottle", - "$has_age|adult,hoverboots,[ocarina],[lullaby],$has_bottle" + "$has_age|child,$has_explosives,ocarina,lullaby", + "$has_age|child,$has_explosives,[logic_zora_with_cucco]", + "$has_age|adult,$has_blue_fire,ocarina,lullaby", + "$has_age|adult,$has_blue_fire,hoverboots,[logic_zora_with_hovers]" ], "sections": [ { @@ -4428,16 +4416,17 @@ "name": "Zoras Fountain", "children": [ { - "name": "Zoras Fountain Fairy", + "name": "ZF Great Fairy Fountain", "access_rules": [ - "ocarina,lullaby,$has_explosives" + "$child_fountain,$has_explosives", + "$adult_fountain,$has_explosives" ], "sections": [ { - "name": "Fairy Fountain", + "name": "ZF Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$child_fountain", - "$adult_fountain" + "ocarina,lullaby" ], "item_count": 1 } @@ -4456,11 +4445,10 @@ ] }, { - "name": "Zoras Fountain Bottom", - "short_name": "Under Water", + "name": "ZF Bottom", "sections": [ { - "name": "Freestanding PoH", + "name": "ZF Bottom Freestanding PoH", "short_name": "HP", "access_rules": [ "$adult_fountain,ironboots,$FTR_or_zora", @@ -4481,11 +4469,10 @@ ] }, { - "name": "Zoras Fountain Iceberg", - "short_name": "Ice Floe", + "name": "ZF Iceberg", "sections": [ { - "name": "Freestanding PoH", + "name": "ZF Iceberg Freestanding PoH", "short_name": "HP", "access_rules": [ "$adult_fountain" @@ -4504,14 +4491,14 @@ ] }, { - "name": "Zora's Fountain Hidden Cave", - "short_name": "Hidden Cave", + "name": "ZF Hidden Cave", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS50 (N)", + "name": "ZF GS Hidden Cave (N)", + "short_name": "GS", "access_rules": [ "$adult_fountain,lift2,$can_blast,hookshot", "{$adult_fountain,lift2,$has_explosives}", @@ -4537,11 +4524,11 @@ ] }, { - "name": "Zora's Fountain Tree", - "short_name": "Tree", + "name": "ZF Tree", "sections": [ { - "name": "GS48", + "name": "ZF GS Tree", + "short_name": "GS", "access_rules": [ "$child_fountain" ], @@ -4562,14 +4549,14 @@ ] }, { - "name": "Zora's Fountain Above the Log", - "short_name": "Wall near Log", + "name": "ZF Above the Log", "access_rules": [ "$night_gs,$child_fountain" ], "sections": [ { - "name": "GS49 (N)", + "name": "ZF GS Above the Log (N)", + "short_name": "GS", "access_rules": [ "boomerang", "{sling}", @@ -4605,11 +4592,10 @@ "name": "Gerudo Valley", "children": [ { - "name": "Gerudo Valley Crate", - "short_name": "Valley Crate", + "name": "GV Crate", "sections": [ { - "name": "Freestanding PoH", + "name": "GV Crate Freestanding PoH", "short_name": "HP", "access_rules": [ "$has_age|child", @@ -4635,11 +4621,10 @@ ] }, { - "name": "Gerudo Valley Waterfall", - "short_name": "Valley Waterfall", + "name": "GV Waterfall", "sections": [ { - "name": "Freestanding PoH", + "name": "GV Waterfall Freestanding PoH", "short_name": "HP", "chest_unopened_img": "images/HP.png", "chest_opened_img": "images/HP_grey.png", @@ -4660,8 +4645,7 @@ ] }, { - "name": "Gerudo Valley Cow", - "short_name": "Valley Cow", + "name": "GV Cow", "sections": [ { "name": "Cow", @@ -4685,14 +4669,14 @@ ] }, { - "name": "Gerudo Valley Small Bridge", - "short_name": "Waterfall Near Entrance", + "name": "GV Small Bridge", "access_rules": [ "$has_age|child,$night_gs" ], "sections": [ { - "name": "GS86 (N)", + "name": "GV GS Small Bridge (N)", + "short_name": "GS", "access_rules": [ "boomerang", "{sling}", @@ -4717,10 +4701,11 @@ ] }, { - "name": "Gerudo Valley Bean Patch", + "name": "GV Bean Patch", "sections": [ { - "name": "GS87", + "name": "GV GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_age|child,$has_bottle,$can_child_attack" ], @@ -4743,13 +4728,13 @@ ] }, { - "name": "Bridge Crossing", + "name": "GV Fortress Side", "access_rules": [ "$gerudo_valley_far_side" ], "children": [ { - "name": "Hammer Rocks", + "name": "GV Chest", "sections": [ { "name": "Smash 'em", @@ -4790,13 +4775,14 @@ ] }, { - "name": "Gerudo Valley Storms Grotto", + "name": "GV Storms Grotto", "access_rules": [ "$hidden_grotto,ocarina,storm" ], "sections": [ { - "name": "Deku Scrubs", + "name": "GV Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -4815,14 +4801,14 @@ ] }, { - "name": "Gerudo Valley Behind Tent", - "short_name": "GV Behind Tent", + "name": "GV Behind Tent", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS88 (N)", + "name": "GV GS Behind Tent (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4847,14 +4833,14 @@ ] }, { - "name": "Gerudo Valley Pillar", - "short_name": "GV Pillar", + "name": "GV Pillar", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS89 (N)", + "name": "GV GS Pillar (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4881,7 +4867,7 @@ "name": "Gerudo Fortress", "children": [ { - "name": "Rooftop Chest", + "name": "GF Chest", "sections": [ { "name": "Open it", @@ -4902,19 +4888,19 @@ ] }, { - "name": "Horseback Archery", + "name": "GF HBA", + "access_rules": [ + "ocarina,epona,bow,$gerudo_card" + ], "sections": [ { - "name": "1000", - "access_rules": [ - "ocarina,epona,bow,$gerudo_card" - ], + "name": "1000 Points", "item_count": 1 }, { - "name": "1500", + "name": "1500 Points", "access_rules": [ - "ocarina,epona,bow,$gerudo_card", + "bow", "{$hintable}" ], "capture_item": true, @@ -4930,13 +4916,14 @@ ] }, { - "name": "Archery Range", + "name": "GF Archery Range", "access_rules": [ "$night_gs,$gerudo_card" ], "sections": [ { - "name": "GS90 (N)", + "name": "GF GS Archery Range (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -4960,13 +4947,14 @@ ] }, { - "name": "Top Floor", + "name": "GF Top Floor", "access_rules": [ "$night_gs" ], "sections": [ { - "name": "GS91 (N)", + "name": "GF GS Top Floor (N)", + "short_name": "GS", "access_rules": [ "$gerudo_card", "bow", @@ -5002,32 +4990,21 @@ ], "children": [ { - "name": "Haunted Wasteland Structure", - "short_name": "Central Structure", + "name": "Wasteland Structure", "sections": [ { - "name": "Torches", + "name": "Wasteland Chest", + "short_name": "Chest", "access_rules": [ "$has_fire", "{$hintable}" ], "capture_item": true, "item_count": 1 - } - ], - "map_locations": [ - { - "map": "adult", - "x": 360, - "y": 283 - } - ] - }, - { - "name": "Wasteland Ruins", - "sections": [ + }, { - "name": "GS92", + "name": "Wasteland GS", + "short_name": "GS", "access_rules": [ "hookshot", "[hookshot],bombs,shield2", @@ -5047,7 +5024,7 @@ { "map": "adult", "x": 360, - "y": 313 + "y": 283 } ] } @@ -5057,12 +5034,16 @@ "name": "Desert Colossus", "children": [ { - "name": "Colossus Fairy", + "name": "Colossus Great Fairy Fountain", + "access_rules": [ + "$adult_colossus,$has_explosives" + ], "sections": [ { - "name": "Fairy Fountain", + "name": "Colossus Great Fairy Reward", + "short_name": "Reward", "access_rules": [ - "$adult_colossus,ocarina,lullaby,$has_explosives" + "ocarina,lullaby" ], "item_count": 1 } @@ -5081,11 +5062,10 @@ ] }, { - "name": "Colossus Freestanding PoH", - "short_name": "Arch HP", + "name": "Colossus Arch", "sections": [ { - "name": "Freestanding PoH", + "name": "Colossus Freestanding PoH", "short_name": "HP", "access_rules": [ "$child_colossus,setting_plant_no,beans,$has_age|adult", @@ -5141,14 +5121,14 @@ ] }, { - "name": "Desert Colossus Grotto", - "short_name": "Under Silver Rock", + "name": "Colossus Grotto", + "access_rules": [ + "$adult_colossus,$has_age|adult,lift2" + ], "sections": [ { - "name": "Deku Scrubs", - "access_rules": [ - "$adult_colossus,$has_age|adult,lift2" - ], + "name": "Colossus Deku Scrubs Grotto", + "short_name": "Deku Scrubs", "visibility_rules": [ "setting_scrub_shuffle_yes" ], @@ -5167,7 +5147,7 @@ ] }, { - "name": "Desert Colossus Bean Patch", + "name": "Colossus Bean Patch", "access_rules": [ "$child_colossus" ], @@ -5183,7 +5163,8 @@ "hosted_item": "bean_colossus_yes" }, { - "name": "GS93", + "name": "Colossus GS Bean Patch", + "short_name": "GS", "access_rules": [ "$has_bottle,$can_child_attack" ], @@ -5204,14 +5185,14 @@ ] }, { - "name": "Desert Colossus Tree", - "short_name": "Tree Near Oasis", + "name": "Colossus Tree", "access_rules": [ "$adult_colossus,$has_age|adult,$night_gs" ], "sections": [ { - "name": "GS94 (N)", + "name": "Colossus GS Tree (N)", + "short_name": "GS", "access_rules": [ "hookshot", "{bow}", @@ -5236,14 +5217,14 @@ ] }, { - "name": "Desert Colossus Hill", - "short_name": "Top Of Platform", + "name": "Colossus Hill", "access_rules": [ "$has_age|adult,$night_gs" ], "sections": [ { - "name": "GS95 (N)", + "name": "Colossus GS Hill (N)", + "short_name": "GS", "access_rules": [ "$child_colossus,setting_plant_no,beans", "$child_colossus,bean_colossus_yes", diff --git a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json index 373897dd..f6420790 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json +++ b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json @@ -9,8 +9,8 @@ "color": "#18a50e", "children": [ { - "name": "Kokiri Forest -> Kokiri Forest Storms Grotto", - "short_name": "Kokiri Storms Grotto", + "name": "Kokiri Forest -> KF Storms Grotto", + "short_name": "KF Storms Grotto", "sections": [ { "name": "Grotto", @@ -28,8 +28,8 @@ ] }, { - "name": "Kokiri Forest -> House of Twins", - "short_name": "House of Twins", + "name": "Kokiri Forest -> KF House of Twins", + "short_name": "KF House of Twins", "sections": [ { "name": "House", @@ -47,8 +47,8 @@ ] }, { - "name": "Kokiri Forest -> Know It All House", - "short_name": "Know It All House", + "name": "Kokiri Forest -> KF Know It All House", + "short_name": "KF Know It All House", "sections": [ { "name": "House", @@ -66,8 +66,8 @@ ] }, { - "name": "Kokiri Forest -> Kokiri Shop", - "short_name": "Kokiri Shop", + "name": "Kokiri Forest -> KF Kokiri Shop", + "short_name": "KF Kokiri Shop", "sections": [ { "name": "House", @@ -85,8 +85,8 @@ ] }, { - "name": "Kokiri Forest -> Links House", - "short_name": "Links House", + "name": "Kokiri Forest -> KF Links House", + "short_name": "KF Links House", "sections": [ { "name": "House", @@ -104,8 +104,8 @@ ] }, { - "name": "Kokiri Forest -> Mido House", - "short_name": "Mido House", + "name": "Kokiri Forest -> KF Midos House", + "short_name": "KF Midos House", "sections": [ { "name": "House", @@ -123,8 +123,8 @@ ] }, { - "name": "Kokiri Forest -> Saria House", - "short_name": "Saria House", + "name": "Kokiri Forest -> KF Sarias House", + "short_name": "KF Sarias House", "sections": [ { "name": "House", @@ -142,7 +142,7 @@ ] }, { - "name": "Outside Deku Tree -> Deku Tree Lobby", + "name": "KF Outside Deku Tree -> Deku Tree Lobby", "short_name": "Deku Tree", "sections": [ { @@ -180,7 +180,7 @@ ] }, { - "name": "Kokiri Forest -> Lost Woods Bridge From Forest", + "name": "Kokiri Forest -> LW Bridge From Forest", "short_name": "KF -> Bridge", "sections": [ { @@ -205,8 +205,8 @@ "color": "#18a50e", "children": [ { - "name": "Lost Woods -> Lost Woods Generic Grotto", - "short_name": "LW Generic Grotto", + "name": "Lost Woods -> LW Near Shortcuts Grotto", + "short_name": "LW Near Shortcuts Grotto", "sections": [ { "name": "Grotto", @@ -224,7 +224,7 @@ ] }, { - "name": "Lost Woods Beyond Mido -> Deku Theater", + "name": "LW Beyond Mido -> Deku Theater", "short_name": "Deku Theater", "sections": [ { @@ -243,8 +243,8 @@ ] }, { - "name": "Lost Woods Beyond Mido -> Lost Woods Sales Grotto", - "short_name": "LW Sales Grotto", + "name": "LW Beyond Mido -> LW Scrubs Grotto", + "short_name": "LW Scrubs Grotto", "sections": [ { "name": "Grotto", @@ -262,7 +262,7 @@ ] }, { - "name": "Lost Woods -> Goron City Woods Warp", + "name": "Lost Woods -> GC Woods Warp", "short_name": "LW -> GC", "sections": [ { @@ -300,7 +300,7 @@ ] }, { - "name": "Lost Woods Beyond Mido -> Sacred Forest Meadow Entryway", + "name": "LW Beyond Mido -> SFM Entryway", "short_name": "LW -> SFM", "sections": [ { @@ -319,7 +319,7 @@ ] }, { - "name": "Lost Woods Forest Exit -> Kokiri Forest", + "name": "LW Forest Exit -> Kokiri Forest", "short_name": "LW -> KF", "sections": [ { @@ -338,7 +338,7 @@ ] }, { - "name": "Lost Woods Bridge -> Kokiri Forest", + "name": "LW Bridge -> Kokiri Forest", "short_name": "Bridge -> KF", "sections": [ { @@ -357,7 +357,7 @@ ] }, { - "name": "Lost Woods Bridge -> Hyrule Field", + "name": "LW Bridge -> Hyrule Field", "short_name": "Bridge -> HF", "sections": [ { @@ -382,7 +382,7 @@ "color": "#18a50e", "children": [ { - "name": "Sacred Forest Meadow -> Meadow Fairy Grotto", + "name": "Sacred Forest Meadow -> SFM Fairy Grotto", "short_name": "SFM Fairy Grotto", "sections": [ { @@ -401,7 +401,7 @@ ] }, { - "name": "Sacred Forest Meadow -> Meadow Storms Grotto", + "name": "Sacred Forest Meadow -> SFM Storms Grotto", "short_name": "SFM Storms Grotto", "sections": [ { @@ -420,8 +420,8 @@ ] }, { - "name": "Sacred Forest Meadow Entryway -> Front of Meadow Grotto", - "short_name": "Wolfos Grotto", + "name": "SFM Entryway -> SFM Wolfos Grotto", + "short_name": "SFM Wolfos Grotto", "sections": [ { "name": "Grotto", @@ -458,7 +458,7 @@ ] }, { - "name": "Sacred Forest Meadow Entryway -> Lost Woods Beyond Mido", + "name": "SFM Entryway -> LW Beyond Mido", "short_name": "SFM -> LW", "sections": [ { @@ -483,7 +483,7 @@ "color": "#09a09d", "children": [ { - "name": "Hyrule Field -> Field Far West Castle Town Grotto", + "name": "Hyrule Field -> HF Fairy Grotto", "short_name": "HF Fairy Grotto", "sections": [ { @@ -502,8 +502,8 @@ ] }, { - "name": "Hyrule Field -> Field Kakariko Grotto", - "short_name": "HF Kakariko Grotto", + "name": "Hyrule Field -> HF Near Kak Grotto", + "short_name": "HF Near Kak Grotto", "sections": [ { "name": "Grotto", @@ -521,7 +521,7 @@ ] }, { - "name": "Hyrule Field -> Field Near Lake Inside Fence Grotto", + "name": "Hyrule Field -> HF Inside Fence Grotto", "short_name": "HF Inside Fence Grotto", "sections": [ { @@ -540,8 +540,8 @@ ] }, { - "name": "Hyrule Field -> Field Near Lake Outside Fence Grotto", - "short_name": "HF Outside Fence Grotto", + "name": "Hyrule Field -> HF Open Grotto", + "short_name": "HF Open Grotto", "sections": [ { "name": "Grotto", @@ -559,7 +559,7 @@ ] }, { - "name": "Hyrule Field -> Field North Lon Lon Grotto", + "name": "Hyrule Field -> HF Tektite Grotto", "short_name": "HF Tektite Grotto", "sections": [ { @@ -578,8 +578,8 @@ ] }, { - "name": "Hyrule Field -> Field Valley Grotto", - "short_name": "HF Valley Grotto", + "name": "Hyrule Field -> HF Cow Grotto", + "short_name": "HF Cow Grotto", "sections": [ { "name": "Grotto", @@ -597,8 +597,8 @@ ] }, { - "name": "Hyrule Field -> Field West Castle Town Grotto", - "short_name": "HF Near Bridge Grotto", + "name": "Hyrule Field -> HF Near Market Grotto", + "short_name": "HF Near Market Grotto", "sections": [ { "name": "Grotto", @@ -616,8 +616,8 @@ ] }, { - "name": "Hyrule Field -> Remote Southern Grotto", - "short_name": "Remote Southern Grotto", + "name": "Hyrule Field -> HF Southeast Grotto", + "short_name": "HF Southeast Grotto", "sections": [ { "name": "Grotto", @@ -635,7 +635,7 @@ ] }, { - "name": "Hyrule Field -> Castle Town Entrance", + "name": "Hyrule Field -> Market Entrance", "short_name": "HF -> CTE", "sections": [ { @@ -730,7 +730,7 @@ ] }, { - "name": "Hyrule Field -> Lost Woods Bridge", + "name": "Hyrule Field -> LW Bridge", "short_name": "HF -> Bridge", "sections": [ { @@ -749,7 +749,7 @@ ] }, { - "name": "Hyrule Field -> Zora River Front", + "name": "Hyrule Field -> ZR Front", "short_name": "HF -> ZR", "sections": [ { @@ -774,7 +774,7 @@ "color": "#09a09d", "children": [ { - "name": "Lon Lon Ranch -> Lon Lon Grotto", + "name": "Lon Lon Ranch -> LLR Grotto", "short_name": "LLR Grotto", "sections": [ { @@ -793,8 +793,8 @@ ] }, { - "name": "Lon Lon Ranch -> Ingo Barn", - "short_name": "Ingo Barn", + "name": "Lon Lon Ranch -> LLR Stables", + "short_name": "LLR Stables", "sections": [ { "name": "House", @@ -812,7 +812,7 @@ ] }, { - "name": "Lon Lon Ranch -> Lon Lon Corner Tower", + "name": "Lon Lon Ranch -> LLR Tower", "short_name": "LLR Tower", "sections": [ { @@ -831,8 +831,8 @@ ] }, { - "name": "Lon Lon Ranch -> Talon House", - "short_name": "Talon House", + "name": "Lon Lon Ranch -> LLR Talons House", + "short_name": "LLR Talons House", "sections": [ { "name": "House", @@ -875,8 +875,8 @@ "color": "#6909a0", "children": [ { - "name": "Kakariko Village -> Kakariko Bombable Grotto", - "short_name": "Kakariko Bombable Grotto", + "name": "Kakariko Village -> Kak Redead Grotto", + "short_name": "Kak Redead Grotto", "sections": [ { "name": "Grotto", @@ -894,8 +894,8 @@ ] }, { - "name": "Kakariko Village Backyard -> Kakariko Back Grotto", - "short_name": "Kakariko Back Grotto", + "name": "Kak Backyard -> Kak Open Grotto", + "short_name": "Kak Open Grotto", "sections": [ { "name": "Grotto", @@ -913,8 +913,8 @@ ] }, { - "name": "Kakariko Village -> Carpenter Boss House", - "short_name": "Carpenter Boss House", + "name": "Kakariko Village -> Kak Carpenter Boss House", + "short_name": "Kak Carpenter Boss House", "sections": [ { "name": "House", @@ -932,8 +932,8 @@ ] }, { - "name": "Kakariko Village -> House of Skulltula", - "short_name": "House of Skulltula", + "name": "Kakariko Village -> Kak House of Skulltula", + "short_name": "Kak House of Skulltula", "sections": [ { "name": "House", @@ -951,8 +951,8 @@ ] }, { - "name": "Kakariko Village -> Impas House", - "short_name": "Impas House", + "name": "Kakariko Village -> Kak Impas House", + "short_name": "Kak Impas House", "sections": [ { "name": "House", @@ -970,8 +970,8 @@ ] }, { - "name": "Kakariko Village -> Impas House Back", - "short_name": "Impas House Back", + "name": "Kak Impas Ledge -> Kak Impas House Back", + "short_name": "Kak Impas House Back", "sections": [ { "name": "House", @@ -989,8 +989,8 @@ ] }, { - "name": "Kakariko Village -> Kakariko Bazaar", - "short_name": "Kakariko Bazaar", + "name": "Kakariko Village -> Kak Bazaar", + "short_name": "Kak Bazaar", "sections": [ { "name": "House", @@ -1008,8 +1008,8 @@ ] }, { - "name": "Kakariko Village -> Kakariko Potion Shop Front", - "short_name": "Kakariko Potion Shop Front", + "name": "Kakariko Village -> Kak Potion Shop Front", + "short_name": "Kak Potion Shop Front", "sections": [ { "name": "House", @@ -1027,8 +1027,8 @@ ] }, { - "name": "Kakariko Village -> Kakariko Shooting Gallery", - "short_name": "Kakariko Shooting Gallery", + "name": "Kakariko Village -> Kak Shooting Gallery", + "short_name": "Kak Shooting Gallery", "sections": [ { "name": "House", @@ -1046,8 +1046,8 @@ ] }, { - "name": "Kakariko Village -> Windmill", - "short_name": "Windmill", + "name": "Kakariko Village -> Kak Windmill", + "short_name": "Kak Windmill", "sections": [ { "name": "House", @@ -1065,8 +1065,8 @@ ] }, { - "name": "Kakariko Village Backyard -> Kakariko Potion Shop Back", - "short_name": "Kakariko Potion Shop Back", + "name": "Kak Backyard -> Kak Potion Shop Back", + "short_name": "Kak Potion Shop Back", "sections": [ { "name": "House", @@ -1084,8 +1084,8 @@ ] }, { - "name": "Kakariko Village Backyard -> Odd Medicine Building", - "short_name": "Odd Medicine Building", + "name": "Kak Backyard -> Kak Odd Medicine Building", + "short_name": "Kak Odd Medicine Building", "sections": [ { "name": "House", @@ -1160,7 +1160,7 @@ ] }, { - "name": "Kakariko Village Behind Gate -> Death Mountain", + "name": "Kak Behind Gate -> Death Mountain", "short_name": "Kak -> DMT", "sections": [ { @@ -1185,7 +1185,7 @@ "color": "#6909a0", "children": [ { - "name": "Graveyard -> Composer Grave", + "name": "Graveyard -> Graveyard Composers Grave", "short_name": "Composer Grave", "sections": [ { @@ -1204,7 +1204,7 @@ ] }, { - "name": "Graveyard -> Dampes Grave", + "name": "Graveyard -> Graveyard Dampes Grave", "short_name": "Dampes Grave", "sections": [ { @@ -1223,7 +1223,7 @@ ] }, { - "name": "Graveyard -> Heart Piece Grave", + "name": "Graveyard -> Graveyard Heart Piece Grave", "short_name": "Heart Piece Grave", "sections": [ { @@ -1242,7 +1242,7 @@ ] }, { - "name": "Graveyard -> Shield Grave", + "name": "Graveyard -> Graveyard Shield Grave", "short_name": "Shield Grave", "sections": [ { @@ -1261,7 +1261,7 @@ ] }, { - "name": "Graveyard -> Dampes House", + "name": "Graveyard -> Graveyard Dampes House", "short_name": "Dampes House", "sections": [ { @@ -1280,7 +1280,7 @@ ] }, { - "name": "Shadow Temple Warp Region -> Shadow Temple Entryway", + "name": "Graveyard Warp Pad Region -> Shadow Temple Entryway", "short_name": "Shadow Temple", "sections": [ { @@ -1320,12 +1320,12 @@ ] }, { - "name": "Castle Town", + "name": "Market", "color": "#09a09d", "children": [ { - "name": "Castle Town -> Castle Town Bazaar", - "short_name": "Castle Town Bazaar", + "name": "Market -> Market Bazaar", + "short_name": "Market Bazaar", "sections": [ { "name": "House", @@ -1343,8 +1343,8 @@ ] }, { - "name": "Castle Town -> Castle Town Bombchu Bowling", - "short_name": "Bombchu Bowling", + "name": "Market -> Market Bombchu Bowling", + "short_name": "Market Bombchu Bowling", "sections": [ { "name": "House", @@ -1362,8 +1362,8 @@ ] }, { - "name": "Castle Town -> Castle Town Bombchu Shop", - "short_name": "Bombchu Shop", + "name": "Market -> Market Bombchu Shop", + "short_name": "Market Bombchu Shop", "sections": [ { "name": "House", @@ -1381,8 +1381,8 @@ ] }, { - "name": "Castle Town -> Castle Town Man in Green House", - "short_name": "Man in Green House", + "name": "Market -> Market Man in Green House", + "short_name": "Market Man in Green House", "sections": [ { "name": "House", @@ -1400,8 +1400,8 @@ ] }, { - "name": "Castle Town -> Castle Town Mask Shop", - "short_name": "Mask Shop", + "name": "Market -> Market Mask Shop", + "short_name": "Market Mask Shop", "sections": [ { "name": "House", @@ -1419,8 +1419,8 @@ ] }, { - "name": "Castle Town -> Castle Town Potion Shop", - "short_name": "Potion Shop", + "name": "Market -> Market Potion Shop", + "short_name": "Market Potion Shop", "sections": [ { "name": "House", @@ -1438,8 +1438,8 @@ ] }, { - "name": "Castle Town -> Castle Town Shooting Gallery", - "short_name": "Castle Town Shooting Gallery", + "name": "Market -> Market Shooting Gallery", + "short_name": "Market Shooting Gallery", "sections": [ { "name": "House", @@ -1457,8 +1457,8 @@ ] }, { - "name": "Castle Town -> Castle Town Treasure Chest Game", - "short_name": "Treasure Chest Game", + "name": "Market -> Market Treasure Chest Game", + "short_name": "Market Treasure Chest Game", "sections": [ { "name": "House", @@ -1476,8 +1476,8 @@ ] }, { - "name": "Castle Town Entrance -> Castle Town Rupee Room", - "short_name": "Castle Town Rupee Room", + "name": "Market Entrance -> Market Guard House", + "short_name": "Market Guard House", "sections": [ { "name": "House", @@ -1495,7 +1495,7 @@ ] }, { - "name": "Temple of Time Exterior -> Temple of Time", + "name": "ToT Entrance -> Temple of Time", "short_name": "Temple of Time", "sections": [ { @@ -1514,7 +1514,7 @@ ] }, { - "name": "Castle Town -> Castle Grounds", + "name": "Market -> Castle Grounds", "short_name": "CT -> CG", "sections": [ { @@ -1533,7 +1533,7 @@ ] }, { - "name": "Castle Town -> Castle Town Entrance", + "name": "Market -> Market Entrance", "short_name": "CT -> CTE", "sections": [ { @@ -1552,7 +1552,7 @@ ] }, { - "name": "Castle Town -> Temple of Time Exterior", + "name": "Market -> ToT Entrance", "short_name": "CT -> ToT", "sections": [ { @@ -1571,7 +1571,7 @@ ] }, { - "name": "Castle Town Entrance -> Castle Town", + "name": "Market Entrance -> Market", "short_name": "CTE -> CT", "sections": [ { @@ -1590,7 +1590,7 @@ ] }, { - "name": "Castle Town Entrance -> Hyrule Field", + "name": "Market Entrance -> Hyrule Field", "short_name": "CTE -> HF", "sections": [ { @@ -1609,7 +1609,7 @@ ] }, { - "name": "Temple of Time Exterior -> Castle Town", + "name": "ToT Entrance -> Market", "short_name": "ToT -> CT", "sections": [ { @@ -1634,8 +1634,8 @@ "color": "#09a09d", "children": [ { - "name": "Hyrule Castle Grounds -> Castle Storms Grotto", - "short_name": "Castle Storms Grotto", + "name": "Hyrule Castle Grounds -> HC Storms Grotto", + "short_name": "HC Storms Grotto", "sections": [ { "name": "Grotto", @@ -1653,8 +1653,8 @@ ] }, { - "name": "Ganons Castle Grounds -> Ganons Castle Fairy", - "short_name": "Ganons Castle Fairy", + "name": "Ganons Castle Grounds -> OGC Great Fairy Fountain", + "short_name": "OGC Great Fairy Fountain", "sections": [ { "name": "House", @@ -1672,8 +1672,8 @@ ] }, { - "name": "Hyrule Castle Grounds -> Hyrule Castle Fairy", - "short_name": "Hyrule Castle Fairy", + "name": "Hyrule Castle Grounds -> HC Great Fairy Fountain", + "short_name": "HC Great Fairy Fountain", "sections": [ { "name": "House", @@ -1691,7 +1691,7 @@ ] }, { - "name": "Castle Grounds -> Castle Town", + "name": "Castle Grounds -> Market", "short_name": "CG -> CT", "sections": [ { @@ -1716,8 +1716,8 @@ "color": "#a01009", "children": [ { - "name": "Death Mountain -> Mountain Bombable Grotto", - "short_name": "DMT Bombable Grotto", + "name": "Death Mountain Summit -> DMT Cow Grotto", + "short_name": "DMT Cow Grotto", "sections": [ { "name": "Grotto", @@ -1735,7 +1735,7 @@ ] }, { - "name": "Death Mountain -> Mountain Storms Grotto", + "name": "Death Mountain -> DMT Storms Grotto", "short_name": "DMT Storms Grotto", "sections": [ { @@ -1754,8 +1754,8 @@ ] }, { - "name": "Death Mountain Summit -> Mountain Summit Fairy", - "short_name": "DMT Fairy", + "name": "Death Mountain Summit -> DMT Great Fairy Fountain", + "short_name": "DMT Great Fairy Fountain", "sections": [ { "name": "House", @@ -1811,7 +1811,7 @@ ] }, { - "name": "Death Mountain -> Kakariko Village Behind Gate", + "name": "Death Mountain -> Kak Behind Gate", "short_name": "DMT -> Kak", "sections": [ { @@ -1830,7 +1830,7 @@ ] }, { - "name": "Death Mountain Summit -> Death Mountain Crater Upper", + "name": "Death Mountain Summit -> DMC Upper Local", "short_name": "DMT -> DMC", "sections": [ { @@ -1849,8 +1849,8 @@ ] }, { - "name": "Death Mountain Summit Owl Flight -> Kakariko Village", - "short_name": "DMT Owl", + "name": "DMT Owl Flight -> Kak Impas Ledge", + "short_name": "DMT Owl Flight", "sections": [ { "name": "Overworld", @@ -1874,8 +1874,8 @@ "color": "#a01009", "children": [ { - "name": "Death Mountain Crater Upper -> Top of Crater Grotto", - "short_name": "Top of DMC Grotto", + "name": "DMC Upper Nearby -> DMC Upper Grotto", + "short_name": "DMC Upper Grotto", "sections": [ { "name": "Grotto", @@ -1893,7 +1893,7 @@ ] }, { - "name": "Death Mountain Crater Lower -> DMC Hammer Grotto", + "name": "DMC Lower Nearby -> DMC Hammer Grotto", "short_name": "DMC Hammer Grotto", "sections": [ { @@ -1912,8 +1912,8 @@ ] }, { - "name": "Death Mountain Crater Lower -> Crater Fairy", - "short_name": "DMC Fairy", + "name": "DMC Lower Nearby -> DMC Great Fairy Fountain", + "short_name": "DMC Great Fairy Fountain", "sections": [ { "name": "House", @@ -1931,7 +1931,7 @@ ] }, { - "name": "Death Mountain Crater Central -> Fire Temple Lower", + "name": "Fire Temple Entrance -> Fire Temple Lower", "short_name": "Fire Temple", "sections": [ { @@ -1950,7 +1950,7 @@ ] }, { - "name": "Death Mountain Crater Lower -> Darunias Chamber", + "name": "DMC Lower Nearby -> GC Darunias Chamber", "short_name": "DMC -> GC", "sections": [ { @@ -1969,7 +1969,7 @@ ] }, { - "name": "Death Mountain Crater Upper -> Death Mountain Summit", + "name": "DMC Upper Nearby -> Death Mountain Summit", "short_name": "DMC -> DMT", "sections": [ { @@ -1994,8 +1994,8 @@ "color": "#a01009", "children": [ { - "name": "Goron City -> Goron City Grotto", - "short_name": "Goron City Grotto", + "name": "Goron City -> GC Grotto", + "short_name": "GC Grotto", "sections": [ { "name": "Grotto", @@ -2013,8 +2013,8 @@ ] }, { - "name": "Goron City -> Goron Shop", - "short_name": "Goron Shop", + "name": "Goron City -> GC Shop", + "short_name": "GC Shop", "sections": [ { "name": "House", @@ -2032,7 +2032,7 @@ ] }, { - "name": "Darunias Chamber -> Death Mountain Crater Lower", + "name": "GC Darunias Chamber -> DMC Lower Local", "short_name": "GC -> DMC", "sections": [ { @@ -2070,7 +2070,7 @@ ] }, { - "name": "Goron City Woods Warp -> Lost Woods", + "name": "GC Woods Warp -> Lost Woods", "short_name": "GC -> LW", "sections": [ { @@ -2095,8 +2095,8 @@ "color": "#0936a0", "children": [ { - "name": "Lake Hylia -> Lake Hylia Grotto", - "short_name": "Lake Hylia Grotto", + "name": "Lake Hylia -> LH Grotto", + "short_name": "LH Grotto", "sections": [ { "name": "Grotto", @@ -2114,8 +2114,8 @@ ] }, { - "name": "Lake Hylia -> Fishing Hole", - "short_name": "Fishing Hole", + "name": "Lake Hylia -> LH Fishing Hole", + "short_name": "LH Fishing Hole", "sections": [ { "name": "House", @@ -2133,8 +2133,8 @@ ] }, { - "name": "Lake Hylia -> Lake Hylia Lab", - "short_name": "Lake Hylia Lab", + "name": "Lake Hylia -> LH Lab", + "short_name": "LH Lab", "sections": [ { "name": "House", @@ -2209,8 +2209,8 @@ ] }, { - "name": "Lake Hylia Owl Flight -> Hyrule Field", - "short_name": "LH Owl", + "name": "LH Owl Flight -> Hyrule Field", + "short_name": "LH Owl Flight", "sections": [ { "name": "Overworld", @@ -2234,8 +2234,8 @@ "color": "#0936a0", "children": [ { - "name": "Zora River -> Zora River Plateau Bombable Grotto", - "short_name": "ZR Plateau Bombable Grotto", + "name": "Zora River -> ZR Fairy Grotto", + "short_name": "ZR Fairy Grotto", "sections": [ { "name": "Grotto", @@ -2253,8 +2253,8 @@ ] }, { - "name": "Zora River -> Zora River Plateau Open Grotto", - "short_name": "ZR Plateau Open Grotto", + "name": "Zora River -> ZR Open Grotto", + "short_name": "ZR Open Grotto", "sections": [ { "name": "Grotto", @@ -2272,7 +2272,7 @@ ] }, { - "name": "Zora River -> Zora River Storms Grotto", + "name": "Zora River -> ZR Storms Grotto", "short_name": "ZR Storms Grotto", "sections": [ { @@ -2310,7 +2310,7 @@ ] }, { - "name": "Zora River Behind Waterfall -> Zoras Domain", + "name": "ZR Behind Waterfall -> Zoras Domain", "short_name": "ZR -> ZD", "sections": [ { @@ -2329,7 +2329,7 @@ ] }, { - "name": "Zora River Front -> Hyrule Field", + "name": "ZR Front -> Hyrule Field", "short_name": "ZR -> HF", "sections": [ { @@ -2354,7 +2354,7 @@ "color": "#0936a0", "children": [ { - "name": "Zoras Domain -> Zoras Domain Storms Grotto", + "name": "Zoras Domain -> ZD Storms Grotto", "short_name": "ZD Storms Grotto", "sections": [ { @@ -2373,8 +2373,8 @@ ] }, { - "name": "Zoras Domain -> Zora Shop", - "short_name": "Zora Shop", + "name": "Zoras Domain -> ZD Shop", + "short_name": "ZD Shop", "sections": [ { "name": "House", @@ -2411,7 +2411,7 @@ ] }, { - "name": "Zoras Domain -> Zora River Behind Waterfall", + "name": "Zoras Domain -> ZR Behind Waterfall", "short_name": "ZD -> ZR", "sections": [ { @@ -2430,7 +2430,7 @@ ] }, { - "name": "Zoras Domain Behind King Zora -> Zoras Fountain", + "name": "ZD Behind King Zora -> Zoras Fountain", "short_name": "ZD -> ZF", "sections": [ { @@ -2455,8 +2455,8 @@ "color": "#0936a0", "children": [ { - "name": "Zoras Fountain -> Zoras Fountain Fairy", - "short_name": "ZF Fairy", + "name": "Zoras Fountain -> ZF Great Fairy Fountain", + "short_name": "ZF Great Fairy Fountain", "sections": [ { "name": "House", @@ -2512,7 +2512,7 @@ ] }, { - "name": "Zoras Fountain -> Zoras Domain Behind King Zora", + "name": "Zoras Fountain -> ZD Behind King Zora", "short_name": "ZF -> ZD", "sections": [ { @@ -2537,8 +2537,8 @@ "color": "#a09509", "children": [ { - "name": "Gerudo Valley -> Gerudo Valley Octorok Grotto", - "short_name": "Octorok Grotto", + "name": "Gerudo Valley -> GV Octorok Grotto", + "short_name": "GV Octorok Grotto", "sections": [ { "name": "Grotto", @@ -2556,7 +2556,7 @@ ] }, { - "name": "Gerudo Valley Far Side -> Gerudo Valley Storms Grotto", + "name": "GV Fortress Side -> GV Storms Grotto", "short_name": "GV Storms Grotto", "sections": [ { @@ -2575,8 +2575,8 @@ ] }, { - "name": "Gerudo Valley Far Side -> Carpenter Tent", - "short_name": "Carpenter Tent", + "name": "GV Fortress Side -> GV Carpenter Tent", + "short_name": "GV Carpenter Tent", "sections": [ { "name": "House", @@ -2613,7 +2613,7 @@ ] }, { - "name": "Gerudo Valley Far Side -> Gerudo Fortress", + "name": "GV Fortress Side -> Gerudo Fortress", "short_name": "GV -> GF", "sections": [ { @@ -2638,7 +2638,7 @@ "color": "#a09509", "children": [ { - "name": "Gerudo Fortress -> Gerudo Fortress Storms Grotto", + "name": "Gerudo Fortress -> GF Storms Grotto", "short_name": "GF Storms Grotto", "sections": [ { @@ -2676,7 +2676,7 @@ ] }, { - "name": "Gerudo Fortress -> Gerudo Valley Far Side", + "name": "Gerudo Fortress -> GV Fortress Side", "short_name": "GF -> GV", "sections": [ { @@ -2695,7 +2695,7 @@ ] }, { - "name": "Gerudo Fortress Outside Gate -> Haunted Wasteland Near Fortress", + "name": "GF Outside Gate -> Wasteland Near Fortress", "short_name": "GF -> WL", "sections": [ { @@ -2720,7 +2720,7 @@ "color": "#a09509", "children": [ { - "name": "Haunted Wasteland Near Colossus -> Desert Colossus", + "name": "Wasteland Near Colossus -> Desert Colossus", "short_name": "WL -> Col", "sections": [ { @@ -2739,7 +2739,7 @@ ] }, { - "name": "Haunted Wasteland Near Fortress -> Gerudo Fortress Outside Gate", + "name": "Wasteland Near Fortress -> GF Outside Gate", "short_name": "WL -> GF", "sections": [ { @@ -2764,7 +2764,7 @@ "color": "#a09509", "children": [ { - "name": "Desert Colossus -> Desert Colossus Grotto", + "name": "Desert Colossus -> Colossus Grotto", "short_name": "Colossus Grotto", "sections": [ { @@ -2783,8 +2783,8 @@ ] }, { - "name": "Desert Colossus -> Colossus Fairy", - "short_name": "Colossus Fairy", + "name": "Desert Colossus -> Colossus Great Fairy Fountain", + "short_name": "Colossus Great Fairy Fountain", "sections": [ { "name": "House", @@ -2821,7 +2821,7 @@ ] }, { - "name": "Desert Colossus -> Haunted Wasteland Near Colossus", + "name": "Desert Colossus -> Wasteland Near Colossus", "short_name": "Col -> WL", "sections": [ { diff --git a/ootrando_overworldmap_hamsda/scripts/logic.lua b/ootrando_overworldmap_hamsda/scripts/logic.lua index 204a9ea5..4430397a 100644 --- a/ootrando_overworldmap_hamsda/scripts/logic.lua +++ b/ootrando_overworldmap_hamsda/scripts/logic.lua @@ -203,7 +203,7 @@ end function can_leave_forest() if has("setting_forest_open") or has("setting_forest_deku") - --or has_age("adult") + or has("setting_age_adult") then return 1, AccessibilityLevel.Normal end @@ -714,6 +714,41 @@ function has_bottle() return usable_bottles, level end +blue_fire_locations = { + "@Ganons Castle/Water Trial Chests", + "@Ganons Castle MQ/Water Trial Chest", + "@Gerudo Training Grounds MQ/Before Heavy Block Chest" +} +function has_blue_fire() + local bottle_count, bottle_level = has_bottle() + + if bottle_count == 0 then + return 0, AccessibilityLevel.None + end + + if has("wallet2") then + return 1, bottle_level + end + + local zf_count, zf_level = adult_fountain() + if zf_count > 0 and zf_level == AccessibilityLevel.Normal then + return 1, bottle_level + end + + for _,location in ipairs(blue_fire_locations) do + local location_object = Tracker:FindObjectForCode(location) + if location_object + and location_object.AccessibilityLevel + and location_object.AccessibilityLevel == AccessibilityLevel.Normal + then + --TODO: trigger dummy update + return 1, bottle_level + end + end + + return 1, AccessibilityLevel.SequenceBreak +end + function has_projectile(age) local explo = has_explosives() > 0 local sling = has("sling") diff --git a/ootrando_overworldmap_hamsda/scripts/update.lua b/ootrando_overworldmap_hamsda/scripts/update.lua index 25b51b3c..02425aa1 100644 --- a/ootrando_overworldmap_hamsda/scripts/update.lua +++ b/ootrando_overworldmap_hamsda/scripts/update.lua @@ -108,20 +108,20 @@ end vanilla_captures = { ["setting_shuffle_sword1_yes"] = { - ["@Kokiri Sword Chest/Dodge Boulder"] = "sword1" + ["@KF Kokiri Sword Chest/Dodge Boulder"] = "sword1" }, ["setting_shuffle_ocarinas_yes"] = { - ["@Lost Woods Bridge/Gift from Saria"] = "ocarina", - ["@Ocarina of Time/Item"] = "ocarina" + ["@LW Bridge/LW Gift from Saria"] = "ocarina", + ["@HF Ocarina of Time/HF Ocarina of Time Item"] = "ocarina" }, ["setting_shuffle_egg_yes"] = { - ["@Malon at Castle/Talk to her"] = "capture_childegg" + ["@Malon at Castle/HC Malon Egg"] = "capture_childegg" }, ["setting_shuffle_card_yes"] = { - ["@Carpenter Rescue/Free the carpenters"] = "gerudocard" + ["@Carpenter Rescue/Gerudo Membership Card"] = "gerudocard" }, ["setting_shuffle_beans_yes"] = { - ["@Magic Bean Salesman/Buy Item"] = "beans" + ["@ZR Magic Bean Salesman/Buy Item"] = "beans" } } function update_vanilla_captures() @@ -293,152 +293,152 @@ end skulltula_locations = { --overworld - "@Know It All House/GS1 (N)", - "@Kokiri Bean Patch/GS2", - "@House of Twins/GS3 (N)", - "@Lost Woods Bean Patch Near Bridge/GS4", - "@Lost Woods Bean Patch Near Stage/GS5", - "@Lost Woods Above Stage/GS6 (N)", - "@Top of Maze/GS7 (N)", - "@Field Kakariko Grotto/GS12", - "@Field Valley Grotto/GS13", - "@Castle Market Guard House/GS14", - "@Hyrule Castle Tree/GS15", - "@Castle Storms Grotto/GS16", - "@Outside Ganon's Castle/GS17", - "@Lon Lon Ranch Tree/GS18", - "@Lon Lon Ranch Rain Shed/GS19 (N)", - "@Lon Lon Ranch House Window/GS20 (N)", - "@Lon Lon Ranch Back Wall/GS21 (N)", - "@Kakariko Tree/GS22 (N)", - "@Kakariko Skulltula House/GS23 (N)", - "@Kakariko House Under Construction/GS24 (N)", - "@Kakariko Guard's House/GS25 (N)", - "@Kakariko Watchtower/GS26 (N)", - "@Kakariko Above Impa's House/GS27 (N)", - "@Graveyard Wall/GS28 (N)", - "@Graveyard Bean Patch/GS29", - "@Mountain Trail Bean Patch/GS30", - "@Mountain Trail Bomb Alcove/GS31", - "@Mountain Trail Above Dodongo's Cavern/GS32 (N)", - "@Mountain Trail Path to Crater/GS33 (N)", - "@Goron City Boulder Maze/GS34", - "@Goron City Center Platform/GS35", - "@Death Mountain Crater Crate/GS36", - "@Mountain Crater Bean Patch/GS37", - "@Zora River Tree/GS43", - "@Zora River Ladder/GS44 (N)", - "@Zora River Near Raised Grottos/GS45 (N)", - "@Zora River Above Bridge/GS46 (N)", - "@Frozen Waterfall/GS47 (N)", - "@Zora's Fountain Tree/GS48", - "@Zora's Fountain Above the Log/GS49 (N)", - "@Zora's Fountain Hidden Cave/GS50 (N)", - "@Lake Hylia Bean Patch/GS55", - "@Lab Wall/GS56 (N)", - "@Small Island/GS57 (N)", - "@Giant Tree/GS58 (N)", - "@Lab Underwater Crate/GS59", - "@Gerudo Valley Small Bridge/GS86 (N)", - "@Gerudo Valley Bean Patch/GS87", - "@Gerudo Valley Behind Tent/GS88 (N)", - "@Gerudo Valley Pillar/GS89 (N)", - "@Archery Range/GS90 (N)", - "@Top Floor/GS91 (N)", - "@Wasteland Ruins/GS92", - "@Desert Colossus Bean Patch/GS93", - "@Desert Colossus Tree/GS94 (N)", - "@Desert Colossus Hill/GS95 (N)", + "@KF Know It All House/KF GS Know It All House (N)", + "@KF Bean Patch/KF GS Bean Patch", + "@KF House of Twins/KF GS House of Twins (N)", + "@LW Bean Patch Near Bridge/LW GS Bean Patch Near Bridge", + "@LW Bean Patch Near Theater/LW GS Bean Patch Near Theater", + "@LW Above Theater/LW GS Above Theater (N)", + "@SFM Maze/SFM GS (N)", + "@HF Near Kak Grotto/HF GS Near Kak Grotto", + "@HF Cow Grotto/HF GS Cow Grotto", + "@LH Lab/LH GS Lab Crate", + "@LH Bean Patch/LH GS Bean Patch", + "@LH Lab Wall/LH GS Lab Wall (N)", + "@LH Small Island/LH GS Small Island (N)", + "@LH Tree/LH GS Tree (N)", + "@LLR Tree/LLR GS Tree", + "@LLR Rain Shed/LLR GS Rain Shed (N)", + "@LLR House Window/LLR GS House Window (N)", + "@LLR Back Wall/LLR GS Back Wall (N)", + "@Kak Above Impas House/Kak GS Above Impas House (N)", + "@Kak Tree/Kak GS Tree (N)", + "@Kak Skulltula House/Kak GS Skulltula House (N)", + "@Kak House Under Construction/Kak GS House Under Construction (N)", + "@Kak Guards House/Kak GS Guards House (N)", + "@Kak Watchtower/Kak GS Watchtower (N)", + "@Graveyard Wall/Graveyard GS Wall (N)", + "@Graveyard Bean Patch/Graveyard GS Bean Patch", + "@GC Maze/GC GS Boulder Maze", + "@GC Center Platform/GC GS Center Platform", + "@DMT Above Dodongos Cavern/DMT GS Above Dodongos Cavern (N)", + "@DMT Falling Rocks Path/DMT GS Falling Rocks Path (N)", + "@DMT Bean Patch/DMT GS Bean Patch", + "@DMT Near Kak/DMT GS Near Kak", + "@DMC Crate/DMC GS Crate", + "@DMC Bean Patch/DMC GS Bean Patch", + "@Market Guard House/Market GS Guard House", + "@HC Tree/HC GS Tree", + "@HC Storms Grotto/HC GS Storms Grotto", + "@OGC/OGC GS", + "@ZR Tree/ZR GS Tree", + "@ZR Ladder/ZR GS Ladder (N)", + "@ZR Near Raised Grottos/ZR GS Near Raised Grottos (N)", + "@ZR Above Bridge/ZR GS Above Bridge (N)", + "@ZD Frozen Waterfall/ZD GS Frozen Waterfall (N)", + "@ZF Hidden Cave/ZF GS Hidden Cave (N)", + "@ZF Tree/ZF GS Tree", + "@ZF Above the Log/ZF GS Above the Log (N)", + "@GV Small Bridge/GV GS Small Bridge (N)", + "@GV Bean Patch/GV GS Bean Patch", + "@GV Behind Tent/GV GS Behind Tent (N)", + "@GV Pillar/GV GS Pillar (N)", + "@GF Archery Range/GF GS Archery Range (N)", + "@GF Top Floor/GF GS Top Floor (N)", + "@Wasteland Structure/Wasteland GS", + "@Colossus Bean Patch/Colossus GS Bean Patch", + "@Colossus Tree/Colossus GS Tree (N)", + "@Colossus Hill/Colossus GS Hill (N)", --regular dungeons - "@Deku Tree/GS8 - Compass Room", - "@Deku Tree/GS9 - Basement Vines", - "@Deku Tree/GS10 - Basement Gate", - "@Deku Tree/GS11 - Basement Back Room", - "@Dodongos Cavern/GS38 - East Side Room", - "@Dodongos Cavern/GS39 - Vines Above Stairs", - "@Dodongos Cavern/GS40 - Back Room", - "@Dodongos Cavern/GS41 - Alcove Above Stairs", - "@Dodongos Cavern/GS42 - Scarecrow", - "@Jabu Jabus Belly/GS51 - Water Switch Room", - "@Jabu Jabus Belly/GS52 - Lobby Basement Lower", - "@Jabu Jabus Belly/GS53 - Lobby Basement Upper", - "@Jabu Jabus Belly/GS54 - Near Boss", - "@Forest Temple/GS60 - First Room", - "@Forest Temple/GS61 - Lobby", - "@Forest Temple/GS62 - Outdoor East", - "@Forest Temple/GS63 - Outdoor West", - "@Forest Temple/GS64 - Basement", - "@Fire Temple/GS65 - Song of Time Room", - "@Fire Temple/GS66 - Unmarked Bomb Wall", - "@Fire Temple/GS67 - East Tower Climb", - "@Fire Temple/GS68 - East Tower Top", - "@Fire Temple/GS69 - Basement", - "@Ice Cavern/GS70 - Heart Piece Room", - "@Ice Cavern/GS71 - Spinning Scythe Room", - "@Ice Cavern/GS72 - Push Block Room", - "@Water Temple/GS73 - South Basement", - "@Water Temple/GS74 - Serpent River", - "@Water Temple/GS75 - Central Room", - "@Water Temple/GS76 - Falling Platform Room", - "@Water Temple/GS77 - Near Boss Key Chest", - "@Bottom of the Well/GS78 - Like Like Cage", - "@Bottom of the Well/GS79 - West Inner Room", - "@Bottom of the Well/GS80 - East Inner Room", - "@Shadow Temple/GS81 - Like Like Room", - "@Shadow Temple/GS82 - Crusher Room", - "@Shadow Temple/GS83 - Single Giant Pot", - "@Shadow Temple/GS84 - Near Ship", - "@Shadow Temple/GS85 - Triple Giant Pot", - "@Spirit Temple/GS96 - Metal Fence", - "@Spirit Temple/GS97 - Bomb for Light Room", - "@Spirit Temple/GS98 - Hall to West Iron Knuckle", - "@Spirit Temple/GS99 - Boulder Room", - "@Spirit Temple/GS100 - Lobby", + "@Deku Tree/GS Compass Room", + "@Deku Tree/GS Basement Vines", + "@Deku Tree/GS Basement Gate", + "@Deku Tree/GS Basement Back Room", + "@Dodongos Cavern/GS Side Room Near Lower Lizalfos", + "@Dodongos Cavern/GS Scarecrow", + "@Dodongos Cavern/GS Alcove Above Stairs", + "@Dodongos Cavern/GS Vines Above Stairs", + "@Dodongos Cavern/GS Back Room", + "@Jabu Jabus Belly/GS Water Switch Room", + "@Jabu Jabus Belly/GS Lobby Basement Lower", + "@Jabu Jabus Belly/GS Lobby Basement Upper", + "@Jabu Jabus Belly/GS Near Boss", + "@Ice Cavern/GS Spinning Scythe Room", + "@Ice Cavern/GS Heart Piece Room", + "@Ice Cavern/GS Push Block Room", + "@Forest Temple/GS First Room", + "@Forest Temple/GS Lobby", + "@Forest Temple/GS Raised Island Courtyard", + "@Forest Temple/GS Level Island Courtyard", + "@Forest Temple/GS Basement", + "@Fire Temple/GS Boss Key Loop", + "@Fire Temple/GS Song of Time Room", + "@Fire Temple/GS Boulder Maze", + "@Fire Temple/GS Scarecrow Climb", + "@Fire Temple/GS Scarecrow Top", + "@Water Temple/GS Behind Gate", + "@Water Temple/GS Central Pillar", + "@Water Temple/GS Falling Platform Room", + "@Water Temple/GS River", + "@Water Temple/GS Near Boss Key Chest", + "@Shadow Temple/GS Like Like Room", + "@Shadow Temple/GS Falling Spikes Room", + "@Shadow Temple/GS Single Giant Pot", + "@Shadow Temple/GS Near Ship", + "@Shadow Temple/GS Triple Giant Pot", + "@Spirit Temple/GS Metal Fence", + "@Spirit Temple/GS Sun on Floor Room", + "@Spirit Temple/GS Hall After Sun Block Room", + "@Spirit Temple/GS Lobby", + "@Spirit Temple/GS Boulder Room", + "@Bottom of the Well/GS West Inner Room", + "@Bottom of the Well/GS East Inner Room", + "@Bottom of the Well/GS Like Like Cage", --MQ dungeons - "@Deku Tree MQ/GS8 - Lobby", - "@Deku Tree MQ/GS9 - Compass Room", - "@Deku Tree MQ/GS10 - Basement Ceiling", - "@Deku Tree MQ/GS11 - Basement Back Room", - "@Dodongos Cavern MQ/GS38 - Song of Time Block Room", - "@Dodongos Cavern MQ/GS39 - Larva Room", - "@Dodongos Cavern MQ/GS40 - Lizalfos Room", - "@Dodongos Cavern MQ/GS41 - Scrub Room", - "@Dodongos Cavern MQ/GS42 - Back Area", - "@Jabu Jabus Belly MQ/GS51 - Boomerang Room", - "@Jabu Jabus Belly MQ/GS52 - Tailpasaran Room", - "@Jabu Jabus Belly MQ/GS53 - Invisible Enemies Room", - "@Jabu Jabus Belly MQ/GS54 - Near Boss", - "@Forest Temple MQ/GS60 - First Hallway", - "@Forest Temple MQ/GS61 - Block Push Room", - "@Forest Temple MQ/GS62 - Outdoor West", - "@Forest Temple MQ/GS63 - Outdoor East", - "@Forest Temple MQ/GS64 - Well", - "@Fire Temple MQ/GS65 - Big Lava Room", - "@Fire Temple MQ/GS66 - East Tower Top", - "@Fire Temple MQ/GS67 - Fire Wall Maze Side Room", - "@Fire Temple MQ/GS68 - Above Fire Wall Maze", - "@Fire Temple MQ/GS69 - Fire Wall Maze Center", - "@Ice Cavern MQ/GS70 - Red Ice", - "@Ice Cavern MQ/GS71 - Scarecrow", - "@Ice Cavern MQ/GS72 - Ice Block", - "@Water Temple MQ/GS73 - South Basement", - "@Water Temple MQ/GS74 - North Basement", - "@Water Temple MQ/GS75 - Serpent River", - "@Water Temple MQ/GS76 - Lizalfos Hallway", - "@Water Temple MQ/GS77 - Before Upper Water Switch", - "@Bottom of the Well MQ/GS78 - West Inner Room", - "@Bottom of the Well MQ/GS79 - Basement", - "@Bottom of the Well MQ/GS80 - Coffin Room", - "@Shadow Temple MQ/GS81 - Crusher Room", - "@Shadow Temple MQ/GS82 - Wind Hint Room", - "@Shadow Temple MQ/GS83 - After Wind", - "@Shadow Temple MQ/GS84 - After Ship", - "@Shadow Temple MQ/GS85 - Near Boss", - "@Spirit Temple MQ/GS96 - Sun Block Room", - "@Spirit Temple MQ/GS97 - Lower Adult Left", - "@Spirit Temple MQ/GS98 - Lower Adult Right", - "@Spirit Temple MQ/GS99 - Iron Knuckle North", - "@Spirit Temple MQ/GS100 - Iron Knuckle West", + "@Deku Tree MQ/GS Lobby", + "@Deku Tree MQ/GS Compass Room", + "@Deku Tree MQ/GS Basement Graves Room", + "@Deku Tree MQ/GS Basement Back Room", + "@Dodongos Cavern MQ/GS Scrub Room", + "@Dodongos Cavern MQ/GS Lizalfos Room", + "@Dodongos Cavern MQ/GS Larvae Room", + "@Dodongos Cavern MQ/GS Song of Time Block Room", + "@Dodongos Cavern MQ/GS Back Area", + "@Jabu Jabus Belly MQ/GS Boomerang Chest Room", + "@Jabu Jabus Belly MQ/GS Tailpasaran Room", + "@Jabu Jabus Belly MQ/GS Invisible Enemies Room", + "@Jabu Jabus Belly MQ/GS Near Boss", + "@Ice Cavern MQ/GS Red Ice", + "@Ice Cavern MQ/GS Scarecrow", + "@Ice Cavern MQ/GS Ice Block", + "@Forest Temple MQ/GS First Hallway", + "@Forest Temple MQ/GS Raised Island Courtyard", + "@Forest Temple MQ/GS Well", + "@Forest Temple MQ/GS Level Island Courtyard", + "@Forest Temple MQ/GS Block Push Room", + "@Fire Temple MQ/GS Big Lava Room Open Door", + "@Fire Temple MQ/GS Skull On Fire", + "@Fire Temple MQ/GS Fire Wall Maze Side Room", + "@Fire Temple MQ/GS Fire Wall Maze Center", + "@Fire Temple MQ/GS Above Fire Wall Maze", + "@Water Temple MQ/GS Lizalfos Hallway", + "@Water Temple MQ/GS Before Upper Water Switch", + "@Water Temple MQ/GS River", + "@Water Temple MQ/GS Freestanding Key Area", + "@Water Temple MQ/GS Triple Wall Torch", + "@Shadow Temple MQ/GS Falling Spikes Room", + "@Shadow Temple MQ/GS Wind Hint Room", + "@Shadow Temple MQ/GS After Wind", + "@Shadow Temple MQ/GS After Ship", + "@Shadow Temple MQ/GS Near Boss", + "@Spirit Temple MQ/GS Sun Block Room", + "@Spirit Temple MQ/GS Leever Room", + "@Spirit Temple MQ/GS Symphony Room", + "@Spirit Temple MQ/GS Nine Thrones Room North", + "@Spirit Temple MQ/GS Nine Thrones Room West", + "@Bottom of the Well MQ/GS West Inner Room", + "@Bottom of the Well MQ/GS Basement", + "@Bottom of the Well MQ/GS Coffin Room", } function count_skulltulas() local total = 0 diff --git a/ootrando_overworldmap_hamsda/scripts/update_entrance.lua b/ootrando_overworldmap_hamsda/scripts/update_entrance.lua index 2713c2bd..7d3dc544 100644 --- a/ootrando_overworldmap_hamsda/scripts/update_entrance.lua +++ b/ootrando_overworldmap_hamsda/scripts/update_entrance.lua @@ -50,6 +50,7 @@ end +--outdated names capture_badge_locations = { ["@Death Mountain -> Mountain Bombable Grotto"] = "@Death Mountain -> Mountain Bombable Grotto/Grotto", ["@Death Mountain -> Mountain Storms Grotto"] = "@Death Mountain -> Mountain Storms Grotto/Grotto", From 0736840ad4265c823055fa3254440a33e1ece026 Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 25 Sep 2020 11:52:12 +0200 Subject: [PATCH 4/5] improved ER map: - added settings back in - added default captures for non shuffled locations refactored some of the shared logic as well --- ootrando_overworldmap_hamsda/README.md | 6 +- ootrando_overworldmap_hamsda/changelog.md | 3 + .../images/setting_entrance_dungeons.png | Bin 2110 -> 0 bytes .../images/setting_entrance_dungeons_off.png | Bin 0 -> 2415 bytes .../setting_entrance_dungeons_shuffle.png | Bin 0 -> 2372 bytes .../images/setting_entrance_grottos_off.png | Bin 0 -> 2441 bytes .../setting_entrance_grottos_shuffle.png | Bin 0 -> 2334 bytes .../images/setting_entrance_indoors.png | Bin 1997 -> 0 bytes .../images/setting_entrance_interiors_all.png | Bin 0 -> 1826 bytes .../images/setting_entrance_interiors_off.png | Bin 0 -> 1877 bytes .../setting_entrance_interiors_simple.png | Bin 0 -> 1803 bytes .../images/setting_entrance_overworld.png | Bin 2002 -> 0 bytes .../items/options_entrance.json | 60 +++ .../layouts/layouts_entrance.json | 12 + .../layouts/options_entrance.json | 49 +-- .../locations/overworld_entrance.json | 36 +- ootrando_overworldmap_hamsda/scripts/init.lua | 83 +++- .../scripts/logic.lua | 4 +- .../scripts/update.lua | 83 +--- .../scripts/update_entrance.lua | 358 +++++++++--------- 20 files changed, 410 insertions(+), 284 deletions(-) delete mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_dungeons.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_dungeons_off.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_dungeons_shuffle.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_grottos_off.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_grottos_shuffle.png delete mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_indoors.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_interiors_all.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_interiors_off.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_interiors_simple.png delete mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_overworld.png create mode 100644 ootrando_overworldmap_hamsda/items/options_entrance.json diff --git a/ootrando_overworldmap_hamsda/README.md b/ootrando_overworldmap_hamsda/README.md index 062ac64b..00a82a8a 100644 --- a/ootrando_overworldmap_hamsda/README.md +++ b/ootrando_overworldmap_hamsda/README.md @@ -35,7 +35,7 @@ Some of this functionality might not be immediately obvious: - Right clicking ![Fairy Ocarina](images/fairyocarina.png "Fairy Ocarina")/![Ocarina of Time](images/ocarina.png "Ocarina of Time") will overlay it with ![Scarecrow](images/overlay_scarecrow.png "Scarecrow") indicating that you have confirmed the scarecrow song or started with free scarecrow. Locations that make use of the scarecrow will not show up unless this is turned on. The location of the scarecrow in Lake Hylia will automatically mark this when cleared first as child and then as adult. - ![Triforce Piece](images/triforce_piece.png "Triforce Piece") is used as a counter for Triforce pieces in the Triforce Hunt mode. -## Settings (for map variants) +## Settings (for non Entrance Randomizer variants with a map) There is a variety of toggles available to accomodate the different settings the randomizer offers. The settings are arranged to mimic the current GUI of the randomizer. The default for all of these should match the settings used for the weekly races (check out the OoTR discord for more info). @@ -238,7 +238,9 @@ The entrance randomizer variants are very different from the regular map tracker All locations have a capture spot, where you can mark what is at that location. If the location is useless, just mark off the icon to clean up the map. Later you can see what led where by simply hovering over the locations. -There are two variants, one for keysanity and one without, but none of the items are actually used for "logic" (to show/hide some entrances). +The settings allow you to select which pools are actually shuffled (split based on Dev-R branch, since it is the most popular for ER). If they are not shuffled, the appropriate captures are placed at (almost) all locations and certain locations are hidden since they are useless regardless of any other settings. + +There are two variants, one for keysanity and one without, but none of the items are actually used for "logic" (to show/hide entrances). Additionally there are counters for the useful indoors entrances, so you can evaluate how much focus to put on exploring more entrances: diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index a496d406..7741a177 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -4,6 +4,9 @@ - removed Gossip Stone map - changed names of most locations based on [this PR](https://github.com/TestRunnerSRL/OoT-Randomizer/pull/1021) +- improved ER map: + - added settings back in + - added default captures for non shuffled locations ## 2.9.6.0 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_dungeons.png b/ootrando_overworldmap_hamsda/images/setting_entrance_dungeons.png deleted file mode 100644 index 57e797b88ebab62316ecef0b807a93a9b1d975ff..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2110 zcmV-E2*LM>P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D02p*dSaefwW^{L9 za%BK;VQFr3E^cLXAT%y9E;jv63FrU-2d_y)K~z{rwN_hfQ`-@ZfPnL|kL@^i?8MLb z6~}gPocQh7PW*Np=i!9hkO$nRAHATWO7w?FAbtRq0)>w&A-EucT8h*nfrP4}LRC-^ zl%JwXl%FDjRFDu7e~3p}oxSgMYT9$#s!_MJe9oS;J+t=A?3vvF;NLxE-uzub*jyBZMsG_?Lq|hH!$yMW5Ytt4>4#{8C(v81Uv~K(u9#*4#B^59r;n#9xd|k+fx{-~TkdGTth?tQM84>kq5F6AY@pBh8G9Z)GG z5M*2aET*>xQDHsYHr4mWQ#SbelnC{+ooi8!c4Ing!bHx9YPJXYmyA<6--0y9YiN`3)@ZUrh49nzjQ z+N~U!egUPeQrL}caGRyDbhTnE<$zJs1fyE=rI_9tM1}Pz$IPn>B|EZ1YU~)ZVK$~j zDxkqq#)vT@lkj(xQK3?<=QQjgq#fQeBnw#76k1r(SZ?ZJFPi$YL`a?%cacQb5VO<#!VtwB^+ z50Ab5aEX#E=8|D&!G@`j0>zjCGh}GgE5&@?hR@<^IvoNQiVn;TccLu9@Z}DkBcEaQWWRUvsP3Fq{vZDOocSa4a%@ka-b4WBHGu6r7<1W3Pm+zMTF{wg+gG|w%Nt>)*vdZhs`MavN}RL@+z@XvXCJu%5gL1Vrrx*2X<0k zRD%j6JmjGM1}RR=%imw#k(==ZO2N{f^@$W6A25- zgGvm0$ScKORKs#a+yZt@x=|oc%oTd!qxxV`OWq7LG&G9otwB^+54Tluu@o`DXOm$$ zN9DJ_4U;Jg9YHyw?lwwHCnkb&1Sv^(O}P-I;Hc<{pR@Y4+;u3y8lQAO` zrVEL$1Mz+Z^@R=;qMfKxC}#6i9jWz(+)DglIfe>_Vf&aHPRap?u61SI1pKa!KTIS| z-0(1YAW4arWqFXc(51viv8UV8pc-+n3NgB>6=P=V118wJB&-ot{wo4(&9@=wR{XI@ z%_SSuB1N|$Mu261g-BJ4HdG2`jIrBM%7`hd58KPV^j!}VYsFegm~{M$(RzISLyvp+ z?%~9V6F7YMFm~_WjZi4GMxq#_93TQ&ssn|%9woX9&QKR*HNQZYlzdEwagr~l?bMK{ z8j@EW20Dg%nVBp9C!_WF`sW)%uU@^PDRAh}A^yC0@gg>C*swBjG@?{0@wLZ~A4gwbAJ@5Q(Y@uQdF=iB_xv04 z&XXrk`1ebfF7aGr`ZOBNe$ zjKJ;Nw{hdf4ZL~tW{p5R9_JoogefxOanfuvbxw2-Qp*FNyEl!_4&EH2xMm`}>TX*&9 zRa7b!{?0-mMu4ql`A{RkJj$L7PoF-;;^N{z2(S$P`0*oG^5Vq{t{@Ny@WoE26AvFg zbuoJ;t&Em|~uv}r!`f=yZ9W*vJe(Hh$6)XpsVRr0T owu`M{kjZ2`pY(eDH?ju&9ZOA`6Q?b+#Q*>R07*qoM6N<$g0~duIsgCw diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_dungeons_off.png b/ootrando_overworldmap_hamsda/images/setting_entrance_dungeons_off.png new file mode 100644 index 0000000000000000000000000000000000000000..478807041e79cc750302c2fe9149ec1d81a1a73f GIT binary patch literal 2415 zcmV-#36S=QP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D2?R+*K~z{r#aC-= zlh+x3efw;GzT1iIT%8z0zzHNYq(DVzp+$p&kXj9KnOG%Ss!rM;r2gR-LP8qb4wvAV3<3)sln+alQ^**-@ZNXiDMc-+NG2BNNex|O03NmtK3lHver2q z<~pm@6qF?GJ6f%#6_3kc3*Tvi!BX>rm6esr!5~R&c=p=4U&d=+s;Tv^$55&$3gz>8 zaZjaES@E~bXw=jM0`r-}qQ+!a@@ETXu~7B+xXCd(D!Y6>;l#g$wlFS&R;MG4n(3h` z=6QO0mL?{q)kdRa-2C2-UmyR?>ekW{dvz|aXtY`tWzsoHr7}u9o=|3H5)_XoV>9vO zSR@kb9STo$jgLz)y}?EOHs5)+Up4G&(X#!$addsor3a z{H?7Gt34h^4Sw4+T8&ZCX^kos8R0KRm8{XIWW8Qz26tQ~ZhJ*wN!fCX#mL{LIy?J1 z3d;z*Tmrt9PFLujef8A?>U#W) zOGGs_9vT^mk=N^_+FCDdXl+0M8v3@ge`6@r{}z_{B`gRNda@`3UVpW*s=RbbE~jWX zl3XrNv$IJ`B<4g3I4Y}E772sf^%3CIhD9y8FqXh>{7aH%O#I z-MwB1Rad*AAvQSUMw#qnweWgGV`Ec-A3zG$51a38U{MK{1>6=@R<#B-*K+%1kpXrf znM~1aB1KHPfq^j!g`SJ|nQ*eK7pY#ltb)obT$Dqm)~>4)^=A%&cyM4+5EY2P&coOd zfkh59uMF7pq<#k5qwd8U+!GlUNnN8$$SqXXq2XZLiJc$AJViHz#pjZOC-R_x)PM7mSMZ$r6)9{{0 zv?lfTYUuONE!5G`LtoRML^m*)3q3=_)ZX4sd-m+4=g*##$73RInM06|=U^@Xyo-Lz zKNe8TKy`IVrCL$>wCGvxXS9qEAnbzTW3#yeCD=mI*lDV)YNgF5-=ZCN*V5Yd<>acd zkjHC7))Mr^7k`8{JfjpAo+qN3W@nOIitn+^b9-@2$oub9~JJjB(*OCEhD#5rlp$la* zGgMhvu84&U$k1~C`1q8+?VAvFcMs8b-w$FO#zqtqgv{l#D9seKFoeiblnrMn{T>PE#y8 zL$Mf_4e#hCFi8m6_!8wvku@rjF(i@vz(8ibfd(BG3YA!C3|bJHO_AB{AS*~{x0~tl z<9_TNlQ_;Lcq{&!n6Lohkt}NiXm^Vm9<#D>)ZF*7EYalTEb8kJVpCOBO2HM?_yPih z4*Bqdqx|_RSQevXzLM{^GNf;+xyI zZ_|bi8)*Oj{j_!KR$8}i9c|gN1zOQ3p8q>2I zDbJrjPv_2^qlShCI(zmk1ZNr>RupG~8mMO)dhnD^oH#*e&YVG;8$j$7-MMpzE?>S( zM~@yA=Z!^x7?ok4KUiMwyjNLSI)!ajSrRB$a0XD2dX~?kb#--Ndr*{?mKHJY+O^?LE_!i5XUfddDWOP4M!%(Vy$N2XuFzJ?9JIA^?v zj~1@4!<6gSuZszrnwk{UT&b$6QjlT=DHap61N?hvXh>WyI1q_M#K`y9UKWN0t!CQ= z<0DiPjJMEbup!tXm=X$w=+UD`$XYd8v=*|h6Lr6T|2`hiqphutZrr$0xSGeUTeq-3 z%oVO)P~dgY!#E>+gfhYKkBPWuD5$$gF$gFk*|TSlh-~-n-Ng)Cym+w~=|Toho;+E+ z2m7xfCRkYX=FOW5qEZeWIwbCI+qO+O(An9ktXj27+}pc%uXy+F-Mfm{>;2IVFcv0J hnwy)8zyC8M`X?eyI50ch=6wJF002ovPDHLkV1g)3kL&;d literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_dungeons_shuffle.png b/ootrando_overworldmap_hamsda/images/setting_entrance_dungeons_shuffle.png new file mode 100644 index 0000000000000000000000000000000000000000..36bb0a2e5ce50ea5a132256bae84a7b3d16b2dad GIT binary patch literal 2372 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 literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_grottos_shuffle.png b/ootrando_overworldmap_hamsda/images/setting_entrance_grottos_shuffle.png new file mode 100644 index 0000000000000000000000000000000000000000..6abf517ff0a0a17479378d1c24658dfa2d4b0a86 GIT binary patch literal 2334 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 Ef;lIamjD0& literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_indoors.png b/ootrando_overworldmap_hamsda/images/setting_entrance_indoors.png deleted file mode 100644 index 54b2049feacd7d569e6e084096a6ca94f40ca841..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1997 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 setting_trials diff --git a/ootrando_overworldmap_hamsda/scripts/update.lua b/ootrando_overworldmap_hamsda/scripts/update.lua index 02425aa1..ef067a7b 100644 --- a/ootrando_overworldmap_hamsda/scripts/update.lua +++ b/ootrando_overworldmap_hamsda/scripts/update.lua @@ -1,58 +1,6 @@ -settings_cache = {} -queued_changes = {} -function not_like_cache(setting, current) - if settings_cache[setting] == nil or settings_cache[setting] ~= current then - queued_changes[setting] = current - return true - end - return false -end -function apply_queued_changes() - for setting,value in pairs(queued_changes) do - settings_cache[setting] = value - end - queued_changes = {} -end - - -has_keys = Tracker.ActiveVariantUID:find("keysanity") - - -dungeons = { - "forest", - "fire", - "water", - "spirit", - "shadow", - "botw", - "gtg", - "gc" -} -key_counts = { - vanilla = { - forest = 5, - fire = 8, - water = 6, - spirit = 5, - shadow = 5, - botw = 3, - gtg = 9, - gc = 2, - }, - mq = { - forest = 6, - fire = 5, - water = 2, - spirit = 7, - shadow = 6, - botw = 2, - gtg = 3, - gc = 3, - } -} function update_smallkeys() for _,dungeon in ipairs(dungeons) do - local key_object = Tracker:FindObjectForCode(dungeon.."_small_keys") + local key_object = get_object(dungeon.."_small_keys") if key_object then if has(dungeon.."_reg") then key_object.MaxCount = key_counts["vanilla"][dungeon] @@ -61,7 +9,7 @@ function update_smallkeys() end if not has_keys then key_object.AcquiredCount = key_object.MaxCount - local bk = Tracker:FindObjectForCode(dungeon.."_boss_key") + local bk = get_object(dungeon.."_boss_key") if bk then bk.Active = true end @@ -78,8 +26,8 @@ function update_fortress() local setting_fast = has("gerudo_fortress_fast") local setting_open = has("gerudo_fortress_open") - local item_card = Tracker:FindObjectForCode("gerudocard") - local item_gf_keys = Tracker:FindObjectForCode("gf_small_keys") + local item_card = get_object("gerudocard") + local item_gf_keys = get_object("gf_small_keys") if item_gf_keys then if setting_open then @@ -129,8 +77,8 @@ function update_vanilla_captures() local has_setting = has(setting) if not_like_cache(setting, has_setting) then for location,item in pairs(captures) do - local location_object = Tracker:FindObjectForCode(location) - local item_object = Tracker:FindObjectForCode(item) + local location_object = get_object(location) + local item_object = get_object(item) if location_object and item_object then if has_setting then location_object.CapturedItem = nil @@ -149,7 +97,7 @@ end function get_first_free_bottle() for i=1,4 do - local bottle = Tracker:FindObjectForCode("bottle"..i) + local bottle = get_object("bottle"..i) if bottle and bottle.CurrentStage == 0 then return bottle end @@ -157,14 +105,14 @@ function get_first_free_bottle() return nil end function get_kid_trade() - local trade = Tracker:FindObjectForCode("kidtrade") + local trade = get_object("kidtrade") if trade then return trade end return nil end function get_adult_trade() - local trade = Tracker:FindObjectForCode("adulttrade") + local trade = get_object("adulttrade") if trade then return trade end @@ -276,9 +224,9 @@ capture_mappings = { get_adult_trade } } -function update_capture_items() +function update_collected_capture() for code,data in pairs(capture_mappings) do - local capture = Tracker:FindObjectForCode(code) + local capture = get_object(code) if capture and capture.Active then capture.Active = false local item = data[2]() @@ -446,7 +394,7 @@ function count_skulltulas() local in_logic = 0 for _, location in ipairs(skulltula_locations) do - local location_object = Tracker:FindObjectForCode(location) + local location_object = get_object(location) if location_object and location_object.AccessibilityLevel then --location_object.AvailableChestCount total = total + 1 @@ -460,8 +408,8 @@ function count_skulltulas() end end - local available_object = Tracker:FindObjectForCode("counter_gs_available") - local in_logic_object = Tracker:FindObjectForCode("counter_gs_logic") + local available_object = get_object("counter_gs_available") + local in_logic_object = get_object("counter_gs_logic") if available_object then available_object.AcquiredCount = available end @@ -476,7 +424,8 @@ function tracker_on_accessibility_updated() update_smallkeys() update_fortress() update_vanilla_captures() - update_capture_items() + update_collected_capture() count_skulltulas() + apply_queued_changes() end \ No newline at end of file diff --git a/ootrando_overworldmap_hamsda/scripts/update_entrance.lua b/ootrando_overworldmap_hamsda/scripts/update_entrance.lua index 7d3dc544..6245be29 100644 --- a/ootrando_overworldmap_hamsda/scripts/update_entrance.lua +++ b/ootrando_overworldmap_hamsda/scripts/update_entrance.lua @@ -1,38 +1,6 @@ -dungeons = { - "forest", - "fire", - "water", - "spirit", - "shadow", - "botw", - "gtg", - "gc" -} -key_counts = { - vanilla = { - forest = 5, - fire = 8, - water = 6, - spirit = 5, - shadow = 5, - botw = 3, - gtg = 9, - gc = 2, - }, - mq = { - forest = 6, - fire = 5, - water = 2, - spirit = 7, - shadow = 6, - botw = 2, - gtg = 3, - gc = 3, - } -} function update_smallkeys() for _,dungeon in ipairs(dungeons) do - local key_object = Tracker:FindObjectForCode(dungeon.."_small_keys") + local key_object = get_object(dungeon.."_small_keys") if key_object then if has(dungeon.."_reg") then key_object.MaxCount = key_counts["vanilla"][dungeon] @@ -42,7 +10,7 @@ function update_smallkeys() end end - local gf_keys = Tracker:FindObjectForCode("gf_small_keys") + local gf_keys = get_object("gf_small_keys") if gf_keys then gf_keys.MaxCount = 4 end @@ -50,149 +18,190 @@ end ---outdated names -capture_badge_locations = { - ["@Death Mountain -> Mountain Bombable Grotto"] = "@Death Mountain -> Mountain Bombable Grotto/Grotto", - ["@Death Mountain -> Mountain Storms Grotto"] = "@Death Mountain -> Mountain Storms Grotto/Grotto", - ["@Death Mountain Crater Lower -> DMC Hammer Grotto"] = "@Death Mountain Crater Lower -> DMC Hammer Grotto/Grotto", - ["@Death Mountain Crater Upper -> Top of Crater Grotto"] = "@Death Mountain Crater Upper -> Top of Crater Grotto/Grotto", - ["@Desert Colossus -> Desert Colossus Grotto"] = "@Desert Colossus -> Desert Colossus Grotto/Grotto", - ["@Gerudo Fortress -> Gerudo Fortress Storms Grotto"] = "@Gerudo Fortress -> Gerudo Fortress Storms Grotto/Grotto", - ["@Gerudo Valley -> Gerudo Valley Octorok Grotto"] = "@Gerudo Valley -> Gerudo Valley Octorok Grotto/Grotto", - ["@Gerudo Valley Far Side -> Gerudo Valley Storms Grotto"] = "@Gerudo Valley Far Side -> Gerudo Valley Storms Grotto/Grotto", - ["@Goron City -> Goron City Grotto"] = "@Goron City -> Goron City Grotto/Grotto", - ["@Hyrule Castle Grounds -> Castle Storms Grotto"] = "@Hyrule Castle Grounds -> Castle Storms Grotto/Grotto", - ["@Hyrule Field -> Field Far West Castle Town Grotto"] = "@Hyrule Field -> Field Far West Castle Town Grotto/Grotto", - ["@Hyrule Field -> Field Kakariko Grotto"] = "@Hyrule Field -> Field Kakariko Grotto/Grotto", - ["@Hyrule Field -> Field Near Lake Inside Fence Grotto"] = "@Hyrule Field -> Field Near Lake Inside Fence Grotto/Grotto", - ["@Hyrule Field -> Field Near Lake Outside Fence Grotto"] = "@Hyrule Field -> Field Near Lake Outside Fence Grotto/Grotto", - ["@Hyrule Field -> Field North Lon Lon Grotto"] = "@Hyrule Field -> Field North Lon Lon Grotto/Grotto", - ["@Hyrule Field -> Field Valley Grotto"] = "@Hyrule Field -> Field Valley Grotto/Grotto", - ["@Hyrule Field -> Field West Castle Town Grotto"] = "@Hyrule Field -> Field West Castle Town Grotto/Grotto", - ["@Hyrule Field -> Remote Southern Grotto"] = "@Hyrule Field -> Remote Southern Grotto/Grotto", - ["@Kakariko Village -> Kakariko Back Grotto"] = "@Kakariko Village -> Kakariko Back Grotto/Grotto", - ["@Kakariko Village -> Kakariko Bombable Grotto"] = "@Kakariko Village -> Kakariko Bombable Grotto/Grotto", - ["@Kokiri Forest -> Kokiri Forest Storms Grotto"] = "@Kokiri Forest -> Kokiri Forest Storms Grotto/Grotto", - ["@Lake Hylia -> Lake Hylia Grotto"] = "@Lake Hylia -> Lake Hylia Grotto/Grotto", - ["@Lon Lon Ranch -> Lon Lon Grotto"] = "@Lon Lon Ranch -> Lon Lon Grotto/Grotto", - ["@Lost Woods -> Lost Woods Generic Grotto"] = "@Lost Woods -> Lost Woods Generic Grotto/Grotto", - ["@Lost Woods Beyond Mido -> Deku Theater"] = "@Lost Woods Beyond Mido -> Deku Theater/Grotto", - ["@Lost Woods Beyond Mido -> Lost Woods Sales Grotto"] = "@Lost Woods Beyond Mido -> Lost Woods Sales Grotto/Grotto", - ["@Sacred Forest Meadow -> Meadow Fairy Grotto"] = "@Sacred Forest Meadow -> Meadow Fairy Grotto/Grotto", - ["@Sacred Forest Meadow -> Meadow Storms Grotto"] = "@Sacred Forest Meadow -> Meadow Storms Grotto/Grotto", - ["@Sacred Forest Meadow Entryway -> Front of Meadow Grotto"] = "@Sacred Forest Meadow Entryway -> Front of Meadow Grotto/Grotto", - ["@Zora River -> Zora River Plateau Bombable Grotto"] = "@Zora River -> Zora River Plateau Bombable Grotto/Grotto", - ["@Zora River -> Zora River Plateau Open Grotto"] = "@Zora River -> Zora River Plateau Open Grotto/Grotto", - ["@Zora River -> Zora River Storms Grotto"] = "@Zora River -> Zora River Storms Grotto/Grotto", - ["@Zoras Domain -> Zoras Domain Storms Grotto"] = "@Zoras Domain -> Zoras Domain Storms Grotto/Grotto", - ["@Castle Town -> Castle Town Bazaar"] = "@Castle Town -> Castle Town Bazaar/House", - ["@Castle Town -> Castle Town Bombchu Bowling"] = "@Castle Town -> Castle Town Bombchu Bowling/House", - ["@Castle Town -> Castle Town Bombchu Shop"] = "@Castle Town -> Castle Town Bombchu Shop/House", - ["@Castle Town -> Castle Town Man in Green House"] = "@Castle Town -> Castle Town Man in Green House/House", - ["@Castle Town -> Castle Town Mask Shop"] = "@Castle Town -> Castle Town Mask Shop/House", - ["@Castle Town -> Castle Town Potion Shop"] = "@Castle Town -> Castle Town Potion Shop/House", - ["@Castle Town -> Castle Town Shooting Gallery"] = "@Castle Town -> Castle Town Shooting Gallery/House", - ["@Castle Town -> Castle Town Treasure Chest Game"] = "@Castle Town -> Castle Town Treasure Chest Game/House", - ["@Castle Town Entrance -> Castle Town Rupee Room"] = "@Castle Town Entrance -> Castle Town Rupee Room/House", - ["@Death Mountain Crater Lower -> Crater Fairy"] = "@Death Mountain Crater Lower -> Crater Fairy/House", - ["@Death Mountain Summit -> Mountain Summit Fairy"] = "@Death Mountain Summit -> Mountain Summit Fairy/House", - ["@Desert Colossus -> Colossus Fairy"] = "@Desert Colossus -> Colossus Fairy/House", - ["@Ganons Castle Grounds -> Ganons Castle Fairy"] = "@Ganons Castle Grounds -> Ganons Castle Fairy/House", - ["@Gerudo Valley Far Side -> Carpenter Tent"] = "@Gerudo Valley Far Side -> Carpenter Tent/House", - ["@Goron City -> Goron Shop"] = "@Goron City -> Goron Shop/House", - ["@Graveyard -> Dampes House"] = "@Graveyard -> Dampes House/House", - ["@Hyrule Castle Grounds -> Hyrule Castle Fairy"] = "@Hyrule Castle Grounds -> Hyrule Castle Fairy/House", - ["@Kakariko Village -> Carpenter Boss House"] = "@Kakariko Village -> Carpenter Boss House/House", - ["@Kakariko Village -> House of Skulltula"] = "@Kakariko Village -> House of Skulltula/House", - ["@Kakariko Village -> Impas House"] = "@Kakariko Village -> Impas House/House", - ["@Kakariko Village -> Impas House Back"] = "@Kakariko Village -> Impas House Back/House", - ["@Kakariko Village -> Kakariko Bazaar"] = "@Kakariko Village -> Kakariko Bazaar/House", - ["@Kakariko Village -> Kakariko Shooting Gallery"] = "@Kakariko Village -> Kakariko Shooting Gallery/House", - ["@Kakariko Village -> Odd Medicine Building"] = "@Kakariko Village -> Odd Medicine Building/House", - ["@Kakariko Village -> Windmill"] = "@Kakariko Village -> Windmill/House", - ["@Kokiri Forest -> House of Twins"] = "@Kokiri Forest -> House of Twins/House", - ["@Kokiri Forest -> Know It All House"] = "@Kokiri Forest -> Know It All House/House", - ["@Kokiri Forest -> Kokiri Shop"] = "@Kokiri Forest -> Kokiri Shop/House", - ["@Kokiri Forest -> Links House"] = "@Kokiri Forest -> Links House/House", - ["@Kokiri Forest -> Mido House"] = "@Kokiri Forest -> Mido House/House", - ["@Kokiri Forest -> Saria House"] = "@Kokiri Forest -> Saria House/House", - ["@Lake Hylia -> Fishing Hole"] = "@Lake Hylia -> Fishing Hole/House", - ["@Lake Hylia -> Lake Hylia Lab"] = "@Lake Hylia -> Lake Hylia Lab/House", - ["@Lon Lon Ranch -> Ingo Barn"] = "@Lon Lon Ranch -> Ingo Barn/House", - ["@Lon Lon Ranch -> Lon Lon Corner Tower"] = "@Lon Lon Ranch -> Lon Lon Corner Tower/House", - ["@Lon Lon Ranch -> Talon House"] = "@Lon Lon Ranch -> Talon House/House", - ["@Zoras Domain -> Zora Shop"] = "@Zoras Domain -> Zora Shop/House", - ["@Zoras Fountain -> Zoras Fountain Fairy"] = "@Zoras Fountain -> Zoras Fountain Fairy/House", - ["@Death Mountain Crater Central -> Fire Temple Lower"] = "@Death Mountain Crater Central -> Fire Temple Lower/Dungeon", - ["@Desert Colossus -> Spirit Temple Lobby"] = "@Desert Colossus -> Spirit Temple Lobby/Dungeon", - ["@Dodongos Cavern Entryway -> Dodongos Cavern Beginning"] = "@Dodongos Cavern Entryway -> Dodongos Cavern Beginning/Dungeon", - ["@Gerudo Fortress -> Gerudo Training Grounds Lobby"] = "@Gerudo Fortress -> Gerudo Training Grounds Lobby/Dungeon", - ["@Kakariko Village -> Bottom of the Well"] = "@Kakariko Village -> Bottom of the Well/Dungeon", - ["@Lake Hylia -> Water Temple Lobby"] = "@Lake Hylia -> Water Temple Lobby/Dungeon", - ["@Outside Deku Tree -> Deku Tree Lobby"] = "@Outside Deku Tree -> Deku Tree Lobby/Dungeon", - ["@Sacred Forest Meadow -> Forest Temple Lobby"] = "@Sacred Forest Meadow -> Forest Temple Lobby/Dungeon", - ["@Shadow Temple Warp Region -> Shadow Temple Entryway"] = "@Shadow Temple Warp Region -> Shadow Temple Entryway/Dungeon", - ["@Zoras Fountain -> Ice Cavern Beginning"] = "@Zoras Fountain -> Ice Cavern Beginning/Dungeon", - ["@Zoras Fountain -> Jabu Jabus Belly Beginning"] = "@Zoras Fountain -> Jabu Jabus Belly Beginning/Dungeon", - ["@Castle Grounds -> Castle Town"] = "@Castle Grounds -> Castle Town/Overworld", - ["@Castle Town -> Castle Grounds"] = "@Castle Town -> Castle Grounds/Overworld", - ["@Castle Town -> Castle Town Entrance"] = "@Castle Town -> Castle Town Entrance/Overworld", - ["@Castle Town -> Temple of Time Exterior"] = "@Castle Town -> Temple of Time Exterior/Overworld", - ["@Castle Town Entrance -> Castle Town"] = "@Castle Town Entrance -> Castle Town/Overworld", - ["@Castle Town Entrance -> Hyrule Field"] = "@Castle Town Entrance -> Hyrule Field/Overworld", - ["@Darunias Chamber -> Death Mountain Crater Lower"] = "@Darunias Chamber -> Death Mountain Crater Lower/Overworld", - ["@Death Mountain -> Goron City"] = "@Death Mountain -> Goron City/Overworld", - ["@Death Mountain -> Kakariko Village Behind Gate"] = "@Death Mountain -> Kakariko Village Behind Gate/Overworld", - ["@Death Mountain Crater Lower -> Darunias Chamber"] = "@Death Mountain Crater Lower -> Darunias Chamber/Overworld", - ["@Death Mountain Crater Upper -> Death Mountain Summit"] = "@Death Mountain Crater Upper -> Death Mountain Summit/Overworld", - ["@Death Mountain Summit -> Death Mountain Crater Upper"] = "@Death Mountain Summit -> Death Mountain Crater Upper/Overworld", - ["@Desert Colossus -> Haunted Wasteland Near Colossus"] = "@Desert Colossus -> Haunted Wasteland Near Colossus/Overworld", - ["@Gerudo Fortress -> Gerudo Valley Far Side"] = "@Gerudo Fortress -> Gerudo Valley Far Side/Overworld", - ["@Gerudo Fortress Outside Gate -> Haunted Wasteland Near Fortress"] = "@Gerudo Fortress Outside Gate -> Haunted Wasteland Near Fortress/Overworld", - ["@Gerudo Valley -> Hyrule Field"] = "@Gerudo Valley -> Hyrule Field/Overworld", - ["@Gerudo Valley Far Side -> Gerudo Fortress"] = "@Gerudo Valley Far Side -> Gerudo Fortress/Overworld", - ["@Goron City -> Death Mountain"] = "@Goron City -> Death Mountain/Overworld", - ["@Goron City Woods Warp -> Lost Woods"] = "@Goron City Woods Warp -> Lost Woods/Overworld", - ["@Graveyard -> Kakariko Village"] = "@Graveyard -> Kakariko Village/Overworld", - ["@Haunted Wasteland Near Colossus -> Desert Colossus"] = "@Haunted Wasteland Near Colossus -> Desert Colossus/Overworld", - ["@Haunted Wasteland Near Fortress -> Gerudo Fortress Outside Gate"] = "@Haunted Wasteland Near Fortress -> Gerudo Fortress Outside Gate/Overworld", - ["@Hyrule Field -> Castle Town Entrance"] = "@Hyrule Field -> Castle Town Entrance/Overworld", - ["@Hyrule Field -> Gerudo Valley"] = "@Hyrule Field -> Gerudo Valley/Overworld", - ["@Hyrule Field -> Kakariko Village"] = "@Hyrule Field -> Kakariko Village/Overworld", - ["@Hyrule Field -> Lake Hylia"] = "@Hyrule Field -> Lake Hylia/Overworld", - ["@Hyrule Field -> Lon Lon Ranch"] = "@Hyrule Field -> Lon Lon Ranch/Overworld", - ["@Hyrule Field -> Lost Woods Bridge"] = "@Hyrule Field -> Lost Woods Bridge/Overworld", - ["@Hyrule Field -> Zora River Front"] = "@Hyrule Field -> Zora River Front/Overworld", - ["@Kakariko Village -> Graveyard"] = "@Kakariko Village -> Graveyard/Overworld", - ["@Kakariko Village -> Hyrule Field"] = "@Kakariko Village -> Hyrule Field/Overworld", - ["@Kakariko Village Behind Gate -> Death Mountain"] = "@Kakariko Village Behind Gate -> Death Mountain/Overworld", - ["@Kokiri Forest -> Lost Woods"] = "@Kokiri Forest -> Lost Woods/Overworld", - ["@Kokiri Forest -> Lost Woods Bridge From Forest"] = "@Kokiri Forest -> Lost Woods Bridge From Forest/Overworld", - ["@Lake Hylia -> Hyrule Field"] = "@Lake Hylia -> Hyrule Field/Overworld", - ["@Lake Hylia -> Zoras Domain"] = "@Lake Hylia -> Zoras Domain/Overworld", - ["@Lon Lon Ranch -> Hyrule Field"] = "@Lon Lon Ranch -> Hyrule Field/Overworld", - ["@Lost Woods -> Goron City Woods Warp"] = "@Lost Woods -> Goron City Woods Warp/Overworld", - ["@Lost Woods -> Zora River"] = "@Lost Woods -> Zora River/Overworld", - ["@Lost Woods Beyond Mido -> Sacred Forest Meadow Entryway"] = "@Lost Woods Beyond Mido -> Sacred Forest Meadow Entryway/Overworld", - ["@Lost Woods Bridge -> Hyrule Field"] = "@Lost Woods Bridge -> Hyrule Field/Overworld", - ["@Lost Woods Bridge -> Kokiri Forest"] = "@Lost Woods Bridge -> Kokiri Forest/Overworld", - ["@Lost Woods Forest Exit -> Kokiri Forest"] = "@Lost Woods Forest Exit -> Kokiri Forest/Overworld", - ["@Sacred Forest Meadow Entryway -> Lost Woods Beyond Mido"] = "@Sacred Forest Meadow Entryway -> Lost Woods Beyond Mido/Overworld", - ["@Zora River -> Lost Woods"] = "@Zora River -> Lost Woods/Overworld", - ["@Zora River Behind Waterfall -> Zoras Domain"] = "@Zora River Behind Waterfall -> Zoras Domain/Overworld", - ["@Zora River Front -> Hyrule Field"] = "@Zora River Front -> Hyrule Field/Overworld", - ["@Zoras Domain -> Lake Hylia"] = "@Zoras Domain -> Lake Hylia/Overworld", - ["@Zoras Domain -> Zora River Behind Waterfall"] = "@Zoras Domain -> Zora River Behind Waterfall/Overworld", - ["@Zoras Domain Behind King Zora -> Zoras Fountain"] = "@Zoras Domain Behind King Zora -> Zoras Fountain/Overworld", - ["@Zoras Fountain -> Zoras Domain Behind King Zora"] = "@Zoras Fountain -> Zoras Domain Behind King Zora/Overworld", - ["@Death Mountain Summit Owl Flight -> Kakariko Village"] = "@Death Mountain Summit Owl Flight -> Kakariko Village/Overworld", - ["@Lake Hylia Owl Flight -> Hyrule Field"] = "@Lake Hylia Owl Flight -> Hyrule Field/Overworld", +vanilla_captures = { + ["setting_entrance_grottos_shuffle"] = { + ["@Kokiri Forest -> KF Storms Grotto/Grotto"] = "entrance_grotto_generic", + ["@Lost Woods -> LW Near Shortcuts Grotto/Grotto"] = "entrance_grotto_generic", + ["@LW Beyond Mido -> Deku Theater/Grotto"] = "entrance_grotto_theater", + ["@LW Beyond Mido -> LW Scrubs Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Sacred Forest Meadow -> SFM Fairy Grotto/Grotto"] = "entrance_grotto_fairy", + ["@Sacred Forest Meadow -> SFM Storms Grotto/Grotto"] = "entrance_grotto_scrub", + ["@SFM Entryway -> SFM Wolfos Grotto/Grotto"] = "entrance_grotto_enemy", + ["@Hyrule Field -> HF Fairy Grotto/Grotto"] = "entrance_grotto_fairy", + ["@Hyrule Field -> HF Near Kak Grotto/Grotto"] = "entrance_grotto_field_kak", + ["@Hyrule Field -> HF Inside Fence Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Hyrule Field -> HF Open Grotto/Grotto"] = "entrance_grotto_generic", + ["@Hyrule Field -> HF Tektite Grotto/Grotto"] = "entrance_grotto_tektite", + ["@Hyrule Field -> HF Cow Grotto/Grotto"] = "entrance_grotto_field_valley", + ["@Hyrule Field -> HF Near Market Grotto/Grotto"] = "entrance_grotto_generic", + ["@Hyrule Field -> HF Southeast Grotto/Grotto"] = "entrance_grotto_generic", + ["@Lon Lon Ranch -> LLR Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Kakariko Village -> Kak Redead Grotto/Grotto"] = "entrance_grotto_enemy", + ["@Kak Backyard -> Kak Open Grotto/Grotto"] = "entrance_grotto_generic", + ["@Graveyard -> Graveyard Composers Grave/Grotto"] = "entrance_grotto_comp", + ["@Graveyard -> Graveyard Dampes Grave/Grotto"] = "entrance_grotto_dampe", + ["@Graveyard -> Graveyard Heart Piece Grave/Grotto"] = "entrance_grotto_hp", + ["@Graveyard -> Graveyard Shield Grave/Grotto"] = "", --TODO: new captures? + ["@Hyrule Castle Grounds -> HC Storms Grotto/Grotto"] = "entrance_grotto_castle_storms", + ["@Death Mountain Summit -> DMT Cow Grotto/Grotto"] = "entrance_grotto_cow", + ["@Death Mountain -> DMT Storms Grotto/Grotto"] = "entrance_grotto_generic", + ["@DMC Upper Nearby -> DMC Upper Grotto/Grotto"] = "entrance_grotto_generic", + ["@DMC Lower Nearby -> DMC Hammer Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Goron City -> GC Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Lake Hylia -> LH Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Zora River -> ZR Fairy Grotto/Grotto"] = "entrance_grotto_fairy", + ["@Zora River -> ZR Open Grotto/Grotto"] = "entrance_grotto_generic", + ["@Zora River -> ZR Storms Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Zoras Domain -> ZD Storms Grotto/Grotto"] = "entrance_grotto_fairy", + ["@Gerudo Valley -> GV Octorok Grotto/Grotto"] = "", --visibility_rules to hide + ["@GV Fortress Side -> GV Storms Grotto/Grotto"] = "entrance_grotto_scrub", + ["@Gerudo Fortress -> GF Storms Grotto/Grotto"] = "entrance_grotto_fairy", + ["@Desert Colossus -> Colossus Grotto/Grotto"] = "entrance_grotto_scrub", + }, + ["setting_entrance_interiors_simple"] = { + ["@Kokiri Forest -> KF House of Twins/House"] = "", --visibility_rules to hide + ["@Kokiri Forest -> KF Know It All House/House"] = "", --visibility_rules to hide + ["@Kokiri Forest -> KF Kokiri Shop/House"] = "entrance_house_shop", + ["@Kokiri Forest -> KF Midos House/House"] = "", --TODO: new captures? + ["@Kokiri Forest -> KF Sarias House/House"] = "", --visibility_rules to hide + ["@Lon Lon Ranch -> LLR Stables/House"] = "entrance_house_cow", + ["@Lon Lon Ranch -> LLR Tower/House"] = "entrance_house_cow", + ["@Lon Lon Ranch -> LLR Talons House/House"] = "entrance_house_talon_child", + ["@Kakariko Village -> Kak Carpenter Boss House/House"] = "entrance_house_talon_adult", + ["@Kakariko Village -> Kak House of Skulltula/House"] = "entrance_house_skull", + ["@Kakariko Village -> Kak Impas House/House"] = "entrance_house_cow", + ["@Kak Impas Ledge -> Kak Impas House Back/House"] = "entrance_house_cow", + ["@Kakariko Village -> Kak Bazaar/House"] = "entrance_house_shop", + ["@Kakariko Village -> Kak Shooting Gallery/House"] = "entrance_house_shoot_adult", + ["@Kak Backyard -> Kak Odd Medicine Building/House"] = "entrance_house_hag", + ["@Graveyard -> Graveyard Dampes House/House"] = "", --visibility_rules to hide + ["@Market -> Market Bazaar/House"] = "entrance_house_shop", + ["@Market -> Market Bombchu Bowling/House"] = "entrance_house_bowling", + ["@Market -> Market Bombchu Shop/House"] = "entrance_house_shop", + ["@Market -> Market Man in Green House/House"] = "", --visibility_rules to hide + ["@Market -> Market Mask Shop/House"] = "entrance_house_masks", + ["@Market -> Market Potion Shop/House"] = "entrance_house_shop", + ["@Market -> Market Shooting Gallery/House"] = "entrance_house_shoot_child", + ["@Market -> Market Treasure Chest Game/House"] = "entrance_house_chest", + ["@Market Entrance -> Market Guard House/House"] = "entrance_house_pot", + ["@Ganons Castle Grounds -> OGC Great Fairy Fountain/House"] = "entrance_house_fairy", + ["@Hyrule Castle Grounds -> HC Great Fairy Fountain/House"] = "entrance_house_fairy", + ["@Death Mountain Summit -> DMT Great Fairy Fountain/House"] = "entrance_house_fairy", + ["@DMC Lower Nearby -> DMC Great Fairy Fountain/House"] = "entrance_house_fairy", + ["@Goron City -> GC Shop/House"] = "entrance_house_shop", + ["@Lake Hylia -> LH Fishing Hole/House"] = "entrance_house_fishing", + ["@Lake Hylia -> LH Lab/House"] = "entrance_house_lab", + ["@Zoras Domain -> ZD Shop/House"] = "entrance_house_shop", + ["@Zoras Fountain -> ZF Great Fairy Fountain/House"] = "entrance_house_fairy", + ["@GV Fortress Side -> GV Carpenter Tent/House"] = "", --visibility_rules to hide + ["@Desert Colossus -> Colossus Great Fairy Fountain/House"] = "entrance_house_fairy", + }, + ["setting_entrance_interiors_all"] = { + ["@Kokiri Forest -> KF Links House/House"] = "entrance_house_link", + ["@Kakariko Village -> Kak Potion Shop Front/House"] = "entrance_house_shop", + ["@Kakariko Village -> Kak Windmill/House"] = "entrance_house_windmill", + ["@Kak Backyard -> Kak Potion Shop Back/House"] = "entrance_house_shop", + ["@ToT Entrance -> Temple of Time/House"] = "entrance_house_tot", + }, + ["setting_entrance_dungeons_shuffle"] = { + ["@KF Outside Deku Tree -> Deku Tree Lobby/Dungeon"] = "entrance_dungeon_deku", + ["@Sacred Forest Meadow -> Forest Temple Lobby/Dungeon"] = "entrance_dungeon_forest", + ["@Kakariko Village -> Bottom of the Well/Dungeon"] = "entrance_dungeon_botw", + ["@Graveyard Warp Pad Region -> Shadow Temple Entryway/Dungeon"] = "entrance_dungeon_shadow", + ["@Dodongos Cavern Entryway -> Dodongos Cavern Beginning/Dungeon"] = "entrance_dungeon_dodongo", + ["@Fire Temple Entrance -> Fire Temple Lower/Dungeon"] = "entrance_dungeon_fire", + ["@Lake Hylia -> Water Temple Lobby/Dungeon"] = "entrance_dungeon_water", + ["@Zoras Fountain -> Jabu Jabus Belly Beginning/Dungeon"] = "entrance_dungeon_jabu", + ["@Zoras Fountain -> Ice Cavern Beginning/Dungeon"] = "entrance_dungeon_ice", + ["@Gerudo Fortress -> Gerudo Training Grounds Lobby/Dungeon"] = "entrance_dungeon_gtg", + ["@Desert Colossus -> Spirit Temple Lobby/Dungeon"] = "entrance_dungeon_spirit", + }, + ["Overworld"] = { + ["@Kokiri Forest -> Lost Woods/Overworld"] = "entrance_overworld_lw", + ["@Kokiri Forest -> LW Bridge From Forest/Overworld"] = "entrance_overworld_bridge", + ["@Lost Woods -> GC Woods Warp/Overworld"] = "entrance_overworld_gc", + ["@Lost Woods -> Zora River/Overworld"] = "entrance_overworld_zr", + ["@LW Beyond Mido -> SFM Entryway/Overworld"] = "entrance_overworld_sfm", + ["@LW Forest Exit -> Kokiri Forest/Overworld"] = "entrance_overworld_kf", + ["@LW Bridge -> Kokiri Forest/Overworld"] = "entrance_overworld_kf", + ["@LW Bridge -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@SFM Entryway -> LW Beyond Mido/Overworld"] = "entrance_overworld_lw", + ["@Hyrule Field -> Market Entrance/Overworld"] = "entrance_overworld_cte", + ["@Hyrule Field -> Gerudo Valley/Overworld"] = "entrance_overworld_gv", + ["@Hyrule Field -> Kakariko Village/Overworld"] = "entrance_overworld_kak", + ["@Hyrule Field -> Lake Hylia/Overworld"] = "entrance_overworld_lh", + ["@Hyrule Field -> Lon Lon Ranch/Overworld"] = "entrance_overworld_llr", + ["@Hyrule Field -> LW Bridge/Overworld"] = "entrance_overworld_bridge", + ["@Hyrule Field -> ZR Front/Overworld"] = "entrance_overworld_zr", + ["@Lon Lon Ranch -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@Kakariko Village -> Graveyard/Overworld"] = "entrance_overworld_gy", + ["@Kakariko Village -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@Kak Behind Gate -> Death Mountain/Overworld"] = "entrance_overworld_dmt", + ["@Graveyard -> Kakariko Village/Overworld"] = "entrance_overworld_kak", + ["@Market -> Castle Grounds/Overworld"] = "entrance_overworld_cg", + ["@Market -> Market Entrance/Overworld"] = "entrance_overworld_cte", + ["@Market -> ToT Entrance/Overworld"] = "entrance_overworld_tot", + ["@Market Entrance -> Market/Overworld"] = "entrance_overworld_ct", + ["@Market Entrance -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@ToT Entrance -> Market/Overworld"] = "entrance_overworld_ct", + ["@Castle Grounds -> Market/Overworld"] = "entrance_overworld_ct", + ["@Death Mountain -> Goron City/Overworld"] = "entrance_overworld_gc", + ["@Death Mountain -> Kak Behind Gate/Overworld"] = "entrance_overworld_kak", + ["@Death Mountain Summit -> DMC Upper Local/Overworld"] = "entrance_overworld_dmc", + ["@DMT Owl Flight -> Kak Impas Ledge/Overworld"] = "entrance_overworld_kak", + ["@DMC Lower Nearby -> GC Darunias Chamber/Overworld"] = "entrance_overworld_gc", + ["@DMC Upper Nearby -> Death Mountain Summit/Overworld"] = "entrance_overworld_dmt", + ["@GC Darunias Chamber -> DMC Lower Local/Overworld"] = "entrance_overworld_dmc", + ["@Goron City -> Death Mountain/Overworld"] = "entrance_overworld_dmt", + ["@GC Woods Warp -> Lost Woods/Overworld"] = "entrance_overworld_lw", + ["@Lake Hylia -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@Lake Hylia -> Zoras Domain/Overworld"] = "entrance_overworld_zd", + ["@LH Owl Flight -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@Zora River -> Lost Woods/Overworld"] = "entrance_overworld_lw", + ["@ZR Behind Waterfall -> Zoras Domain/Overworld"] = "entrance_overworld_zd", + ["@ZR Front -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@Zoras Domain -> Lake Hylia/Overworld"] = "entrance_overworld_lh", + ["@Zoras Domain -> ZR Behind Waterfall/Overworld"] = "entrance_overworld_zr", + ["@ZD Behind King Zora -> Zoras Fountain/Overworld"] = "entrance_overworld_zf", + ["@Zoras Fountain -> ZD Behind King Zora/Overworld"] = "entrance_overworld_zd", + ["@Gerudo Valley -> Hyrule Field/Overworld"] = "entrance_overworld_hf", + ["@GV Fortress Side -> Gerudo Fortress/Overworld"] = "entrance_overworld_gf", + ["@Gerudo Fortress -> GV Fortress Side/Overworld"] = "entrance_overworld_gv", + ["@GF Outside Gate -> Wasteland Near Fortress/Overworld"] = "entrance_overworld_wl", + ["@Wasteland Near Colossus -> Desert Colossus/Overworld"] = "entrance_overworld_col", + ["@Wasteland Near Fortress -> GF Outside Gate/Overworld"] = "entrance_overworld_gf", + ["@Desert Colossus -> Wasteland Near Colossus/Overworld"] = "entrance_overworld_wl", + } } +function update_vanilla_captures() + for setting,captures in pairs(vanilla_captures) do + if setting ~= "Overworld" then + local has_setting = has(setting) + if not_like_cache(setting, has_setting) then + for location,item in pairs(captures) do + local location_object = get_object(location) + local item_object = get_object(item) + if location_object and item_object then + if has_setting then + location_object.CapturedItem = nil + else + location_object.CapturedItem = item_object + end + end + end + end + end + end +end + + + +capture_badge_locations = {} capture_badge_cache = {} function badge_locations() for location,section in pairs(capture_badge_locations) do - local target = Tracker:FindObjectForCode(location) - local source = Tracker:FindObjectForCode(section) + local target = get_object(location) + local source = get_object(section) if target and source then -- Has the captured item changed since last update if source.CapturedItem ~= capture_badge_cache[source] then @@ -216,5 +225,8 @@ end function tracker_on_accessibility_updated() update_smallkeys() + update_vanilla_captures() --badge_locations() + + apply_queued_changes() end \ No newline at end of file From 33926c808c9e2212828ad6fc4da522bab6eabfff Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 25 Sep 2020 12:14:42 +0200 Subject: [PATCH 5/5] update to version 2.10.0.0 --- ootrando_overworldmap_hamsda.zip | Bin 10582989 -> 10589037 bytes ootrando_overworldmap_hamsda/changelog.md | 2 +- ootrando_overworldmap_hamsda/manifest.json | 2 +- repository.json | 2 +- 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/ootrando_overworldmap_hamsda.zip b/ootrando_overworldmap_hamsda.zip index 650bd1d9b8bd1ca89cf5a2f2fce291f950ca1b86..751d748ac324354c626f12c5cf42417a66eb604b 100644 GIT binary patch delta 89152 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%0D$bosB%~R%APze*(NFSjXX&^ydppdG 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%0DkrZO!HoI=T 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�?AMyQ>8HQ0h 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
  • G?le|Muu)=2O2yZhdZ*&0pLOv`MIxCdTm&UOXy=n@c*jwiN||sAXae5@ zK8ue#nINoObDH=`IJ?5Su`i8n+KiWv;516aO{O3!4c|=a+7wLkKpQ;8?uOTCl%)z| zE#ahoFZA05?wcrM=(`1D2JMEETkyUoWDCiOX@A)k3|vGL1C*o$V$>VoJFG|Ro;dwT;JLwNzN U2Dz`Cubdxca&me5#rV_z0RL=_y8r+H diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index 7741a177..a64c504a 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -1,6 +1,6 @@ # Changelog -## x +## 2.10.0.0 - removed Gossip Stone map - changed names of most locations based on [this PR](https://github.com/TestRunnerSRL/OoT-Randomizer/pull/1021) diff --git a/ootrando_overworldmap_hamsda/manifest.json b/ootrando_overworldmap_hamsda/manifest.json index adbb24f9..07590aa5 100644 --- a/ootrando_overworldmap_hamsda/manifest.json +++ b/ootrando_overworldmap_hamsda/manifest.json @@ -1,7 +1,7 @@ { "name": "OoT Randomizer - Map and Item Tracker", "game_name": "Ocarina of Time Randomizer", - "package_version": "2.9.6.0", + "package_version": "2.10.0.0", "package_uid": "ootrando_overworldmap_hamsda", "author": "Hamsda", "variants": { diff --git a/repository.json b/repository.json index c48af88b..3158b68d 100644 --- a/repository.json +++ b/repository.json @@ -10,7 +10,7 @@ "pins", "chathud" ], - "version": "2.9.6.0", + "version": "2.10.0.0", "uid": "ootrando_overworldmap_hamsda", "link": "https://hamsda.github.io/EmoTrackerPacks/ootrando_overworldmap_hamsda.zip", "documentation_url": "https://github.com/Hamsda/EmoTrackerPacks/blob/master/ootrando_overworldmap_hamsda/README.md",