From 1abaea4ce0a80979f876d1fffa4f4e2f78024210 Mon Sep 17 00:00:00 2001 From: Dennis Date: Sat, 22 Apr 2023 13:59:55 +0200 Subject: [PATCH 01/14] fixed closed DoT logic for `DMT Freestanding PoH` --- ootrando_overworldmap_hamsda/changelog.md | 4 ++++ ootrando_overworldmap_hamsda/locations/overworld.json | 9 ++++++--- 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index ca84923a..69bd2abc 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -1,5 +1,9 @@ # Changelog +## x + +- fixed closed DoT logic for `DMT Freestanding PoH` + ## 3.7.3.0 - updated `user_presets` diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index cf4cf20b..6749fe6c 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -2851,9 +2851,12 @@ "name": "DMT Freestanding PoH", "short_name": "HP", "access_rules": [ - "$damage_below_ohko", - "nayrus,magic", - "$has_bottle", + "$child_death_mountain,$damage_below_ohko", + "$child_death_mountain,nayrus,magic", + "$child_death_mountain,$has_bottle", + "$has_age|adult,$damage_below_ohko", + "$has_age|adult,nayrus,magic", + "$has_age|adult,$has_bottle", "$has_age|adult,hoverboots", "$has_age|both,$bean_planting|no,beans,$has_explosives", "$has_age|both,$bean_planting|no,beans,lift1,$child_death_mountain", From f1aacccd571c900cafa0627163a0ef18666d7a12 Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 28 Apr 2023 15:21:12 +0200 Subject: [PATCH 02/14] changed lua callback to `t_o_a_updating` --- ootrando_overworldmap_hamsda/items/items.json | 6 ------ ootrando_overworldmap_hamsda/scripts/load_updaters.lua | 8 +++----- ootrando_overworldmap_hamsda/scripts/logic_helpers.lua | 1 - 3 files changed, 3 insertions(+), 12 deletions(-) diff --git a/ootrando_overworldmap_hamsda/items/items.json b/ootrando_overworldmap_hamsda/items/items.json index 69b4e102..0152b79b 100644 --- a/ootrando_overworldmap_hamsda/items/items.json +++ b/ootrando_overworldmap_hamsda/items/items.json @@ -678,11 +678,5 @@ "codes": "rutominimal" } ] - }, - { - "name": "Dummy", - "type": "toggle", - "img": "images/rupee.png", - "codes": "dummy" } ] \ No newline at end of file diff --git a/ootrando_overworldmap_hamsda/scripts/load_updaters.lua b/ootrando_overworldmap_hamsda/scripts/load_updaters.lua index 959da94f..818751c9 100644 --- a/ootrando_overworldmap_hamsda/scripts/load_updaters.lua +++ b/ootrando_overworldmap_hamsda/scripts/load_updaters.lua @@ -16,9 +16,6 @@ function tracker_on_finish_loading_save_file() end function tracker_on_accessibility_updating() -end - -function tracker_on_accessibility_updated() if PACK_READY then clear_amount_cache() @@ -33,11 +30,12 @@ function tracker_on_accessibility_updated() end apply_queued_changes() - - get_object("dummy").Active = not get_object("dummy").Active end end +function tracker_on_accessibility_updated() +end + function tracker_on_pack_ready() PACK_READY = true end diff --git a/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua b/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua index be29b0d7..a7075bad 100644 --- a/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua +++ b/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua @@ -782,7 +782,6 @@ function has_blue_fire() location_object and location_object.AccessibilityLevel and location_object.AccessibilityLevel == AccessibilityLevel.Normal then - --TODO: trigger dummy update return 1, bottle_level end end From a162d760438e2eb821f228c539ce912397b397f7 Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 28 Apr 2023 20:44:39 +0200 Subject: [PATCH 03/14] changed `Randomize Spawns` setting --- ootrando_overworldmap_hamsda/SETTINGS.md | 7 ++++--- ootrando_overworldmap_hamsda/changelog.md | 1 + .../images/setting_entrance_spawn_adult.png | Bin 0 -> 2936 bytes .../images/setting_entrance_spawn_both.png | Bin 0 -> 2918 bytes .../images/setting_entrance_spawn_child.png | Bin 0 -> 2962 bytes .../images/setting_entrance_spawn_off.png | Bin 2077 -> 2762 bytes .../images/setting_entrance_spawn_shuffle.png | Bin 2044 -> 0 bytes .../items/options.json | 19 +++++++++++++----- .../layouts/options.json | 2 +- .../locations/exits_entrance.json | 4 ++-- .../locations/overworld.json | 4 ++-- .../scripts/data_per_region.lua | 4 ++-- 12 files changed, 26 insertions(+), 15 deletions(-) create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_spawn_adult.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_spawn_both.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_spawn_child.png delete mode 100644 ootrando_overworldmap_hamsda/images/setting_entrance_spawn_shuffle.png diff --git a/ootrando_overworldmap_hamsda/SETTINGS.md b/ootrando_overworldmap_hamsda/SETTINGS.md index ea13618b..4753acb3 100644 --- a/ootrando_overworldmap_hamsda/SETTINGS.md +++ b/ootrando_overworldmap_hamsda/SETTINGS.md @@ -129,9 +129,10 @@ If you have selected ![Open Door](images/setting_door_open.png "Open Door") or c ### Randomize Overworld Spawns -- ![Spawn Shuffle Off](images/setting_entrance_spawn_off.png "Spawn Shuffle Off") Spawns are not shuffled. -- ![Spawn Shuffled](images/setting_entrance_spawn_shuffle.png "Spawn Shuffled") Spawns are shuffled. - +- ![Randomize Spawns: Off](images/setting_entrance_spawn_off.png "Randomize Spawns: Off") Spawns are not shuffled. +- ![Randomize Spawns: Child](images/setting_entrance_spawn_child.png "Randomize Spawns: Child") Child spawn is shuffled. +- ![Randomize Spawns: Adult](images/setting_entrance_spawn_adult.png "Randomize Spawns: Adult") Adult spawn is shuffled. +- ![Randomize Spawns: Both](images/setting_entrance_spawn_both.png "Randomize Spawns: Both") Both spawns are shuffled. ### Bombchus Are Considered in Logic diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index 69bd2abc..5ea2947d 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -3,6 +3,7 @@ ## x - fixed closed DoT logic for `DMT Freestanding PoH` +- changed `Randomize Spawns` setting to have separate options for child/adult/both ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_adult.png b/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_adult.png new file mode 100644 index 0000000000000000000000000000000000000000..7aea1bb44ec279dbd1d1bfb4dbe94bc927476766 GIT binary patch literal 2936 zcmV-;3y1WHP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D3k^v`K~!i%?V5S4 zRaX_pk1ezgQFv`lwN5;1Y*N$kuo`RB05NHe6Y!tfG(Z!ZCdLBBDKQEpCTgMrCYorB z51eAuhDU3MKdcW*Ylj#C+nT1>K4`5|TOZY0wMehuZ{7VJ);;%J;05j<5WeKQ=j?f{ zwbvfbzWW7LRm~MYEjICA@y~_75If>&^y3ooTJiPbx#A<@zr~k|e-J+_p6qz7h>lI% zBJS+Ip1OEU#QBfJr^K&`r_qZqi=DZ1=XS=%#yX1@E$YmhH!o~P98dAB;>nJuMeCEv zWN^x3C!M)#*RD}3L& zo}MlmcET?d58oC!PEoMMdb_w&1~^k48&Xr$lC7+WNJ)NBpMv6>&t& zxKm^s@R|s9aiKUZ{yjp6@jr1^_q7ji5dSLvGeZ5?S_me!S}ek5*l1#6qS~@$OSNRl zl1hUn?6+XS0`mP*WSa_}6aOYYD*i}hOSV=#Q#Ae~zOegR<9rckq%3%qh;Gk{W8(87 zb_7p~=XGCe+$(MumlT4tMC$mWc)56~$S#3xQxoqMZ$hu}@$u@wfddgaG7{bJ8IhIb zg9HkY)%|*_$Yeqt8QA&>k<|&jNu=V(BXk%zWf*b**v@`WyeC2@7z_|_y9UU+=xjO` z(7ANHW{n5~3?kz^r}(oxZ~y~Jcv5laIUXZIIZ=cG;atvn3K(DvikFDr6)&SKr2f*z zQ!0P%pgNA!7I5C2FM~D)rIoS_Zk+ERQL9(4p0jrC+GwZP24jsVzFNL~d9`@);yxLQ z9)JntKvN&m3FkQ4296sfXOXcl&23U%{T%P^XXR%?IG?oA&iloicuBZIyj814wRGvy zYWw!>F?o)Tj#4+1(>n&WDTISJ(`l=zV-5r2;GjMMr5)r&?xEpEmQXL9Y!MU}WUFAX z$5tFp+Os8-0>nR_Kr;Pd&(yfgHq>FUv%E;w(QP zjxg;R#36sqmq9vu$hk{QFVLgN$ZQS{YH-y0rt~0bJhPn)WvQwx{NXu;+$mKrE>6ArB_m5@C zdN>bdb9@unL3!>Mhl+ZDAQ&A+7~>i!Q3Re4dmOk3xnDe#2LOhr49E^dU4Z&s5A8bL z1|b~-J4{~Eo1H-$*|F^uxh=O(M_50YWoauzTjWpjdw}e+9B!L(#TK<=*a-mnvrX*) z*vTkP*E5ljFFOLg4&NH%DGH$7loDd(sAL%g1+CoZ1u zGq*{)%X;#Fq?6xaqvT=h7`HRaVF2~HO+cHrrDeC%QIGA5b7sAfiF_Oi2=zyz z?MNHcX;7Ez$DT}n$Xn{)tF&i}<5S_)yd?1bQBPX*D|Jz)br$$9s1GgvF;m3h1%t!# zXQX~R;wU>F^bHUiv=Km3?k6VNevhMhBK zPCS7f!h@sDh%NZIIEr34C-s(D{ZHamycp!MW4L{RiQ*hyY#UDa$|Mr<<7}j5Cj~gC zb-_N!?*ZYJCE4;ID=45Y;;G+ZbS(~8{}+M1k%he3j$qlcW%Z}C$sTQ(EE(Q~h47_#8E3NA+10aBYX%(yW79K9ofG4I5 zPXuhGavjA67@w^refvWq5;zLJ!g|mqI$AE;De~77W5)dX^W&NObcUFP-HU&4>emE< zyi>d;LPLNDNX&@9&YB!2I;?cs2Rxf#EIJ&+gJP&22g5K&8zj`_4xqj4=nM)v#4>@V zv3Km)(epe8T!Sul8qeJ9+nWvzSPhWFj$9A}1mM_ZCLR^1{oOyynwB36X?z{^U%NmLHo-hBp^J30UHuvVB)>K z!m*lzs09bfV*@pTV|kCyz@X0T6mE0Xs#OuDp5{tH9A##(f}G*{EIYFl4&tzZeCXxX zCZQf6$j6?ZJgR2|eXt>&K0v0Ii+IFRoQv`}d$v<@x@SD#T$l3|r~0w@K3+1&-y9^= zi9M0c4o^L_KRG!WD`gra?-BVU?-Qg`7Tc6IpQe6@eVm>_oZF&|Cn4*AO<}ebpqxQG zdCKGi+Wy@2pPoa-of0OF%rYc=9J~1#7H~}GBSDVbq)>fy2Poruh^M^x2>E3E2LQ=(QaYQ~+sP*bmt5U^gvkRf6Y(-&lyBDS_zZPq&#`L;WoQ>2+CclHiyZTEBOv0k z{szaEwAHjvI?j9o`Dhc+CV5FWQhT9Cd4G_68i>4eV#t1}&mM~7q_OTpWNFGtTh!%z zsVx8Y^JnOIwl$z0@;B{D*{0p_1M8(SEFC|kZ0=Xkl%oykOP=hb$(BRgUKxDkxv^pJ zCt`HiQTQ#9D;6&k!)e@x^KR{W2Wz@I#<99#|0V9&-~Ebig_R{V{~9^^VP-^F^1$hL*LyO+tj z;G2Lr(^Scd>yxE#^YQRS-8*9Gh7{u6zuW(L=_^8j|KGn}e z?2&<;51&AEf!^#fAOqr#^5i-Wc3=>GRJ=gUV6x$!+qXrwgXl{cp4f#xLl0j*{gQ|s z`Nurp#lkQ0T{^(v!`>PA0b4RoI%yZ|73o);KZAWcr(Wd8Pwo@BTJ&L&mAMV*$?>J@ iHYor7?&~m6RsRPuHJ24=t~L??000068@! literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_both.png b/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_both.png new file mode 100644 index 0000000000000000000000000000000000000000..5b9f5dfda21b2dd79d4c1df22638a969ff9b8eec GIT binary patch literal 2918 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 IM6N<$f=V0A00000 literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_off.png b/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_off.png index f08e4140c933637b0dc009afe12e4c5a79371abe..6d7c917719a4765310d52487bf50ad1cb6612d65 100644 GIT binary patch delta 2738 zcmV;j3QhH$5Xu#h83+ad002`pFx-(LAAbM|a7bBm000id000id0mpBsWB>pPUr9tk zRA@u(ntjZdRT;-`kQaMVct9{o1)Tbit$q`rq&eD^sf}q>3W&+Qqv(JP$34v^O#xk*3a+f{Lc6G`km)~fPdV6Fn_+= zclUj+^LCxKA~mDss+XKT%xHLZE`=GhoOPdUy2TrVcu zV5bOdxqkh6+w2P@K83;RA`ObtM|yjE-Nr5AXz{cIORP_e&uIo6CIcklu3fvT&6_t@ zGD@YvlVmGatf&?(TEy!e;#6J&UKW2X-XorcKwwGsj`+b8YU48TE%A*Ms(-3O;-AI8 zh|eGh_@;Pe=JO(*@FVg2;utZ4_>07gQ>YD=JpCeHzlfvau=eW!Tq^!kM8_tq$pla9 zYwYJY6!R?#{{u+*e4{wltWpuirnS9~>vx(pZ!Y|sFiPG{3#K%+58UmrGX zqo=2*>hJGAB>6}W9Ke7Q_DeR-a-~behz8-9&uKCq6&VyC5cyJFO@CfU`MHh*%0G6n zGLBalaN3wIf;t9^%X$B!SDcT5eQ@Ezg*}TGFHZGj+hD97$*Z|@=TM3pOv0LH=ej$&$Z$cya-Hq%k(v@^G%*S znREwL#~6J%lWhL{`G0BPH0cB=cd)pu+YiL9-m9%+4GmaQ@hO!ok)?u>*Pb|O$LChY zLcS-;S$2@0&oIzHYiTA*j6km0$n{~Zt(1cv5tNIZbWtbrBeVVh8R1wLGW3t>B8aCQ za_%hYL|9H-Ac8|09Cdp`d?Il?qn!-&M>pb|YzfiFh*Q03;}mWmv@VW^ zQHFz%KE!)~)PK(7y2+PqQ4i)gNJ$@Un(dkFWKb5eXh+hy9O@w6PE8zj8MdPxl6Od2 zNLsgvG6^FG!EW9+^|>C(b$^tDpLoKt4=CGVbd2pG&SCmMc~7kYQUaMfUi=x)I9mkg zIS>s2+_75$Q15ggmV%VlQn(MTkVw-7S97L4EWYLrskUkEOvMkHcP47q1$xbh> z62Ukz$)i222X>5Ka?1070E8hrmIK6b*e=`s*;Hc}W6%LYBWR4$uzCEh_@dL=Daj)_ z{I?AeXMY#q&V;2S*~v%~4T)i$&!7`rzssScsHed}2MmzR*LYgT5cdn7QD@?Cq-+ED z5s@W`!yS%6UTD4J0HJMeE5OOzmU1?R(JpQWAPlmDvyVyP=&){s%ZmA_3)|+nZ6bRs z-hU|?X@Fo$w~2OIC+d#%QC_qIZ6)4=A@-}|D1SfOwQIj1L-Vr+nJwfj1dVl~ru zjx#}Zbl79bk|l}214ZDJE!`?$qOdKb_fAf8a30ONNjE#cfjv0wVldf}r%%VMZKp9@ zCb}84&wT=DH+2a7t*_yUDZ�CzG)ZEthyq6j@r{C;kdSz>e4-E+_g1DC+~%6@TO% z$L2-cjp9S?*Y1NIqW-U7XAO>%IxKhEmoO5fgXr+wN$zO>14+QRCmJNwXGfyG=;(9+ zP8Vn5*kQo4te+==TWJe*qPu5qEe{4bG~jE19(Lr6`q~YSooC|7;z9I4NAlP<26D-^ zi5zJ@MjGnG*4W8y%XJMWzb62`)_;VZX5G4U!-JW3z&{&~mt)=3;{nLP#HPS@)pJB1 zEMF1hAX!U)P-pBX;TZ4EpKaLjl^~Dn5jw6Z6>@utu>wjb7tsChr zFYBTV%bboUWof{qGSuNIo_9cf#E~xKXOn(8@74=YCvA6qJkg2#Mz+}j@jCK5jwfNt z0Jf$0mUXjjNP|8({>$QC^aior*dN4q^d+tJCOzd^XZkkhzeWW7^vBQhI(@eFmN;+`Nh{rXX8gB zQWoi4mg4!V&L^aH7C<`mAPuxm$ZK}Sc2EkV7W07?`Cgg@>{7Ta&&MATK< zCph*#^s_DPsKgtgzUa8GkPc_lI~!}(iM7LnFbL~1(52Lqx+sfy>VHR>m7C#zrZf3JyZ96*bA>55=y=5RpwMvqTecNH%fY z6=FxmVw0{Z zCUQv(2ca{*A##VwAPq;7+;MsdK?ZvQWZYLW#^&dn`B{P!oqwkLLIyWi+ZWc_vmaN# zIW^#Lf(1F{W3xYs?83RX7Vn|~PKTHPutx-Te(waL4eH{WIhUQVBmWCHDB*q+Uk}=L zi%362Fxe3IQxQj`z1*v!Kd=h}owA7s+)DnGNZC&zXaI*BY(i)=_ue?wd_iP0MA@8z sm7u>lI_JV;c^@Ez9e&(??N(IPyL2)rkQ67kGynhq07*qoM6N<$f@Nklx&QzG literal 2077 zcmds%_d6Sk8pk6gGK3(u)Tpf`b&ynzBxqu***Kib5%W5z(IT`#soE{+9;N`INDreyK!CT=0fZ7b$u?G(T0HoMjI+$|y`uh4zCX+^^IXF0Q zb8}-bm}k$PEi5d|&CL}T7q_>!pF4L>Mn)z-KYx09x~r=zE-voHix(>^E1y4qK07;` znwk<97l*-M^Yilo0RfJVjsybX+qZA7uCAe>p;c8?EiEl=ZEavMI436u2n0f*P#zv0 zLqkIW0RcWfJ~$k1Zf@St(D3EUm$z@U3<^z@C54P|9z7K_!?)a32$t*)*f z5fL#kFrcliZE0zVKp^hlzb`8*i^JiPlatfZ($?12`1$!qM@J_oC$qA$s8niAP0h*4 ziG_s)o6Qam4qjhhmzI{!&CT80+mn-%laP?m(b2K9vtuwAZfX)R8*8mB=+?5XlZHf?CfM@WITWV+|<+*iA2uK%#4kV z?eFiCNTiOA4qaVc6%`daoh~FK^ybYQYisMFp`p#qO$`l=8#iv`<>f6eFH1>DH8(dK z7#MJIap~#lot~b?#>Q4uR1_5zRaRCiDJiY4u41v+y1KfksHolDT@w?Nl9CcDE33f3 zKtVylEn3$Lg7cPAL`n9{eJ2f>`QBkqKzu(i-b8v7_O-;?q%j?63 z4~vV7A|fKHs;WPJ{Ls|Y1c5*tgNfR3GdUOxv$MA680P<_0FgM|f9`?=lgOa}0DtE{ z;_3~mq;Rt4Z)SpbAX&`QQ=AZ=Y#ph|UYBd+m@+cIWwY;cYw1rDYUe z(NDaCZ#OzQ8$}bHd^nlY_{_L zb|&lrs)r8WD=U65TYK~9>gjc$kcW`zHNP+7reT&FaV?waFvEp78dbDMd5+pknh-P7 z{@qg4CFk#%!mApd2&_SPk>+dpNJ0Bei^VqDpa!NVB@eBW#+C}LhrWZEs$uP$;S%27 zplTjEz37BC*G1hMyC_TMz6b;FNh`L0Bf}FO zh9J`{FL~U|h3myUHeA!ZxpjwR_}!sz`cSJeB*KWHDT@+;mi?C=j6a?P?U@DNvJvU! zE@Q1=aFa`p=Zou^ya$ra0zZGP<5-L@jVOt6Tr$ z$as|r+k2ZO%>s*&a0byBXQ~aZe}UI99~;_ZWkG35cbZa=T6V?iUbCs7eN%#h&0CMr z;JWqF??j^>m&f#pe!67!a*d~cSUP}ZUf}H|@9rYDN|%4~yE=ayUw!*B@jcQA&u+50 zV!%tVUV3X@oodB|u-^GYG`~dWnP1BKtB#ax67p{~!i)%_CFL;TmaD!hC_6Q1KXMRJ zLyYFzPLbvr^F$=7d5wLo^KdCo#t@=05b$9uh^6?Fkk(MHskpHj>eqFV1zxJ12traH z0Q;7m_Yb$bega4puVkE5vmL}1b4!E~sZqNy=aArXq3%m-GBDNJP99#6q%|yQE$#KO zk~BY$kjK+DWX|qY@$&NefFypn)n?ERYYW=l{qRA3_7CUCgT*xqiZky)Yczr%i<%mI z?xU93C%m!To)o6Oh1AaR>3`=eS<@=vJDkbXHr!n`%C|WYZ;_U|dq|F5^iRP~(|(Hn zeG*q@eEcgoUlx-$Q6m@0{8`}8p4ME6lzySpJ36zV0nxGnW?f#vUtF7-SiHUT%?qst zKLYXm2{mi1W4}5N3_L3=I@4EYG~EeVcvKJwalAb|cK11hVFb{SQN#YLhOe0OiU4M& L)+R3r?s5MEoHs2T diff --git a/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_shuffle.png b/ootrando_overworldmap_hamsda/images/setting_entrance_spawn_shuffle.png deleted file mode 100644 index 5c41a9efd3bb044d69e0e39b9658c32ec524a249..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2044 zcmds%_d6Sm7RO`69-%~HT(MQus#PsD8@n3h+Sf=?uUbLP_cdOk)TXqms;IrGP3*)B zT3REh)Togw?L`T0?!R%*^L)?eIp??YJm2qmZexw$<`Cup007)(rp8D*@pOUMnCKn7 zk2|7+0fR&s0vcvS_viz&kAal|0MMMtN%H^#0F2HymUbre{k?nlN=i!N;^OS=?3kIE zwY0RVtE)*Q((3B!yLaz!I2;obleoBeVPWByFJDGRMiLSdYHMqEc6Qd+*RQXymzI_w z5C|tH=i1tuzrVk|y}hBK;qLCPi;D{egQ=^l>*?tk7#Ltd)b$NSx!{Kme zXJ>tV{k^?CSy|c1$w_r}bxTW25D0|DVqq{?YHDhFdiswaKZr!);^JaB) z<>jS?g~jRVX;4tm{{FtGsAyhZ-pR>{goFeX3f0iiKq8T^UcC|$5^8B_>F@7fSXj8Y zxIm-P1OkCdr6wgM85tQ34i2iQsDQy>1OgEe5ivG4_Vee@%*@Q1ni>-m69EB%uV25; z&(EKootc`N4h;=yYHG^M%jf6kySlpa^YeFhc3N9oJ2*HL6cl{_{#`^wq`SLYS67#T zfk8({=j!SzK0dy(va-0ixT>mZV`D>GTRSQ$>esJd#>U3)-@muAvI+j%lu~Je}WHNblbW}!0W@2K(%gbwOYDz&tVS0M{@#DvHb8~`%f=WtC z%F4UPI2RtL7nbwif%1JvJy-J3&II!H%3O9lb}#0v-tpPttujyKox$alP;K8Kr9nL%Fkq-MfCSk`6UNY*$o0 zzuO$V1HXF2$nOJ!Zdq}vrv5!rPVNC$825BYY#fbNKRF$FVZ3JA{nfLH_*!**`yhBP z9luw7-G#iZMtQs#`-CQx^=dCFnt=3H-nu+5M25!nBWIv5SKPI3%lWC+toHV@k|la} z>hVA|6I>$SV0I&!Sg~EFD4*BGTd@njb~9m@M?D;EoA|Agh0j4Y*RH&XQh&GyQxdTm z`>b-uk;krSp8Vlwwp~k&Q+R!8QhP*R-H0%?dAwvJx2g=^`q54IEfU6UwjVc^CmMAN zRX}J?wep;LGdJaD8yUs9B!yM-cZV+!(bIW?A|<3efWPQDskL~0B)5oIZSLOqO;>1Sg=BPJ_dH@zJnV(qE~(y>?v@8MFY)^uz!4z!%M|5 ztp!r+i}djwf_R?Rn(+BqF|X;lXEANUx}}|7+hEng>5xq9p%J4ex=@%TBQ$BJiy%p5 z4wPUL+IZV?O1lf=I{gEp5^=2Yy!JUnAGCmUu|LGNS65NUJun>LrsMPwIk%?E!~#`&^vuqiOo)HzyCTi<#)H)TA9?B20@o6e5+ zDB)}aVz`j zkc^pRvj(*CfFq^s?Q#;23k}JI-hFmv{|)r-_5;->HZLwkQDa(ThlhERIn4Sb01RSg z(!t9#7}V!g1dbdYVJ1_cS$rQnO&lJcgaDDaz~i;=$2a)0W^6zxvz&t{oRpay4Dz2p zgc`_O=7JMWpM^Lb&4x#@7k!l~HUNQ>ae(y9R1i=W60SySdy{Vz`kHuf(Vx}pBpL8j zJTNzIU~CfcLn+(UnIKL!{6YzK)2gM`>dXF#R=z-#I{{@q)XwC@5|MFYxAfCo|3sb< zD=*P{zcKUX{yGR-8pZe5cKwRu^^&Wk^E#w>r6l{s>OF0rnOg-@|7>pk eRpJ+Q&Ra{ Date: Fri, 28 Apr 2023 20:51:45 +0200 Subject: [PATCH 04/14] added `Shuffle Frog Song Rupees` setting --- ootrando_overworldmap_hamsda/SETTINGS.md | 15 +++-- ootrando_overworldmap_hamsda/changelog.md | 1 + .../images/setting_shuffle_frogs_no.png | Bin 0 -> 3108 bytes .../images/setting_shuffle_frogs_yes.png | Bin 0 -> 3061 bytes .../items/options.json | 20 ++++++- .../layouts/options.json | 6 ++ .../locations/overworld.json | 50 ++++++++++++++++ .../locations/overworld_entrance.json | 50 ++++++++++++++++ .../scripts/data_per_region.lua | 55 ++++++++++++++++++ 9 files changed, 192 insertions(+), 5 deletions(-) create mode 100644 ootrando_overworldmap_hamsda/images/setting_shuffle_frogs_no.png create mode 100644 ootrando_overworldmap_hamsda/images/setting_shuffle_frogs_yes.png diff --git a/ootrando_overworldmap_hamsda/SETTINGS.md b/ootrando_overworldmap_hamsda/SETTINGS.md index 4753acb3..506f5046 100644 --- a/ootrando_overworldmap_hamsda/SETTINGS.md +++ b/ootrando_overworldmap_hamsda/SETTINGS.md @@ -210,12 +210,19 @@ This setting determines if Magic Beans are shuffled. - ![Magic Beans not shuffled](images/setting_shuffle_beans_no.png "Magic Beans not shuffled") Magic Beans are not shuffled and will be captured in the corresponding chest by default. - ![Magic Beans shuffled](images/setting_shuffle_beans_yes.png "Magic Beans shuffled") The Magic Beans are shuffled into the item pool and will not be captured. -### Shuffle Medigoron & Carpet Salesman +### Shuffle Expensive Merchants -This setting determines if Medigoron and Carpet Salesman items are shuffled. +This setting determines if Medigoron, Granny's Potion Shop, and Carpet Salesman items are shuffled. -- ![Medigoron and Carpet Salesman not shuffled](images/setting_shuffle_merchants_no.png "Medigoron and Carpet Salesman not shuffled") Medigoron and Carpet Salesman items are not shuffled. -- ![Medigoron and Carpet Salesman shuffled](images/setting_shuffle_merchants_yes.png "Medigoron and Carpet Salesman shuffled") Medigoron and Carpet Salesman items are shuffled and the merchants sell one randomized item for 200 rupees each. +- ![Expensive Merchants not shuffled](images/setting_shuffle_merchants_no.png "Expensive Merchants not shuffled") Expensive Merchants are not shuffled. +- ![Expensive Merchants shuffled](images/setting_shuffle_merchants_yes.png "Expensive Merchants shuffled") Expensive Merchants are shuffled and the merchants sell one randomized item each. + +### Shuffle Frog Song Rupees + +This setting determines if the rewards for the five grey note songs (besides Song of Storms) are shuffled. + +- ![Frog Song Rupees not shuffled](images/setting_shuffle_frogs_no.png "Frog Song Rupees not shuffled") Frog Song Rupees are not shuffled. +- ![Frog Song Rupees shuffled](images/setting_shuffle_frogs_yes.png "Frog Song Rupees shuffled") Frog Song Rupees are shuffled and playing the songs rewards one randomized item each. ## Main Rules: Shuffle Dungeon Items diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index 5ea2947d..a1824c5c 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -4,6 +4,7 @@ - fixed closed DoT logic for `DMT Freestanding PoH` - changed `Randomize Spawns` setting to have separate options for child/adult/both +- added `Shuffle Frog Song Rupees` setting ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/images/setting_shuffle_frogs_no.png b/ootrando_overworldmap_hamsda/images/setting_shuffle_frogs_no.png new file mode 100644 index 0000000000000000000000000000000000000000..a10fc424c8c6c8cddebf9967cdabd7881f0bd948 GIT binary patch literal 3108 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 DuP*N{ literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/items/options.json b/ootrando_overworldmap_hamsda/items/options.json index 97f49a14..ef332101 100644 --- a/ootrando_overworldmap_hamsda/items/options.json +++ b/ootrando_overworldmap_hamsda/items/options.json @@ -542,7 +542,7 @@ ] }, { - "name": "Shuffle Medigoron & Carpet Salesman", + "name": "Shuffle Expensive Merchants", "type": "progressive", "allow_disabled": false, "loop": true, @@ -559,6 +559,24 @@ } ] }, + { + "name": "Shuffle Frog Song Rupees", + "type": "progressive", + "allow_disabled": false, + "loop": true, + "stages": [ + { + "img": "images/setting_shuffle_frogs_no.png", + "img_mods": "@disabled", + "codes": "setting_shuffle_frogs,setting_shuffle_frogs_no" + }, + { + "img": "images/setting_shuffle_frogs_yes.png", + "codes": "setting_shuffle_frogs,setting_shuffle_frogs_yes", + "inherit_codes": false + } + ] + }, { "name": "Shuffle Small Keys", "type": "progressive", diff --git a/ootrando_overworldmap_hamsda/layouts/options.json b/ootrando_overworldmap_hamsda/layouts/options.json index b9f9f8a5..3c8c9d8f 100644 --- a/ootrando_overworldmap_hamsda/layouts/options.json +++ b/ootrando_overworldmap_hamsda/layouts/options.json @@ -185,6 +185,12 @@ "item": "setting_shuffle_merchants", "width": 200, "height": 16 + }, + { + "type": "item", + "item": "setting_shuffle_frogs", + "width": 200, + "height": 16 } ] }, diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index 2d05dbd1..73c72036 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -4005,6 +4005,56 @@ { "name": "ZR Frogs", "sections": [ + { + "name": "ZR Frogs Zeldas Lullaby", + "access_rules": [ + "$child_river,ocarina,lullaby" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Eponas Song", + "access_rules": [ + "$child_river,ocarina,epona" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Sarias Song", + "access_rules": [ + "$child_river,ocarina,saria" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Suns Song", + "access_rules": [ + "$child_river,ocarina,sun" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Song of Time", + "access_rules": [ + "$child_river,ocarina,time" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, { "name": "ZR Frogs in the Rain", "access_rules": [ diff --git a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json index a4113737..b735c0e8 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json +++ b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json @@ -3820,6 +3820,56 @@ { "name": "ZR Frogs", "sections": [ + { + "name": "ZR Frogs Zeldas Lullaby", + "access_rules": [ + "$access_location|ZR Frogs Zeldas Lullaby" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Eponas Song", + "access_rules": [ + "$access_location|ZR Frogs Eponas Song" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Sarias Song", + "access_rules": [ + "$access_location|ZR Frogs Sarias Song" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Suns Song", + "access_rules": [ + "$access_location|ZR Frogs Suns Song" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, + { + "name": "ZR Frogs Song of Time", + "access_rules": [ + "$access_location|ZR Frogs Song of Time" + ], + "visibility_rules": [ + "setting_shuffle_frogs_yes" + ], + "item_count": 1 + }, { "name": "ZR Frogs in the Rain", "access_rules": [ diff --git a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua index 7e243918..c311df78 100644 --- a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua +++ b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua @@ -5102,6 +5102,61 @@ data_per_region = { return AccessibilityLevel.None end }, + ["ZR Frogs Zeldas Lullaby"] = { + ["child_access"] = function() + if has("ocarina") and has("lullaby") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, + ["ZR Frogs Eponas Song"] = { + ["child_access"] = function() + if has("ocarina") and has("epona") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, + ["ZR Frogs Sarias Song"] = { + ["child_access"] = function() + if has("ocarina") and has("saria") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, + ["ZR Frogs Suns Song"] = { + ["child_access"] = function() + if has("ocarina") and has("sun") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, + ["ZR Frogs Song of Time"] = { + ["child_access"] = function() + if has("ocarina") and has("time") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, ["ZR Near Open Grotto Freestanding PoH"] = { ["child_access"] = function() return AccessibilityLevel.Normal From 716a331cd13cc6c45eef47f983caf33d356d5ffa Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 28 Apr 2023 20:54:59 +0200 Subject: [PATCH 05/14] added `Blue Fire Arrows` setting --- ootrando_overworldmap_hamsda/SETTINGS.md | 4 +++ ootrando_overworldmap_hamsda/changelog.md | 1 + .../images/setting_blue_fire_arrows.png | Bin 0 -> 2234 bytes .../items/options.json | 18 ++++++++++ .../layouts/options.json | 6 ++++ .../locations/dungeons.json | 27 ++++++++++----- .../locations/overworld.json | 4 ++- .../scripts/data_per_region.lua | 32 +++++++++--------- .../scripts/logic_helpers.lua | 24 ++++++++++--- .../scripts/logic_helpers_entrance.lua | 7 ++++ 10 files changed, 92 insertions(+), 31 deletions(-) create mode 100644 ootrando_overworldmap_hamsda/images/setting_blue_fire_arrows.png diff --git a/ootrando_overworldmap_hamsda/SETTINGS.md b/ootrando_overworldmap_hamsda/SETTINGS.md index 506f5046..6c8232dc 100644 --- a/ootrando_overworldmap_hamsda/SETTINGS.md +++ b/ootrando_overworldmap_hamsda/SETTINGS.md @@ -297,6 +297,10 @@ This setting determines how much damage you take ([see wiki](https://wiki.ootran - ![Damage x4](images/setting_damage_quadruple.png "Damage x4") Damage is quadrupled. - ![OHKO](images/setting_damage_ohko.png "OHKO") Damage kills you in one hit. +### Blue Fire Arrows + +- ![Blue Fire Arrows](images/setting_blue_fire_arrows.png "Blue Fire Arrows") Changes Ice Arrows to Blue Fire Arrows and allows them to melt red ice (and mud walls out of logic). + ### Nighttime Skulltulas Expect Sun's Song This setting determines if logic expects the player to have an ocarina and the Sun’s Song to get Gold Skulltula locations that are only found at nighttime. diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index a1824c5c..a51191b9 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -5,6 +5,7 @@ - fixed closed DoT logic for `DMT Freestanding PoH` - changed `Randomize Spawns` setting to have separate options for child/adult/both - added `Shuffle Frog Song Rupees` setting +- added `Blue Fire Arrows` setting ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/images/setting_blue_fire_arrows.png b/ootrando_overworldmap_hamsda/images/setting_blue_fire_arrows.png new file mode 100644 index 0000000000000000000000000000000000000000..41e72da2ff9146d64ade8869cb62448d694e6ef3 GIT binary patch literal 2234 zcmV;r2u1gaP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D2v12wK~!i%?V4Gr zR#g~=w?lK0N;HQy(M0KK@S+H{z@P&4G78kXh@w)7prTNtyDrqC;iB@`AVe2x(M2?< z5lK;~(L6YnG(n!S5;Z-&&)Vz#&$sv4=lBchh5RqP{~GtVzO~l3*8bMo|B#}@RB?P6 zZQ*b6x6EZ^9AwNDk0_%9;w$lmGI~I9r+9i9ZQ*7i{V(#3zMQ?9!g&Q|+ES4=>R?L_&<9JoMU3`kV2LW3~ zj2Ka@UAwlQPLUbs=I}t_SAG^RUR-H=%$PA`U&Buahc4`5JuBYEVwgB_Vu5jXcXy|F zHiTl{ym`g^`SXdsE~Z75fu%kw-Xfk!Mh3Fa6LEvUk>Vxd7vf)J)UZu_UR*DpEq)|D zMs3@+t?23LNjjkea5!X0QlI*t5)np@1M$O!Uy7E;uP^X@o*8h`DO8Gv4b|?1#-UlCA;LfapMxFO`BG%TD7XcC;&z} za^%R?f-%S!ne5}5%4|^k!lq4|2)f0YM1*cVJDv8|ty`DcrG3Cco;r1EO4sE#wV7pu zz2eZio<{Bqi{aujr-ctSCgXXd0rWv8V<}! zP0z=?n9lu3apVBz61mFfjd)VZ?4WJ1Kzg-6dS!g_AbNXcfXUC6o0Zapu49m=K_~y~ zdKq!bEKkOj(u7UWL?Y*1(RhOT02x{+seSSwX+rA<7A#oMDyw7V%9X7?MLi?rW>WqS zjR%}2rZNLr)<^u1u&H0vn>~AWswX!!=T>2zRcAXP=?LV?@RRO_$I|^Eqz&2ww8ePV zb;|wQDR!`*Xe|&M9D^Jum5HMcH1g!{$q11to z9l?2^1>6USKcB&F-48Ov6l(IhFi7#`%a^Ax!fr(b^%gB!lv8~!hp~C{=H!0NoN3Q4 z`Rx&tWvuBr>Y*=bAR{NZQv8;PfgX&R^%*;MYzm`(=;b~j8<|=VDZOOLl2n&-AfW&B z+x?)f^8k8~Mh?#c>o{S;grxJNNt04vg<+|ngSOCbf!G+C9Q(gaoOWTN$EJ)bhKmcu zb5d$Qz=UG-7*qDin-*XK6VBNvfCB+%ia~)9Y3EFFj1D7@z<}5YXg?cQUFLOOR6M_a z{raQ}ah?^h#G{EA)MvbGq&yQrKNwRRxX%x+&$y!#Y0tsv(W5Jyg3AHntXZ=v{c~L| zH1y_4ZRQ2{dn)K)ztGRcvRgo&p$ScS1}=coyEH-RRZeK|T36XtLXhk3Ms7s#f^*PuRi?0Q7-T-K?gr;%mCKSg7b*g8i=M7K};sopO@o4MbK z9$SOw(UrF2^N!;h+O1+9kP+tty`s$M2Ghs7-kwu&pj*5SYUuX{@s5?Tcg2boIa=;w z4LFS5OB0fl?W3!!EA4pfp6qZ!c}-PA)QOuTcFJ~<-%LqHmQ!(uaIJWQp}!1>toSy- zbxgX^CUqfk$TR3JRIYfVzQ`6fq(p|xd7kl=j(e;pAkJ=&TkCOkpW}S+#5f>;M!j_a- zqP18o14zzR5n*qYIfKLJ8(f;K6WpF literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/items/options.json b/ootrando_overworldmap_hamsda/items/options.json index ef332101..82cbb852 100644 --- a/ootrando_overworldmap_hamsda/items/options.json +++ b/ootrando_overworldmap_hamsda/items/options.json @@ -751,6 +751,24 @@ } ] }, + { + "name": "Blue Fire Arrows", + "type": "progressive", + "allow_disabled": false, + "loop": true, + "stages": [ + { + "img": "images/setting_blue_fire_arrows.png", + "img_mods": "@disabled", + "codes": "setting_blue_fire_arrows,setting_blue_fire_arrows_off" + }, + { + "img": "images/setting_blue_fire_arrows.png", + "codes": "setting_blue_fire_arrows,setting_blue_fire_arrows_on", + "inherit_codes": false + } + ] + }, { "name": "Nighttime Skulltulas Expect Sun's Song", "type": "progressive", diff --git a/ootrando_overworldmap_hamsda/layouts/options.json b/ootrando_overworldmap_hamsda/layouts/options.json index 3c8c9d8f..1f6d4f45 100644 --- a/ootrando_overworldmap_hamsda/layouts/options.json +++ b/ootrando_overworldmap_hamsda/layouts/options.json @@ -254,6 +254,12 @@ "width": 200, "height": 16 }, + { + "type": "item", + "item": "setting_blue_fire_arrows", + "width": 200, + "height": 16 + }, { "type": "item", "item": "setting_skulltulas_sun", diff --git a/ootrando_overworldmap_hamsda/locations/dungeons.json b/ootrando_overworldmap_hamsda/locations/dungeons.json index 0af02006..f27d36bd 100644 --- a/ootrando_overworldmap_hamsda/locations/dungeons.json +++ b/ootrando_overworldmap_hamsda/locations/dungeons.json @@ -1336,7 +1336,8 @@ "name": "Ice Cavern", "parent": "Zoras Fountain", "access_rules": [ - "ice_reg,$adult_fountain,$has_bottle" + "ice_reg,$adult_fountain,$has_bottle", + "ice_reg,$adult_fountain,$can_BFA" ], "sections": [ { @@ -1415,6 +1416,7 @@ "short_name": "Iron Boots", "access_rules": [ "$has_bottle", + "$can_BFA", "{$hintable}" ], "capture_item": true, @@ -1425,6 +1427,7 @@ "short_name": "Song", "access_rules": [ "$has_bottle", + "$can_BFA", "{$hintable}" ], "capture_item": true, @@ -1449,7 +1452,8 @@ "name": "Ice Cavern MQ", "parent": "Zoras Fountain", "access_rules": [ - "ice_mq,$adult_fountain,$has_bottle" + "ice_mq,$adult_fountain,$has_bottle", + "ice_mq,$adult_fountain,$can_BFA" ], "sections": [ { @@ -1520,6 +1524,7 @@ "short_name": "Iron Boots", "access_rules": [ "$has_bottle", + "$can_BFA", "{$hintable}" ], "capture_item": true, @@ -1530,6 +1535,7 @@ "short_name": "Song", "access_rules": [ "$has_bottle", + "$can_BFA", "{$hintable}" ], "capture_item": true, @@ -5100,7 +5106,8 @@ "name": "Water Trial Clear", "short_name": "Water Trial", "access_rules": [ - "$has_bottle,hammer,$can_LA" + "$has_bottle,hammer,$can_LA", + "$can_BFA,hammer,$can_LA" ], "visibility_rules": [ "setting_trials:1" @@ -5314,7 +5321,8 @@ "name": "Water Trial Chest", "short_name": "Water Trial", "access_rules": [ - "$has_bottle" + "$has_bottle", + "$can_BFA" ], "item_count": 1 }, @@ -5322,7 +5330,8 @@ "name": "Water Trial Clear", "short_name": "Water Trial", "access_rules": [ - "$has_bottle,$can_LA,gc_small_keys:1,[gc_small_keys:3]" + "$has_bottle,$can_LA,gc_small_keys:1,[gc_small_keys:3]", + "$can_BFA,$can_LA,gc_small_keys:1,[gc_small_keys:3]" ], "visibility_rules": [ "setting_trials:1" @@ -5794,12 +5803,12 @@ "access_rules": [ "@Gerudo Training Ground MQ/Stalfos Room,[logic_lens_gtg_mq],$has_bottle,ocarina,time", "@Gerudo Training Ground MQ/Stalfos Room,[logic_lens_gtg_mq],$has_bottle,[logic_gtg_fake_wall],hoverboots", - "@Gerudo Training Ground MQ/Stalfos Room,[logic_lens_gtg_mq],$has_bottle,[ocarina],[time],bombs,shield2", - "@Gerudo Training Ground MQ/Stalfos Room,[logic_lens_gtg_mq],$has_bottle,[ocarina],[time],bombs,shield3", + "@Gerudo Training Ground MQ/Stalfos Room,[logic_lens_gtg_mq],$can_BFA,ocarina,time", + "@Gerudo Training Ground MQ/Stalfos Room,[logic_lens_gtg_mq],$can_BFA,[logic_gtg_fake_wall],hoverboots", "@Gerudo Training Ground MQ/Stalfos Room,$can_use_lens,$has_bottle,ocarina,time", "@Gerudo Training Ground MQ/Stalfos Room,$can_use_lens,$has_bottle,[logic_gtg_fake_wall],hoverboots", - "@Gerudo Training Ground MQ/Stalfos Room,$can_use_lens,$has_bottle,[ocarina],[time],bombs,shield2", - "@Gerudo Training Ground MQ/Stalfos Room,$can_use_lens,$has_bottle,[ocarina],[time],bombs,shield3" + "@Gerudo Training Ground MQ/Stalfos Room,$can_use_lens,$can_BFA,ocarina,time", + "@Gerudo Training Ground MQ/Stalfos Room,$can_use_lens,$can_BFA,[logic_gtg_fake_wall],hoverboots" ], "visibility_rules": [ "hidden_region" diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index 73c72036..17996c69 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -4393,7 +4393,8 @@ { "name": "King Zora", "access_rules": [ - "$has_blue_fire" + "$has_blue_fire", + "$can_BFA" ], "sections": [ { @@ -4462,6 +4463,7 @@ "access_rules": [ "$child_domain", "$adult_domain,$has_blue_fire", + "$adult_domain,$can_BFA", "$spawn_access|ZD Shop|adult" ], "sections": [ diff --git a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua index c311df78..cb0c6b3d 100644 --- a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua +++ b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua @@ -5354,7 +5354,7 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return has_blue_fire() + return or_accessibility(can_BFA(), has_blue_fire()) end }, ["ZD GS Frozen Waterfall"] = { @@ -10777,7 +10777,7 @@ data_per_region = { ["adult_access"] = function() local hammer = has("hammer") and AccessibilityLevel.Normal or AccessibilityLevel.None - return and_accessibility(has_blue_fire(), hammer, can_LA()) + return and_accessibility(or_accessibility(can_BFA(), has_blue_fire()), hammer, can_LA()) end }, ["Ganons Castle Water Trial Chests"] = { @@ -11137,7 +11137,7 @@ data_per_region = { keys = AccessibilityLevel.SequenceBreak end - return and_accessibility(has_blue_fire(), can_LA(), keys) + return and_accessibility(or_accessibility(can_BFA(), has_blue_fire()), can_LA(), keys) end }, ["Ganons Castle MQ Water Trial Chest"] = { @@ -11145,7 +11145,7 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle(), AccessibilityLevel.SequenceBreak) end } } @@ -12080,7 +12080,7 @@ data_per_region = { end end - return and_accessibility(lot, has_bottle(), or_accessibility(sot, wall)) + return and_accessibility(lot, or_accessibility(can_BFA(), has_bottle()), or_accessibility(sot, wall)) end } } @@ -12265,7 +12265,7 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end }, ["Ice Cavern Compass Chest"] = { @@ -12273,7 +12273,7 @@ data_per_region = { return has_blue_fire() end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end }, ["Ice Cavern Iron Boots Chest"] = { @@ -12284,7 +12284,7 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end }, ["Sheik in Ice Cavern"] = { @@ -12295,7 +12295,7 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end }, ["Ice Cavern Freestanding PoH"] = { @@ -12303,7 +12303,7 @@ data_per_region = { return has_blue_fire() end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end }, ["Ice Cavern GS Spinning Scythe Room"] = { @@ -12343,7 +12343,7 @@ data_per_region = { end local collect = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.Inspect - return and_accessibility(has_bottle(), kill, collect) + return and_accessibility(or_accessibility(can_BFA(), has_bottle()), kill, collect) end }, ["Ice Cavern GS Push Block Room"] = { @@ -12358,7 +12358,7 @@ data_per_region = { end, ["adult_access"] = function() if has("hookshot") then - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end local kill = has_explosives() @@ -12369,7 +12369,7 @@ data_per_region = { local trick = has("logic_ice_block_gs") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak return and_accessibility( - has_bottle(), + or_accessibility(can_BFA(), has_bottle()), or_accessibility(and_accessibility(hb, trick), and_accessibility(kill, AccessibilityLevel.Inspect)) ) end @@ -12407,7 +12407,7 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end }, ["Ice Cavern MQ Iron Boots Region"] = { @@ -12415,7 +12415,7 @@ data_per_region = { return has_blue_fire() end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end } } @@ -12432,7 +12432,7 @@ data_per_region = { return and_accessibility(has_bottle(), has_projectile("child")) end, ["adult_access"] = function() - return has_bottle() + return or_accessibility(can_BFA(), has_bottle()) end } } diff --git a/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua b/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua index a7075bad..6d9e367a 100644 --- a/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua +++ b/ootrando_overworldmap_hamsda/scripts/logic_helpers.lua @@ -201,6 +201,14 @@ function can_LA() end end +function can_BFA() + if has("setting_blue_fire_arrows_on") and has_age("adult") == 1 and has("magic") and has("bow") and has("icearrow") then + return 1, AccessibilityLevel.Normal + else + return 0, AccessibilityLevel.None + end +end + function has_fire() if has_age("adult") == 1 and has("magic") and has("bow") and has("firearrow") or has("dinsfire") and has("magic") then return 1, AccessibilityLevel.Normal @@ -799,13 +807,19 @@ function zora_tunic() if spawn_access("ZD Shop", "adult") > 0 then return 1, AccessibilityLevel.Normal end + local bfa_count, bfa_level = can_BFA() local bottle_count, bottle_level = has_bottle() local domain_count, domain_level = adult_domain() - if bottle_count > 0 and domain_count > 0 then - if bottle_level == AccessibilityLevel.SequenceBreak or domain_level == AccessibilityLevel.SequenceBreak then - return 1, AccessibilityLevel.SequenceBreak - else - return 1, AccessibilityLevel.Normal + if domain_count > 0 then + if bfa_count > 0 then + return 1, domain_level + end + if bottle_count > 0 then + if bottle_level == AccessibilityLevel.SequenceBreak or domain_level == AccessibilityLevel.SequenceBreak then + return 1, AccessibilityLevel.SequenceBreak + else + return 1, AccessibilityLevel.Normal + end end end end diff --git a/ootrando_overworldmap_hamsda/scripts/logic_helpers_entrance.lua b/ootrando_overworldmap_hamsda/scripts/logic_helpers_entrance.lua index dab42fff..9dff1b68 100644 --- a/ootrando_overworldmap_hamsda/scripts/logic_helpers_entrance.lua +++ b/ootrando_overworldmap_hamsda/scripts/logic_helpers_entrance.lua @@ -153,6 +153,13 @@ function can_LA() return AccessibilityLevel.None end +function can_BFA() + if has("setting_blue_fire_arrows_on") and has("bow") and has("magic") and has("icearrow") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None +end + function can_child_attack() if has("sling") or has("boomerang") or has("sticks") or has("sword1") or (has("dinsfire") and has("magic")) then return AccessibilityLevel.Normal From ba7e090dca29e49aab630a18db30384441e60f10 Mon Sep 17 00:00:00 2001 From: Dennis Date: Fri, 28 Apr 2023 20:55:59 +0200 Subject: [PATCH 06/14] fixed `inherit_codes` schema oopsie --- .../items/options.json | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/ootrando_overworldmap_hamsda/items/options.json b/ootrando_overworldmap_hamsda/items/options.json index 82cbb852..409d9440 100644 --- a/ootrando_overworldmap_hamsda/items/options.json +++ b/ootrando_overworldmap_hamsda/items/options.json @@ -13,12 +13,12 @@ { "img": "images/setting_forest_deku.png", "codes": "setting_forest,setting_forest_deku", - "inherits_codes": false + "inherit_codes": false }, { "img": "images/setting_forest_open.png", "codes": "setting_forest,setting_forest_open", - "inherits_codes": false + "inherit_codes": false } ] }, @@ -196,7 +196,7 @@ { "img": "images/setting_entrance_interiors_simple.png", "codes": "setting_entrance_interiors,setting_entrance_interiors_simple", - "inherits_codes": false + "inherit_codes": false }, { "img": "images/setting_entrance_interiors_all.png", @@ -219,7 +219,7 @@ { "img": "images/setting_entrance_grottos_shuffle.png", "codes": "setting_entrance_grottos,setting_entrance_grottos_shuffle", - "inherits_codes": false + "inherit_codes": false } ] }, @@ -238,7 +238,7 @@ { "img": "images/setting_entrance_dungeons_shuffle.png", "codes": "setting_entrance_dungeons,setting_entrance_dungeons_shuffle", - "inherits_codes": false + "inherit_codes": false } ] }, @@ -257,7 +257,7 @@ { "img": "images/setting_entrance_overworld_shuffle.png", "codes": "setting_entrance_overworld,setting_entrance_overworld_shuffle", - "inherits_codes": false + "inherit_codes": false } ] }, @@ -276,7 +276,7 @@ { "img": "images/setting_entrance_mixed_indoor.png", "codes": "setting_entrance_mixed,setting_entrance_mixed_indoor", - "inherits_codes": false + "inherit_codes": false }, { "img": "images/setting_entrance_mixed_all.png", @@ -299,7 +299,7 @@ { "img": "images/setting_entrance_owl_shuffle.png", "codes": "setting_entrance_owl,setting_entrance_owl_shuffle", - "inherits_codes": false + "inherit_codes": false } ] }, @@ -318,7 +318,7 @@ { "img": "images/setting_entrance_warpsong_shuffle.png", "codes": "setting_entrance_warpsong,setting_entrance_warpsong_shuffle", - "inherits_codes": false + "inherit_codes": false } ] }, From 8df6621a8a2f8dd8fc31f4947073949f101aa58a Mon Sep 17 00:00:00 2001 From: Dennis Date: Mon, 1 May 2023 14:11:34 +0200 Subject: [PATCH 07/14] added granny's blue potion to merchants setting --- ootrando_overworldmap_hamsda/changelog.md | 1 + .../locations/exits_entrance.json | 2 +- .../locations/overworld.json | 18 +++++++++++++- .../locations/overworld_entrance.json | 24 +++++++++++++++++++ .../scripts/data_per_region.lua | 14 +++++++++++ 5 files changed, 57 insertions(+), 2 deletions(-) diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index a51191b9..21230c9b 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -6,6 +6,7 @@ - changed `Randomize Spawns` setting to have separate options for child/adult/both - added `Shuffle Frog Song Rupees` setting - added `Blue Fire Arrows` setting +- added granny's blue potion to `Shuffle Expensive Merchants` setting ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/locations/exits_entrance.json b/ootrando_overworldmap_hamsda/locations/exits_entrance.json index 1102268d..a103f073 100644 --- a/ootrando_overworldmap_hamsda/locations/exits_entrance.json +++ b/ootrando_overworldmap_hamsda/locations/exits_entrance.json @@ -2824,7 +2824,7 @@ { "map": "exits", "badge_size": 50, - "x": 1860, + "x": 1865, "y": 360 } ] diff --git a/ootrando_overworldmap_hamsda/locations/overworld.json b/ootrando_overworldmap_hamsda/locations/overworld.json index 17996c69..60f4844e 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld.json +++ b/ootrando_overworldmap_hamsda/locations/overworld.json @@ -2009,12 +2009,28 @@ "mushroom" ], "hosted_item": "capture_oddpotion" + }, + { + "name": "Buy Potion", + "access_rules": [ + "$has_age|adult,wallet,oddpotion", + "$has_age|adult,wallet,poachersaw", + "$has_age|adult,wallet,brokensword", + "$has_age|adult,wallet,prescription", + "$has_age|adult,wallet,speedfrog", + "$has_age|adult,wallet,eyedrops", + "$has_age|adult,wallet,claimcheck" + ], + "visibility_rules": [ + "setting_shuffle_merchants_yes" + ], + "item_count": 1 } ], "map_locations": [ { "map": "adult", - "x": 1860, + "x": 1865, "y": 360 } ] diff --git a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json index b735c0e8..57b038d2 100644 --- a/ootrando_overworldmap_hamsda/locations/overworld_entrance.json +++ b/ootrando_overworldmap_hamsda/locations/overworld_entrance.json @@ -2642,6 +2642,30 @@ } ] }, + { + "name": "Kak Odd Medicine Building", + "sections": [ + { + "name": "Kak Granny Buy Blue Potion", + "short_name": "Buy Potion", + "access_rules": [ + "$access_location|Kak Granny Buy Blue Potion" + ], + "item_count": 1 + } + ], + "map_locations": [ + { + "map": "locations", + "force_invisibility_rules": [ + "setting_shuffle_merchants_no", + "setting_entrance_interiors_simple" + ], + "x": 1865, + "y": 360 + } + ] + }, { "name": "Kak Bazaar", "sections": [ diff --git a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua index cb0c6b3d..de4c34cc 100644 --- a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua +++ b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua @@ -3704,6 +3704,20 @@ data_per_region = { ["Kak Odd Medicine Building"] = { ["scene"] = "Kak Odd Medicine Building", ["pool"] = ER_POOL_TYPES.INTERIOR, + ["locations"] = { + ["Kak Granny Buy Blue Potion"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local wallet = has("wallet") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trade = + (has("oddpotion") or has("poachersaw") or has("brokensword") or has("prescription") or has("speedfrog") or has("eyedrops") or has("claimcheck")) and + AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(wallet, trade) + end + } + }, ["exits"] = { ["Kak Backyard"] = { ["child_access"] = function() From e007fee4d6ef5687208822de98c45f6fd5a3b9ec Mon Sep 17 00:00:00 2001 From: Dennis Date: Tue, 2 May 2023 12:42:30 +0200 Subject: [PATCH 08/14] added logic for shortcuts from 1369 --- .../locations/dungeons.json | 830 ++++++-- .../locations/dungeons_entrance.json | 47 +- .../scripts/data_per_region.lua | 1839 +++++++++++++---- 3 files changed, 2020 insertions(+), 696 deletions(-) diff --git a/ootrando_overworldmap_hamsda/locations/dungeons.json b/ootrando_overworldmap_hamsda/locations/dungeons.json index f27d36bd..61bd96ef 100644 --- a/ootrando_overworldmap_hamsda/locations/dungeons.json +++ b/ootrando_overworldmap_hamsda/locations/dungeons.json @@ -7,6 +7,43 @@ "deku_reg,$has_age|child,sword1,shield1" ], "sections": [ + { + "name": "Slingshot Room", + "access_rules": [ + "shield1" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Basement Backroom", + "access_rules": [ + "sticks,sling", + "dinsfire,magic,sling", + "[logic_deku_b1_skip]", + "deku_tree_shortcuts" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Boss Room", + "access_rules": [ + "sticks,[logic_deku_b1_skip]", + "sticks,sling", + "dinsfire,magic,[logic_deku_b1_skip]", + "dinsfire,magic,sling", + "deku_tree_shortcuts" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, { "name": "Map Chest", "short_name": "Map", @@ -17,7 +54,7 @@ "name": "Slingshot Room Chests", "short_name": "Slingshot", "access_rules": [ - "shield1" + "@Deku Tree/Slingshot Room" ], "item_count": 2 }, @@ -45,7 +82,8 @@ "short_name": "Basement", "access_rules": [ "$can_child_attack", - "nuts" + "nuts", + "deku_tree_shortcuts" ], "item_count": 1 }, @@ -84,12 +122,10 @@ "name": "GS Basement Back Room", "short_name": "Back Room", "access_rules": [ - "$has_explosives,boomerang,sticks,sling", - "$has_explosives,boomerang,sticks,[logic_deku_b1_skip]", - "$has_explosives,boomerang,dinsfire,magic,sling", - "$has_explosives,boomerang,dinsfire,magic,[logic_deku_b1_skip]", - "{$has_explosives,sticks}", - "{$has_explosives,dinsfire,magic}" + "@Deku Tree/Basement Backroom,$has_explosives,sticks,boomerang", + "@Deku Tree/Basement Backroom,$has_explosives,dinsfire,magic,boomerang", + "{@Deku Tree/Basement Backroom,$has_explosives,sticks}", + "{@Deku Tree/Basement Backroom,$has_explosives,dinsfire,magic}" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -102,10 +138,10 @@ { "name": "Queen Gohma", "access_rules": [ - "shield1,sticks,sling", - "shield1,sticks,nuts,[logic_deku_b1_skip]", - "shield1,sword1,dinsfire,magic,sling", - "shield1,sword1,dinsfire,magic,nuts,[logic_deku_b1_skip]" + "@Deku Tree/Boss Room,shield1,sword1", + "@Deku Tree/Boss Room,shield1,sticks", + "@Deku Tree/Boss Room,deku_tree_shortcuts,sword1", + "@Deku Tree/Boss Room,deku_tree_shortcuts,sticks" ], "hosted_item": "deku", "chest_unopened_img": "images/HC.png", @@ -153,7 +189,10 @@ //vvv reverse vvv "[logic_deku_b1_skip],sword1", "[logic_deku_b1_skip],$has_projectile|child", - "[logic_deku_b1_skip],sticks,nuts" + "[logic_deku_b1_skip],sticks,nuts", + "deku_tree_shortcuts,sword1", + "deku_tree_shortcuts,$has_projectile|child", + "deku_tree_shortcuts,sticks,nuts" ], "visibility_rules": [ "hidden_region" @@ -170,7 +209,10 @@ //vvv reverse vvv "[logic_deku_b1_skip],sword1", "[logic_deku_b1_skip],$has_projectile|child", - "[logic_deku_b1_skip],sticks,nuts" + "[logic_deku_b1_skip],sticks,nuts", + "deku_tree_shortcuts,sword1", + "deku_tree_shortcuts,$has_projectile|child", + "deku_tree_shortcuts,sticks,nuts" ], "visibility_rules": [ "hidden_region" @@ -187,7 +229,8 @@ "@Deku Tree MQ/Basement Water Room Back,dinsfire,magic,$has_projectile|child", //^^^ forward ^^^ //vvv reverse vvv - "[logic_deku_b1_skip]" + "[logic_deku_b1_skip]", + "deku_tree_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -200,7 +243,8 @@ "@Deku Tree MQ/Basement Back Room", //^^^ forward ^^^ //vvv reverse vvv - "[logic_deku_b1_skip]" + "[logic_deku_b1_skip]", + "deku_tree_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -347,7 +391,9 @@ "name": "Queen Gohma", "access_rules": [ "@Deku Tree MQ/Basement Ledge,sticks,shield1", - "@Deku Tree MQ/Basement Ledge,dinsfire,magic,sword1,shield1" + "@Deku Tree MQ/Basement Ledge,dinsfire,magic,sword1,shield1", + "@Deku Tree MQ/Basement Ledge,deku_tree_shortcuts,sticks", + "@Deku Tree MQ/Basement Ledge,deku_tree_shortcuts,sword1" ], "hosted_item": "deku", "chest_unopened_img": "images/HC.png", @@ -380,7 +426,8 @@ "name": "Lobby", "access_rules": [ "$can_blast", - "lift1" + "lift1", + "dodongos_cavern_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -391,10 +438,14 @@ "name": "Staircase Room", "access_rules": [ "@Dodongos Cavern/Lobby,$has_age|adult", - "@Dodongos Cavern/Lobby,$has_age|child,sticks", - "@Dodongos Cavern/Lobby,$has_age|child,dinsfire,magic,sling", - "@Dodongos Cavern/Lobby,$has_age|child,dinsfire,magic,$has_explosives", - "@Dodongos Cavern/Lobby,$has_age|child,dinsfire,magic,sword1" + "@Dodongos Cavern/Lobby,$has_age|child,$has_explosives,sticks", + "@Dodongos Cavern/Lobby,$has_age|child,$has_explosives,dinsfire,magic,sling", + "@Dodongos Cavern/Lobby,$has_age|child,$has_explosives,dinsfire,magic,bombs", + "@Dodongos Cavern/Lobby,$has_age|child,$has_explosives,dinsfire,magic,sword1", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,sticks", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,dinsfire,magic,sling", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,dinsfire,magic,bombs", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,dinsfire,magic,sword1" ], "visibility_rules": [ "hidden_region" @@ -423,15 +474,18 @@ { "name": "Far Bridge", "access_rules": [ - "@Dodongos Cavern/Climb,$has_age|child,sling,$has_explosives", - "@Dodongos Cavern/Climb,$has_age|child,sling,lift1", - "@Dodongos Cavern/Climb,$has_age|child,[logic_dc_slingshot_skip],lift1,sticks", - "@Dodongos Cavern/Climb,$has_age|child,[logic_dc_slingshot_skip],$has_explosives", - "@Dodongos Cavern/Climb,$has_age|child,[logic_dc_slingshot_skip],lift1,sword1", - "@Dodongos Cavern/Climb,$has_age|adult,bow", "@Dodongos Cavern/Climb,$has_age|adult,hoverboots", "@Dodongos Cavern/Climb,$has_age|adult,longshot", - "@Dodongos Cavern/Climb,$has_age|adult,[logic_dc_jump]" + "@Dodongos Cavern/Climb,$has_age|adult,[logic_dc_jump]", + "@Dodongos Cavern/Climb,$can_blast,$has_age|child,sling", + "@Dodongos Cavern/Climb,$can_blast,$has_age|child,[logic_dc_slingshot_skip],sticks", + "@Dodongos Cavern/Climb,$can_blast,$has_age|child,[logic_dc_slingshot_skip],bombs", + "@Dodongos Cavern/Climb,$can_blast,$has_age|child,[logic_dc_slingshot_skip],sword1", + "@Dodongos Cavern/Climb,lift1,$has_age|child,sling", + "@Dodongos Cavern/Climb,lift1,$has_age|child,[logic_dc_slingshot_skip],sticks", + "@Dodongos Cavern/Climb,lift1,$has_age|child,[logic_dc_slingshot_skip],bombs", + "@Dodongos Cavern/Climb,lift1,$has_age|child,[logic_dc_slingshot_skip],sword1", + "@Dodongos Cavern/Climb,$has_age|adult,bow" ], "visibility_rules": [ "hidden_region" @@ -441,7 +495,8 @@ { "name": "Boss Area", "access_rules": [ - "@Dodongos Cavern/Far Bridge,$has_explosives" + "@Dodongos Cavern/Far Bridge,$has_explosives", + "@Dodongos Cavern/Lobby,dodongos_cavern_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -454,10 +509,10 @@ "access_rules": [ "@Dodongos Cavern/Lobby,$has_explosives", "@Dodongos Cavern/Lobby,$has_age|adult", - "@Dodongos Cavern/Lobby,$has_age|child,sling", - "@Dodongos Cavern/Lobby,$has_age|child,boomerang", - "@Dodongos Cavern/Lobby,$has_age|child,sticks", - "@Dodongos Cavern/Lobby,$has_age|child,sword1" + "@Dodongos Cavern/Lobby,$has_age|child,lift1,sling", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,boomerang", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,sticks", + "@Dodongos Cavern/Lobby,$has_age|child,lift1,sword1" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -473,7 +528,8 @@ "@Dodongos Cavern/Lobby,$has_age|adult,ocarina,scarecrow,hookshot", "@Dodongos Cavern/Lobby,$has_age|adult,longshot", "@Dodongos Cavern/Lobby,[logic_dc_scarecrow_gs],$has_age|adult", - "@Dodongos Cavern/Lobby,[logic_dc_scarecrow_gs],$can_child_attack" + "@Dodongos Cavern/Lobby,[logic_dc_scarecrow_gs],$can_child_attack,$can_blast", + "@Dodongos Cavern/Lobby,[logic_dc_scarecrow_gs],$can_child_attack,lift1" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -487,11 +543,16 @@ "name": "Deku Scrub Side Room Near Dodongos", "short_name": "East Side", "access_rules": [ - "@Dodongos Cavern/Lobby,$has_age|adult", - "@Dodongos Cavern/Lobby,$has_age|child,sling", - "@Dodongos Cavern/Lobby,$has_age|child,sticks", - "@Dodongos Cavern/Lobby,$has_age|child,$has_explosives", - "@Dodongos Cavern/Lobby,$has_age|child,sword1" + "@Dodongos Cavern/Lobby,$can_blast,$has_age|adult", + "@Dodongos Cavern/Lobby,$can_blast,$has_age|child,sling", + "@Dodongos Cavern/Lobby,$can_blast,$has_age|child,sticks", + "@Dodongos Cavern/Lobby,$can_blast,$has_age|child,bombs", + "@Dodongos Cavern/Lobby,$can_blast,$has_age|child,sword1", + "@Dodongos Cavern/Lobby,lift1,$has_age|adult", + "@Dodongos Cavern/Lobby,lift1,$has_age|child,sling", + "@Dodongos Cavern/Lobby,lift1,$has_age|child,sticks", + "@Dodongos Cavern/Lobby,lift1,$has_age|child,bombs", + "@Dodongos Cavern/Lobby,lift1,$has_age|child,sword1" ], "visibility_rules": [ "setting_scrub_shuffle_yes" @@ -504,7 +565,8 @@ "name": "Map Chest", "short_name": "Map", "access_rules": [ - "@Dodongos Cavern/Lobby" + "@Dodongos Cavern/Lobby,$can_blast", + "@Dodongos Cavern/Lobby,lift1" ], "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 @@ -526,7 +588,8 @@ "name": "Compass Chest", "short_name": "Compass", "access_rules": [ - "@Dodongos Cavern/Staircase Room" + "@Dodongos Cavern/Staircase Room,$can_blast", + "@Dodongos Cavern/Staircase Room,lift1" ], "chest_unopened_img": "images/chest_brown_compass.png", "item_count": 1 @@ -609,7 +672,7 @@ "name": "GS Back Room", "short_name": "Back Room", "access_rules": [ - "@Dodongos Cavern/Boss Area" + "@Dodongos Cavern/Boss Area,$can_blast" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -678,7 +741,19 @@ "name": "Lobby", "access_rules": [ "$can_blast", - "lift1" + "lift1", + "dodongos_cavern_shortcuts" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Elevator", + "access_rules": [ + "@Dodongos Cavern MQ/Lobby,$can_blast", + "@Dodongos Cavern MQ/Lobby,lift1" ], "visibility_rules": [ "hidden_region" @@ -689,8 +764,8 @@ "name": "Lower Right Side", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$can_blast", - "@Dodongos Cavern MQ/Lobby,$has_age|child,sticks,$damage_single_instance_ohko", - "@Dodongos Cavern MQ/Lobby,dinsfire,magic,$damage_single_instance_ohko" + "@Dodongos Cavern MQ/Elevator,$has_age|child,sticks,lift1,$damage_single_instance_ohko", + "@Dodongos Cavern MQ/Elevator,dinsfire,magic,lift1,$damage_single_instance_ohko" ], "visibility_rules": [ "hidden_region" @@ -701,8 +776,8 @@ "name": "Bomb Bag Area", "access_rules": [ "@Dodongos Cavern MQ/Lobby,$has_age|adult", - "@Dodongos Cavern MQ/Lobby,$has_age|child,[logic_dc_mq_child_bombs],sword1,$damage_single_instance_ohko", - "@Dodongos Cavern MQ/Lobby,$has_age|child,[logic_dc_mq_child_bombs],sticks,$damage_single_instance_ohko", + "@Dodongos Cavern MQ/Elevator,$has_age|child,[logic_dc_mq_child_bombs],sword1,$damage_single_instance_ohko", + "@Dodongos Cavern MQ/Elevator,$has_age|child,[logic_dc_mq_child_bombs],sticks,$damage_single_instance_ohko", "@Dodongos Cavern MQ/Lower Right Side,$has_age|child,sling,$has_age|adult,bow", "@Dodongos Cavern MQ/Lower Right Side,$has_age|child,sling,lift1", "@Dodongos Cavern MQ/Lower Right Side,$has_age|child,sling,dinsfire,magic", @@ -716,15 +791,33 @@ { "name": "Boss Area", "access_rules": [ - "@Dodongos Cavern MQ/Lobby,$has_explosives", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|both,sticks", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|child,[logic_dc_mq_child_back],sticks", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|child,[logic_dc_mq_child_back],dinsfire,magic", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|adult,dinsfire,magic", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|adult,[logic_dc_jump]", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|adult,hammer", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|adult,hoverboots", - "@Dodongos Cavern MQ/Lobby,[logic_dc_mq_eyes],lift1,$has_age|adult,hookshot" + "@Dodongos Cavern MQ/Lobby,dodongos_cavern_shortcuts", + "@Dodongos Cavern MQ/Elevator,$has_explosives", + //TODO: eye tricks rename/new? + "@Dodongos Cavern MQ/Elevator,lift1,[logic_dc_mq_eyes],$has_age|child,sticks", + "@Dodongos Cavern MQ/Elevator,lift1,[logic_dc_mq_eyes],dinsfire,magic", + "@Dodongos Cavern MQ/Elevator,lift1,[logic_dc_mq_eyes],$has_age|adult,[logic_dc_jump]", + "@Dodongos Cavern MQ/Elevator,lift1,[logic_dc_mq_eyes],$has_age|adult,hammer", + "@Dodongos Cavern MQ/Elevator,lift1,[logic_dc_mq_eyes],$has_age|adult,hoverboots", + "@Dodongos Cavern MQ/Elevator,lift1,[logic_dc_mq_eyes],$has_age|adult,hookshot" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Boss Room", + "access_rules": [ + "@Dodongos Cavern MQ/Boss Area,$has_age|adult", + "@Dodongos Cavern MQ/Boss Area,$has_explosives", + "@Dodongos Cavern MQ/Boss Area,dinsfire,magic", + "@Dodongos Cavern MQ/Boss Area,dodongos_cavern_shortcuts", + "@Dodongos Cavern MQ/Boss Area,sticks", + "@Dodongos Cavern MQ/Boss Area,nuts,sword1", + "@Dodongos Cavern MQ/Boss Area,nuts,sling", + "@Dodongos Cavern MQ/Boss Area,boomerang,sword1", + "@Dodongos Cavern MQ/Boss Area,boomerang,sling" ], "visibility_rules": [ "hidden_region" @@ -735,7 +828,8 @@ "name": "Map Chest", "short_name": "Map", "access_rules": [ - "@Dodongos Cavern MQ/Lobby" + "@Dodongos Cavern MQ/Lobby,$can_blast", + "@Dodongos Cavern MQ/Lobby,lift1" ], "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 @@ -752,24 +846,17 @@ "name": "GS Scrub Room", "short_name": "Scrub", "access_rules": [ - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,boomerang,lift1", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,boomerang,dinsfire,magic", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,boomerang,$has_explosives", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,[sling],sticks,boomerang,lift1", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,[sling],sticks,boomerang,dinsfire,magic", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,[sling],sticks,boomerang,$has_explosives", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,[sling],sword1,boomerang,lift1", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,[sling],sword1,boomerang,dinsfire,magic", - "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,[sling],sword1,boomerang,$has_explosives", + "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|both,boomerang,bow", + "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,boomerang,lift1", + "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,boomerang,dinsfire,magic", + "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,boomerang,$has_explosives", "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|adult,hookshot,bow", "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|adult,hookshot,lift1", "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|adult,hookshot,dinsfire,magic", "@Dodongos Cavern MQ/Bomb Bag Area,$has_age|adult,hookshot,$has_explosives", - "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,lift1}", - "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,dinsfire,magic}", - "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sling,$has_bombchus}", - "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sticks,$has_bombchus}", - "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,sword1,$has_bombchus}", + "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,lift1,sling}", + "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,dinsfire,magic,sling}", + "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|child,$has_bombchus}", "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|adult,bow}", "{@Dodongos Cavern MQ/Bomb Bag Area,$has_age|adult,$has_bombchus}" ], @@ -785,7 +872,8 @@ "name": "Deku Scrub Side Room Near Lower Lizalfos", "short_name": "East Side", "access_rules": [ - "@Dodongos Cavern MQ/Lower Right Side,$can_stun_deku" + "@Dodongos Cavern MQ/Lower Right Side,$can_blast,$can_stun_deku", + "@Dodongos Cavern MQ/Lower Right Side,lift1,$can_stun_deku" ], "visibility_rules": [ "setting_scrub_shuffle_yes" @@ -798,12 +886,12 @@ "name": "Torch Puzzle Room Chest", "short_name": "Platform", "access_rules": [ - "@Dodongos Cavern MQ/Lobby,$can_blast", - "@Dodongos Cavern MQ/Lobby,$has_age|child,sticks", - "@Dodongos Cavern MQ/Lobby,dinsfire,magic", - "@Dodongos Cavern MQ/Lobby,$has_age|adult,[logic_dc_jump]", - "@Dodongos Cavern MQ/Lobby,$has_age|adult,hoverboots", - "@Dodongos Cavern MQ/Lobby,$has_age|adult,hookshot" + "@Dodongos Cavern MQ/Elevator,$can_blast", + "@Dodongos Cavern MQ/Elevator,$has_age|child,sticks", + "@Dodongos Cavern MQ/Elevator,dinsfire,magic", + "@Dodongos Cavern MQ/Elevator,$has_age|adult,[logic_dc_jump]", + "@Dodongos Cavern MQ/Elevator,$has_age|adult,hoverboots", + "@Dodongos Cavern MQ/Elevator,$has_age|adult,hookshot" ], "item_count": 1 }, @@ -811,7 +899,7 @@ "name": "GS Lizalfos Room", "short_name": "Lizalfos", "access_rules": [ - "@Dodongos Cavern MQ/Lobby,$can_blast" + "@Dodongos Cavern MQ/Elevator,$can_blast" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -824,9 +912,9 @@ "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", - "@Dodongos Cavern MQ/Lobby,$has_age|child,sticks,lift1" + "@Dodongos Cavern MQ/Elevator,$has_fire", + "@Dodongos Cavern MQ/Elevator,$has_age|child,sticks", + "@Dodongos Cavern MQ/Elevator,$has_age|child,dinsfire,magic" ], "item_count": 1 }, @@ -847,9 +935,9 @@ "name": "Compass Chest", "short_name": "Compass", "access_rules": [ - "@Dodongos Cavern MQ/Lobby,$has_age|adult", - "@Dodongos Cavern MQ/Lobby,$can_child_attack", - "@Dodongos Cavern MQ/Lobby,nuts" + "@Dodongos Cavern MQ/Elevator,$has_age|adult", + "@Dodongos Cavern MQ/Elevator,$can_child_attack", + "@Dodongos Cavern MQ/Elevator,nuts" ], "chest_unopened_img": "images/chest_brown_compass.png", "item_count": 1 @@ -858,7 +946,7 @@ "name": "Deku Scrub Staircase", "short_name": "Above Stairs", "access_rules": [ - "@Dodongos Cavern MQ/Lobby,$can_stun_deku" + "@Dodongos Cavern MQ/Elevator,$can_stun_deku" ], "visibility_rules": [ "setting_scrub_shuffle_yes" @@ -871,8 +959,8 @@ "name": "GS Song of Time Block Room", "short_name": "Song of Time", "access_rules": [ - "@Dodongos Cavern MQ/Lobby,ocarina,time,$can_child_attack", - "@Dodongos Cavern MQ/Lobby,ocarina,time,$has_age|adult", + "@Dodongos Cavern MQ/Elevator,ocarina,time,$can_child_attack", + "@Dodongos Cavern MQ/Elevator,ocarina,time,$has_age|adult", "{$hintable}" ], "visibility_rules": [ @@ -901,7 +989,17 @@ "name": "GS Back Area", "short_name": "Back Area", "access_rules": [ - "@Dodongos Cavern MQ/Boss Area" + "@Dodongos Cavern MQ/Boss Area,$has_age|adult", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,$has_explosives", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,boomerang", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,dinsfire,magic", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,dodongos_cavern_shortcuts,$can_child_attack", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,dodongos_cavern_shortcuts,lift1", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,sticks", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,nuts,sword1", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,nuts,sling", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,boomerang,sword1", + "@Dodongos Cavern MQ/Boss Area,$has_age|child,boomerang,sling" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -922,21 +1020,29 @@ "name": "Boss Room Chest", "short_name": "Boss Room", "access_rules": [ - "@Dodongos Cavern MQ/Boss Area" + "@Dodongos Cavern MQ/Boss Room" ], "item_count": 1 }, { "name": "King Dodongo", "access_rules": [ - "@Dodongos Cavern MQ/Boss Area,lift1,$has_age|child,sticks", - "@Dodongos Cavern MQ/Boss Area,lift1,$has_age|child,sword1", - "@Dodongos Cavern MQ/Boss Area,lift1,$has_age|adult", - "@Dodongos Cavern MQ/Boss Area,bombs,$has_age|child,sticks", - "@Dodongos Cavern MQ/Boss Area,bombs,$has_age|child,sword1", - "@Dodongos Cavern MQ/Boss Area,bombs,$has_age|adult", - "@Dodongos Cavern MQ/Boss Area,bombchu,[bombs],$has_age|adult,shield2", - "@Dodongos Cavern MQ/Boss Area,bombchu,[bombs],$has_age|adult,shield3" + "@Dodongos Cavern MQ/Boss Room,$has_age|adult,hammer,[logic_dc_mq_hammer_floor],bombs", + "@Dodongos Cavern MQ/Boss Room,$has_age|adult,hammer,[logic_dc_mq_hammer_floor],lift1", + "@Dodongos Cavern MQ/Boss Room,$has_explosives,bombs,$has_age|adult", + "@Dodongos Cavern MQ/Boss Room,$has_explosives,bombs,$has_age|child,sticks", + "@Dodongos Cavern MQ/Boss Room,$has_explosives,bombs,$has_age|child,sword1", + "@Dodongos Cavern MQ/Boss Room,$has_explosives,lift1,$has_age|adult", + "@Dodongos Cavern MQ/Boss Room,$has_explosives,lift1,$has_age|child,sticks", + "@Dodongos Cavern MQ/Boss Room,$has_explosives,lift1,$has_age|child,sword1", + "@Dodongos Cavern MQ/Boss Room,dodongos_cavern_shortcuts,bombs,$has_age|adult", + "@Dodongos Cavern MQ/Boss Room,dodongos_cavern_shortcuts,bombs,$has_age|child,sticks", + "@Dodongos Cavern MQ/Boss Room,dodongos_cavern_shortcuts,bombs,$has_age|child,sword1", + "@Dodongos Cavern MQ/Boss Room,dodongos_cavern_shortcuts,lift1,$has_age|adult", + "@Dodongos Cavern MQ/Boss Room,dodongos_cavern_shortcuts,lift1,$has_age|child,sticks", + "@Dodongos Cavern MQ/Boss Room,dodongos_cavern_shortcuts,lift1,$has_age|child,sword1", + "@Dodongos Cavern MQ/Boss Room,bombchu,[bombs],$has_age|adult,shield2", + "@Dodongos Cavern MQ/Boss Room,bombchu,[bombs],$has_age|adult,shield3" ], "hosted_item": "dodongo", "chest_unopened_img": "images/HC.png", @@ -997,6 +1103,7 @@ { "name": "Boss Area", "access_rules": [ + "@Jabu Jabus Belly/Main,jabu_shortcuts", "@Jabu Jabus Belly/Depths,sticks", "@Jabu Jabus Belly/Depths,sword1" ], @@ -1106,7 +1213,8 @@ { "name": "Barinade", "access_rules": [ - "@Jabu Jabus Belly/Boss Area,boomerang" + "@Jabu Jabus Belly/Boss Area,boomerang,sticks", + "@Jabu Jabus Belly/Boss Area,boomerang,sword1" ], "hosted_item": "jabu", "chest_unopened_img": "images/HC.png", @@ -1136,7 +1244,18 @@ { "name": "Main", "access_rules": [ - "sling" + "sling", + "jabu_shortcuts" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Elevator Room", + "access_rules": [ + "@Jabu Jabus Belly MQ/Main" ], "visibility_rules": [ "hidden_region" @@ -1146,7 +1265,7 @@ { "name": "Depths", "access_rules": [ - "@Jabu Jabus Belly MQ/Main,$has_explosives,boomerang" + "@Jabu Jabus Belly MQ/Main,$has_explosives,boomerang,sling" ], "visibility_rules": [ "hidden_region" @@ -1154,10 +1273,21 @@ "item_count": 1 }, { - "name": "Boss Area", + "name": "Past Big Octo", "access_rules": [ "@Jabu Jabus Belly MQ/Depths,sticks", - "@Jabu Jabus Belly MQ/Depths,sword1,dinsfire,magic" + "@Jabu Jabus Belly MQ/Depths,dinsfire,magic,sword1" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Boss Area", + "access_rules": [ + "@Jabu Jabus Belly MQ/Elevator Room,jabu_shortcuts", + "@Jabu Jabus Belly MQ/Past Big Octo" ], "visibility_rules": [ "hidden_region" @@ -1185,7 +1315,7 @@ "name": "Second Room Lower Chest", "short_name": "Second Room Lower", "access_rules": [ - "@Jabu Jabus Belly MQ/Main" + "@Jabu Jabus Belly MQ/Elevator Room" ], "item_count": 1 }, @@ -1193,7 +1323,9 @@ "name": "Compass Chest", "short_name": "Compass", "access_rules": [ - "@Jabu Jabus Belly MQ/Main" + "@Jabu Jabus Belly MQ/Elevator Room,sling", + "@Jabu Jabus Belly MQ/Elevator Room,$has_bombchus", + "@Jabu Jabus Belly MQ/Elevator Room,[logic_jabu_mq_rang_jump],boomerang" ], "chest_unopened_img": "images/chest_brown_compass.png", "item_count": 1 @@ -1202,23 +1334,34 @@ "name": "Basement Chests", "short_name": "Basement", "access_rules": [ - "@Jabu Jabus Belly MQ/Main" + "@Jabu Jabus Belly MQ/Main,sling" ], "item_count": 2 }, { - "name": "Boomerang Room Chests", - "short_name": "Boomerang", + "name": "Boomerang Room Small Chest", + "short_name": "Boomerang Small", "access_rules": [ "@Jabu Jabus Belly MQ/Main" ], - "item_count": 2 + "item_count": 1 + }, + { + "name": "Boomerang Chest", + "short_name": "Boomerang", + "access_rules": [ + "@Jabu Jabus Belly MQ/Main,sword1", + "@Jabu Jabus Belly MQ/Main,sling", + "@Jabu Jabus Belly MQ/Main,bombs", + "@Jabu Jabus Belly MQ/Main,sticks" + ], + "item_count": 1 }, { "name": "GS Boomerang Chest Room", "short_name": "Boomerang", "access_rules": [ - "@Jabu Jabus Belly MQ/Main,ocarina,time", + "@Jabu Jabus Belly MQ/Main,ocarina,time,$can_child_attack", "@Jabu Jabus Belly MQ/Main,[logic_jabu_mq_sot_gs],boomerang" ], "visibility_rules": [ @@ -1254,8 +1397,8 @@ "name": "GS Invisible Enemies Room", "short_name": "Invis Enemies", "access_rules": [ - "@Jabu Jabus Belly MQ/Depths,[logic_lens_jabu_mq]", - "@Jabu Jabus Belly MQ/Depths,$can_use_lens", + "@Jabu Jabus Belly MQ/Main,@Jabu Jabus Belly MQ/Depths,[logic_lens_jabu_mq],sling,boomerang", + "@Jabu Jabus Belly MQ/Main,jabu_shortcuts,$can_use_lens,sling,boomerang", "{$hintable}" ], "visibility_rules": [ @@ -1269,7 +1412,7 @@ { "name": "Cow", "access_rules": [ - "@Jabu Jabus Belly MQ/Boss Area,ocarina,epona", + "@Jabu Jabus Belly MQ/Past Big Octo,ocarina,epona", "{$hintable}" ], "visibility_rules": [ @@ -1284,7 +1427,8 @@ "name": "Second Room Upper Chest", "short_name": "Second Room Upper", "access_rules": [ - "@Jabu Jabus Belly MQ/Boss Area" + "@Jabu Jabus Belly MQ/Elevator Room,sling,@Jabu Jabus Belly MQ/Boss Area", + "@Jabu Jabus Belly MQ/Elevator Room,sling,jabu_shortcuts" ], "item_count": 1 }, @@ -1292,7 +1436,7 @@ "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ - "@Jabu Jabus Belly MQ/Boss Area" + "@Jabu Jabus Belly MQ/Boss Area,boomerang" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -1305,14 +1449,15 @@ "name": "Near Boss Chest", "short_name": "Near Boss", "access_rules": [ - "@Jabu Jabus Belly MQ/Boss Area" + "@Jabu Jabus Belly MQ/Boss Area,sling" ], "item_count": 1 }, { "name": "Barinade", "access_rules": [ - "@Jabu Jabus Belly MQ/Boss Area" + "@Jabu Jabus Belly MQ/Boss Area,boomerang,sticks", + "@Jabu Jabus Belly MQ/Boss Area,boomerang,sword1" ], "hosted_item": "jabu", "chest_unopened_img": "images/HC.png", @@ -1625,6 +1770,7 @@ { "name": "Boss Region", "access_rules": [ + "forest_temple_shortcuts", "@Forest Temple/Bow Region,@Forest Temple/Falling Room,$has_age|adult,bow" ], "visibility_rules": [ @@ -1851,7 +1997,8 @@ { "name": "Phantom Ganon", "access_rules": [ - "@Forest Temple/Boss Region,forest_boss_key" + "@Forest Temple/Boss Region,forest_boss_key,$has_age|adult,bow", + "@Forest Temple/Boss Region,forest_boss_key,$has_age|adult,hookshot" ], "hosted_item": "forest", "chest_unopened_img": "images/HC.png", @@ -1991,6 +2138,7 @@ { "name": "Boss Region", "access_rules": [ + "forest_temple_shortcuts", "@Forest Temple MQ/Falling Room,@Forest Temple MQ/Bow Region,bow,forest_small_keys:4,[forest_small_keys:6]" ], "visibility_rules": [ @@ -2176,7 +2324,8 @@ { "name": "Phantom Ganon", "access_rules": [ - "@Forest Temple MQ/Boss Region,forest_boss_key" + "@Forest Temple MQ/Boss Region,forest_boss_key,$has_age|adult,bow", + "@Forest Temple MQ/Boss Region,forest_boss_key,$has_age|adult,hookshot" ], "hosted_item": "forest", "chest_unopened_img": "images/HC.png", @@ -2473,6 +2622,7 @@ "access_rules": [ "[$goron_tunic],hammer,fire_boss_key,[logic_fire_boss_door_jump]", "[$goron_tunic],hammer,fire_boss_key,hoverboots", + "[$goron_tunic],hammer,fire_boss_key,fire_temple_shortcuts", "[$goron_tunic],hammer,fire_boss_key,@Fire Temple/West Tower,ocarina,time", "[$goron_tunic],hammer,fire_boss_key,@Fire Temple/West Tower,$has_explosives" ], @@ -2561,6 +2711,7 @@ "access_rules": [ "$has_age|adult,[$goron_tunic],hammer,fire_boss_key,$has_fire,[logic_fire_boss_door_jump]", "$has_age|adult,[$goron_tunic],hammer,fire_boss_key,$has_fire,hoverboots", + "$has_age|adult,[$goron_tunic],hammer,fire_boss_key,$has_fire,fire_temple_shortcuts", "$has_age|adult,[$goron_tunic],hammer,fire_boss_key,@Fire Temple MQ/West Top" ], "visibility_rules": [ @@ -3352,7 +3503,26 @@ { "name": "Huge Pit", "access_rules": [ - "@Shadow Temple/First Beamos,shadow_small_keys:1,$has_explosives" + "@Shadow Temple/First Beamos,$has_explosives,shadow_small_keys:1,$has_exact|shadow_temple_shortcuts|0", + "@Shadow Temple/First Beamos,$has_explosives,shadow_small_keys:5", + "@Shadow Temple/First Beamos,$has_explosives,shadow_small_keys:4,[logic_lens_shadow_platform]", + "@Shadow Temple/First Beamos,$has_explosives,shadow_small_keys:4,$can_use_lens", + //below resolves cyclic references + "@Shadow Temple/First Beamos,shadow_temple_shortcuts,shadow_small_keys:4,hookshot,[logic_lens_shadow_platform]", + "@Shadow Temple/First Beamos,shadow_temple_shortcuts,shadow_small_keys:4,hookshot,$can_use_lens" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Invisible Spikes", + "access_rules": [ + "@Shadow Temple/Huge Pit,shadow_small_keys:2,[logic_lens_shadow_platform]", + "@Shadow Temple/Huge Pit,shadow_small_keys:2,$can_use_lens", + //below resolves cyclic references + "@Shadow Temple/First Beamos,shadow_temple_shortcuts,shadow_small_keys:4,hookshot" ], "visibility_rules": [ "hidden_region" @@ -3362,8 +3532,33 @@ { "name": "Wind Tunnel", "access_rules": [ - "@Shadow Temple/Huge Pit,shadow_small_keys:3,hookshot,[logic_lens_shadow_back]", - "@Shadow Temple/Huge Pit,shadow_small_keys:3,hookshot,$can_use_lens" + "@Shadow Temple/Invisible Spikes,hookshot,shadow_small_keys:3", + //below resolves cyclic references + "@Shadow Temple/First Beamos,shadow_temple_shortcuts,shadow_small_keys:4" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "After Wind", + "access_rules": [ + "@Shadow Temple/Wind Tunnel", + //below resolves cyclic references + "@Shadow Temple/First Beamos,shadow_temple_shortcuts,shadow_small_keys:4" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Boat", + "access_rules": [ + "@Shadow Temple/After Wind,shadow_small_keys:4", + //below resolves cyclic references + "@Shadow Temple/First Beamos,shadow_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -3373,7 +3568,20 @@ { "name": "Beyond Boat", "access_rules": [ - "@Shadow Temple/Wind Tunnel,shadow_small_keys:4,ocarina,lullaby" + "@Shadow Temple/Boat,ocarina,lullaby" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Boss Room", + "access_rules": [ + "@Shadow Temple/Beyond Boat,shadow_small_keys:5,shadow_boss_key,bow", + "@Shadow Temple/Beyond Boat,shadow_small_keys:5,shadow_boss_key,longshot,ocarina,scarecrow", + "@Shadow Temple/Beyond Boat,shadow_small_keys:5,shadow_boss_key,$has_bombchus,[logic_shadow_statue]", + "@Shadow Temple/Beyond Boat,shadow_small_keys:5,shadow_boss_key,shadow_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -3476,8 +3684,7 @@ "name": "Invisible Spikes Chest", "short_name": "Invisible Spikes", "access_rules": [ - "@Shadow Temple/Huge Pit,shadow_small_keys:2,[logic_lens_shadow_back]", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,$can_use_lens" + "@Shadow Temple/Invisible Spikes" ], "item_count": 1 }, @@ -3485,12 +3692,9 @@ "name": "Freestanding Key", "short_name": "Skull Pot", "access_rules": [ - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,[logic_lens_shadow_back],bombs", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,[logic_lens_shadow_back],lift1", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,[logic_lens_shadow_back],[logic_shadow_freestanding_key],$has_bombchus", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,$can_use_lens,bombs", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,$can_use_lens,lift1", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,$can_use_lens,[logic_shadow_freestanding_key],$has_bombchus", + "@Shadow Temple/Invisible Spikes,hookshot,bombs", + "@Shadow Temple/Invisible Spikes,hookshot,lift1", + "@Shadow Temple/Invisible Spikes,hookshot,[logic_shadow_freestanding_key],$has_bombchus", "{$hintable}" ], "capture_item": true, @@ -3502,8 +3706,7 @@ "name": "GS Single Giant Pot", "short_name": "Single Skull", "access_rules": [ - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,[logic_lens_shadow_back]", - "@Shadow Temple/Huge Pit,shadow_small_keys:2,hookshot,$can_use_lens" + "@Shadow Temple/Invisible Spikes,hookshot" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -3521,20 +3724,28 @@ "item_count": 1 }, { - "name": "After Wind Chests", - "short_name": "After Wind", + "name": "After Wind Enemy Chest", + "short_name": "After Wind Enemy", "access_rules": [ - "@Shadow Temple/Wind Tunnel" + "@Shadow Temple/After Wind" + ], + "item_count": 1 + }, + { + "name": "After Wind Hidden Chest", + "short_name": "After Wind Hidden", + "access_rules": [ + "@Shadow Temple/After Wind,$has_explosives" ], "chest_unopened_img": "images/chest_brown_small_key.png", - "item_count": 2 + "item_count": 1 }, { "name": "GS Near Ship", "short_name": "Near Boat", "access_rules": [ - "@Shadow Temple/Wind Tunnel,shadow_small_keys:4,longshot", - "{@Shadow Temple/Wind Tunnel,shadow_small_keys:4,bow}" + "@Shadow Temple/Boat,longshot", + "{@Shadow Temple/Boat,bow}" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -3587,9 +3798,9 @@ { "name": "Bongo Bongo", "access_rules": [ - "@Shadow Temple/Beyond Boat,shadow_boss_key,shadow_small_keys:5,longshot,ocarina,scarecrow", - "@Shadow Temple/Beyond Boat,shadow_boss_key,shadow_small_keys:5,bow", - "@Shadow Temple/Beyond Boat,shadow_boss_key,shadow_small_keys:5,$has_bombchus,[logic_shadow_statue]" + "@Shadow Temple/Boss Room,[logic_shadow_bongo]", + "@Shadow Temple/Boss Room,bow", + "@Shadow Temple/Boss Room,hookshot" ], "hosted_item": "shadow", "chest_unopened_img": "images/HC.png", @@ -3645,6 +3856,7 @@ { "name": "First Beamos", "access_rules": [ + "@Shadow Temple MQ/Beginning,shadow_temple_shortcuts", "@Shadow Temple MQ/Beginning,bow,firearrow,magic", "@Shadow Temple MQ/Beginning,hoverboots", "@Shadow Temple MQ/Beginning,[logic_shadow_mq_gap],longshot" @@ -3657,7 +3869,38 @@ { "name": "Upper Huge Pit", "access_rules": [ - "@Shadow Temple MQ/First Beamos,$has_explosives,shadow_small_keys:1,[shadow_small_keys:2]" + "@Shadow Temple MQ/First Beamos,$has_explosives,shadow_small_keys:1,[shadow_small_keys:2],$has_exact|shadow_temple_shortcuts|0", + "@Shadow Temple MQ/First Beamos,$has_explosives,shadow_small_keys:1,[shadow_small_keys:5]", + //below resolves cyclic references + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:3,[shadow_small_keys:5],hoverboots,longshot,[logic_lens_shadow_mq_platform]", + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:3,[shadow_small_keys:5],hoverboots,longshot,$can_use_lens", + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Invisible Blades", + "access_rules": [ + "@Shadow Temple MQ/Upper Huge Pit,$has_exact|shadow_temple_shortcuts|0,ocarina,time,[logic_lens_shadow_mq_invisible_blades]", + "@Shadow Temple MQ/Upper Huge Pit,$has_exact|shadow_temple_shortcuts|0,ocarina,time,$can_use_lens", + "@Shadow Temple MQ/Upper Huge Pit,$has_exact|shadow_temple_shortcuts|0,ocarina,time,nayruslove,magic", + "@Shadow Temple MQ/Upper Huge Pit,$has_exact|shadow_temple_shortcuts|0,[logic_shadow_mq_invisible_blades],$damage_below_ohko,[logic_lens_shadow_mq_invisible_blades]", + "@Shadow Temple MQ/Upper Huge Pit,$has_exact|shadow_temple_shortcuts|0,[logic_shadow_mq_invisible_blades],$damage_below_ohko,$can_use_lens", + "@Shadow Temple MQ/Upper Huge Pit,$has_exact|shadow_temple_shortcuts|0,[logic_shadow_mq_invisible_blades],$damage_below_ohko,nayruslove,magic", + "@Shadow Temple MQ/Upper Huge Pit,[shadow_small_keys:6],ocarina,time,[logic_lens_shadow_mq_invisible_blades]", + "@Shadow Temple MQ/Upper Huge Pit,[shadow_small_keys:6],ocarina,time,$can_use_lens", + "@Shadow Temple MQ/Upper Huge Pit,[shadow_small_keys:6],ocarina,time,nayruslove,magic", + "@Shadow Temple MQ/Upper Huge Pit,[shadow_small_keys:6],[logic_shadow_mq_invisible_blades],$damage_below_ohko,[logic_lens_shadow_mq_invisible_blades]", + "@Shadow Temple MQ/Upper Huge Pit,[shadow_small_keys:6],[logic_shadow_mq_invisible_blades],$damage_below_ohko,$can_use_lens", + "@Shadow Temple MQ/Upper Huge Pit,[shadow_small_keys:6],[logic_shadow_mq_invisible_blades],$damage_below_ohko,nayruslove,magic", + "@Shadow Temple MQ/Upper Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,ocarina,time,[logic_lens_shadow_mq_invisible_blades]", + "@Shadow Temple MQ/Upper Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,ocarina,time,nayruslove,magic", + "@Shadow Temple MQ/Upper Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,[logic_shadow_mq_invisible_blades],$damage_below_ohko,[logic_lens_shadow_mq_invisible_blades]", + "@Shadow Temple MQ/Upper Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,[logic_shadow_mq_invisible_blades],$damage_below_ohko,nayruslove,magic", + "@Shadow Temple MQ/Upper Huge Pit,$can_use_lens,hoverboots,ocarina,time", + "@Shadow Temple MQ/Upper Huge Pit,$can_use_lens,hoverboots,[logic_shadow_mq_invisible_blades],$damage_below_ohko" ], "visibility_rules": [ "hidden_region" @@ -3668,7 +3911,39 @@ "name": "Lower Huge Pit", "access_rules": [ "@Shadow Temple MQ/Upper Huge Pit,$has_fire", - "@Shadow Temple MQ/Upper Huge Pit,[logic_shadow_mq_huge_pit]" + "@Shadow Temple MQ/Upper Huge Pit,[logic_shadow_mq_huge_pit]", + //below resolves cyclic references + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:3,[shadow_small_keys:5],hoverboots,hookshot,[logic_lens_shadow_mq_platform]", + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:3,[shadow_small_keys:5],hoverboots,hookshot,$can_use_lens", + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Falling Spikes", + "access_rules": [ + "@Shadow Temple MQ/Lower Huge Pit,$has_exact|shadow_temple_shortcuts|0", + "@Shadow Temple MQ/Lower Huge Pit,shadow_small_keys:1,[shadow_small_keys:6]", + "@Shadow Temple MQ/Lower Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,$has_fire", + "@Shadow Temple MQ/Lower Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,[logic_shadow_mq_huge_pit]", + "@Shadow Temple MQ/Lower Huge Pit,$can_use_lens,hoverboots,$has_fire", + "@Shadow Temple MQ/Lower Huge Pit,$can_use_lens,hoverboots,[logic_shadow_mq_huge_pit]" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Invisible Spikes", + "access_rules": [ + "@Shadow Temple MQ/Lower Huge Pit,[logic_lens_shadow_mq_platform],hoverboots,shadow_small_keys:2,[shadow_small_keys:3]", + "@Shadow Temple MQ/Lower Huge Pit,$can_use_lens,hoverboots,shadow_small_keys:2,[shadow_small_keys:3]", + //below resolves cyclic references + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:2,[shadow_small_keys:5],hoverboots,hookshot", + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:2,[shadow_small_keys:5],[logic_shadow_mq_windy_walkway],hookshot", ], "visibility_rules": [ "hidden_region" @@ -3678,8 +3953,34 @@ { "name": "Wind Tunnel", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit,hoverboots,hookshot,shadow_small_keys:3,[shadow_small_keys:4],[logic_lens_shadow_mq_back]", - "@Shadow Temple MQ/Lower Huge Pit,hoverboots,hookshot,shadow_small_keys:3,[shadow_small_keys:4],$can_use_lens" + "@Shadow Temple MQ/Invisible Spikes,hookshot,shadow_small_keys:3,[shadow_small_keys:4]", + //below resolves cyclic references + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:1,[shadow_small_keys:5],hoverboots", + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:1,[shadow_small_keys:5],[logic_shadow_mq_windy_walkway]", + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "After Wind", + "access_rules": [ + "@Shadow Temple MQ/Wind Tunnel", + //below resolves cyclic references + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts,shadow_small_keys:1,[shadow_small_keys:5]" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, + { + "name": "Boat", + "access_rules": [ + "@Shadow Temple MQ/After Wind,shadow_small_keys:4,[shadow_small_keys:5]", + //below resolves cyclic references + "@Shadow Temple MQ/First Beamos,shadow_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -3689,7 +3990,7 @@ { "name": "Beyond Boat", "access_rules": [ - "@Shadow Temple MQ/Wind Tunnel,ocarina,lullaby,shadow_small_keys:4,[shadow_small_keys:5]" + "@Shadow Temple MQ/Boat,ocarina,lullaby" ], "visibility_rules": [ "hidden_region" @@ -3706,6 +4007,18 @@ ], "item_count": 1 }, + { + "name": "Near Boss", + "access_rules": [ + "@Shadow Temple MQ/Beyond Boat,bow,hoverboots", + "@Shadow Temple MQ/Beyond Boat,[logic_shadow_statue],$has_bombchus,hoverboots", + "@Shadow Temple MQ/Beyond Boat,shadow_temple_shortcuts,hoverboots" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, { "name": "Compass Chest", "short_name": "Compass", @@ -3754,8 +4067,7 @@ "name": "Invisible Blades Chests", "short_name": "Like Like", "access_rules": [ - "@Shadow Temple MQ/Upper Huge Pit,ocarina,time", - "@Shadow Temple MQ/Upper Huge Pit,[logic_shadow_mq_invisible_blades],$damage_below_ohko" + "@Shadow Temple MQ/Invisible Blades" ], "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 2 @@ -3764,7 +4076,7 @@ "name": "Beamos Silver Rupees Chest", "short_name": "Beamos Silvers", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit,longshot" + "@Shadow Temple MQ/Falling Spikes,longshot" ], "item_count": 1 }, @@ -3772,7 +4084,7 @@ "name": "Falling Spikes Lower Chest", "short_name": "Crusher Lower", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit" + "@Shadow Temple MQ/Falling Spikes" ], "item_count": 1 }, @@ -3780,11 +4092,11 @@ "name": "GS Falling Spikes Room", "short_name": "Crusher", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit,[logic_shadow_umbrella_gs],hoverboots", - "@Shadow Temple MQ/Lower Huge Pit,hookshot", - "@Shadow Temple MQ/Lower Huge Pit,[hookshot],bombs,shield2", - "@Shadow Temple MQ/Lower Huge Pit,[hookshot],bombs,shield3", - "{@Shadow Temple MQ/Lower Huge Pit}" + "@Shadow Temple MQ/Falling Spikes,[logic_shadow_umbrella_gs],hoverboots", + "@Shadow Temple MQ/Falling Spikes,hookshot", + "@Shadow Temple MQ/Falling Spikes,[hookshot],bombs,shield2", + "@Shadow Temple MQ/Falling Spikes,[hookshot],bombs,shield3", + "{@Shadow Temple MQ/Falling Spikes}" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -3798,8 +4110,8 @@ "name": "Falling Spikes Upper Chests", "short_name": "Crusher Upper", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit,[logic_shadow_umbrella],[hoverboots]", - "@Shadow Temple MQ/Lower Huge Pit,lift1" + "@Shadow Temple MQ/Falling Spikes,[logic_shadow_umbrella],[hoverboots]", + "@Shadow Temple MQ/Falling Spikes,lift1" ], "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 2 @@ -3808,8 +4120,7 @@ "name": "Invisible Spikes Chest", "short_name": "Invisible Spikes", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit,hoverboots,shadow_small_keys:2,[shadow_small_keys:3],[logic_lens_shadow_mq_back]", - "@Shadow Temple MQ/Lower Huge Pit,hoverboots,shadow_small_keys:2,[shadow_small_keys:3],$can_use_lens" + "@Shadow Temple MQ/Invisible Spikes" ], "item_count": 1 }, @@ -3817,8 +4128,7 @@ "name": "Stalfos Room Chest", "short_name": "Stalfos", "access_rules": [ - "@Shadow Temple MQ/Lower Huge Pit,hoverboots,shadow_small_keys:2,[shadow_small_keys:3],hookshot,[logic_lens_shadow_mq_back]", - "@Shadow Temple MQ/Lower Huge Pit,hoverboots,shadow_small_keys:2,[shadow_small_keys:3],hookshot,$can_use_lens", + "@Shadow Temple MQ/Invisible Spikes,hookshot", "{$hintable}" ], "capture_item": true, @@ -3837,28 +4147,38 @@ "name": "GS Wind Hint Room", "short_name": "Wind Hint", "access_rules": [ - "@Shadow Temple MQ/Wind Tunnel" + "@Shadow Temple MQ/Wind Tunnel,hookshot" ], "visibility_rules": [ "setting_tokens_dungeons" ], + "capture_item": true, "chest_unopened_img": "images/skulltula.png", "chest_opened_img": "images/skulltula_token.png", "item_count": 1 }, { - "name": "After Wind Chests", - "short_name": "After Wind", + "name": "After Wind Enemy Chest", + "short_name": "After Wind Enemy", "access_rules": [ - "@Shadow Temple MQ/Wind Tunnel" + "@Shadow Temple MQ/After Wind" ], - "item_count": 2 + "item_count": 1 + }, + { + "name": "After Wind Hidden Chest", + "short_name": "After Wind Hidden", + "access_rules": [ + "@Shadow Temple MQ/After Wind,$has_explosives" + ], + "item_count": 1 }, { "name": "GS After Wind", "short_name": "After Wind", "access_rules": [ - "@Shadow Temple MQ/Wind Tunnel" + "@Shadow Temple MQ/After Wind,$has_explosives", + "@Shadow Temple MQ/After Wind,[logic_shadow_mq_after_wind_gs]" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -3871,7 +4191,7 @@ "name": "GS After Ship", "short_name": "After Ship", "access_rules": [ - "@Shadow Temple MQ/Beyond Boat" + "@Shadow Temple MQ/Beyond Boat,hookshot" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -3912,7 +4232,8 @@ "name": "Bomb Flower Chest", "short_name": "Dead Hand 2", "access_rules": [ - "@Shadow Temple MQ/Invisible Maze", + "@Shadow Temple MQ/Invisible Maze,[logic_lens_shadow_mq_dead_hand]", + "@Shadow Temple MQ/Invisible Maze,$can_use_lens", "{$hintable}" ], "capture_item": true, @@ -3922,8 +4243,8 @@ "name": "GS Near Boss", "short_name": "Near Boss", "access_rules": [ - "@Shadow Temple MQ/Beyond Boat,bow", - "@Shadow Temple MQ/Beyond Boat,$has_bombchus,[logic_shadow_statue]" + "@Shadow Temple MQ/Near Boss,$has_projectile|adult", + "@Shadow Temple MQ/Near Boss,dinsfire,magic" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -3935,8 +4256,9 @@ { "name": "Bongo Bongo", "access_rules": [ - "@Shadow Temple MQ/Beyond Boat,shadow_boss_key,bow", - "@Shadow Temple MQ/Beyond Boat,shadow_boss_key,$has_bombchus,[logic_shadow_statue]" + "@Shadow Temple MQ/Near Boss,shadow_boss_key,[logic_shadow_bongo]", + "@Shadow Temple MQ/Near Boss,shadow_boss_key,bow", + "@Shadow Temple MQ/Near Boss,shadow_boss_key,hookshot" ], "hosted_item": "shadow", "chest_unopened_img": "images/HC.png", @@ -3995,7 +4317,8 @@ { "name": "Early Adult", "access_rules": [ - "$has_age|adult,lift2" + "$has_age|adult,lift2", + "$has_age|adult,spirit_temple_shortcuts,spirit_small_keys:2,[spirit_small_keys:5],hookshot" ], "visibility_rules": [ "hidden_region" @@ -4006,7 +4329,8 @@ "name": "Child Climb", "access_rules": [ "@Spirit Temple/Child Entry,spirit_small_keys:1", - "@Spirit Temple/Early Adult,spirit_small_keys:1" + "@Spirit Temple/Early Adult,spirit_small_keys:1", + "$has_age|adult,spirit_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -4017,7 +4341,8 @@ "name": "Central Chamber", "access_rules": [ "@Spirit Temple/Child Entry,spirit_small_keys:1,$has_explosives", - "@Spirit Temple/Early Adult,spirit_small_keys:1" + "@Spirit Temple/Early Adult,spirit_small_keys:1", + "$has_age|adult,spirit_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -4037,7 +4362,8 @@ { "name": "Beyond Central Locked Door", "access_rules": [ - "@Spirit Temple/Central Chamber,spirit_small_keys:2,[spirit_small_keys:4],$has_age|adult,lift2" + "@Spirit Temple/Central Chamber,spirit_small_keys:2,[spirit_small_keys:4],$has_age|adult,lift2", + "@Spirit Temple/Central Chamber,spirit_small_keys:1,[spirit_small_keys:4],$has_age|adult,hookshot,spirit_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -4065,6 +4391,18 @@ ], "item_count": 1 }, + { + "name": "Boss Platform", + "access_rules": [ + "$has_age|adult,spirit_temple_shortcuts,longshot", + "$has_age|adult,spirit_temple_shortcuts,[logic_spirit_platform_hookshot],hookshot", + "@Spirit Temple/Beyond Final Locked Door,shield3,$has_explosives" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, { "name": "Child Bridge Chest", "short_name": "Child Left", @@ -4102,8 +4440,9 @@ "access_rules": [ "@Spirit Temple/Child Climb,$has_projectile|both", "@Spirit Temple/Child Climb,$has_projectile|child,[spirit_small_keys:5],$child_colossus", - "@Spirit Temple/Child Climb,$has_projectile|adult,[spirit_small_keys:3],lift2", - "@Spirit Temple/Child Climb,$has_projectile|adult,[spirit_small_keys:2],lift2,setting_logic_chus_yes" + "@Spirit Temple/Child Climb,$has_projectile|adult,spirit_temple_shortcuts,$has_age|adult", + "@Spirit Temple/Child Climb,$has_projectile|adult,[spirit_small_keys:3],$has_age|adult", + "@Spirit Temple/Child Climb,$has_projectile|adult,[spirit_small_keys:2],$has_age|adult,setting_logic_chus_yes" ], "item_count": 2 }, @@ -4117,10 +4456,12 @@ "@Spirit Temple/Child Climb,$damage_single_instance_ohko,sword1", "@Spirit Temple/Child Climb,$damage_single_instance_ohko,$has_projectile|child", "@Spirit Temple/Child Climb,$child_colossus,[spirit_small_keys:5],$has_projectile|child", - "@Spirit Temple/Child Climb,lift2,$has_projectile|adult,[spirit_small_keys:3]", - "@Spirit Temple/Child Climb,lift2,$has_projectile|adult,[spirit_small_keys:2],setting_logic_chus_yes", - "@Spirit Temple/Child Climb,lift2,$damage_single_instance_ohko,[spirit_small_keys:3]", - "@Spirit Temple/Child Climb,lift2,$damage_single_instance_ohko,[spirit_small_keys:2],setting_logic_chus_yes" + "@Spirit Temple/Child Climb,$has_age|adult,$has_projectile|adult,spirit_temple_shortcuts", + "@Spirit Temple/Child Climb,$has_age|adult,$has_projectile|adult,[spirit_small_keys:3]", + "@Spirit Temple/Child Climb,$has_age|adult,$has_projectile|adult,[spirit_small_keys:2],setting_logic_chus_yes", + "@Spirit Temple/Child Climb,$has_age|adult,$damage_single_instance_ohko,spirit_temple_shortcuts", + "@Spirit Temple/Child Climb,$has_age|adult,$damage_single_instance_ohko,[spirit_small_keys:3]", + "@Spirit Temple/Child Climb,$has_age|adult,$damage_single_instance_ohko,[spirit_small_keys:2],setting_logic_chus_yes" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -4135,16 +4476,20 @@ "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,dinsfire,magic", "@Spirit Temple/Central Chamber,$has_explosives,magic,firearrow,bow,sticks", - "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_map_chest],bow,sticks", + "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_sun_chest],bow,sticks", "@Spirit Temple/Central Chamber,[spirit_small_keys:3],dinsfire,magic", "@Spirit Temple/Central Chamber,[spirit_small_keys:3],magic,firearrow,bow,sticks", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_map_chest],bow,sticks", + "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_sun_chest],bow,sticks", "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,dinsfire,magic", "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,magic,firearrow,bow,sticks", - "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_map_chest],bow,sticks", + "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_sun_chest],bow,sticks", "@Spirit Temple/Central Chamber,$child_colossus,[spirit_small_keys:5],$has_explosives,sticks", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],magic,firearrow,bow,lift2", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_map_chest],bow,lift2" + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],dinsfire,magic", + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],magic,firearrow,bow", + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],[logic_spirit_sun_chest],bow", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,dinsfire,magic", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,magic,firearrow,bow", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,[logic_spirit_sun_chest],bow" ], "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 1 @@ -4155,10 +4500,11 @@ "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,boomerang,hookshot", "@Spirit Temple/Central Chamber,$child_colossus,boomerang,[spirit_small_keys:5],$has_explosives", - "@Spirit Temple/Central Chamber,hookshot,$has_age|adult,lift2,[spirit_small_keys:3]", - "@Spirit Temple/Central Chamber,hookshot,$has_age|adult,lift2,[spirit_small_keys:2],boomerang,setting_logic_chus_yes", + "@Spirit Temple/Central Chamber,hookshot,$has_age|adult,spirit_temple_shortcuts", + "@Spirit Temple/Central Chamber,hookshot,$has_age|adult,[spirit_small_keys:3]", + "@Spirit Temple/Central Chamber,hookshot,$has_age|adult,[spirit_small_keys:2],boomerang,setting_logic_chus_yes", "{@Spirit Temple/Central Chamber,$child_colossus,sling,$has_explosives}", - "{@Spirit Temple/Central Chamber,bow,$has_age|adult,lift2}" + "{@Spirit Temple/Central Chamber,bow,$has_age|adult}" ], "visibility_rules": [ "setting_tokens_dungeons" @@ -4172,8 +4518,8 @@ "name": "Silver Gauntlets Chest", "short_name": "Right Hand", "access_rules": [ - "@Spirit Temple/Outdoor Hands,spirit_small_keys:2,[spirit_small_keys:3],longshot,$has_explosives", - "@Spirit Temple/Outdoor Hands,spirit_small_keys:2,[spirit_small_keys:5]", + "@Spirit Temple/Outdoor Hands,[spirit_small_keys:3],longshot,$has_explosives", + "@Spirit Temple/Outdoor Hands,[spirit_small_keys:5]", "{$hintable}" ], "capture_item": true, @@ -4185,16 +4531,20 @@ "access_rules": [ "@Spirit Temple/Central Chamber,$has_explosives,dinsfire,magic", "@Spirit Temple/Central Chamber,$has_explosives,magic,firearrow,bow,sticks", - "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_sun_chest],bow,sticks", + "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_map_chest],bow,sticks", "@Spirit Temple/Central Chamber,[spirit_small_keys:3],dinsfire,magic", "@Spirit Temple/Central Chamber,[spirit_small_keys:3],magic,firearrow,bow,sticks", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_sun_chest],bow,sticks", + "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_map_chest],bow,sticks", "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,dinsfire,magic", "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,magic,firearrow,bow,sticks", - "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_sun_chest],bow,sticks", + "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_map_chest],bow,sticks", "@Spirit Temple/Central Chamber,$child_colossus,[spirit_small_keys:5],$has_explosives,sticks", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],magic,firearrow,bow,lift2", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_sun_chest],bow,lift2" + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],dinsfire,magic", + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],magic,firearrow,bow", + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],[logic_spirit_map_chest],bow", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,dinsfire,magic", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,magic,firearrow,bow", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,[logic_spirit_map_chest],bow" ], "chest_unopened_img": "images/chest_brown_map.png", "item_count": 1 @@ -4203,21 +4553,24 @@ "name": "GS Lobby", "short_name": "Lobby", "access_rules": [ - "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hookshot", - "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hoverboots", - "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,[logic_spirit_lobby_jump]", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hookshot", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hoverboots", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,[logic_spirit_lobby_jump]", - "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hookshot", - "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,hoverboots", - "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_lobby_gs],boomerang,$has_age|adult,lift2,[logic_spirit_lobby_jump]", + "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,hookshot", + "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,hoverboots", + "@Spirit Temple/Central Chamber,$has_explosives,[logic_spirit_lobby_gs],boomerang,[logic_spirit_lobby_jump]", + "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_lobby_gs],boomerang,hookshot", + "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_lobby_gs],boomerang,hoverboots", + "@Spirit Temple/Central Chamber,[spirit_small_keys:3],[logic_spirit_lobby_gs],boomerang,[logic_spirit_lobby_jump]", + "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_lobby_gs],boomerang,hookshot", + "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_lobby_gs],boomerang,hoverboots", + "@Spirit Temple/Central Chamber,[spirit_small_keys:2],setting_logic_chus_yes,[logic_spirit_lobby_gs],boomerang,[logic_spirit_lobby_jump]", "@Spirit Temple/Central Chamber,[spirit_small_keys:5],[logic_spirit_lobby_gs],$has_explosives,$child_colossus,boomerang", "{@Spirit Temple/Central Chamber,$has_explosives,$child_colossus,sling}", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],$has_age|adult,lift2,hookshot", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],$has_age|adult,lift2,hoverboots", - "@Spirit Temple/Central Chamber,[spirit_small_keys:3],$has_age|adult,lift2,[logic_spirit_lobby_jump]", - "{@Spirit Temple/Central Chamber,$has_age|adult,lift2,bow}" + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],hookshot", + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],hoverboots", + "@Spirit Temple/Central Chamber,$has_age|adult,[spirit_small_keys:3],[logic_spirit_lobby_jump]", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,hookshot", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,hoverboots", + "@Spirit Temple/Central Chamber,$has_age|adult,spirit_temple_shortcuts,[logic_spirit_lobby_jump]", + "{@Spirit Temple/Central Chamber,$has_age|adult,bow}" ], "capture_item": true, "visibility_rules": [ @@ -4267,7 +4620,8 @@ "name": "First Mirror Chests", "short_name": "Mirror", "access_rules": [ - "@Spirit Temple/Early Adult,spirit_small_keys:1,[spirit_small_keys:3]" + "@Spirit Temple/Central Chamber,$has_age|adult,lift2,spirit_small_keys:1,[spirit_small_keys:3]", + "@Spirit Temple/Central Chamber,$has_age|adult,hookshot,spirit_temple_shortcuts" ], "item_count": 2 }, @@ -4275,7 +4629,8 @@ "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" + "@Spirit Temple/Central Chamber,$has_age|adult,lift2,spirit_small_keys:1,[spirit_small_keys:3],ocarina,lullaby", + "@Spirit Temple/Central Chamber,$has_age|adult,hookshot,spirit_temple_shortcuts,ocarina,lullaby" ], "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 1 @@ -4312,7 +4667,8 @@ "name": "Mirror Shield Chest", "short_name": "Left Hand", "access_rules": [ - "@Spirit Temple/Outdoor Hands,spirit_small_keys:2,[spirit_small_keys:4],$has_age|adult,lift2,$has_explosives", + "spirit_small_keys:2,[spirit_small_keys:4],$has_age|adult,lift2,$has_explosives", + "spirit_small_keys:1,[spirit_small_keys:4],$has_age|adult,spirit_temple_shortcuts,hookshot,$has_explosives", "{$hintable}" ], "capture_item": true, @@ -4339,7 +4695,7 @@ { "name": "Twinrova", "access_rules": [ - "@Spirit Temple/Beyond Final Locked Door,shield3,$has_explosives,hookshot,spirit_boss_key" + "@Spirit Temple/Boss Platform,shield3,hookshot,spirit_boss_key" ], "hosted_item": "spirit", "chest_unopened_img": "images/HC.png", @@ -4388,7 +4744,8 @@ { "name": "Adult", "access_rules": [ - "$has_bombchus,$has_age|adult,longshot,lift2" + "$has_age|adult,longshot,lift2,$has_bombchus", + "$has_age|adult,longshot,spirit_temple_shortcuts" ], "visibility_rules": [ "hidden_region" @@ -4427,6 +4784,17 @@ ], "item_count": 1 }, + { + "name": "Boss Platform", + "access_rules": [ + "@Spirit Temple MQ/Adult,spirit_temple_shortcuts", + "@Spirit Temple MQ/Boss Area,shield3" + ], + "visibility_rules": [ + "hidden_region" + ], + "item_count": 1 + }, { "name": "Mirror Shield Hand", "access_rules": [ @@ -4564,8 +4932,10 @@ "@Spirit Temple MQ/Shared,spirit_small_keys:3,[spirit_small_keys:7],ocarina,time", "@Spirit Temple MQ/Shared,spirit_small_keys:3,[spirit_small_keys:7],[logic_spirit_mq_sun_block_sot]", "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:7],$has_age|adult", - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:4],ocarina,time,[logic_lens_spirit_mq]", - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:4],ocarina,time,$can_use_lens" + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:4],ocarina,time,$has_explosives,[logic_lens_spirit_mq]", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:4],ocarina,time,$has_explosives,$can_use_lens", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:4],ocarina,time,nuts,[logic_lens_spirit_mq]", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:4],ocarina,time,nuts,$can_use_lens" ], "item_count": 1 }, @@ -4573,7 +4943,7 @@ "name": "Child Climb North Chest", "short_name": "Child Climb Ground", "access_rules": [ - "@Spirit Temple MQ/Shared,spirit_small_keys:1,[spirit_small_keys:6]" + "@Spirit Temple MQ/Shared,spirit_small_keys:1,[spirit_small_keys:6],$has_explosives" ], "item_count": 1 }, @@ -4581,7 +4951,7 @@ "name": "Child Climb South Chest", "short_name": "Child Climb Ledge", "access_rules": [ - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:7]" + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:7],$has_explosives" ], "chest_unopened_img": "images/chest_brown_small_key.png", "item_count": 1 @@ -4662,7 +5032,7 @@ "name": "Beamos Room Chest", "short_name": "Beamos", "access_rules": [ - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5]" + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],$has_explosives" ], "item_count": 1 }, @@ -4670,7 +5040,8 @@ "name": "Chest Switch Chest", "short_name": "Chest Switch", "access_rules": [ - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time" + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,$has_explosives", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,nuts" ], "item_count": 1 }, @@ -4678,7 +5049,8 @@ "name": "Boss Key Chest", "short_name": "Boss Key", "access_rules": [ - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,shield3" + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,shield3,$has_explosives", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,shield3,nuts" ], "chest_unopened_img": "images/chest_golden_closed.png", "chest_opened_img": "images/chest_golden_open.png", @@ -4688,8 +5060,10 @@ "name": "Mirror Shield Chest", "short_name": "Left Hand", "access_rules": [ - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,[logic_lens_spirit_mq]", - "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,$can_use_lens" + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,[logic_lens_spirit_mq],$has_explosives", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,[logic_lens_spirit_mq],nuts", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,$can_use_lens,$has_explosives", + "@Spirit Temple MQ/Adult,spirit_small_keys:1,[spirit_small_keys:5],ocarina,time,$can_use_lens,nuts" ], "item_count": 1 }, @@ -4732,7 +5106,7 @@ { "name": "Twinrova", "access_rules": [ - "@Spirit Temple MQ/Boss Area,shield3,spirit_boss_key" + "@Spirit Temple MQ/Boss Platform,shield3,spirit_boss_key" ], "hosted_item": "spirit", "chest_unopened_img": "images/HC.png", diff --git a/ootrando_overworldmap_hamsda/locations/dungeons_entrance.json b/ootrando_overworldmap_hamsda/locations/dungeons_entrance.json index 12552329..c3c41021 100644 --- a/ootrando_overworldmap_hamsda/locations/dungeons_entrance.json +++ b/ootrando_overworldmap_hamsda/locations/dungeons_entrance.json @@ -2985,12 +2985,20 @@ "item_count": 2 }, { - "name": "Boomerang Room Chests", + "name": "Boomerang Room Small Chest", + "short_name": "Boomerang Small", + "access_rules": [ + "$access_location|Jabu Jabus Belly MQ Boomerang Room Small Chest" + ], + "item_count": 1 + }, + { + "name": "Boomerang Chest", "short_name": "Boomerang", "access_rules": [ - "$access_location|Jabu Jabus Belly MQ Boomerang Room Chests" + "$access_location|Jabu Jabus Belly MQ Boomerang Chest" ], - "item_count": 2 + "item_count": 1 }, { "name": "GS Boomerang Chest Room", @@ -3250,13 +3258,21 @@ "item_count": 1 }, { - "name": "After Wind Chests", - "short_name": "After Wind", + "name": "After Wind Enemy Chest", + "short_name": "After Wind Enemy", "access_rules": [ - "$access_location|Shadow Temple After Wind Chests" + "$access_location|Shadow Temple After Wind Enemy Chest" + ], + "item_count": 1 + }, + { + "name": "After Wind Hidden Chest", + "short_name": "After Wind Hidden", + "access_rules": [ + "$access_location|Shadow Temple After Wind Hidden Chest" ], "chest_unopened_img": "images/chest_brown_small_key.png", - "item_count": 2 + "item_count": 1 }, { "name": "GS Near Ship", @@ -3476,17 +3492,26 @@ "visibility_rules": [ "setting_tokens_dungeons" ], + "capture_item": true, "chest_unopened_img": "images/skulltula.png", "chest_opened_img": "images/skulltula_token.png", "item_count": 1 }, { - "name": "After Wind Chests", - "short_name": "After Wind", + "name": "After Wind Enemy Chest", + "short_name": "After Wind Enemy", "access_rules": [ - "$access_location|Shadow Temple MQ After Wind Chests" + "$access_location|Shadow Temple MQ After Wind Enemy Chest" ], - "item_count": 2 + "item_count": 1 + }, + { + "name": "After Wind Hidden Chest", + "short_name": "After Wind Hidden", + "access_rules": [ + "$access_location|Shadow Temple MQ After Wind Hidden Chest" + ], + "item_count": 1 }, { "name": "GS After Wind", diff --git a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua index de4c34cc..f9dfc4ea 100644 --- a/ootrando_overworldmap_hamsda/scripts/data_per_region.lua +++ b/ootrando_overworldmap_hamsda/scripts/data_per_region.lua @@ -3712,8 +3712,11 @@ data_per_region = { ["adult_access"] = function() local wallet = has("wallet") and AccessibilityLevel.Normal or AccessibilityLevel.None local trade = - (has("oddpotion") or has("poachersaw") or has("brokensword") or has("prescription") or has("speedfrog") or has("eyedrops") or has("claimcheck")) and - AccessibilityLevel.Normal or AccessibilityLevel.None + (has("oddpotion") or has("poachersaw") or has("brokensword") or has("prescription") or has("speedfrog") or + has("eyedrops") or + has("claimcheck")) and + AccessibilityLevel.Normal or + AccessibilityLevel.None return and_accessibility(wallet, trade) end } @@ -7217,7 +7220,7 @@ data_per_region = { }, ["Deku Tree Basement Chest"] = { ["child_access"] = function() - if has("nuts") then + if has("nuts") or has("deku_tree_shortcuts") then return AccessibilityLevel.Normal end return can_child_attack() @@ -7288,6 +7291,7 @@ data_per_region = { local sling = has("slingshot") and AccessibilityLevel.Normal or AccessibilityLevel.None local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_deku_b1_skip") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local shortcut = has("deku_tree_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None local adult = access_region("Deku Tree Lobby", "adult") return or_accessibility( @@ -7295,7 +7299,7 @@ data_per_region = { or_accessibility(sticks, df, and_accessibility(adult, bow)), or_accessibility(sling, and_accessibility(adult, bow)) ), - or_accessibility(trick, adult) + or_accessibility(trick, adult, shortcut) ) end, ["adult_access"] = function() @@ -7313,6 +7317,10 @@ data_per_region = { }, ["Deku Tree Boss Room"] = { ["child_access"] = function() + if has("deku_tree_shortcuts") then + return AccessibilityLevel.Normal + end + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local fa = @@ -7335,6 +7343,10 @@ data_per_region = { ) end, ["adult_access"] = function() + if has("deku_tree_shortcuts") then + return AccessibilityLevel.Normal + end + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local fa = @@ -7421,13 +7433,13 @@ data_per_region = { ["locations"] = { ["Queen Gohma"] = { ["child_access"] = function() - if has("shield1") and (has("sword1") or has("sticks")) then + if (has("shield1") or has("deku_tree_shortcuts")) and (has("sword1") or has("sticks")) then return AccessibilityLevel.Normal end return AccessibilityLevel.None end, ["adult_access"] = function() - if has("shield2") then + if has("shield2") or has("deku_tree_shortcuts") then return AccessibilityLevel.Normal end return AccessibilityLevel.None @@ -7595,7 +7607,10 @@ data_per_region = { }, ["Deku Tree MQ Basement Ledge"] = { ["child_access"] = function() - if has("logic_deku_b1_skip") or (access_region("Deku Tree MQ Lobby", "adult") == AccessibilityLevel.Normal) then + if + has("logic_deku_b1_skip") or (access_region("Deku Tree MQ Lobby", "adult") == AccessibilityLevel.Normal) or + has("deku_tree_shortcuts") + then return AccessibilityLevel.Normal end return AccessibilityLevel.SequenceBreak @@ -7846,24 +7861,44 @@ data_per_region = { }, ["Queen Gohma"] = { ["child_access"] = function() - if has("shield1") and (has("sword1") or has("sticks")) then - if has("sticks") or (has("dinsfire") and has("magic")) then + if has("sword1") or has("sticks") then + if has("deku_tree_shortcuts") then return AccessibilityLevel.Normal - elseif has("bow") and has("firearrow") and has("magic") then - return access_region("Deku Tree MQ Basement Ledge", "adult") end + + local adult = access_region("Deku Tree MQ Basement Ledge", "adult") + local shield1 = has("shield1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shield2 = has("shield2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local fa = + (has("bow") and has("firearrow") and has("magic")) and AccessibilityLevel.Normal or + AccessibilityLevel.None + + return and_accessibility( + or_accessibility(sticks, df, and_accessibility(fa, adult)), + or_accessibility(shield1, and_accessibility(shield2, adult)) + ) end return AccessibilityLevel.None end, ["adult_access"] = function() - if has("shield2") then - if (has("dinsfire") and has("magic")) or (has("bow") and has("firearrow") and has("magic")) then - return AccessibilityLevel.Normal - elseif has("sticks") then - return access_region("Deku Tree MQ Basement Ledge", "child") - end + if has("deku_tree_shortcuts") then + return AccessibilityLevel.Normal end - return AccessibilityLevel.None + + local child = access_region("Deku Tree MQ Basement Ledge", "child") + local shield1 = has("shield1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shield2 = has("shield2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local fa = + (has("bow") and has("firearrow") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(fa, df, and_accessibility(sticks, child)), + or_accessibility(shield2, and_accessibility(shield1, child)) + ) end } }, @@ -7934,7 +7969,7 @@ data_per_region = { }, ["Dodongos Cavern Lobby"] = { ["child_access"] = function() - if has("lift1") then + if has("lift1") or has("dodongos_cavern_shortcuts") then return AccessibilityLevel.Normal end @@ -7945,7 +7980,7 @@ data_per_region = { ) end, ["adult_access"] = function() - if has("lift1") then + if has("lift1") or has("dodongos_cavern_shortcuts") then return AccessibilityLevel.Normal end return can_blast() @@ -7959,15 +7994,21 @@ data_per_region = { ["locations"] = { ["Dodongos Cavern Map Chest"] = { ["child_access"] = function() - return AccessibilityLevel.Normal + if has("lift1") then + return AccessibilityLevel.Normal + end + return has_explosives() end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("lift1") then + return AccessibilityLevel.Normal + end + return can_blast() end }, ["Dodongos Cavern GS Side Room Near Lower Lizalfos"] = { ["child_access"] = function() - if has("sling") or has("boomerang") or has("sticks") or has("sword1") then + if has("lift1") and (has("sling") or has("boomerang") or has("sticks") or has("sword1")) then return AccessibilityLevel.Normal end return has_explosives() @@ -7979,7 +8020,8 @@ data_per_region = { ["Dodongos Cavern GS Scarecrow"] = { ["child_access"] = function() local trick = has("logic_dc_scarecrow_gs") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return and_accessibility(trick, can_child_attack()) + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(trick, can_child_attack(), or_accessibility(has_explosives(), lift1)) end, ["adult_access"] = function() local ls = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None @@ -7989,18 +8031,24 @@ data_per_region = { }, ["Dodongos Cavern Deku Scrub Side Room Near Dodongos"] = { ["child_access"] = function() - if has("sling") or has("sticks") or has("sword1") then - return AccessibilityLevel.Normal + if has("sling") or has("sticks") or has("bombs") or has("sword1") then + if has("lift1") then + return AccessibilityLevel.Normal + end + return has_explosives() end - return has_explosives() + return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("lift1") then + return AccessibilityLevel.Normal + end + return can_blast() end }, ["Dodongos Cavern Deku Scrub Lobby"] = { ["child_access"] = function() - return AccessibilityLevel.Normal + return can_stun_deku() end, ["adult_access"] = function() return AccessibilityLevel.Normal @@ -8018,16 +8066,21 @@ data_per_region = { }, ["Dodongos Cavern Staircase Room"] = { ["child_access"] = function() - local explo = AccessibilityLevel.None - if has("sticks") then - return AccessibilityLevel.Normal - elseif has("dinsfire") and has("magic") then - if has("sling") or has("sword1") then - return AccessibilityLevel.Normal - end - explo = has_explosives() - end - return or_accessibility(explo, access_region("Dodongos Cavern Lobby", "adult")) + local adult = access_region("Dodongos Cavern Lobby", "adult") + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bombs = has("bombs") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sword1 = has("sword1") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility( + adult, + and_accessibility( + or_accessibility(has_explosives(), lift1), + or_accessibility(sticks, and_accessibility(df, or_accessibility(sling, bombs, sword1))) + ) + ) end, ["adult_access"] = function() return AccessibilityLevel.Normal @@ -8040,6 +8093,20 @@ data_per_region = { ["adult_access"] = function() return access_region("Dodongos Cavern Far Bridge", "child") end + }, + ["Dodongos Cavern Boss Area"] = { + ["child_access"] = function() + if has("dodongos_cavern_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("dodongos_cavern_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end } } }, @@ -8049,10 +8116,16 @@ data_per_region = { ["locations"] = { ["Dodongos Cavern Compass Chest"] = { ["child_access"] = function() - return AccessibilityLevel.Normal + if has("lift1") then + return AccessibilityLevel.Normal + end + return has_explosives() end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("lift1") then + return AccessibilityLevel.Normal + end + return can_blast() end }, ["Dodongos Cavern GS Vines Above Stairs"] = { @@ -8159,20 +8232,32 @@ data_per_region = { }, ["Dodongos Cavern Far Bridge"] = { ["child_access"] = function() - if has("sling") then - return AccessibilityLevel.Normal - end - local trick = has("logic_dc_slingshot_skip") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - if has("sticks") or has("sword1") then - return trick - end - return and_accessibility(trick, has_explosives()) + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sling = has("slingshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick_sling = + has("logic_dc_slingshot_skip") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bombs = has("bombs") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sword1 = has("sword1") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(has_explosives(), lift1), + or_accessibility(sling, and_accessibility(trick_sling, or_accessibility(sticks, bombs, sword1))) + ) end, ["adult_access"] = function() - if has("bow") or has("hoverboots") or has("longshot") or has("logic_dc_jump") then - return AccessibilityLevel.Normal - end - return AccessibilityLevel.SequenceBreak + local hovers = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local longshot = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick_jump = has("logic_dc_jump") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility( + hovers, + longshot, + trick_jump, + and_accessibility(or_accessibility(can_blast(), lift1), bow) + ) end } } @@ -8251,10 +8336,10 @@ data_per_region = { }, ["Dodongos Cavern GS Back Room"] = { ["child_access"] = function() - return AccessibilityLevel.Normal + return has_explosives() end, ["adult_access"] = function() - return AccessibilityLevel.Normal + return can_blast() end }, ["King Dodongo"] = { @@ -8299,7 +8384,7 @@ data_per_region = { }, ["Dodongos Cavern MQ Lobby"] = { ["child_access"] = function() - if has("lift1") then + if has("lift1") or has("dodongos_cavern_shortcuts") then return AccessibilityLevel.Normal end @@ -8310,7 +8395,7 @@ data_per_region = { ) end, ["adult_access"] = function() - if has("lift1") then + if has("lift1") or has("dodongos_cavern_shortcuts") then return AccessibilityLevel.Normal end return can_blast() @@ -8324,12 +8409,87 @@ data_per_region = { ["locations"] = { ["Dodongos Cavern MQ Map Chest"] = { ["child_access"] = function() + if has("lift1") then + return AccessibilityLevel.Normal + end + return has_explosives() + end, + ["adult_access"] = function() + if has("lift1") then + return AccessibilityLevel.Normal + end + return can_blast() + end + }, + ["Dodongos Cavern MQ Deku Scrubs Lobby"] = { + ["child_access"] = function() + return can_stun_deku() + end, + ["adult_access"] = function() return AccessibilityLevel.Normal + end + } + }, + ["exits"] = { + ["Dodongos Cavern MQ Elevator"] = { + ["child_access"] = function() + if has("lift1") then + return AccessibilityLevel.Normal + end + + local hammer = has("hammer") and AccessibilityLevel.Normal or AccessibilityLevel.None + return or_accessibility( + has_explosives(), + and_accessibility(hammer, access_region("Dodongos Cavern MQ Lobby", "adult")) + ) + end, + ["adult_access"] = function() + if has("lift1") then + return AccessibilityLevel.Normal + end + return can_blast() + end + }, + ["Dodongos Cavern MQ Lower Right Side"] = { + ["child_access"] = function() + local hammer = has("hammer") and AccessibilityLevel.Normal or AccessibilityLevel.None + return or_accessibility( + has_explosives(), + and_accessibility(hammer, access_region("Dodongos Cavern MQ Lobby", "adult")) + ) + end, + ["adult_access"] = function() + return can_blast() + end + }, + ["Dodongos Cavern MQ Bomb Bag Area"] = { + ["child_access"] = function() + return AccessibilityLevel.None end, ["adult_access"] = function() return AccessibilityLevel.Normal end }, + ["Dodongos Cavern MQ Boss Area"] = { + ["child_access"] = function() + if has("dodongos_cavern_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("dodongos_cavern_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + } + }, + ["Dodongos Cavern MQ Elevator"] = { + ["scene"] = "Dodongos Cavern", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { ["Dodongos Cavern MQ Compass Chest"] = { ["child_access"] = function() if has("nuts") then @@ -8403,23 +8563,9 @@ data_per_region = { return can_blast() end }, - ["Dodongos Cavern MQ Deku Scrubs Lobby"] = { - ["child_access"] = function() - if has("nuts") or has("shield1") then - return AccessibilityLevel.Normal - end - return can_child_attack() - end, - ["adult_access"] = function() - return AccessibilityLevel.Normal - end - }, ["Dodongos Cavern MQ Deku Scrub Staircase"] = { ["child_access"] = function() - if has("nuts") or has("shield1") then - return AccessibilityLevel.Normal - end - return can_child_attack() + return can_stun_deku() end, ["adult_access"] = function() return AccessibilityLevel.Normal @@ -8429,41 +8575,34 @@ data_per_region = { ["exits"] = { ["Dodongos Cavern MQ Lower Right Side"] = { ["child_access"] = function() - local smash = AccessibilityLevel.None - if has("hammer") then - smash = access_region("Dodongos Cavern MQ Lobby", "adult") - end - local flower = AccessibilityLevel.None - if has("sticks") or (has("dinsfire") and has("magic")) then - flower = AccessibilityLevel.Normal - end - return or_accessibility( - or_accessibility(has_explosives(), smash), - and_accessibility(flower, damage_single_instance_ohko()) - ) + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility(or_accessibility(sticks, df), lift1, damage_single_instance_ohko()) end, ["adult_access"] = function() - local flower = AccessibilityLevel.None - if has("dinsfire") and has("magic") then - flower = AccessibilityLevel.Normal - elseif has("sticks") then - flower = access_region("Dodongos Cavern MQ Lobby", "child") - end - return or_accessibility(can_blast(), and_accessibility(flower, damage_single_instance_ohko())) + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(and_accessibility(sticks, access_region("Dodongos Cavern MQ Elevator", "child")), df), + lift1, + damage_single_instance_ohko() + ) end }, ["Dodongos Cavern MQ Bomb Bag Area"] = { ["child_access"] = function() - local adult = access_region("Dodongos Cavern MQ Lobby", "adult") - local recoil = AccessibilityLevel.None - if has("sword1") or has("sticks") then - local trick = AccessibilityLevel.SequenceBreak - if has("logic_dc_mq_child_bombs") then - trick = AccessibilityLevel.Normal - end - recoil = and_accessibility(trick, damage_single_instance_ohko()) - end - return or_accessibility(and_accessibility(adult, has_explosives()), recoil) + local sword1 = has("sword1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_dc_mq_child_bombs") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + + return or_accessibility( + and_accessibility(access_region("Dodongos Cavern MQ Bomb Bag Area", "adult"), has_explosives()), + and_accessibility(trick, or_accessibility(sword1, sticks), damage_single_instance_ohko()) + ) end, ["adult_access"] = function() return AccessibilityLevel.Normal @@ -8471,19 +8610,33 @@ data_per_region = { }, ["Dodongos Cavern MQ Boss Area"] = { ["child_access"] = function() + local adult = access_region("Dodongos Cavern MQ Elevator", "adult") local lift = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hammer = has("hammer") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hb = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local trick_eyes = has("logic_dc_mq_eyes") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak local trick_child = has("logic_dc_mq_child_back") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local trick_jump = has("logic_dc_jump") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak return or_accessibility( has_explosives(), - and_accessibility(trick_eyes, lift, trick_child, or_accessibility(sticks, df)) + and_accessibility( + lift, + or_accessibility( + --TODO: new trick names + and_accessibility(trick_eyes, adult), + trick_child + ), + or_accessibility(sticks, df, and_accessibility(adult, or_accessibility(trick_jump, hammer, hb, hs))) + ) ) end, ["adult_access"] = function() + local child = access_region("Dodongos Cavern MQ Elevator", "child") local lift = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None local hammer = has("hammer") and AccessibilityLevel.Normal or AccessibilityLevel.None @@ -8496,16 +8649,13 @@ data_per_region = { return or_accessibility( has_explosives(), and_accessibility( - trick_eyes, lift, or_accessibility( - and_accessibility(sticks, access_region("Dodongos Cavern MQ Lobby", "child")), - df, - trick_jump, - hammer, - hb, - hs - ) + --TODO: new trick names + trick_eyes, + and_accessibility(trick_eyes, child) + ), + or_accessibility(and_accessibility(sticks, child), df, trick_jump, hammer, hb, hs) ) ) end @@ -8518,13 +8668,14 @@ data_per_region = { ["locations"] = { ["Dodongos Cavern MQ Deku Scrub Side Room Near Lower Lizalfos"] = { ["child_access"] = function() - if has("nuts") or has("shield1") then - return AccessibilityLevel.Normal - end - return can_child_attack() + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(or_accessibility(has_explosives(), lift1), can_stun_deku()) end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("lift1") then + return AccessibilityLevel.Normal + end + return can_blast() end } }, @@ -8618,15 +8769,67 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Dodongos Cavern MQ Boss Room Chest"] = { + ["Dodongos Cavern MQ GS Back Area"] = { ["child_access"] = function() + local rang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("dodongos_cavern_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sword1 = has("sword1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility( + has_explosives(), + rang, + df, + and_accessibility(shortcut, or_accessibility(can_child_attack(), lift1)), + or_accessibility( + --TODO: why this one? + sticks, + and_accessibility(or_accessibility(nuts, rang), or_accessibility(sword1, sling)) + ) + ) + end, + ["adult_access"] = function() return AccessibilityLevel.Normal + end + } + }, + ["exits"] = { + ["Dodongos Cavern MQ Boss Room"] = { + ["child_access"] = function() + local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("dodongos_cavern_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local rang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sword1 = has("sword1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility( + has_explosives(), + df, + shortcut, + or_accessibility( + --TODO: why this one? + sticks, + and_accessibility(or_accessibility(nuts, rang), or_accessibility(sword1, sling)) + ) + ) end, ["adult_access"] = function() return AccessibilityLevel.Normal end - }, - ["Dodongos Cavern MQ GS Back Area"] = { + } + } + }, + ["Dodongos Cavern MQ Boss Room"] = { + ["scene"] = "Dodongos Cavern", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Dodongos Cavern MQ Boss Room Chest"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, @@ -8636,18 +8839,35 @@ data_per_region = { }, ["King Dodongo"] = { ["child_access"] = function() - if (has("bombs") or has("lift1")) and (has("sticks") or has("sword1")) then - return has_explosives() - end - return AccessibilityLevel.None + local shortcut = has("dodongos_cavern_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bombs = has("bombs") and AccessibilityLevel.Normal or AccessibilityLevel.None + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sword1 = has("sword1") and AccessibilityLevel.Normal or AccessibilityLevel.None + + local floor = or_accessibility(has_explosives(), shortcut) + local stun = or_accessibility(bombs, lift1) + local damage = or_accessibility(sticks, sword1) + + return and_accessibility(floor, stun, damage) end, ["adult_access"] = function() - if has("bombs") or has("lift1") then - return can_blast() - elseif has("bombchu") and (has("shield2") or has("shield3")) then - return AccessibilityLevel.SequenceBreak - end - return AccessibilityLevel.None + local hammer = has("hammer") and AccessibilityLevel.Normal or AccessibilityLevel.None + --TODO: new trick? + local trick = + has("logic_dc_mq_hammer_floor") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local shortcut = has("dodongos_cavern_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bombs = has("bombs") and AccessibilityLevel.Normal or AccessibilityLevel.None + local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bombchu = has("bombchu") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shield = (has("shield2") or has("shield3")) and AccessibilityLevel.Normal or AccessibilityLevel.None + + local floor = or_accessibility(and_accessibility(hammer, trick), has_explosives(), shortcut) + local stun = + or_accessibility(bombs, lift1, and_accessibility(AccessibilityLevel.SequenceBreak, bombchu, shield)) + local damage = AccessibilityLevel.Normal + + return and_accessibility(floor, stun, damage) end } } @@ -8741,6 +8961,7 @@ data_per_region = { local trick = has("logic_fire_boss_door_jump") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak local hb = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("fire_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None return and_accessibility( @@ -8748,6 +8969,7 @@ data_per_region = { or_accessibility( trick, hb, + shortcut, and_accessibility(or_accessibility(sot, has_explosives()), access_region("Fire Temple Upper", "adult")) ) ) @@ -9124,13 +9346,17 @@ data_per_region = { ["adult_access"] = function() if has("hammer") and has("fire_boss_key") then local tunic = has("redtunic") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - local jump = - (has("logic_fire_boss_door_jump") or has("hoverboots")) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak + local trick = + has("logic_fire_boss_door_jump") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("fire_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None return and_accessibility( tunic, - or_accessibility(and_accessibility(has_fire(), jump), access_region("Fire Temple MQ Upper", "adult")) + or_accessibility( + and_accessibility(has_fire(), or_accessibility(trick, hoverboots, shortcut)), + access_region("Fire Temple MQ Upper", "adult") + ) ) end return AccessibilityLevel.None @@ -9601,9 +9827,15 @@ data_per_region = { }, ["Forest Temple Boss Region"] = { ["child_access"] = function() + if has("forest_temple_shortcuts") then + return AccessibilityLevel.Normal + end return poes_killed() end, ["adult_access"] = function() + if has("forest_temple_shortcuts") then + return AccessibilityLevel.Normal + end return poes_killed() end } @@ -9991,7 +10223,10 @@ data_per_region = { ["locations"] = { ["Forest Temple Basement Chest"] = { ["child_access"] = function() - return AccessibilityLevel.Normal + if has("nuts") then + return AccessibilityLevel.Normal + end + return can_child_attack() end, ["adult_access"] = function() return AccessibilityLevel.Normal @@ -10019,13 +10254,13 @@ data_per_region = { }, ["Phantom Ganon"] = { ["child_access"] = function() - if has("forest_boss_key") then + if has("forest_boss_key") and has("slingshot") and has("sword1") then return AccessibilityLevel.Normal end return AccessibilityLevel.None end, ["adult_access"] = function() - if has("forest_boss_key") then + if has("forest_boss_key") and (has("bow") or has("hookshot")) then return AccessibilityLevel.Normal end return AccessibilityLevel.None @@ -10194,9 +10429,15 @@ data_per_region = { }, ["Forest Temple MQ Boss Region"] = { ["child_access"] = function() + if has("forest_temple_shortcuts") then + return AccessibilityLevel.Normal + end return poes_killed_mq() end, ["adult_access"] = function() + if has("forest_temple_shortcuts") then + return AccessibilityLevel.Normal + end return poes_killed_mq() end } @@ -10591,13 +10832,13 @@ data_per_region = { }, ["Phantom Ganon"] = { ["child_access"] = function() - if has("forest_boss_key") then + if has("forest_boss_key") and has("slingshot") and has("sword1") then return AccessibilityLevel.Normal end return AccessibilityLevel.None end, ["adult_access"] = function() - if has("forest_boss_key") then + if has("forest_boss_key") and (has("bow") or has("hookshot")) then return AccessibilityLevel.Normal end return AccessibilityLevel.None @@ -12650,6 +12891,7 @@ data_per_region = { return AccessibilityLevel.Normal end, ["adult_access"] = function() + --TODO: rename trick if has("scale") or has("logic_jabu_scrub_jump_dive") or has("ironboots") then return AccessibilityLevel.Normal end @@ -12679,9 +12921,15 @@ data_per_region = { }, ["Jabu Jabus Belly Boss Area"] = { ["child_access"] = function() + if has("jabu_shortcuts") then + return AccessibilityLevel.Normal + end return AccessibilityLevel.None end, ["adult_access"] = function() + if has("jabu_shortcuts") then + return AccessibilityLevel.Normal + end if has("hoverboots") then if has("logic_jabu_boss_gs_adult") then return AccessibilityLevel.Normal @@ -12742,7 +12990,7 @@ data_per_region = { ["locations"] = { ["Barinade"] = { ["child_access"] = function() - if has("boomerang") then + if has("boomerang") and (has("sticks") or has("sword1")) then return AccessibilityLevel.Normal end return AccessibilityLevel.None @@ -12806,12 +13054,18 @@ data_per_region = { }, ["Jabu Jabus Belly MQ Main"] = { ["child_access"] = function() + if has("jabu_shortcuts") then + return AccessibilityLevel.Normal + end if has("sling") then return AccessibilityLevel.Normal end return AccessibilityLevel.None end, ["adult_access"] = function() + if has("jabu_shortcuts") then + return AccessibilityLevel.Normal + end if has("sling") then return access_region("Jabu Jabus Belly MQ Beginning", "child") end @@ -12820,7 +13074,7 @@ data_per_region = { } } }, - ["Jabu Jabus Belly MQ Main"] = { + ["Jabu Jabus Belly MQ Elevator Room"] = { ["scene"] = "Jabu Jabus Belly", ["pool"] = ER_POOL_TYPES.DUNGEON, ["locations"] = { @@ -12834,16 +13088,53 @@ data_per_region = { }, ["Jabu Jabus Belly MQ Second Room Upper Chest"] = { ["child_access"] = function() - return access_region("Jabu Jabus Belly MQ Boss Area", "child") + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("jabu_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + access_region("Jabu Jabus Belly MQ Elevator Room", "child"), + sling, + or_accessibility(access_region("Jabu Jabus Belly MQ Boss Area", "child"), shortcut) + ) end, ["adult_access"] = function() - if has("hoverboots") or has("hookshot") then - return AccessibilityLevel.Normal - end - return AccessibilityLevel.None + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hookshot = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("jabu_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + access_region("Jabu Jabus Belly MQ Elevator Room", "child"), + sling, + or_accessibility(hoverboots, hookshot, access_region("Jabu Jabus Belly MQ Boss Area", "child"), shortcut) + ) end }, ["Jabu Jabus Belly MQ Compass Chest"] = { + ["child_access"] = function() + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_jabu_mq_rang_jump") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak --TODO: new trick? + local boomerang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility(sling, has_bombchus(), and_accessibility(trick, boomerang)) + end, + ["adult_access"] = function() + local scale = has("scale") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = + has("logic_jabu_alcove_jump_dive") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak --TODO: new trick? + local ironboots = has("ironboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hookshot = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(scale, trick, ironboots), + or_accessibility(bow, hookshot, has_bombchus()) + ) + end + } + }, + ["exits"] = { + ["Jabu Jabus Belly MQ Beginning"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, @@ -12851,15 +13142,51 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Jabu Jabus Belly MQ Basement Chests"] = { + ["Jabu Jabus Belly MQ Main"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, ["adult_access"] = function() - return AccessibilityLevel.Normal + local scale = has("scale") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = + has("logic_jabu_alcove_jump_dive") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak --TODO: new trick? + local ironboots = has("ironboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility(scale, access_region("Jabu Jabus Belly MQ Elevator Room", "child"), trick, ironboots) + end + }, + ["Jabu Jabus Belly MQ Boss Area"] = { + ["child_access"] = function() + if has("jabu_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("jabu_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + } + }, + ["Jabu Jabus Belly MQ Main"] = { + ["scene"] = "Jabu Jabus Belly", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Jabu Jabus Belly MQ Basement Chests"] = { + ["child_access"] = function() + if has("sling") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None end }, - ["Jabu Jabus Belly MQ Boomerang Room Chests"] = { + ["Jabu Jabus Belly MQ Boomerang Room Small Chest"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, @@ -12867,17 +13194,24 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Jabu Jabus Belly MQ GS Boomerang Chest Room"] = { + ["Jabu Jabus Belly MQ Boomerang Chest"] = { ["child_access"] = function() - if has("ocarina") and has("time") then + if has("sword1") or has("sling") or has("bombs") or has("sticks") then return AccessibilityLevel.Normal - elseif has("boomerang") then - if has("logic_jabu_mq_sot_gs") then - return AccessibilityLevel.Normal - end - return AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.Inspect + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.Normal + end + }, + ["Jabu Jabus Belly MQ GS Boomerang Chest Room"] = { + ["child_access"] = function() + local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_jabu_mq_sot_gs") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local boomerang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility(and_accessibility(sot, can_child_attack()), and_accessibility(trick, boomerang)) end, ["adult_access"] = function() if has("ocarina") and has("time") then @@ -12885,10 +13219,75 @@ data_per_region = { end return AccessibilityLevel.Inspect end + }, + ["Jabu Jabus Belly MQ GS Invisible Enemies Room"] = { + ["child_access"] = function() + local shortcut = has("jabu_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hookshot = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_lens_jabu_mq") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local lens = (has("lens") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None + local longshot = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local ironboots = has("ironboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local boomerang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(access_region("Jabu Jabus Belly MQ Depths"), shortcut), + or_accessibility( + and_accessibility(hookshot, hoverboots), + and_accessibility( + or_accessibility( + and_accessibility(or_accessibility(trick, lens), sling), + and_accessibility( + access_region("Jabu Jabus Belly MQ Main", "adult"), + or_accessibility(trick, lens), + or_accessibility(bow, longshot, and_accessibility(hookshot, ironboots, trick)) + ) + ), + or_accessibility(boomerang, and_accessibility(hookshot, ironboots)) + ) + ) + ) + end, + ["adult_access"] = function() + local shortcut = has("jabu_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hookshot = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_lens_jabu_mq") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local lens = (has("lens") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local sling = has("sling") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None + local longshot = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local ironboots = has("ironboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local boomerang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(access_region("Jabu Jabus Belly MQ Depths"), shortcut), + or_accessibility( + and_accessibility(hookshot, hoverboots), + and_accessibility( + or_accessibility( + and_accessibility( + access_region("Jabu Jabus Belly MQ Main", "child"), + or_accessibility(trick, lens), + sling + ), + and_accessibility( + or_accessibility(trick, lens), + or_accessibility(bow, longshot, and_accessibility(hookshot, ironboots, trick)) + ) + ), + or_accessibility(boomerang, and_accessibility(hookshot, ironboots)) + ) + ) + ) + end } }, ["exits"] = { - ["Jabu Jabus Belly MQ Beginning"] = { + ["Jabu Jabus Belly MQ Elevator Room"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, @@ -12898,7 +13297,7 @@ data_per_region = { }, ["Jabu Jabus Belly MQ Depths"] = { ["child_access"] = function() - if has("boomerang") then + if has("boomerang") and has("sling") then return has_explosives() end return AccessibilityLevel.None @@ -12918,7 +13317,7 @@ data_per_region = { return AccessibilityLevel.Normal end, ["adult_access"] = function() - return AccessibilityLevel.None + return AccessibilityLevel.Normal end }, ["Jabu Jabus Belly MQ GS Tailpasaran Room"] = { @@ -12931,18 +13330,6 @@ data_per_region = { ["adult_access"] = function() return AccessibilityLevel.None end - }, - ["Jabu Jabus Belly MQ GS Invisible Enemies Room"] = { - ["child_access"] = function() - local lot = - (has("logic_lens_jabu_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - local adult = (has("hoverboots") or has("hookshot")) and AccessibilityLevel.Normal or AccessibilityLevel.None - return or_accessibility(lot, and_accessibility(access_region("Jabu Jabus Belly MQ Main", "adult"), adult)) - end, - ["adult_access"] = function() - return AccessibilityLevel.None - end } }, ["exits"] = { @@ -12954,7 +13341,7 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Jabu Jabus Belly MQ Boss Area"] = { + ["Jabu Jabus Belly MQ Past Big Octo"] = { ["child_access"] = function() if has("sticks") or (has("dinsfire") and has("magic") and has("sword1")) then return AccessibilityLevel.Normal @@ -12967,7 +13354,7 @@ data_per_region = { } } }, - ["Jabu Jabus Belly MQ Boss Area"] = { + ["Jabu Jabus Belly MQ Past Big Octo"] = { ["scene"] = "Jabu Jabus Belly", ["pool"] = ER_POOL_TYPES.DUNGEON, ["locations"] = { @@ -12979,36 +13366,23 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() + if has("ocarina") and has("epona") then + return AccessibilityLevel.Normal + end return AccessibilityLevel.None end - }, - ["Jabu Jabus Belly MQ Near Boss Chest"] = { + } + }, + ["exits"] = { + ["Jabu Jabus Belly MQ Main"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, ["adult_access"] = function() - return AccessibilityLevel.None - end - }, - ["Barinade"] = { - ["child_access"] = function() return AccessibilityLevel.Normal - end, - ["adult_access"] = function() - return AccessibilityLevel.None end }, - ["Jabu Jabus Belly MQ GS Near Boss"] = { - ["child_access"] = function() - return AccessibilityLevel.Normal - end, - ["adult_access"] = function() - return AccessibilityLevel.None - end - } - }, - ["exits"] = { - ["Jabu Jabus Belly MQ Main"] = { + ["Jabu Jabus Belly MQ Boss Area"] = { ["child_access"] = function() return AccessibilityLevel.Normal end, @@ -13018,10 +13392,62 @@ data_per_region = { } } }, - ["Shadow Temple Split"] = { - ["scene"] = "Shadow Temple", + ["Jabu Jabus Belly MQ Boss Area"] = { + ["scene"] = "Jabu Jabus Belly", ["pool"] = ER_POOL_TYPES.DUNGEON, - ["exits"] = { + ["locations"] = { + ["Jabu Jabus Belly MQ Near Boss Chest"] = { + ["child_access"] = function() + if has("sling") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, + ["Barinade"] = { + ["child_access"] = function() + if has("boomerang") and (has("sticks") or has("sword1")) then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.None + end + }, + ["Jabu Jabus Belly MQ GS Near Boss"] = { + ["child_access"] = function() + if has("boomerang") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("longshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + }, + ["exits"] = { + ["Jabu Jabus Belly MQ Main"] = { + ["child_access"] = function() + return AccessibilityLevel.Normal + end, + ["adult_access"] = function() + return AccessibilityLevel.Normal + end + } + } + }, + ["Shadow Temple Split"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["exits"] = { ["Shadow Temple Entryway"] = { ["child_access"] = function() if has("shadow_reg") then @@ -13150,8 +13576,31 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("shadow_small_keys", 1) then - return has_explosives() + local keys1 = has("shadow_small_keys", 1) and AccessibilityLevel.Normal or AccessibilityLevel.None + local keys4 = has("shadow_small_keys", 4) and AccessibilityLevel.Normal or AccessibilityLevel.None + local keys5 = has("shadow_small_keys", 5) and AccessibilityLevel.Normal or AccessibilityLevel.None + local no_shortcut = has("shadow_temple_shortcuts") and AccessibilityLevel.None or AccessibilityLevel.Normal + local trick = + has("logic_lens_shadow_platform") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local lens = (has("lens") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + has_explosives(), + or_accessibility( + and_accessibility(keys1, no_shortcut), + keys5, + and_accessibility(keys4, or_accessibility(trick, lens)) + ) + ) + end + }, + ["Shadow Temple Boat"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shadow_temple_shortcuts") then + return AccessibilityLevel.Normal end return AccessibilityLevel.None end @@ -13189,99 +13638,146 @@ data_per_region = { return AccessibilityLevel.SequenceBreak end }, - ["Shadow Temple Invisible Spikes Chest"] = { + ["Shadow Temple GS Like Like Room"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.Normal + end + }, + ["Shadow Temple GS Falling Spikes Room"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("logic_shadow_umbrella_gs") or has("hookshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.SequenceBreak + end + } + }, + ["exits"] = { + ["Shadow Temple Invisible Spikes"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() if has("shadow_small_keys", 2) then - if has("logic_lens_shadow_back") or (has("lens") and has("magic")) then + if has("logic_lens_shadow_platform") or (has("lens") and has("magic")) then return AccessibilityLevel.Normal end return AccessibilityLevel.SequenceBreak end return AccessibilityLevel.None end + } + } + }, + ["Shadow Temple Invisible Spikes"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Shadow Temple Invisible Spikes Chest"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.Normal + end }, ["Shadow Temple Freestanding Key"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - local keys = has("shadow_small_keys", 2) and AccessibilityLevel.Normal or AccessibilityLevel.None - local lot = - (has("logic_lens_shadow_back") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None local bombs = has("bombs") and AccessibilityLevel.Normal or AccessibilityLevel.None local lift1 = has("lift1") and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_shadow_freestanding_key") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return and_accessibility( - keys, - lot, - hs, - or_accessibility(bombs, lift1, and_accessibility(trick, has_bombchus())) - ) + return and_accessibility(hs, or_accessibility(bombs, lift1, and_accessibility(trick, has_bombchus()))) end }, - ["Shadow Temple GS Like Like Room"] = { + ["Shadow Temple GS Single Giant Pot"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("hookshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + }, + ["exits"] = { + ["Shadow Temple Wind Tunnel"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("hookshot") and has("shadow_small_keys", 3) then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None end }, - ["Shadow Temple GS Falling Spikes Room"] = { + ["Shadow Temple Huge Pit"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("logic_shadow_umbrella_gs") or has("hookshot") then + if has("logic_lens_shadow_platform") or (has("lens") and has("magic")) then return AccessibilityLevel.Normal end return AccessibilityLevel.SequenceBreak end - }, - ["Shadow Temple GS Single Giant Pot"] = { + } + } + }, + ["Shadow Temple Wind Tunnel"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Shadow Temple Wind Hint Chest"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - local keys = has("shadow_small_keys", 2) and AccessibilityLevel.Normal or AccessibilityLevel.None - local lot = - (has("logic_lens_shadow_back") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None - - return and_accessibility(keys, lot, hs) + return AccessibilityLevel.Normal end } }, ["exits"] = { - ["Shadow Temple Wind Tunnel"] = { + ["Shadow Temple After Wind"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("shadow_small_keys", 3) and has("hookshot") then - if has("logic_lens_shadow_back") or (has("lens") and has("magic")) then - return AccessibilityLevel.Normal - end - return AccessibilityLevel.SequenceBreak + return AccessibilityLevel.Normal + end + }, + ["Shadow Temple Invisible Spikes"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("hookshot") then + return AccessibilityLevel.Normal end return AccessibilityLevel.None end } } }, - ["Shadow Temple Wind Tunnel"] = { + ["Shadow Temple After Wind"] = { ["scene"] = "Shadow Temple", ["pool"] = ER_POOL_TYPES.DUNGEON, ["locations"] = { - ["Shadow Temple Wind Hint Chest"] = { + ["Shadow Temple After Wind Enemy Chest"] = { ["child_access"] = function() return AccessibilityLevel.None end, @@ -13289,37 +13785,71 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Shadow Temple After Wind Chests"] = { + ["Shadow Temple After Wind Hidden Chest"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + return has_explosives() + end + } + }, + ["exits"] = { + ["Shadow Temple Boat"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shadow_small_keys", 4) then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None end }, + ["Shadow Temple Wind Tunnel"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return AccessibilityLevel.Normal + end + } + } + }, + ["Shadow Temple Boat"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { ["Shadow Temple GS Near Ship"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - local keys = has("shadow_small_keys", 4) and AccessibilityLevel.Normal or AccessibilityLevel.None local ls = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None local bow = has("bow") and AccessibilityLevel.Inspect or AccessibilityLevel.None - return and_accessibility( - keys, - or_accessibility(ls, bow, and_accessibility(can_use_scarecrow(), AccessibilityLevel.SequenceBreak)) - ) + return or_accessibility(ls, bow, and_accessibility(can_use_scarecrow(), AccessibilityLevel.SequenceBreak)) end } }, ["exits"] = { + ["Shadow Temple After Wind"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shadow_small_keys", 4) then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + }, ["Shadow Temple Beyond Boat"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("ocarina") and has("lullaby") and has("shadow_small_keys", 4) then + if has("ocarina") and has("lullaby") then return AccessibilityLevel.Normal end return AccessibilityLevel.None @@ -13361,27 +13891,51 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Bongo Bongo"] = { + ["Shadow Temple GS Triple Giant Pot"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("shadow_small_keys", 5) and has("shadow_boss_key") then - if has("bow") or (can_use_scarecrow() and has("longshot")) then - return AccessibilityLevel.Normal - end - local trick = has("logic_shadow_statue") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return and_accessibility(trick, has_bombchus()) - end + return AccessibilityLevel.Normal + end + } + }, + ["exits"] = { + ["Shadow Temple Boss Room"] = { + ["child_access"] = function() return AccessibilityLevel.None + end, + ["adult_access"] = function() + local keys = has("shadow_small_keys", 5) and AccessibilityLevel.Normal or AccessibilityLevel.None + local bk = has("shadow_boss_key") and AccessibilityLevel.Normal or AccessibilityLevel.None + local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None + local scarecrow = + (can_use_scarecrow() and has("longshot")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_shadow_statue") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local shortcut = has("logic_shadow_statue") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + keys, + bk, + or_accessibility(bow, scarecrow, and_accessibility(trick, has_bombchus()), shortcut) + ) end - }, - ["Shadow Temple GS Triple Giant Pot"] = { + } + } + }, + ["Shadow Temple Boss Room"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Bongo Bongo"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("logic_shadow_bongo") or has("bow") or has("hookshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.SequenceBreak end } } @@ -13418,20 +13972,12 @@ data_per_region = { ["scene"] = "Shadow Temple", ["pool"] = ER_POOL_TYPES.DUNGEON, ["exits"] = { - ["Shadow Temple MQ Entryway"] = { - ["child_access"] = function() - return AccessibilityLevel.Normal - end, - ["adult_access"] = function() - return AccessibilityLevel.Normal - end - }, ["Shadow Temple MQ First Beamos"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if (has("bow") and has("firearrow") and has("magic")) or has("hoverboots") then + if has("shadow_temple_shortcuts") or (has("bow") and has("firearrow") and has("magic")) or has("hoverboots") then return AccessibilityLevel.Normal elseif has("longshot") then if has("logic_shadow_mq_gap") then @@ -13518,18 +14064,75 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - local keys = AccessibilityLevel.None - if has("shadow_small_keys", 2) then - keys = AccessibilityLevel.Normal - elseif has("shadow_small_keys", 1) then - keys = AccessibilityLevel.SequenceBreak + local keys1 = has("shadow_small_keys", 1) and AccessibilityLevel.SequenceBreak or AccessibilityLevel.None + local keys2 = has("shadow_small_keys", 2) and AccessibilityLevel.Normal or AccessibilityLevel.None + local keys5 = has("shadow_small_keys", 5) and AccessibilityLevel.Normal or AccessibilityLevel.None + local no_shortcut = has("shadow_temple_shortcuts") and AccessibilityLevel.None or AccessibilityLevel.Normal + + return and_accessibility( + has_explosives(), + or_accessibility(keys1, and_accessibility(keys2, no_shortcut), keys5) + ) + end + }, + ["Shadow Temple MQ Boat"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shadow_temple_shortcuts") then + return AccessibilityLevel.Normal end - return and_accessibility(has_explosives(), keys) + return AccessibilityLevel.None end } } }, ["Shadow Temple MQ Upper Huge Pit"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["exits"] = { + ["Shadow Temple MQ Invisible Blades"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local no_shortcut = has("shadow_temple_shortcuts") and AccessibilityLevel.None or AccessibilityLevel.Normal + local keys1 = has("shadow_small_keys", 1) and AccessibilityLevel.SequenceBreak or AccessibilityLevel.None + local keys6 = has("shadow_small_keys", 6) and AccessibilityLevel.Normal or AccessibilityLevel.None + local lens_platform = + (has("logic_lens_shadow_mq_platform") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick_damage = + has("logic_shadow_mq_invisible_blades") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local lens_blades = + (has("logic_lens_shadow_mq_invisible_blades") or (has("lens") and has("magic"))) and + AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + local nl = (has("nayrus") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(no_shortcut, keys1, keys6, and_accessibility(lens_platform, hoverboots)), + or_accessibility(sot, and_accessibility(trick_damage, damage_below_ohko())), + or_accessibility(lens_blades, nl) + ) + end + }, + ["Shadow Temple MQ Lower Huge Pit"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local trick = + has("logic_shadow_mq_huge_pit") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + return or_accessibility(has_fire(), trick) + end + } + } + }, + ["Shadow Temple MQ Invisible Blades"] = { ["scene"] = "Shadow Temple", ["pool"] = ER_POOL_TYPES.DUNGEON, ["locations"] = { @@ -13538,29 +14141,67 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("ocarina") and has("time") then - return AccessibilityLevel.Normal - end - local trick = - has("logic_shadow_mq_invisible_blades") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return and_accessibility(trick, damage_below_ohko()) + return AccessibilityLevel.Normal end } - }, + } + }, + ["Shadow Temple MQ Lower Huge Pit"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, ["exits"] = { - ["Shadow Temple MQ Lower Huge Pit"] = { + ["Shadow Temple MQ Falling Spikes"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() + local no_shortcut = has("shadow_temple_shortcuts") and AccessibilityLevel.None or AccessibilityLevel.Normal + local keys1 = has("shadow_small_keys", 1) and AccessibilityLevel.SequenceBreak or AccessibilityLevel.None + local keys6 = has("shadow_small_keys", 6) and AccessibilityLevel.Normal or AccessibilityLevel.None + local lens_platform = + (has("logic_lens_shadow_mq_platform") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_shadow_mq_huge_pit") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return or_accessibility(has_fire(), trick) + + return or_accessibility( + no_shortcut, + keys1, + keys6, + and_accessibility(lens_platform, hoverboots, or_accessibility(has_fire(), trick)) + ) + end + }, + ["Shadow Temple MQ Invisible Spikes"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local keys2 = has("shadow_small_keys", 2) and AccessibilityLevel.SequenceBreak or AccessibilityLevel.None + local keys3 = has("shadow_small_keys", 3) and AccessibilityLevel.Normal or AccessibilityLevel.None + local lens_platform = + (has("logic_lens_shadow_mq_platform") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility(lens_platform, hoverboots, or_accessibility(keys2, keys3)) + end + }, + ["Shadow Temple MQ Upper Huge Pit"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("longshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None end } } }, - ["Shadow Temple MQ Lower Huge Pit"] = { + ["Shadow Temple MQ Falling Spikes"] = { ["scene"] = "Shadow Temple", ["pool"] = ER_POOL_TYPES.DUNGEON, ["locations"] = { @@ -13594,65 +14235,49 @@ data_per_region = { if has("logic_shadow_umbrella") then return AccessibilityLevel.Normal end - return AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + return AccessibilityLevel.SequenceBreak end }, - ["Shadow Temple MQ Invisible Spikes Chest"] = { + ["Shadow Temple MQ GS Falling Spikes Room"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("hoverboots") then - local keys = AccessibilityLevel.None - if has("shadow_small_keys", 3) then - keys = AccessibilityLevel.Normal - elseif has("shadow_small_keys", 2) then - keys = AccessibilityLevel.SequenceBreak + if has("hookshot") then + return AccessibilityLevel.Normal + elseif has("hoverboots") then + if has("logic_shadow_umbrella_gs") then + return AccessibilityLevel.Normal end - local lot = - (has("logic_lens_shadow_mq_back") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - return and_accessibility(keys, lot) + return AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + return AccessibilityLevel.Inspect end - }, - ["Shadow Temple MQ Stalfos Room Chest"] = { + } + } + }, + ["Shadow Temple MQ Invisible Spikes"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Shadow Temple MQ Invisible Spikes Chest"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("hoverboots") and has("hookshot") then - local keys = AccessibilityLevel.None - if has("shadow_small_keys", 3) then - keys = AccessibilityLevel.Normal - elseif has("shadow_small_keys", 2) then - keys = AccessibilityLevel.SequenceBreak - end - local lot = - (has("logic_lens_shadow_mq_back") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - return and_accessibility(keys, lot) - end - return AccessibilityLevel.None + return AccessibilityLevel.Normal end }, - ["Shadow Temple MQ GS Falling Spikes Room"] = { + ["Shadow Temple MQ Stalfos Room Chest"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() if has("hookshot") then return AccessibilityLevel.Normal - elseif has("hoverboots") then - if has("logic_shadow_umbrella_gs") then - return AccessibilityLevel.Normal - end - return AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.Inspect + return AccessibilityLevel.None end } }, @@ -13662,20 +14287,28 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("hoverboots") and has("hookshot") then - local keys = AccessibilityLevel.None + if has("hookshot") then if has("shadow_small_keys", 4) then - keys = AccessibilityLevel.Normal + return AccessibilityLevel.Normal elseif has("shadow_small_keys", 3) then - keys = AccessibilityLevel.SequenceBreak + return AccessibilityLevel.SequenceBreak end - local lot = - (has("logic_lens_shadow_mq_back") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - return and_accessibility(lot, keys) end return AccessibilityLevel.None end + }, + ["Shadow Temple MQ Lower Huge Pit"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local lens_platform = + (has("logic_lens_shadow_mq_platform") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility(lens_platform, hoverboots) + end } } }, @@ -13691,7 +14324,20 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Shadow Temple MQ After Wind Chests"] = { + ["Shadow Temple MQ GS Wind Hint Room"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("hookshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + }, + ["exits"] = { + ["Shadow Temple MQ After Wind"] = { ["child_access"] = function() return AccessibilityLevel.None end, @@ -13699,7 +14345,24 @@ data_per_region = { return AccessibilityLevel.Normal end }, - ["Shadow Temple MQ GS Wind Hint Room"] = { + ["Shadow Temple MQ Invisible Spikes"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("hookshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + } + }, + ["Shadow Temple MQ After Wind"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Shadow Temple MQ After Wind Enemy Chest"] = { ["child_access"] = function() return AccessibilityLevel.None end, @@ -13707,70 +14370,97 @@ data_per_region = { return AccessibilityLevel.Normal end }, + ["Shadow Temple MQ After Wind Hidden Chest"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + return has_explosives() + end + }, ["Shadow Temple MQ GS After Wind"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + local trick = + has("logic_shadow_mq_after_wind_gs") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + + return or_accessibility(has_explosives(), trick) end } }, ["exits"] = { - ["Shadow Temple MQ Beyond Boat"] = { + ["Shadow Temple MQ Boat"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("ocarina") and has("lullaby") then - if has("shadow_small_keys", 5) then - return AccessibilityLevel.Normal - elseif has("shadow_small_keys", 4) then - return AccessibilityLevel.SequenceBreak - end + if has("shadow_small_keys", 5) then + return AccessibilityLevel.Normal + elseif has("shadow_small_keys", 4) then + return AccessibilityLevel.SequenceBreak end return AccessibilityLevel.None end + }, + ["Shadow Temple MQ Wind Tunnel"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = + has("logic_shadow_mq_windy_walkway") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + + return or_accessibility(hoverboots, trick) + end } } }, - ["Shadow Temple MQ Beyond Boat"] = { + ["Shadow Temple MQ Boat"] = { ["scene"] = "Shadow Temple", ["pool"] = ER_POOL_TYPES.DUNGEON, - ["locations"] = { - ["Bongo Bongo"] = { + ["exits"] = { + ["Shadow Temple MQ After Wind"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("shadow_boss_key") then - if has("bow") then - return AccessibilityLevel.Normal - end - local trick = has("logic_shadow_statue") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return and_accessibility(trick, has_bombchus()) + if has("shadow_small_keys", 5) then + return AccessibilityLevel.Normal + elseif has("shadow_small_keys", 1) then + return AccessibilityLevel.SequenceBreak end return AccessibilityLevel.None end }, - ["Shadow Temple MQ GS After Ship"] = { + ["Shadow Temple MQ Beyond Boat"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("ocarina") and has("lullaby") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None end - }, - ["Shadow Temple MQ GS Near Boss"] = { + } + } + }, + ["Shadow Temple MQ Beyond Boat"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Shadow Temple MQ GS After Ship"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() - if has("bow") then + if has("hookshot") then return AccessibilityLevel.Normal end - local trick = has("logic_shadow_statue") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return and_accessibility(trick, has_bombchus()) + return AccessibilityLevel.None end } }, @@ -13785,6 +14475,22 @@ data_per_region = { end return AccessibilityLevel.None end + }, + ["Shadow Temple MQ Near Boss"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local bow = has("bow") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = has("logic_shadow_statue") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local shortcut = has("shadow_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hoverboots = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(bow, and_accessibility(trick, has_bombchus()), shortcut), + hoverboots + ) + end } } }, @@ -13802,6 +14508,8 @@ data_per_region = { return AccessibilityLevel.Normal elseif has("shadow_small_keys", 5) then return AccessibilityLevel.SequenceBreak + elseif has("shadow_small_keys", 1) and has("shadow_temple_shortcuts") then + return AccessibilityLevel.SequenceBreak end end return AccessibilityLevel.None @@ -13817,6 +14525,8 @@ data_per_region = { return AccessibilityLevel.Normal elseif has("shadow_small_keys", 5) then return AccessibilityLevel.SequenceBreak + elseif has("shadow_small_keys", 1) and has("shadow_temple_shortcuts") then + return AccessibilityLevel.SequenceBreak end end return AccessibilityLevel.None @@ -13827,7 +14537,10 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - return AccessibilityLevel.Normal + if has("logic_lens_shadow_mq_dead_hand") or (has("lens") and has("magic")) then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.SequenceBreak end }, ["Shadow Temple MQ Freestanding Key"] = { @@ -13840,6 +14553,37 @@ data_per_region = { } } }, + ["Shadow Temple MQ Near Boss"] = { + ["scene"] = "Shadow Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { + ["Bongo Bongo"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shadow_boss_key") then + if has("logic_shadow_bongo") or has("bow") or has("hookshot") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.SequenceBreak + end + return AccessibilityLevel.None + end + }, + ["Shadow Temple MQ GS Near Boss"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("dinsfire") and has("magic") then + return AccessibilityLevel.Normal + end + return has_projectile("adult") + end + } + } + }, ["Spirit Temple Split"] = { ["scene"] = "Spirit Temple", ["pool"] = ER_POOL_TYPES.DUNGEON, @@ -13904,6 +14648,17 @@ data_per_region = { end return AccessibilityLevel.None end + }, + ["Spirit Temple Central Chamber"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("spirit_temple_shortcuts") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end } } }, @@ -14008,8 +14763,11 @@ data_per_region = { end, ["adult_access"] = function() local keys = has("spirit_small_keys", 3) and AccessibilityLevel.Normal or AccessibilityLevel.None - local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None - return or_accessibility(has_projectile("both"), and_accessibility(keys, lift2, has_projectile("adult"))) + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return or_accessibility( + has_projectile("both"), + and_accessibility(or_accessibility(shortcut, keys), has_projectile("adult")) + ) end }, ["Spirit Temple GS Sun on Floor Room"] = { @@ -14028,12 +14786,15 @@ data_per_region = { local df = (has("dinsfire") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local weapon = (has("sticks") or has("sword1")) and AccessibilityLevel.Normal or AccessibilityLevel.None local keys = has("spirit_small_keys", 3) and AccessibilityLevel.Normal or AccessibilityLevel.None - local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None return or_accessibility( has_projectile("both"), df, and_accessibility(damage_single_instance_ohko(), or_accessibility(weapon, has_projectile("child"))), - and_accessibility(keys, lift2, or_accessibility(has_projectile("adult"), damage_single_instance_ohko())) + and_accessibility( + or_accessibility(shortcut, keys), + or_accessibility(has_projectile("adult"), damage_single_instance_ohko()) + ) ) end } @@ -14092,19 +14853,6 @@ data_per_region = { return or_accessibility(has_bombchus(), and_accessibility(bombs, trick)) end }, - ["Spirit Temple First Mirror Chests"] = { - ["child_access"] = function() - return AccessibilityLevel.None - end, - ["adult_access"] = function() - if has("spirit_small_keys", 3) then - return AccessibilityLevel.Normal - elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak - end - return AccessibilityLevel.None - end - }, ["Spirit Temple GS Boulder Room"] = { ["child_access"] = function() return AccessibilityLevel.None @@ -14146,7 +14894,13 @@ data_per_region = { local fa = (has("firearrow") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_spirit_map_chest") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None - local keys5 = has("spirit_small_keys", 5) and AccessibilityLevel.Normal or AccessibilityLevel.None + local keys5 = AccessibilityLevel.None + if has("spirit_small_keys", 5) then + keys5 = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys5 = AccessibilityLevel.SequenceBreak + end + return or_accessibility( and_accessibility( or_accessibility(has_explosives(), keys3), @@ -14162,13 +14916,17 @@ data_per_region = { local fa = (has("firearrow") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_spirit_map_chest") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None - local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return or_accessibility( and_accessibility( or_accessibility(has_explosives(), keys3), or_accessibility(df, and_accessibility(or_accessibility(fa, trick), bow, sticks)) ), - and_accessibility(keys3, bow, or_accessibility(fa, trick), lift2) + and_accessibility( + or_accessibility(keys3, shortcut), + or_accessibility(df, and_accessibility(bow, or_accessibility(fa, trick))) + ) ) end }, @@ -14180,7 +14938,13 @@ data_per_region = { local fa = (has("firearrow") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_spirit_sun_chest") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None - local keys5 = has("spirit_small_keys", 5) and AccessibilityLevel.Normal or AccessibilityLevel.None + local keys5 = AccessibilityLevel.None + if has("spirit_small_keys", 5) then + keys5 = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys5 = AccessibilityLevel.SequenceBreak + end + return or_accessibility( and_accessibility( or_accessibility(has_explosives(), keys3), @@ -14196,13 +14960,17 @@ data_per_region = { local fa = (has("firearrow") and has("magic")) and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_spirit_sun_chest") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak local sticks = has("sticks") and AccessibilityLevel.Normal or AccessibilityLevel.None - local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return or_accessibility( and_accessibility( or_accessibility(has_explosives(), keys3), or_accessibility(df, and_accessibility(or_accessibility(fa, trick), bow, sticks)) ), - and_accessibility(keys3, bow, or_accessibility(fa, trick), lift2) + and_accessibility( + or_accessibility(keys3, shortcut), + or_accessibility(df, and_accessibility(bow, or_accessibility(fa, trick))) + ) ) end }, @@ -14211,14 +14979,21 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("lift2") and has("ocarina") and has("lullaby") then - if has("spirit_small_keys", 3) then - return AccessibilityLevel.Normal - elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak - end + local keys3 = AccessibilityLevel.None + if has("spirit_small_keys", 3) then + keys3 = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys3 = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local zl = (has("ocarina") and has("lullaby")) and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(and_accessibility(keys3, lift2), and_accessibility(hs, shortcut)), + zl + ) end }, ["Spirit Temple Statue Room Northeast Chest"] = { @@ -14226,19 +15001,25 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("lift2") and has("ocarina") and has("lullaby") then - local keys = AccessibilityLevel.None - if has("spirit_small_keys", 3) then - keys = AccessibilityLevel.Normal - elseif has("spirit_small_keys", 1) then - keys = AccessibilityLevel.SequenceBreak - end - local jump = - (has("hookshot") or has("hoverboots") or has("logic_spirit_lobby_jump")) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - return and_accessibility(keys, jump) + local keys3 = AccessibilityLevel.None + if has("spirit_small_keys", 3) then + keys3 = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys3 = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local zl = (has("ocarina") and has("lullaby")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local gap = + (has("hookshot") or has("hoverboots") or has("logic_spirit_lobby_jump")) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + + return and_accessibility( + or_accessibility(and_accessibility(keys3, lift2), and_accessibility(hs, shortcut)), + zl, + gap + ) end }, ["Spirit Temple GS Hall After Sun Block Room"] = { @@ -14260,7 +15041,7 @@ data_per_region = { ["adult_access"] = function() local rang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None - local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None local keys = AccessibilityLevel.None if has("spirit_small_keys", 3) then keys = AccessibilityLevel.Normal @@ -14270,7 +15051,7 @@ data_per_region = { return or_accessibility( and_accessibility(has_explosives(), rang, hs), - and_accessibility(or_accessibility(hs, AccessibilityLevel.Inspect), lift2, keys) + and_accessibility(or_accessibility(hs, AccessibilityLevel.Inspect), or_accessibility(shortcut, keys)) ) end }, @@ -14330,7 +15111,7 @@ data_per_region = { local rang = has("boomerang") and AccessibilityLevel.Normal or AccessibilityLevel.None local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None local hb = has("hoverboots") and AccessibilityLevel.Normal or AccessibilityLevel.None - local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None return or_accessibility( and_accessibility( @@ -14339,9 +15120,27 @@ data_per_region = { rang, or_accessibility(hs, hb, trick_jump) ), - and_accessibility(keys3, lift2, or_accessibility(hs, hb, trick_jump)) + and_accessibility(or_accessibility(keys3, shortcut), or_accessibility(hs, hb, trick_jump)) ) end + }, + ["Spirit Temple First Mirror Chests"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local keys3 = AccessibilityLevel.None + if has("spirit_small_keys", 3) then + keys3 = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys3 = AccessibilityLevel.SequenceBreak + end + local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility(and_accessibility(keys3, lift2), and_accessibility(hs, shortcut)) + end } }, ["exits"] = { @@ -14358,14 +15157,23 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("lift2") then - if has("spirit_small_keys", 4) then - return AccessibilityLevel.Normal - elseif has("spirit_small_keys", 2) then - return AccessibilityLevel.SequenceBreak - end + local keys_shortcut = AccessibilityLevel.None + if has("spirit_small_keys", 4) then + keys_shortcut = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys_shortcut = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + local keys_normal = AccessibilityLevel.None + if has("spirit_small_keys", 4) then + keys_normal = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 2) then + keys_normal = AccessibilityLevel.SequenceBreak + end + local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return or_accessibility(and_accessibility(keys_normal, lift2), and_accessibility(keys_shortcut, hs, shortcut)) end }, ["Child Spirit Temple Climb"] = { @@ -14375,6 +15183,37 @@ data_per_region = { ["adult_access"] = function() return AccessibilityLevel.Normal end + }, + ["Spirit Temple Boss Platform"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local ls = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local trick = + has("logic_spirit_platform_hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility(or_accessibility(ls, and_accessibility(trick, hs)), shortcut) + end + }, + ["Early Adult Spirit Temple"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + local keys = AccessibilityLevel.None + if has("spirit_small_keys", 5) then + keys = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 2) then + keys = AccessibilityLevel.SequenceBreak + end + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility(keys, hs, shortcut) + end } } }, @@ -14399,7 +15238,7 @@ data_per_region = { local keys3 = has("spirit_small_keys", 3) and AccessibilityLevel.Normal or AccessibilityLevel.None local ls = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None local keys5 = has("spirit_small_keys", 5) and AccessibilityLevel.Normal or AccessibilityLevel.None - local keys2 = has("spirit_small_keys", 2) and AccessibilityLevel.SequenceBreak or AccessibilityLevel.None + local keys2 = has("spirit_small_keys", 1) and AccessibilityLevel.SequenceBreak or AccessibilityLevel.None return or_accessibility(and_accessibility(keys3, ls, has_explosives()), keys5, keys2) end @@ -14409,16 +15248,26 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("lift2") then - local keys = AccessibilityLevel.None - if has("spirit_small_keys", 4) then - keys = AccessibilityLevel.Normal - elseif has("spirit_small_keys", 2) then - keys = AccessibilityLevel.SequenceBreak - end - return and_accessibility(keys, has_explosives()) + local keys_shortcut = AccessibilityLevel.None + if has("spirit_small_keys", 4) then + keys_shortcut = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys_shortcut = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + local keys_normal = AccessibilityLevel.None + if has("spirit_small_keys", 4) then + keys_normal = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 2) then + keys_normal = AccessibilityLevel.SequenceBreak + end + local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local hs = has("hookshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + + return and_accessibility( + or_accessibility(and_accessibility(keys_normal, lift2), and_accessibility(keys_shortcut, hs, shortcut)), + has_explosives() + ) end } }, @@ -14434,14 +15283,14 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("lift2") then + if has("lift2") or has("spirit_temple_shortcuts") then if has("spirit_small_keys", 5) then return AccessibilityLevel.Normal end local keys = AccessibilityLevel.None if has("spirit_small_keys", 3) then keys = AccessibilityLevel.Normal - elseif has("spirit_small_keys", 2) then + elseif has("spirit_small_keys", 1) then keys = AccessibilityLevel.SequenceBreak end return and_accessibility(keys, has_explosives()) @@ -14528,14 +15377,33 @@ data_per_region = { end return AccessibilityLevel.None end - }, + } + }, + ["exits"] = { + ["Spirit Temple Boss Platform"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shield3") then + return has_explosives() + end + return AccessibilityLevel.None + end + } + } + }, + ["Spirit Temple Boss Platform"] = { + ["scene"] = "Spirit Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { ["Twinrova"] = { ["child_access"] = function() return AccessibilityLevel.None end, ["adult_access"] = function() if has("shield3") and has("hookshot") and has("spirit_boss_key") then - return has_explosives() + return AccessibilityLevel.Normal end return AccessibilityLevel.None end @@ -14609,10 +15477,10 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("longshot") and has("lift2") then - return has_bombchus() - end - return AccessibilityLevel.None + local ls = has("longshot") and AccessibilityLevel.Normal or AccessibilityLevel.None + local lift2 = has("lift2") and AccessibilityLevel.Normal or AccessibilityLevel.None + local shortcut = has("spirit_temple_shortcuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(ls, or_accessibility(and_accessibility(lift2, has_bombchus()), shortcut)) end } } @@ -14718,12 +15586,13 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() + local keys = AccessibilityLevel.None if has("spirit_small_keys", 7) then - return AccessibilityLevel.Normal + keys = AccessibilityLevel.Normal elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak + keys = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + return and_accessibility(keys, has_explosives()) end }, ["Spirit Temple MQ Statue Room Lullaby Chest"] = { @@ -14753,12 +15622,13 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() + local keys = AccessibilityLevel.None if has("spirit_small_keys", 5) then - return AccessibilityLevel.Normal + keys = AccessibilityLevel.Normal elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak + keys = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + return and_accessibility(keys, has_explosives()) end }, ["Spirit Temple MQ Chest Switch Chest"] = { @@ -14766,14 +15636,15 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("ocarina") and has("time") then - if has("spirit_small_keys", 5) then - return AccessibilityLevel.Normal - elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak - end + local keys = AccessibilityLevel.None + if has("spirit_small_keys", 5) then + keys = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(keys, time, or_accessibility(has_explosives(), nuts)) end }, ["Spirit Temple MQ Boss Key Chest"] = { @@ -14781,14 +15652,16 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("ocarina") and has("time") and has("shield3") then - if has("spirit_small_keys", 5) then - return AccessibilityLevel.Normal - elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak - end + local keys = AccessibilityLevel.None + if has("spirit_small_keys", 5) then + keys = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local shield3 = has("shield3") and AccessibilityLevel.Normal or AccessibilityLevel.None + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(keys, time, shield3, or_accessibility(has_explosives(), nuts)) end }, ["Spirit Temple MQ GS Nine Thrones Room West"] = { @@ -14865,17 +15738,27 @@ data_per_region = { return AccessibilityLevel.None end, ["adult_access"] = function() - if has("ocarina") and has("time") then - local keys = AccessibilityLevel.None - if has("spirit_small_keys", 5) then - keys = AccessibilityLevel.Normal - elseif has("spirit_small_keys", 1) then - keys = AccessibilityLevel.SequenceBreak - end - local lot = - (has("logic_lens_spirit_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or - AccessibilityLevel.SequenceBreak - return and_accessibility(keys, lot) + local keys = AccessibilityLevel.None + if has("spirit_small_keys", 5) then + keys = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys = AccessibilityLevel.SequenceBreak + end + local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None + local lot = + (has("logic_lens_spirit_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + return and_accessibility(keys, time, lot, or_accessibility(has_explosives(), nuts)) + end + }, + ["Spirit Temple MQ Boss Platform"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("spirit_temple_shortcuts") then + return AccessibilityLevel.Normal end return AccessibilityLevel.None end @@ -14888,15 +15771,22 @@ data_per_region = { ["locations"] = { ["Spirit Temple MQ Child Climb North Chest"] = { ["child_access"] = function() - return AccessibilityLevel.None + local keys = AccessibilityLevel.None + if has("spirit_small_keys", 6) then + keys = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys = AccessibilityLevel.SequenceBreak + end + return and_accessibility(keys, has_explosives()) end, ["adult_access"] = function() + local keys = AccessibilityLevel.None if has("spirit_small_keys", 6) then - return AccessibilityLevel.Normal + keys = AccessibilityLevel.Normal elseif has("spirit_small_keys", 1) then - return AccessibilityLevel.SequenceBreak + keys = AccessibilityLevel.SequenceBreak end - return AccessibilityLevel.None + return and_accessibility(keys, has_explosives()) end }, ["Spirit Temple MQ Compass Chest"] = { @@ -14964,13 +15854,14 @@ data_per_region = { elseif has("spirit_small_keys", 1) then keys4 = AccessibilityLevel.SequenceBreak end + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None local lot = (has("logic_lens_spirit_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak return or_accessibility( and_accessibility(keys7, or_accessibility(sot, trick)), - and_accessibility(keys4, sot, lot) + and_accessibility(keys4, sot, or_accessibility(has_explosives(), nuts), lot) ) end, ["adult_access"] = function() @@ -14987,11 +15878,12 @@ data_per_region = { elseif has("spirit_small_keys", 1) then keys4 = AccessibilityLevel.SequenceBreak end + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None local lot = (has("logic_lens_spirit_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return or_accessibility(keys7, and_accessibility(keys4, sot, lot)) + return or_accessibility(keys7, and_accessibility(keys4, sot, or_accessibility(has_explosives(), nuts), lot)) end }, ["Desert Colossus"] = { @@ -15006,8 +15898,21 @@ data_per_region = { local sot = (has("ocarina") and has("time")) and AccessibilityLevel.Normal or AccessibilityLevel.None local trick = has("logic_spirit_mq_sun_block_sot") and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak + local keys4 = AccessibilityLevel.None + if has("spirit_small_keys", 4) then + keys4 = AccessibilityLevel.Normal + elseif has("spirit_small_keys", 1) then + keys4 = AccessibilityLevel.SequenceBreak + end + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None + local lot = + (has("logic_lens_spirit_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or + AccessibilityLevel.SequenceBreak - return and_accessibility(keys7, or_accessibility(sot, trick)) + return or_accessibility( + and_accessibility(keys7, or_accessibility(sot, trick)), + and_accessibility(keys4, sot, or_accessibility(has_explosives(), nuts), lot) + ) end, ["adult_access"] = function() local keys7 = AccessibilityLevel.None @@ -15023,11 +15928,12 @@ data_per_region = { elseif has("spirit_small_keys", 1) then keys4 = AccessibilityLevel.SequenceBreak end + local nuts = has("nuts") and AccessibilityLevel.Normal or AccessibilityLevel.None local lot = (has("logic_lens_spirit_mq") or (has("lens") and has("magic"))) and AccessibilityLevel.Normal or AccessibilityLevel.SequenceBreak - return or_accessibility(keys7, and_accessibility(keys4, sot, lot)) + return or_accessibility(keys7, and_accessibility(keys4, sot, or_accessibility(has_explosives(), nuts), lot)) end } } @@ -15115,7 +16021,26 @@ data_per_region = { end return AccessibilityLevel.SequenceBreak end - }, + } + }, + ["exits"] = { + ["Spirit Temple MQ Boss Platform"] = { + ["child_access"] = function() + return AccessibilityLevel.None + end, + ["adult_access"] = function() + if has("shield3") then + return AccessibilityLevel.Normal + end + return AccessibilityLevel.None + end + } + } + }, + ["Spirit Temple MQ Boss Platform"] = { + ["scene"] = "Spirit Temple", + ["pool"] = ER_POOL_TYPES.DUNGEON, + ["locations"] = { ["Twinrova"] = { ["child_access"] = function() return AccessibilityLevel.None From 3cc763faefbd48d59975b119bb30f781dfc178f6 Mon Sep 17 00:00:00 2001 From: Dennis Date: Tue, 2 May 2023 18:32:45 +0200 Subject: [PATCH 09/14] added/changed tricks for shortcuts - logic_spirit_platform_hookshot - logic_jabu_alcove_jump_dive - logic_jabu_mq_rang_jump - logic_shadow_mq_windy_walkway - logic_shadow_mq_after_wind_gs - logic_shadow_bongo - logic_dc_mq_eyes_adult - logic_dc_mq_hammer_floor - logic_dc_mq_eyes_child - logic_lens_shadow_mq_platform - logic_lens_shadow_mq_invisible_blades - logic_lens_shadow_mq_dead_hand - logic_lens_shadow_platform --- .../images/logic_dc_mq_child_back.png | Bin 2638 -> 0 bytes .../images/logic_dc_mq_eyes.png | Bin 2516 -> 0 bytes .../images/logic_dc_mq_eyes_adult.png | Bin 0 -> 3083 bytes .../images/logic_dc_mq_eyes_child.png | Bin 0 -> 3169 bytes .../images/logic_dc_mq_hammer_floor.png | Bin 0 -> 3027 bytes .../images/logic_jabu_alcove_jump_dive.png | Bin 0 -> 2736 bytes .../images/logic_jabu_mq_rang_jump.png | Bin 0 -> 2980 bytes .../images/logic_jabu_scrub_jump_dive.png | Bin 2507 -> 0 bytes .../images/logic_lens_shadow_back.png | Bin 2081 -> 0 bytes .../images/logic_lens_shadow_mq_back.png | Bin 2305 -> 0 bytes .../images/logic_lens_shadow_mq_dead_hand.png | Bin 0 -> 2906 bytes .../logic_lens_shadow_mq_invisible_blades.png | Bin 0 -> 3013 bytes .../images/logic_lens_shadow_mq_platform.png | Bin 0 -> 3099 bytes .../images/logic_lens_shadow_platform.png | Bin 0 -> 2699 bytes .../images/logic_shadow_bongo.png | Bin 0 -> 2951 bytes .../images/logic_shadow_mq_after_wind_gs.png | Bin 0 -> 2904 bytes .../images/logic_shadow_mq_windy_walkway.png | Bin 0 -> 3077 bytes .../images/logic_spirit_platform_hookshot.png | Bin 0 -> 2875 bytes .../items/tricks.json | 95 ++++++++++++++---- .../layouts/options.json | 58 ++++++++++- .../locations/dungeons.json | 19 ++-- .../scripts/data_per_region.lua | 46 +++------ 22 files changed, 158 insertions(+), 60 deletions(-) delete mode 100644 ootrando_overworldmap_hamsda/images/logic_dc_mq_child_back.png delete mode 100644 ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes_adult.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes_child.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_dc_mq_hammer_floor.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_jabu_alcove_jump_dive.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_jabu_mq_rang_jump.png delete mode 100644 ootrando_overworldmap_hamsda/images/logic_jabu_scrub_jump_dive.png delete mode 100644 ootrando_overworldmap_hamsda/images/logic_lens_shadow_back.png delete mode 100644 ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_back.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_dead_hand.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_invisible_blades.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_platform.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_lens_shadow_platform.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_shadow_bongo.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_shadow_mq_after_wind_gs.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_shadow_mq_windy_walkway.png create mode 100644 ootrando_overworldmap_hamsda/images/logic_spirit_platform_hookshot.png diff --git a/ootrando_overworldmap_hamsda/images/logic_dc_mq_child_back.png b/ootrando_overworldmap_hamsda/images/logic_dc_mq_child_back.png deleted file mode 100644 index 425e1b7cf4f05b1222cd92dcf2407fe9a5ca2f5f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2638 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 diff --git a/ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes.png b/ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes.png deleted file mode 100644 index 5ec0336ed5ede9f08dd32629ab57995fed2f4cb6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2516 zcmd^<_d6R37sn%Z>`^0DXo@JU7PUu+pi(ndQKPsht>P-Tu}ak*u^U<a+0XWkL5B{2m+ts7+xxb)g3UfNf?dwEkru0)Yq!2z>thd2Vj5tgI|D zGVgwupa&l8sQ(9VDZEbA^1_l`!89#pfI5;>E6B8R68uIq`c6WF0 z@9!5D7G79bI6FJb%gb|ca0mLn4h{}^d3jb=Rz^m~Teoi6 z+1Y`?U^E&{B9T^CS3i9C5ET`bo}SLa!m_fmQczG3A0O}P>Z+!uR##W&?CiX_xTvF} zv%S6T1+1c6N-fm-Kb8>PrJw07hQ*(TLeD&&8eSLjNNl6(Qnd0JNO-;?} z>gxLXdV72OtgNi)=xAeOV=phSn3xz96%|ucQ%6TfGc&W`;Na}+?69yf91d4mS*fe5 z>*C^4TU-0*&!3Kt4ipL{BqY?>*jQ3hVrgmV>FF6B9{%9LgT1{y3Cb^R#x`#@BjjVa5&uG-#;!cZf$MN+S(e4 zMDp|V=jP@%G&DSZ{MgOS?ez52+}zy4!lJvodv|v?C@4rlL4l8t@9^-@$jAr=gR!x( z(a_NR`t|G5y7Wa&(wEo@v@o%}G~WM500_B>*_Tr@`x)8=008Wr|B0seNvYfALWo8P zINH#7IP=IU!-}^jC4yc-E!LPhCDF5vwTKmzJ0KlfN{mcgc>yhIawo^a_j1??ctVa) zsXL)*^~JTSxMmxYSEHTXJGw@+ew5+X=A+VGdEpO0+kYWVGvJ-3kcEBJF;*zTP6LDSuz9HX1+fr@_eHI`=U zHxQ1Y|D(JqkZNJv)TtPE^DsdPlt*TPQTw4UNKPYaH%F^abgvlNiVsB^g= zJwAIs4rzWH`BT>7lf3_gCjwT4ZMkqU68Tc^0j52(1@lvdpGOIFbwh}TLL=L6O&TMZ z5j<()R()z-b%CZXT*at+1-!m=cvP{M#<^l8OtjX^6zdMC+X$(dagyh?bqVhS$1u)~U6qYY zM`a;cm}iP)-?a3(CwQ@I1E?6g7G~JE%kIt3qDE5Y&8<4eLJ^!D3 z`&5B0{pX`Cz+<5H9f2dCQo4uXd8OB@kuvnmeMWivs9GX)k&Zz%3GWT*d1T-U$}Ygd z4{v5|u*y5FSd*k)7wX7x{?mBiVBrCiG`%y>5iYiVE%zdbjASjSZZC+$_?cf>6PZ~o z+2a0{wRHPdtkcgc;3mG_Ei~0?V@1x^%2*M&3nha(8ZxJd;I?^&7&#>OGZLg0hZP`P z-O@&^8fYZtpFsr}!yQs7C@MVk&e+o>Y*(e2vY$Q&(@g5HIu^IRWWzV*+=?;TG}m7#eWXO4An-GB{zfK=<3VmL~@J7SA4gua@DHK zgdZY^&n{>-|GRRff+g^$pnkIb@WYAcI;a{JrkR!?sbgVAE8p!xhPILa zThJ{RxJmN>se}l4s+{{cx4jPXYWs@%xEC~BRizJ-ZAR2-Lt=)MiL>~$$+4Q&Y6gjH z3QM%7XjCclXb9V?J$Q|wIm9e}e{4V-76hV3VBU+oZ=Utdv~fm>Q>Z(#V`Q1b@qF0v zvO&DQlgWy@Kg+ZGlFNi!tuCQE%F~9=9*d*2B5%y1W8NOp{Y~>CF8Q1_gUwpV-=;B} z1qt9GCOfsW2syQrv^X>eC+XhtChuXzV}2safRZQI8z9mnoZ|8MJuxLGnZ3Gp|ZF<%W6Vj z)51T~Yu49Y1_+E)G+1h%aiqV8OQn1ZRS5I)I)A+AWU=7k&F9mN+$4+11(NO`n6Ek_ zPKrBANU>Yqa{%8!^N?mW#fzkkvg3G-7YvrOQtaFw!?cROvdu_!lk% BCNcm3 diff --git a/ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes_adult.png b/ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes_adult.png new file mode 100644 index 0000000000000000000000000000000000000000..755fc181d823ff158c4f125382b27a71b804f92c GIT binary patch literal 3083 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 Z{t0u)f`W7G7D@mB002ovPDHLkV1hepB8vb3 literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes_child.png b/ootrando_overworldmap_hamsda/images/logic_dc_mq_eyes_child.png new file mode 100644 index 0000000000000000000000000000000000000000..f1f0d5bc60ee360a2efe11d7fabd3624aec5b904 GIT binary patch literal 3169 zcmV-n44(6eP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D3-(DwK~!i%?V1U! zRaX^;4+f(aE8tkQmBA^E1EAK#+6crrq?!PZX&eA;j6)PKYBfdyr#M9*Mr+j;Xw^Ek zK&!^4wScu&TlIlcoG6gi39Uf2RSWd_f9tOQu-@T5e2@y5yg&Kx*=G-Huf6u#h_Me~8`ukjB2T6K7s1{;CrPuNS}Ci9`Me zL}P~dH?ih1-zy#~oG13vq4Hhg@xaH$s>jtLc&zwo@fNYB!ykyp159)q#jZZ^d*TTL zuOL^6&t1B7X)|F03yG$|J$stXn>RO`Hf`c{oA_4oMdJLqbLTd5=FDj(PoCUt*|H__ zE?>T!eEggto?T^a*s#HJni{`$?b;~M`=UjQnpv}Eg)H)~S+gdxhzmpp@G9z^IddlQ zk#E(iRXhju`jm+L-{X4edM3KM4Hf9KW5*6Am8bS%jwx=LK7IPB0|Nuij2Sbq>$Qq| zws@U%Jqz2;pFck`V)LzAw>In7ujlpg;%^8XBRpBWQaU{fJJP4JS@b!`et)!hGl3HY zbH%%5;KALycMk$Na)f2@K@9{(cFf?!gVn2752|s4>(;G{chbaV;tRzC$O7B9Zx1=7 z%P0{CD3@hI7Wo!0UK|8GGyTOP+lHOIBMVY@rY{tkJ()3Y5E(FpKO}xOUpz+~q;2SHJ#CZJi7lebT_b)+qz>vvhbs45A}io0 zMCxXXihgX5z-L7AG28M)M|35Op4Vmgo8qn1Pk$*4KPbMOFt)~KwlBID`?G>012U+7 zFaB0UZ{pU8=Znu1D<+Fy6kYb);wwbJNJJ;vO`CrqK1l?Z;s;eH^d?+%Vij?JAOpQv z?a+;Q>SIerzY=d<*`<6k!{5&*tLGcUqe4A{Y*fe3lC#FjFmd9YD!lz7`67Q@4 z%tp*on!VZMokih}2K$d|#%6irSmcdho8PtH_o!RCt&&WK~?=1mkfKUbnp`8QJFy(8Fk;Y-$v&%+t9`OlcYg~}| zf0pS%K*tca-Z&WV7|41fmpTd434r|QOx>;@2c&$~^=lEt0I{9OL)#SJI;wR+J%(`Fx5vHY-T%I7t5=C!#nzdl*J_wD@DZF z7m(#X5*Ldj#=Y{{f~5*3_V3-hHv;OMSTf5N0Q^(j-wOt~`5FQaUzCH$;BeSQS;D!t z-Pa5D>P)oP&(vL(O|AupEUAVJ7Efeb4qKoK>tv8O53ViPBBXwQj);VHW=mrkwu`qe za>|JFHUp5?_TWHDTZmI17jBB5zskk7Vb$?I}m zcsrGyFj8O-u9PdVjaRUTieYWr37`ktmIQ;W3tw@zpe&^A$ie|T_VGUvxIOc&UD$<* zgZ#OIgy$k7Clt0oUa@xLXskBO=E78T1>{eM>7xC&0%aNe=$Y+%j>zGhkH_&%ivG(R z&DIaRD&sfA=j6v%^DD(|w1xU}K(KwDf_&?C81$|ThXM6>Wl#_CUeyK8xkrpIOK^MO z0UV+@*hsh!H+)mLoqRqh`Y`1KmB=mDB~_M;6=}Q^&pV)ul#etydDI77uR4V^?!a-% z_&Q(n0f*6%G(eo?Ql}4S#Pg0^;&`VFhdn?Z%2XX4Ctf0g4gKs?^-!LD)ZsV|m5Ljp zJN82d>ZUH@ZA<4D`74ic1NCOwKEiS+!mL*Ov!U9v9xN_%dx3SOe)lV79FLB~*(Q{u zF86owg|)dmN&GMD^CGuOr;4u> zk<|~D)!oBQE!825I(}Wh<>3ju`dUHZZO%qb^Vi10{ns1 zw~lN#*@pH#AOAlgK5F&hY2qmQgNZ3--ZESB@pcsV2%6?UW-o+zgskqF00000NkvXX Hu0mjf17RDv literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/logic_dc_mq_hammer_floor.png b/ootrando_overworldmap_hamsda/images/logic_dc_mq_hammer_floor.png new file mode 100644 index 0000000000000000000000000000000000000000..00a0daec4944a6b464633577718da4ac5246c18b GIT binary patch literal 3027 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 I>$^Vt4}HaA*8l(j diff --git a/ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_back.png b/ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_back.png deleted file mode 100644 index cbbc4340e9087bd5305df0a1d10079b7456b6688..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 2305 zcmds%_ct4i7si7cwP&bNL8#dhGl&sH%pw#o+9D{b2yal;TBRz8T{UY{J1AAEZCb0S z5qs4PYO6h7-+$wK&w1|W+~>FFoafvaGgEygdR}?}0KjB`)U~)`=apFLsIE48y?yfv z6n+-^a6nZb|LWCo%}v`x8vv+HU^sK61^_5uni*T_UHN@|eV3P)r>Cd%^z<+Ajf{Wu&hJ3D)Eaq;;0n1+Uij*c!NA)&XoH#RmFjYj9@ z=7xrba&mIMd-ra4cXxbzJU>4_Dk@4}Uq34=DTRD?t# zH#RolaJYkm!{OoK($do4;NaQW+2_xnCnhFJN=nAY#{T^IQ(0Nr-rgP`AK%s0_5S^P zOG`^}aq-E?Ngp2{e}DhSk00~%^LKP~jE;`Jefu^gC53{5!rtCqTU&c;YwOvwXG23n zT3TAp&dwkZsJ6CNR8(|+ex8Si=jiCDxw&~}W~Qd5#@yVTkB?7BM`wS3Us_r^C@4r# zQPIxM4uL?FmzO_$`0(r3uLA=EdU|@*)z!MXx`Ba#W@cuxva$yU2Rl1E8X6iRA|gFK zJx`uInVXxtxVZT7S6 zf`WB*btWbzyu7?8CnsWJVr*<|etv#UO-EtCf{iVPRo$aWO3|t+BDOfPg@Fc(|#lX*J zxr~$QV$*gG_hD`<+z*^^yCoXcqu87k=t^)vNy~)i=TbEjB0(yg1JaOemA#f`2E{k zqLeGrJ>MrW7VtYrQ@wH~_F<-bCi&bSN=4JY1cLT>8)j zp7`9kE|g0CPmf)4@&uWp%tJ9l@zq#V2&0|!zG^RHX48JXLy-um0q$#~)d!Xrd?b?Y ziAQi`fT3gmxR`sXGe~pbl_z-wMWZO-+%+2FAU>B1&uR7w0W~onvK$4J+cq)In_|TP z>dz}thQMCDNshdyWEC47<8*MAT*#0 z#S8v^{|J#9m+Nk?YqxdB!&_ zhK<2F9}nOP(}O7lvzji zkyE;)3=3gd*e1~~JKi+iE{tf{bSFfr#i(b#U%g+E7u|Tf(o#Z3rPn1516+N^iOjLA z44s=wtq!dw68_~alKju$x4o_6O(#yIfDION{E^qrA2zBR{K`_)(+K& z;V#!An&SZ%ui40{h@eq`UjyauyH=Wal+v*g_ADTAMM;obP+KseXF8EC+WnKE{osFd`X_EXo%i#q{`6A0-s^;&Auv|-E9&Qr-JZ>St&&a?;!tspR3K9uKr(EADjTmx)nI0*zWJ09yybR7mxm^TT>$B! zcVacMg!_!^xY_V;`3wEbGj~EkM~=0LX3~=oq3#A5SztD9fK-5S)dy^utx>W(^+vg< z)oiL(2y!RhZ53Es-E=(J|Eor~C$5~fgK4=K_r2u(a}<0lk3iVF|8i^Xgl{5csFm4J SGUMun0u1y_b*tbH!~X+OT)mM1 diff --git a/ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_dead_hand.png b/ootrando_overworldmap_hamsda/images/logic_lens_shadow_mq_dead_hand.png new file mode 100644 index 0000000000000000000000000000000000000000..36b11832f7a0d775f8b592e50fa73a5367f32513 GIT binary patch literal 2906 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 literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/logic_lens_shadow_platform.png b/ootrando_overworldmap_hamsda/images/logic_lens_shadow_platform.png new file mode 100644 index 0000000000000000000000000000000000000000..4af618415c1082ccb04d3c4fc5c45837cb2a959a GIT binary patch literal 2699 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 FV1ki6ZG->- literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/logic_shadow_bongo.png b/ootrando_overworldmap_hamsda/images/logic_shadow_bongo.png new file mode 100644 index 0000000000000000000000000000000000000000..31f029799779f904a75eb35ce8f65a448302f49d GIT binary patch literal 2951 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 literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/logic_shadow_mq_after_wind_gs.png b/ootrando_overworldmap_hamsda/images/logic_shadow_mq_after_wind_gs.png new file mode 100644 index 0000000000000000000000000000000000000000..ea69dc6394f25c875f881ac8e1a905d3d792561f GIT binary patch literal 2904 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 Ty#=-700000NkvXXu0mjf!Ws2` literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/images/logic_spirit_platform_hookshot.png b/ootrando_overworldmap_hamsda/images/logic_spirit_platform_hookshot.png new file mode 100644 index 0000000000000000000000000000000000000000..a4ef767deb15ed3af6aad9b49cd95a50b215f507 GIT binary patch literal 2875 zcmV-B3&iw^P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D3eZVJK~!i%?b>;) zT~!$c@QVtFf>K3sKq=s?NUL!`jV&69aiY~YYbcIrVgUcpKh#iynrPI5vp5tmF;SzX zQKKeG>j0t#q0S>vK!b`;`vm%^HR(#$yZd~5TKn7M+2@URVHb8` z+t_XR?QuwWX!xseCcI7fnzkU)<)`x!xKN9Zf@pOw(JII^Elb0`FK3cYH*=Wg{(P4)j)(rH6Ht6SIP563&1%SbSPVX;J zCm)@4)>(sP^sMj;v%#GgH9>BO1NT_Fc5UnA_3PJIyW>Tjtut>3+IRQJ}Uet!xa1_e0%uraM=YHT+p=8 zal#2Fw1tFC=O1*?L4LKDei{x4zZtF@c=zxvp&e$Q@Y|vC9cN*WkbmwGS_D9QP6_WF zt_p7#PU4rLbW6gepcN1r+hO6Qp0L%%&J)W4U7#!}((P}_gdp0*PzdPI2sx^?SDc90{EID&W%*i!>F z#y}`&=&dG>gwn`xPHY&%`k^5!k}uS$bfrJaI@XBaLj&;^b3~ zI?E&iWYZM^lGCr#2tV9@hvWN{JBaw^79Aqt8~)SRDNPBec=m3 zcvsl!Q3frgT|RNWK6Ur{lvm{|gI#{%itGGkceLn^+gf_$t2+C!BAobNht7cGbTm{s z+FPjh@)rnKJYC82sc=DY1(D^z2`4v)flksPK(sjNq0-7ru(0&d=aXJsl@FD^bMl-C zqRe4}{CtRSY1x(QxpWKD2HI2_g!^_>2eFm5Do>q5xwTD?Cx|raqMwG!C!P(44xgiO zQg03LD!1}UhwP!F8C*xR&aXNRBHF8cgMY@)!$6tcUWN$*>QuKjYDZ0i`SjI95T;Qc z&+KeS%MhM3L6o6vd8(aNmbmKs@S~yQ^JO*gL4B28eWgj6)rYjQm5&m3JX{bs+dVqm z-&SVpjf2`YmCD=kVG?QR5ZX4B5uxK3>|x8F14pJw^xJNaIz|L{^GDfn;<#Lzq^Wuf zp1n(T+kXSQJZyD5a4u)hplL^dA^i(lh7Nr_lfGc9y2N=Yt+c(~3Rhf#9S1*rBU~vE zTuW2uhX$Ip55)C#4E6`MhXH+it8V=a^XYS}TD^MpD1)-uJ#XH;c|1m>8Qu@Q6I>%u zP+um`D3hb5^UmY4WeQ#qelR@1WrFqsE#8SI(T^WGGdWtGp$*gCZEq1wkoyS`uQA>^ z2&!il7c!F@>m_wtAeiF}66MvowMTVEk6}>$DEy7U6zs!cItHcpeB5!zRo+&2L5GU( z27H6t6>-`(=(xVxquikbKOTAko&)KXXEAYc(4z($-zmQ^O>d#{06YCd8?1zdvwQu8 z-lm+aq{Gv=+5{7G>P6ugK-Hd+Y7sw`vrjs;+CNA(2F#J02Lp2;DLjAc7-?K z4U7zwtr}S{h~(F34hrV1Dg!<<{PuWt`0&}_e=w8*yVupBI+U-Y=ql$91HOSyoxXgC-;Hc>=-n!>7y!=c3xH z4i_wiL5n|b)*6)E*H>Y>l+zFVLixEC1YwiNgfLEw2Wf`!<9OvJY>e_rV8Xv7yid4Q z-z!tuwD_&@IJrxA`04Q5{7nZWubV!*QM;PkUYH>5ijyeEi{N1466=^Sf$KwR=DowN z^fCP`{k$_Fa>#_z5x`h)};Hkk)qu31a?w6D-N)=H~9<*L)59F8EaxZ%meZ_`Fc z4f2}2^XaRdNgC-bnsymwNjtGayGnohY;cah+?Z|-UBmjeGzYctsaHJ)ya`yErocoS zqw1&CP8Zk)Yk}D=JSS`~Y+jhaua}{$WbLIbl{UMVENMd>cTF1K(m@EuY6idyK=GG;iaxF9@tBda>}lbs;lA#Ep}Fy1y2yq zCJ!jzb5^g{$Nn$SrmQaQy!xcCIQD9vU-s&g(9PLa{*otl-z;3;kNpkRCS}M&hcxA1btq4L zSbbJ)lBd@ypZM^_;da9ZqG~{^gqWdow#AQy*G&xU~)L<7We$`@0eT$uKS)YsIn%?3v=3hzG~+zKX= zec$AE1xv60BQt4wP3q9ewsrdYc3c(eFay{BE6qKF&6fAo+2H7zp{vW?L!EHvP@B}( z-wcy zH#|G+za$&DKE4(ltNrs}efclYN4xeZ=hLAt Date: Wed, 3 May 2023 12:40:27 +0200 Subject: [PATCH 10/14] added `Dungeon Boss Shortcuts` setting --- ootrando_overworldmap_hamsda/README.md | 14 +++-- ootrando_overworldmap_hamsda/changelog.md | 1 + .../images/overlay_boss_icon.png | Bin 0 -> 472 bytes .../items/dungeons.json | 49 ++++++++++++++++++ .../layouts/dungeon_grids.json | 42 +++++++-------- .../layouts/dungeon_grids_keysanity.json | 28 +++++----- 6 files changed, 95 insertions(+), 39 deletions(-) create mode 100644 ootrando_overworldmap_hamsda/images/overlay_boss_icon.png diff --git a/ootrando_overworldmap_hamsda/README.md b/ootrando_overworldmap_hamsda/README.md index 5c639d0d..7fdddc42 100644 --- a/ootrando_overworldmap_hamsda/README.md +++ b/ootrando_overworldmap_hamsda/README.md @@ -14,20 +14,26 @@ The pack offers 7 different variants: 6. Entrance Randomizer 7. Entrance Randomizer (Keysanity) -## Vanilla vs Master Quest Dungeons +## Dungeon Labels + +The small labels with the dungeon names serve two purposes in regards to logic. + +### Vanilla vs Master Quest Dungeons The randomizer has the option to switch some or all dungeons to their Master Quest equivalents. -To accomodate for this, you can click on the dungeon labels to change their current status: +To accomodate for this, you can left click on the dungeon labels to change their current status: - ![Vanilla](images/label_deku.png "Vanilla") The dungeons vanilla checks will be shown. - ![Master Quest](images/label_deku_mq.png "Master Quest") The dungeons MQ checks will be shown. - ![Unknown](images/label_deku_red.png "Unknown") Both versions of the dungeon will be shown. -You can use this in the non map variants as a reminder. - The small key maximum amounts in the keysanity variants will dynamically update according to what you selected for the corresponding dungeon. If you have a dungeon marked as unknown in non-keysanity, some of the checks in the dungeon might not show up correctly until you pick either vanilla or MQ. +### Dungeon Boss Shortcuts + +The randomizer also has the option to activate certain shortcuts to reach the boss faster in dungeons with blue warps. To mark that one of these is active, right clicking e.g. ![Label](images/label_deku.png "Label") will overlay it with ![Boss Shortcut](images/overlay_boss_icon.png "Boss Shortcut"). + ## Special items Some of this functionality might not be immediately obvious: diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index 21230c9b..bbe361cc 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -7,6 +7,7 @@ - added `Shuffle Frog Song Rupees` setting - added `Blue Fire Arrows` setting - added granny's blue potion to `Shuffle Expensive Merchants` setting +- added `Dungeon Boss Shortcuts` setting ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/images/overlay_boss_icon.png b/ootrando_overworldmap_hamsda/images/overlay_boss_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..b32057dfa4d75614323b8610bbf20ca2e134c607 GIT binary patch literal 472 zcmV;}0Vn>6P)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0c}Y{K~y+T#Z)0o z!$1^$1Jfmt+=(SSF;UzQB%K3+sDOkyaM;ZuhhqXU+$3|Y#ci&Wlf!Lp6%&PZsS@UP`fCXQeylTf-{cG zD;L~hm@hw}Nr=~V;R=B;T30V13MNHm{o%OCEgtWDsy@Sl1bkyM8o-LIyah6qWOr6( z2MEE6lR1YLSnQGnPSe40nOBBRyY=c_oTDR7&}s?XUwhb7rCMp+KlE`*cW!QbIO82` z_i^%T! literal 0 HcmV?d00001 diff --git a/ootrando_overworldmap_hamsda/items/dungeons.json b/ootrando_overworldmap_hamsda/items/dungeons.json index cefe7d8a..9803321d 100644 --- a/ootrando_overworldmap_hamsda/items/dungeons.json +++ b/ootrando_overworldmap_hamsda/items/dungeons.json @@ -27,6 +27,13 @@ } ] }, + { + "name": "Deku Tree Shortcut", + "type": "toggle_badged", + "base_item": "deku_label", + "img": "images/overlay_boss_icon.png", + "codes": "deku_shortcuts,deku_tree_shortcuts" + }, { "name": "Dodongos Cavern Label", "type": "progressive", @@ -49,6 +56,13 @@ } ] }, + { + "name": "Dodongos Cavern Shortcut", + "type": "toggle_badged", + "base_item": "dodongo_label", + "img": "images/overlay_boss_icon.png", + "codes": "dodongo_shortcuts,dodongos_cavern_shortcuts" + }, { "name": "Jabu Jabu Label", "type": "progressive", @@ -71,6 +85,13 @@ } ] }, + { + "name": "Jabu Jabu Shortcut", + "type": "toggle_badged", + "base_item": "jabu_label", + "img": "images/overlay_boss_icon.png", + "codes": "jabu_shortcuts" + }, { "name": "Forest Temple Label", "type": "progressive", @@ -93,6 +114,13 @@ } ] }, + { + "name": "Forest Temple Shortcut", + "type": "toggle_badged", + "base_item": "forest_label", + "img": "images/overlay_boss_icon.png", + "codes": "forest_shortcuts,forest_temple_shortcuts" + }, { "name": "Forest Temple Small Keys", "type": "consumable", @@ -128,6 +156,13 @@ } ] }, + { + "name": "Fire Temple Shortcut", + "type": "toggle_badged", + "base_item": "fire_label", + "img": "images/overlay_boss_icon.png", + "codes": "fire_shortcuts,fire_temple_shortcuts" + }, { "name": "Fire Temple Small Keys", "type": "consumable", @@ -198,6 +233,13 @@ } ] }, + { + "name": "Spirit Temple Shortcut", + "type": "toggle_badged", + "base_item": "spirit_label", + "img": "images/overlay_boss_icon.png", + "codes": "spirit_shortcuts,spirit_temple_shortcuts" + }, { "name": "Spirit Temple Small Keys", "type": "consumable", @@ -233,6 +275,13 @@ } ] }, + { + "name": "Shadow Temple Shortcut", + "type": "toggle_badged", + "base_item": "shadow_label", + "img": "images/overlay_boss_icon.png", + "codes": "shadow_shortcuts,shadow_temple_shortcuts" + }, { "name": "Shadow Temple Small Keys", "type": "consumable", diff --git a/ootrando_overworldmap_hamsda/layouts/dungeon_grids.json b/ootrando_overworldmap_hamsda/layouts/dungeon_grids.json index f166250e..57463c67 100644 --- a/ootrando_overworldmap_hamsda/layouts/dungeon_grids.json +++ b/ootrando_overworldmap_hamsda/layouts/dungeon_grids.json @@ -65,14 +65,14 @@ "content": [ { "type": "item", - "item": "forest_label", + "item": "forest_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 }, { "type": "item", - "item": "deku_label", + "item": "deku_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 20, @@ -89,14 +89,14 @@ "content": [ { "type": "item", - "item": "fire_label", + "item": "fire_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 }, { "type": "item", - "item": "dodongo_label", + "item": "dodongo_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 20, @@ -120,7 +120,7 @@ }, { "type": "item", - "item": "jabu_label", + "item": "jabu_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 20, @@ -137,7 +137,7 @@ "content": [ { "type": "item", - "item": "spirit_label", + "item": "spirit_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -161,7 +161,7 @@ "content": [ { "type": "item", - "item": "shadow_label", + "item": "shadow_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -327,7 +327,7 @@ "content": [ { "type": "item", - "item": "forest_label", + "item": "forest_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -342,7 +342,7 @@ "content": [ { "type": "item", - "item": "fire_label", + "item": "fire_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -381,7 +381,7 @@ "content": [ { "type": "item", - "item": "spirit_label", + "item": "spirit_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -405,7 +405,7 @@ "content": [ { "type": "item", - "item": "shadow_label", + "item": "shadow_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -453,7 +453,7 @@ "content": [ { "type": "item", - "item": "deku_label", + "item": "deku_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -468,7 +468,7 @@ "content": [ { "type": "item", - "item": "dodongo_label", + "item": "dodongo_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -483,7 +483,7 @@ "content": [ { "type": "item", - "item": "jabu_label", + "item": "jabu_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -518,7 +518,7 @@ }, { "type": "item", - "item": "forest_label", + "item": "forest_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, @@ -542,7 +542,7 @@ }, { "type": "item", - "item": "fire_label", + "item": "fire_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, @@ -590,7 +590,7 @@ }, { "type": "item", - "item": "spirit_label", + "item": "spirit_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, @@ -614,7 +614,7 @@ }, { "type": "item", - "item": "shadow_label", + "item": "shadow_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, @@ -670,7 +670,7 @@ }, { "type": "item", - "item": "deku_label", + "item": "deku_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, @@ -694,7 +694,7 @@ }, { "type": "item", - "item": "dodongo_label", + "item": "dodongo_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, @@ -718,7 +718,7 @@ }, { "type": "item", - "item": "jabu_label", + "item": "jabu_shortcuts", "canvas_depth": 1, "canvas_left": 0, "canvas_top": 34, diff --git a/ootrando_overworldmap_hamsda/layouts/dungeon_grids_keysanity.json b/ootrando_overworldmap_hamsda/layouts/dungeon_grids_keysanity.json index f1a2e918..d078f43a 100644 --- a/ootrando_overworldmap_hamsda/layouts/dungeon_grids_keysanity.json +++ b/ootrando_overworldmap_hamsda/layouts/dungeon_grids_keysanity.json @@ -65,7 +65,7 @@ "content": [ { "type": "item", - "item": "forest_label", + "item": "forest_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -98,7 +98,7 @@ "content": [ { "type": "item", - "item": "fire_label", + "item": "fire_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -164,7 +164,7 @@ "content": [ { "type": "item", - "item": "spirit_label", + "item": "spirit_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -197,7 +197,7 @@ "content": [ { "type": "item", - "item": "shadow_label", + "item": "shadow_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -347,21 +347,21 @@ "content": [ { "type": "item", - "item": "deku_label", + "item": "deku_shortcuts", "margin": "1,2", "width": 32, "height": 12 }, { "type": "item", - "item": "dodongo_label", + "item": "dodongo_shortcuts", "margin": "1,2", "width": 32, "height": 12 }, { "type": "item", - "item": "jabu_label", + "item": "jabu_shortcuts", "margin": "1,2", "width": 32, "height": 12 @@ -490,7 +490,7 @@ "content": [ { "type": "item", - "item": "forest_label", + "item": "forest_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -523,7 +523,7 @@ "content": [ { "type": "item", - "item": "fire_label", + "item": "fire_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -589,7 +589,7 @@ "content": [ { "type": "item", - "item": "spirit_label", + "item": "spirit_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -622,7 +622,7 @@ "content": [ { "type": "item", - "item": "shadow_label", + "item": "shadow_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -670,7 +670,7 @@ "content": [ { "type": "item", - "item": "deku_label", + "item": "deku_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -685,7 +685,7 @@ "content": [ { "type": "item", - "item": "dodongo_label", + "item": "dodongo_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 @@ -700,7 +700,7 @@ "content": [ { "type": "item", - "item": "jabu_label", + "item": "jabu_shortcuts", "canvas_depth": 1, "width": 32, "height": 12 From 9c666ca9edd748c5b21ee83062b2e04ba5b3da4e Mon Sep 17 00:00:00 2001 From: Dennis Date: Wed, 3 May 2023 12:46:28 +0200 Subject: [PATCH 11/14] changed layouts to accomodate smaller resolutions - moved pinned locations between items and map in horizontal layout - added scrollbar to pinned locations in horizontal layout --- ootrando_overworldmap_hamsda/changelog.md | 3 + .../layouts/layouts.json | 145 +++++++++--------- .../layouts/layouts_entrance.json | 145 +++++++++--------- .../layouts/tracker.json | 4 +- 4 files changed, 157 insertions(+), 140 deletions(-) diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index bbe361cc..a75d1868 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -8,6 +8,9 @@ - added `Blue Fire Arrows` setting - added granny's blue potion to `Shuffle Expensive Merchants` setting - added `Dungeon Boss Shortcuts` setting +- changed layouts to accomodate smaller resolutions better + - moved pinned locations between items and map in horizontal layout + - added scrollbar to pinned locations in horizontal layout ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/layouts/layouts.json b/ootrando_overworldmap_hamsda/layouts/layouts.json index b4b424e3..ca9822fd 100644 --- a/ootrando_overworldmap_hamsda/layouts/layouts.json +++ b/ootrando_overworldmap_hamsda/layouts/layouts.json @@ -1,5 +1,5 @@ { - "tracker_right_map": { + "tracker_very_tall": { "type": "container", "background": "#212121", "content": { @@ -116,7 +116,7 @@ ] } }, - "tracker_top_map": { + "tracker_wide_with_scrollable_pins": { "type": "container", "background": "#212121", "content": { @@ -125,89 +125,96 @@ "content": [ { "type": "dock", - "dock": "bottom", + "dock": "left", + "margin": "0,0,3,0", + "content": [ + { + "type": "group", + "header": "Items", + "dock": "top", + "header_content": { + "type": "button_popup", + "style": "settings", + "popup_background": "#FF212121", + "layout": "options_popup" + }, + "content": { + "type": "layout", + "key": "item_grid_wide" + } + }, + { + "type": "group", + "header": "Counters", + "dock": "top", + "content": { + "type": "layout", + "key": "counters_wide" + } + }, + { + "type": "group", + "header": "Presets", + "dock": "top", + "content": { + "type": "item", + "item": "presets", + "h_alignment": "left", + "v_alignment": "top", + "margin": "5", + "width": 32, + "height": 32 + } + } + ] + }, + { + "type": "dock", "content": [ { - "type": "dock", + "type": "group", + "header": "Pinned Locations", "dock": "left", - "margin": "0,0,3,0", + "width": 200, "content": [ { - "type": "group", - "header": "Items", - "dock": "top", - "header_content": { - "type": "button_popup", - "style": "settings", - "popup_background": "#FF212121", - "layout": "options_popup" - }, + "type": "scroll", + "horizontal_scrollbar_visibility": "disabled", "content": { - "type": "layout", - "key": "item_grid_wide" + "type": "recentpins", + "style": "wrap", + "h_alignment": "stretch", + "v_alignment": "stretch", + "orientation": "vertical", + "compact": true } - }, + } + ] + }, + { + "type": "tabbed", + "tabs": [ { - "type": "group", - "header": "Counters", - "dock": "top", + "title": "Child", + "icon": "images/sword1.png", "content": { - "type": "layout", - "key": "counters_wide" + "type": "map", + "maps": [ + "child" + ] } }, { - "type": "group", - "header": "Presets", - "dock": "top", + "title": "Adult", + "icon": "images/sword2.png", "content": { - "type": "item", - "item": "presets", - "h_alignment": "left", - "v_alignment": "top", - "margin": "5", - "width": 32, - "height": 32 + "type": "map", + "maps": [ + "adult" + ] } } ] - }, - { - "type": "group", - "header": "Pinned Locations", - "content": { - "type": "recentpins", - "style": "wrap", - "h_alignment": "stretch", - "v_alignment": "stretch", - "orientation": "horizontal", - "compact": true - } - } - ] - }, - { - "type": "tabbed", - "tabs": [ - { - "title": "Child", - "icon": "images/sword1.png", - "content": { - "type": "map", - "maps": [ - "child" - ] - } - }, - { - "title": "Adult", - "icon": "images/sword2.png", - "content": { - "type": "map", - "maps": [ - "adult" - ] - } } ] } diff --git a/ootrando_overworldmap_hamsda/layouts/layouts_entrance.json b/ootrando_overworldmap_hamsda/layouts/layouts_entrance.json index 03abf7f0..3e4c2209 100644 --- a/ootrando_overworldmap_hamsda/layouts/layouts_entrance.json +++ b/ootrando_overworldmap_hamsda/layouts/layouts_entrance.json @@ -1,5 +1,5 @@ { - "tracker_right_map": { + "tracker_very_tall": { "type": "container", "background": "#212121", "content": { @@ -116,7 +116,7 @@ ] } }, - "tracker_top_map": { + "tracker_wide_with_scrollable_pins": { "type": "container", "background": "#212121", "content": { @@ -125,89 +125,96 @@ "content": [ { "type": "dock", - "dock": "bottom", + "dock": "left", + "margin": "0,0,3,0", + "content": [ + { + "type": "group", + "header": "Items", + "dock": "top", + "header_content": { + "type": "button_popup", + "style": "settings", + "popup_background": "#FF212121", + "layout": "options_popup" + }, + "content": { + "type": "layout", + "key": "item_grid_wide" + } + }, + { + "type": "group", + "header": "Counters", + "dock": "top", + "content": { + "type": "layout", + "key": "counters_wide" + } + }, + { + "type": "group", + "header": "Presets", + "dock": "top", + "content": { + "type": "item", + "item": "presets", + "h_alignment": "left", + "v_alignment": "top", + "margin": "5", + "width": 32, + "height": 32 + } + } + ] + }, + { + "type": "dock", "content": [ { - "type": "dock", + "type": "group", + "header": "Pinned Locations", "dock": "left", - "margin": "0,0,3,0", + "width": 200, "content": [ { - "type": "group", - "header": "Items", - "dock": "top", - "header_content": { - "type": "button_popup", - "style": "settings", - "popup_background": "#FF212121", - "layout": "options_popup" - }, + "type": "scroll", + "horizontal_scrollbar_visibility": "disabled", "content": { - "type": "layout", - "key": "item_grid_wide" + "type": "recentpins", + "style": "wrap", + "h_alignment": "stretch", + "v_alignment": "stretch", + "orientation": "vertical", + "compact": true } - }, + } + ] + }, + { + "type": "tabbed", + "tabs": [ { - "type": "group", - "header": "Counters", - "dock": "top", + "title": "Locations", + "icon": "images/chest_brown_closed.png", "content": { - "type": "layout", - "key": "counters_wide" + "type": "map", + "maps": [ + "locations" + ] } }, { - "type": "group", - "header": "Presets", - "dock": "top", + "title": "Exits", + "icon": "images/door.png", "content": { - "type": "item", - "item": "presets", - "h_alignment": "left", - "v_alignment": "top", - "margin": "5", - "width": 32, - "height": 32 + "type": "map", + "maps": [ + "exits" + ] } } ] - }, - { - "type": "group", - "header": "Pinned Locations", - "content": { - "type": "recentpins", - "style": "wrap", - "h_alignment": "stretch", - "v_alignment": "stretch", - "orientation": "horizontal", - "compact": true - } - } - ] - }, - { - "type": "tabbed", - "tabs": [ - { - "title": "Locations", - "icon": "images/chest_brown_closed.png", - "content": { - "type": "map", - "maps": [ - "locations" - ] - } - }, - { - "title": "Exits", - "icon": "images/door.png", - "content": { - "type": "map", - "maps": [ - "exits" - ] - } } ] } diff --git a/ootrando_overworldmap_hamsda/layouts/tracker.json b/ootrando_overworldmap_hamsda/layouts/tracker.json index a3a0e562..fbc449cc 100644 --- a/ootrando_overworldmap_hamsda/layouts/tracker.json +++ b/ootrando_overworldmap_hamsda/layouts/tracker.json @@ -1,10 +1,10 @@ { "tracker_default": { "type": "layout", - "key": "tracker_right_map" + "key": "tracker_very_tall" }, "tracker_horizontal": { "type": "layout", - "key": "tracker_right_map" + "key": "tracker_wide_with_scrollable_pins" } } \ No newline at end of file From 2d8116a52fa392b65ce268cdc04166158ce1030c Mon Sep 17 00:00:00 2001 From: Dennis Date: Thu, 4 May 2023 16:47:35 +0200 Subject: [PATCH 12/14] added `Plant Magic Beans` setting --- ootrando_overworldmap_hamsda/SETTINGS.md | 4 + ootrando_overworldmap_hamsda/changelog.md | 1 + .../images/setting_plant_beans.png | Bin 0 -> 1913 bytes .../items/options.json | 18 ++++ .../items/sequences.json | 96 ----------------- .../layouts/options.json | 6 ++ .../locations/overworld.json | 101 ++++-------------- .../scripts/data_per_region.lua | 50 +++++++-- .../scripts/logic_helpers.lua | 19 +--- .../scripts/user_settings.lua | 3 - 10 files changed, 90 insertions(+), 208 deletions(-) create mode 100644 ootrando_overworldmap_hamsda/images/setting_plant_beans.png diff --git a/ootrando_overworldmap_hamsda/SETTINGS.md b/ootrando_overworldmap_hamsda/SETTINGS.md index 6c8232dc..32eecb35 100644 --- a/ootrando_overworldmap_hamsda/SETTINGS.md +++ b/ootrando_overworldmap_hamsda/SETTINGS.md @@ -278,6 +278,10 @@ This setting determines if all masks will be available once the Happy Mask Shop - ![Mask Quest not complete](images/setting_masks_off.png "Mask Quest not complete") The mask quest has to be completed step by step like in the vanilla game. - ![Mask Quest complete](images/setting_masks_complete.png "Mask Quest complete") All the masks will be available once the Happy Mask Shop is open. +### Plant Magic Beans + +- ![Plant Magic Beans](images/setting_plant_beans.png "Plant Magic Beans") Plants all 10 magic beans in their soft soil spots and allows adult to ride them. + ### Hints This setting determines when hintable locations will show up on the map ([see wiki](https://wiki.ootrandomizer.com/index.php?title=Readme#Other)). diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index a75d1868..b268bf21 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -11,6 +11,7 @@ - changed layouts to accomodate smaller resolutions better - moved pinned locations between items and map in horizontal layout - added scrollbar to pinned locations in horizontal layout +- added `Plant Magic Beans` setting and removed bean planting `user_setting` ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/images/setting_plant_beans.png b/ootrando_overworldmap_hamsda/images/setting_plant_beans.png new file mode 100644 index 0000000000000000000000000000000000000000..92f14998423a7798211115a8e58afd782cf0d834 GIT binary patch literal 1913 zcmV-<2Zs2GP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D2M$R@K~!i%?V3wy zokbXir`lS)U=v!jDry7XttLU-sL%v2;6jriDk{m`Zx7Mmu%&zyOWlRu|u7s-+Ozwq+U^_%aX|NG{AGjl?T z5+zQICFuz+Oi$xmai)@7bX*|jy8R|jRFZS_oD~mOk_(1a;u)1>1bU!PiT?>M5iv51 ztw_oT#1?U}@Pb%NmuE$cvsh01g+jkr91k89UlZ>YOPs=BmA+4WrLC=Z*LEyqoaSQ z=zVc2R)+9~I4H7$UnUZU{3-4eFA^I>uuMEAHl{Sjd_XLQDP!Vu;yvP18#ZhR0|Nt$ z8`;y-6FNIP!?tbPXdC+b`@^P9n@H{#e-?3+z2ZjkJn?DqI`Lu=-OmxR=!4?v;&G8N zzZP#1Zx9cO=Zc?;cZiROTUb1XhK9nLHEZIy=*B!TFLK;zwHX$RU{N`qc2F)3ofojy%ls`CNETd1@hu&r~)kmZ&qT4uVr82btkR z0gRN72=puC5BIKk8~rdKU;~0SW(=A3)FB(0$YU%(JL-~Ay(EGoHbUxXOFd(g2gyN> zTQ*2C4)dfBRCpBYd8#gs4bnSS>(R~fDHk6X!EWBq^~%Sw0lJgV-v#+N4&{(OAn8_} zNBWSbt>=`vp`5X-yV~$eQ=(2dEj_D{;l%JkMzN%~w>Oq4j0gt~5EUsl(lf>0yTnVy zDSdqMu^$wU?b=1PcK8aDsHYEm8bD~|FpmAj#*IWp5v$X)3Xg3$4qXV}4jv>LjA2-bI$@rJ@Ui%CTG`^qYX?MUVC5Yg9ON$K(@M?Xz&QAbMWe_K0b^oCrLB#r)(Wk5Gs*DYi3J&OCX9xD zcESuxa87=$s87xrbwVDbufnFd@>8C}`J@vY6beKV2;r*FUKMHMMJj2F24^43?=G>n!g|kTnMkCAyS@x>0%lBb3alv$Xalym+pU7 z(TDv-!WSZ!s8^G*ER5Lu5sbX}Ug(HC+EI^g4%>>02jg3Bz%LN}kby&I`k$SiCF+3t z#ds3s(;!Y_WB{C?d>}qdy-#j{PlDV>A2y!IxSZ1$PIRc#2d8dEAKNEKN0IHew4<-+ zjn2o^bGie33WiK%xF4rHwDD<>^`o9VaycC$j~?{T$0biYbOM&;lPZx@theaH`x(fB z$U&c6CVi1Xp7E`l9HUzAw8w`|TMoLArmf1kPgyCJs1vvltA4BkKN9&nMXkD%As2a0 z|CFV3dgh=cx{zBStM-fw65TI7IC1U z^LLXNN@QSj{-*e$_>jnLd5+6P!m!HOZDkL^%`~^a+)8tPPhUVRbESBb_`1k#GPmjm zr&ljlk};gSQ?zd2W|6VDrN^Mo7q1d&Lny?pI5+b+BH-r!7m*u%!X)}G7x`~l9us{f zej_6PdeO2OhyP*mjyOuLE1PC+x!Fr`%zV3;gZPpgeC7h#-0EZO-;39Z>}@_1dFL-h z7KA56ZrwRaV*%maI01N7 0 and has("lift1") and (has("bean_trail_yes") or (has("beans") and not BEAN_PLANTING)) then + if has_age("both") > 0 and has("lift1") and (has("setting_plant_beans_on") or has("beans")) then return 1, AccessibilityLevel.Normal end @@ -537,7 +522,7 @@ function _dmc_central_to_lower() if has_age("adult") == 0 then return 0, AccessibilityLevel.None end - if has("hoverboots") or has("hookshot") or (has_age("both") > 0 and has("ocarina") and has("bolero") and has("beans")) then + if has("hoverboots") or has("hookshot") or has("setting_plant_beans_on") or (has_age("both") > 0 and has("ocarina") and has("bolero") and has("beans")) then return 1, AccessibilityLevel.Normal end return 0, AccessibilityLevel.None diff --git a/ootrando_overworldmap_hamsda/scripts/user_settings.lua b/ootrando_overworldmap_hamsda/scripts/user_settings.lua index 49d8ce06..f2bafc8f 100644 --- a/ootrando_overworldmap_hamsda/scripts/user_settings.lua +++ b/ootrando_overworldmap_hamsda/scripts/user_settings.lua @@ -8,9 +8,6 @@ SONG_BADGE_LAST_ACTIVATED = false -- left clicking the free reward will turn on a quick mark mode for the adult altar ALTAR_QUICK_MARK = false --- beans will need to be planted before their corresponding checks become available -BEAN_PLANTING = false - -- puts badges of captured icons on the map locations -- visibility is not the greatest, but can help at a glance ER_BADGE_EXITS = false From 8f4f94c1b96ee54795938cf88be3b88a0e7faa3b Mon Sep 17 00:00:00 2001 From: Dennis Date: Thu, 4 May 2023 17:29:41 +0200 Subject: [PATCH 13/14] updated `user_presets` --- ootrando_overworldmap_hamsda/changelog.md | 1 + .../scripts/user_presets.lua | 228 ++++++++++++++++-- 2 files changed, 214 insertions(+), 15 deletions(-) diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index b268bf21..d79a1ea3 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -12,6 +12,7 @@ - moved pinned locations between items and map in horizontal layout - added scrollbar to pinned locations in horizontal layout - added `Plant Magic Beans` setting and removed bean planting `user_setting` +- updated `user_presets` ## 3.7.3.0 diff --git a/ootrando_overworldmap_hamsda/scripts/user_presets.lua b/ootrando_overworldmap_hamsda/scripts/user_presets.lua index 766645d1..53a4d3a8 100644 --- a/ootrando_overworldmap_hamsda/scripts/user_presets.lua +++ b/ootrando_overworldmap_hamsda/scripts/user_presets.lua @@ -1,8 +1,84 @@ setting_presets = { { - ["name"] = "S6", + ["name"] = "Wkly", ["color"] = "#00ffff", - ["icon"] = "images/sword1.png", + ["icon"] = "images/skulltula.png", + ["settings"] = { + ["setting_forest"] = 1, + ["setting_kak"] = 0, + ["setting_door"] = 1, + ["setting_fountain"] = 0, + ["setting_gerudo"] = 1, + ["setting_bridge"] = 3, + ["setting_bridge_amount"] = 6, + ["setting_trials"] = 0, + ["setting_age"] = 1, + ["setting_entrance_interiors"] = 0, + ["setting_entrance_grottos"] = 0, + ["setting_entrance_dungeons"] = 0, + ["setting_entrance_overworld"] = 0, + ["setting_entrance_mixed"] = 0, + ["setting_entrance_owl"] = 0, + ["setting_entrance_warpsong"] = 0, + ["setting_entrance_spawn_off"] = 1, + ["setting_logic_chus"] = 0, + ["setting_shopsanity"] = 1, + ["setting_tokens_off"] = 1, + ["setting_scrub_shuffle"] = 0, + ["setting_cowsanity"] = 0, + ["setting_shuffle_sword1"] = 1, + ["setting_shuffle_ocarinas"] = 0, + ["setting_shuffle_egg"] = 0, + ["setting_shuffle_card"] = 0, + ["setting_shuffle_beans"] = 0, + ["setting_shuffle_merchants"] = 0, + ["setting_shuffle_frogs"] = 1, + ["setting_shuffle_smallkeys"] = 0, + ["setting_shuffle_hideoutkeys"] = 0, + ["setting_shuffle_bosskeys"] = 0, + ["setting_shuffle_ganon_bosskey"] = 0, + ["setting_zelda"] = 1, + ["setting_masks"] = 0, + ["setting_plant_beans"] = 0, + ["setting_hints"] = 3, + ["setting_damage"] = 1, + ["setting_blue_fire_arrows"] = 0, + ["setting_skulltulas_sun"] = 0, + --tricks + ["logic_fewer_tunic_requirements"] = true, + ["logic_grottos_without_agony"] = true, + ["logic_child_deadhand"] = true, + ["logic_man_on_roof"] = true, + ["logic_dc_jump"] = true, + ["logic_rusted_switches"] = true, + ["logic_windmill_poh"] = true, + ["logic_crater_bean_poh_with_hovers"] = true, + ["logic_forest_vines"] = true, + ["logic_lens_botw"] = true, + ["logic_lens_castle"] = true, + ["logic_lens_gtg"] = true, + ["logic_lens_shadow"] = true, + ["logic_lens_shadow_platform"] = true, + ["logic_lens_spirit"] = true, + --shortcuts + ["deku_shortcuts"] = false, + ["dodongo_shortcuts"] = false, + ["jabu_shortcuts"] = true, + ["forest_shortcuts"] = true, + ["fire_shortcuts"] = false, + ["spirit_shortcuts"] = false, + ["shadow_shortcuts"] = true, + --items + ["shield1"] = true, + ["scarecrow"] = true, + ["sticks"] = 1, + ["nuts"] = 1 + } + }, + { + ["name"] = "S6", + ["color"] = "#ff00ff", + ["icon"] = "images/triforce_piece.png", ["settings"] = { ["setting_forest"] = 1, ["setting_kak"] = 0, @@ -12,7 +88,7 @@ setting_presets = { ["setting_bridge"] = 3, ["setting_bridge_amount"] = 6, ["setting_trials"] = 0, - ["setting_age"] = 0, + ["setting_age"] = 1, ["setting_entrance_interiors"] = 0, ["setting_entrance_grottos"] = 0, ["setting_entrance_dungeons"] = 0, @@ -20,7 +96,7 @@ setting_presets = { ["setting_entrance_mixed"] = 0, ["setting_entrance_owl"] = 0, ["setting_entrance_warpsong"] = 0, - ["setting_entrance_spawn"] = 1, + ["setting_entrance_spawn_off"] = 1, ["setting_logic_chus"] = 0, ["setting_shopsanity"] = 0, ["setting_tokens_off"] = 0, @@ -32,14 +108,17 @@ setting_presets = { ["setting_shuffle_card"] = 0, ["setting_shuffle_beans"] = 0, ["setting_shuffle_merchants"] = 0, + ["setting_shuffle_frogs"] = 0, ["setting_shuffle_smallkeys"] = 0, ["setting_shuffle_hideoutkeys"] = 0, ["setting_shuffle_bosskeys"] = 0, ["setting_shuffle_ganon_bosskey"] = 0, ["setting_zelda"] = 1, ["setting_masks"] = 0, + ["setting_plant_beans"] = 0, ["setting_hints"] = 3, ["setting_damage"] = 1, + ["setting_blue_fire_arrows"] = 0, ["setting_skulltulas_sun"] = 0, --tricks ["logic_fewer_tunic_requirements"] = true, @@ -55,14 +134,99 @@ setting_presets = { ["logic_lens_castle"] = true, ["logic_lens_gtg"] = true, ["logic_lens_shadow"] = true, - ["logic_lens_shadow_back"] = true, + ["logic_lens_shadow_platform"] = true, ["logic_lens_spirit"] = true, + --shortcuts + ["deku_shortcuts"] = false, + ["dodongo_shortcuts"] = false, + ["jabu_shortcuts"] = false, + ["forest_shortcuts"] = false, + ["fire_shortcuts"] = false, + ["spirit_shortcuts"] = false, + ["shadow_shortcuts"] = false, --items ["shield1"] = true, ["sticks"] = 1, ["nuts"] = 1 } }, + { + ["name"] = "Leag", + ["color"] = "#8800ff", + ["icon"] = "images/icearrow.png", + ["settings"] = { + ["setting_forest"] = 1, + ["setting_kak"] = 0, + ["setting_door"] = 1, + ["setting_fountain"] = 0, + ["setting_gerudo"] = 1, + ["setting_bridge"] = 3, + ["setting_bridge_amount"] = 5, + ["setting_trials"] = 0, + ["setting_age"] = 1, + ["setting_entrance_interiors"] = 0, + ["setting_entrance_grottos"] = 0, + ["setting_entrance_dungeons"] = 0, + ["setting_entrance_overworld"] = 0, + ["setting_entrance_mixed"] = 0, + ["setting_entrance_owl"] = 0, + ["setting_entrance_warpsong"] = 0, + ["setting_entrance_spawn_off"] = 1, + ["setting_logic_chus"] = 0, + ["setting_shopsanity"] = 0, + ["setting_tokens_off"] = 0, + ["setting_scrub_shuffle"] = 0, + ["setting_cowsanity"] = 0, + ["setting_shuffle_sword1"] = 1, + ["setting_shuffle_ocarinas"] = 0, + ["setting_shuffle_egg"] = 0, + ["setting_shuffle_card"] = 0, + ["setting_shuffle_beans"] = 0, + ["setting_shuffle_merchants"] = 0, + ["setting_shuffle_frogs"] = 0, + ["setting_shuffle_smallkeys"] = 0, + ["setting_shuffle_hideoutkeys"] = 0, + ["setting_shuffle_bosskeys"] = 0, + ["setting_shuffle_ganon_bosskey"] = 0, + ["setting_zelda"] = 1, + ["setting_masks"] = 0, + ["setting_plant_beans"] = 0, + ["setting_hints"] = 3, + ["setting_damage"] = 1, + ["setting_blue_fire_arrows"] = 1, + ["setting_skulltulas_sun"] = 0, + --tricks + ["logic_fewer_tunic_requirements"] = true, + ["logic_grottos_without_agony"] = true, + ["logic_child_deadhand"] = true, + ["logic_man_on_roof"] = true, + ["logic_dc_jump"] = true, + ["logic_rusted_switches"] = true, + ["logic_windmill_poh"] = true, + ["logic_crater_bean_poh_with_hovers"] = true, + ["logic_forest_vines"] = true, + ["logic_lens_botw"] = true, + ["logic_lens_castle"] = true, + ["logic_lens_gtg"] = true, + ["logic_lens_shadow"] = true, + ["logic_lens_shadow_platform"] = true, + ["logic_lens_spirit"] = true, + --shortcuts + ["deku_shortcuts"] = false, + ["dodongo_shortcuts"] = false, + ["jabu_shortcuts"] = false, + ["forest_shortcuts"] = false, + ["fire_shortcuts"] = false, + ["spirit_shortcuts"] = false, + ["shadow_shortcuts"] = false, + --items + ["shield1"] = true, + ["lens"] = true, + ["faroreswind"] = true, + ["sticks"] = 1, + ["nuts"] = 1 + } + }, { ["name"] = "RSL", ["color"] = "#ffbb00", @@ -76,7 +240,7 @@ setting_presets = { ["setting_bridge"] = 0, ["setting_bridge_amount"] = 0, ["setting_trials"] = 0, - ["setting_age"] = 0, + ["setting_age"] = 1, ["setting_entrance_interiors"] = 2, ["setting_entrance_grottos"] = 1, ["setting_entrance_dungeons"] = 1, @@ -84,7 +248,7 @@ setting_presets = { ["setting_entrance_mixed"] = 2, ["setting_entrance_owl"] = 1, ["setting_entrance_warpsong"] = 1, - ["setting_entrance_spawn"] = 1, + ["setting_entrance_spawn_off"] = 3, ["setting_logic_chus"] = 1, ["setting_shopsanity"] = 1, ["setting_tokens_off"] = 3, @@ -96,14 +260,17 @@ setting_presets = { ["setting_shuffle_card"] = 1, ["setting_shuffle_beans"] = 1, ["setting_shuffle_merchants"] = 1, + ["setting_shuffle_frogs"] = 1, ["setting_shuffle_smallkeys"] = 1, ["setting_shuffle_hideoutkeys"] = 1, ["setting_shuffle_bosskeys"] = 1, ["setting_shuffle_ganon_bosskey"] = 1, ["setting_zelda"] = 0, ["setting_masks"] = 0, + ["setting_plant_beans"] = 1, ["setting_hints"] = 3, ["setting_damage"] = 1, + ["setting_blue_fire_arrows"] = 0, ["setting_skulltulas_sun"] = 0, --tricks ["logic_fewer_tunic_requirements"] = true, @@ -120,15 +287,23 @@ setting_presets = { ["logic_lens_castle"] = true, ["logic_lens_gtg"] = true, ["logic_lens_shadow"] = true, - ["logic_lens_shadow_back"] = true, + ["logic_lens_shadow_platform"] = true, ["logic_lens_spirit"] = true, ["logic_visible_collisions"] = true, ["logic_deku_b1_webs_with_bow"] = true, ["logic_lens_gtg_mq"] = true, ["logic_lens_jabu_mq"] = true, ["logic_lens_shadow_mq"] = true, - ["logic_lens_shadow_mq_back"] = true, - ["logic_lens_spirit_mq"] = true + ["logic_lens_shadow_mq_platform"] = true, + ["logic_lens_spirit_mq"] = true, + --shortcuts + ["deku_shortcuts"] = false, + ["dodongo_shortcuts"] = false, + ["jabu_shortcuts"] = false, + ["forest_shortcuts"] = false, + ["fire_shortcuts"] = false, + ["spirit_shortcuts"] = false, + ["shadow_shortcuts"] = false, } }, { @@ -144,7 +319,7 @@ setting_presets = { ["setting_bridge"] = 2, ["setting_bridge_amount"] = 3, ["setting_trials"] = 0, - ["setting_age"] = 0, + ["setting_age"] = 1, ["setting_entrance_interiors"] = 0, ["setting_entrance_grottos"] = 0, ["setting_entrance_dungeons"] = 0, @@ -152,7 +327,7 @@ setting_presets = { ["setting_entrance_mixed"] = 0, ["setting_entrance_owl"] = 0, ["setting_entrance_warpsong"] = 0, - ["setting_entrance_spawn"] = 1, + ["setting_entrance_spawn_off"] = 1, ["setting_logic_chus"] = 0, ["setting_shopsanity"] = 0, ["setting_tokens_off"] = 0, @@ -164,14 +339,17 @@ setting_presets = { ["setting_shuffle_card"] = 0, ["setting_shuffle_beans"] = 0, ["setting_shuffle_merchants"] = 0, + ["setting_shuffle_frogs"] = 0, ["setting_shuffle_smallkeys"] = 0, ["setting_shuffle_hideoutkeys"] = 0, ["setting_shuffle_bosskeys"] = 0, ["setting_shuffle_ganon_bosskey"] = 0, ["setting_zelda"] = 1, ["setting_masks"] = 0, + ["setting_plant_beans"] = 0, ["setting_hints"] = 3, ["setting_damage"] = 1, + ["setting_blue_fire_arrows"] = 0, ["setting_skulltulas_sun"] = 0, --tricks ["logic_fewer_tunic_requirements"] = true, @@ -187,8 +365,16 @@ setting_presets = { ["logic_lens_castle"] = true, ["logic_lens_gtg"] = true, ["logic_lens_shadow"] = true, - ["logic_lens_shadow_back"] = true, + ["logic_lens_shadow_platform"] = true, ["logic_lens_spirit"] = true, + --shortcuts + ["deku_shortcuts"] = false, + ["dodongo_shortcuts"] = false, + ["jabu_shortcuts"] = false, + ["forest_shortcuts"] = false, + ["fire_shortcuts"] = false, + ["spirit_shortcuts"] = false, + ["shadow_shortcuts"] = false, --items ["lens"] = true, ["shield1"] = true, @@ -218,7 +404,7 @@ setting_presets = { ["setting_entrance_mixed"] = 0, ["setting_entrance_owl"] = 0, ["setting_entrance_warpsong"] = 0, - ["setting_entrance_spawn"] = 0, + ["setting_entrance_spawn_off"] = 0, ["setting_logic_chus"] = 0, ["setting_shopsanity"] = 1, ["setting_tokens_off"] = 0, @@ -230,14 +416,17 @@ setting_presets = { ["setting_shuffle_card"] = 0, ["setting_shuffle_beans"] = 0, ["setting_shuffle_merchants"] = 0, + ["setting_shuffle_frogs"] = 0, ["setting_shuffle_smallkeys"] = 0, ["setting_shuffle_hideoutkeys"] = 0, ["setting_shuffle_bosskeys"] = 0, ["setting_shuffle_ganon_bosskey"] = 0, ["setting_zelda"] = 1, ["setting_masks"] = 0, + ["setting_plant_beans"] = 0, ["setting_hints"] = 3, ["setting_damage"] = 1, + ["setting_blue_fire_arrows"] = 0, ["setting_skulltulas_sun"] = 0, --tricks ["logic_fewer_tunic_requirements"] = true, @@ -254,11 +443,20 @@ setting_presets = { ["logic_lens_castle"] = true, ["logic_lens_gtg"] = true, ["logic_lens_shadow"] = true, - ["logic_lens_shadow_back"] = true, + ["logic_lens_shadow_platform"] = true, ["logic_lens_spirit"] = true, + --shortcuts + ["deku_shortcuts"] = false, + ["dodongo_shortcuts"] = false, + ["jabu_shortcuts"] = false, + ["forest_shortcuts"] = false, + ["fire_shortcuts"] = false, + ["spirit_shortcuts"] = false, + ["shadow_shortcuts"] = false, --items ["lens"] = true, ["faroreswind"] = true, + ["scarecrow"] = true, ["sticks"] = 1, ["nuts"] = 1 } From 872ab76882c2a430eab2d39fd68c6fd7bfc9bd82 Mon Sep 17 00:00:00 2001 From: Dennis Date: Thu, 4 May 2023 17:32:44 +0200 Subject: [PATCH 14/14] update to version 3.8.0.0 --- ootrando_overworldmap_hamsda.zip | Bin 12531196 -> 12585252 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 6c332171559e0d244068b838d0f24ae05a23c487..80577f987d30a06fad5b10d1e94dd52feff27940 100644 GIT binary patch delta 219862 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 z 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�TkdVRVs8Nd;8x!LJq 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%0DDLc)l{t!gdZw2@pPOMoF` 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 DlgU$^ diff --git a/ootrando_overworldmap_hamsda/changelog.md b/ootrando_overworldmap_hamsda/changelog.md index d79a1ea3..125f3a24 100644 --- a/ootrando_overworldmap_hamsda/changelog.md +++ b/ootrando_overworldmap_hamsda/changelog.md @@ -1,6 +1,6 @@ # Changelog -## x +## 3.8.0.0 - fixed closed DoT logic for `DMT Freestanding PoH` - changed `Randomize Spawns` setting to have separate options for child/adult/both diff --git a/ootrando_overworldmap_hamsda/manifest.json b/ootrando_overworldmap_hamsda/manifest.json index 3c90d446..41b777f6 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": "3.7.3.0", + "package_version": "3.8.0.0", "package_uid": "ootrando_overworldmap_hamsda", "author": "Hamsda", "variants": { diff --git a/repository.json b/repository.json index b7ea4c6a..273bbaa2 100644 --- a/repository.json +++ b/repository.json @@ -10,7 +10,7 @@ "pins", "chathud" ], - "version": "3.7.3.0", + "version": "3.8.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",