Skip to content

Commit 5f30561

Browse files
committed
Refine remaining water shinecharges
1 parent a7d814e commit 5f30561

7 files changed

Lines changed: 1753 additions & 51 deletions

File tree

region/maridia/inner-pink/Aqueduct.json

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1245,10 +1245,7 @@
12451245
"exitCondition": {
12461246
"leaveWithTemporaryBlue": {}
12471247
},
1248-
"unlocksDoors": [
1249-
{"types": ["super"], "requires": []},
1250-
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
1251-
],
1248+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
12521249
"note": [
12531250
"Start with low run speed by positioning exactly 2 pixels from the door.",
12541251
"Use X-Ray to cancel the shinecharge early, to avoid getting hit by the angry snail."

region/maridia/inner-yellow/Plasma Spark Room.json

Lines changed: 313 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -602,6 +602,319 @@
602602
}
603603
}
604604
},
605+
{
606+
"link": [2, 2],
607+
"name": "Stutter Shinecharge, Leave With Spark",
608+
"entranceCondition": {
609+
"comeInStutterShinecharging": {
610+
"minTiles": 2
611+
}
612+
},
613+
"requires": [
614+
"canStutterWaterShineCharge",
615+
"canShinechargeMovementComplex",
616+
{"or": [
617+
{"shinespark": {"frames": 12}},
618+
{"and": [
619+
"canShinechargeMovementTricky",
620+
{"shinespark": {"frames": 3}}
621+
]}
622+
]}
623+
],
624+
"exitCondition": {
625+
"leaveWithSpark": {}
626+
},
627+
"unlocksDoors": [
628+
{"types": ["super"], "requires": []},
629+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
630+
]
631+
},
632+
{
633+
"link": [2, 2],
634+
"name": "Water Shinecharge, Hero Shot Leave With Spark",
635+
"entranceCondition": {
636+
"comeInRunning": {
637+
"minTiles": 0.4375,
638+
"speedBooster": true
639+
}
640+
},
641+
"requires": [
642+
"canWaterShineCharge",
643+
"canShinechargeMovementTricky",
644+
"canHeroShot",
645+
{"shinespark": {"frames": 29}}
646+
],
647+
"exitCondition": {
648+
"leaveWithSpark": {}
649+
},
650+
"unlocksDoors": [
651+
{"types": ["super"], "requires": []},
652+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
653+
],
654+
"note": ["Start with low run speed by positioning exactly 2 pixels from the door."]
655+
},
656+
{
657+
"link": [2, 2],
658+
"name": "Very Precise Stutter Shinecharge, Leave With Spark",
659+
"entranceCondition": {
660+
"comeInStutterShinecharging": {
661+
"minTiles": 1
662+
}
663+
},
664+
"requires": [
665+
"canShinechargeMovementComplex",
666+
"canPreciseStutterWaterShineCharge",
667+
"canInsaneJump",
668+
"h_shinechargeMaxRunway",
669+
{"or": [
670+
{"shinespark": {"frames": 12}},
671+
{"and": [
672+
"canShinechargeMovementTricky",
673+
{"shinespark": {"frames": 3}}
674+
]}
675+
]}
676+
],
677+
"exitCondition": {
678+
"leaveWithSpark": {}
679+
},
680+
"unlocksDoors": [
681+
{"types": ["super"], "requires": []},
682+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
683+
],
684+
"note": [
685+
"With only 1 tile of runway, this requires a single-frame stutter (release forward then repress on the next frame), on the last possible frame."
686+
]
687+
},
688+
{
689+
"link": [2, 2],
690+
"name": "Precise Stutter Shinecharge, Leave Shinecharged (5-tile runway)",
691+
"entranceCondition": {
692+
"comeInStutterShinecharging": {
693+
"minTiles": 5
694+
}
695+
},
696+
"requires": [
697+
"canPreciseStutterWaterShineCharge",
698+
"canShinechargeMovementTricky",
699+
"canInsaneJump",
700+
{"shineChargeFrames": 130},
701+
{"or": [
702+
"canBeVeryPatient",
703+
{"shineChargeFrames": 15}
704+
]}
705+
],
706+
"exitCondition": {
707+
"leaveShinecharged": {}
708+
},
709+
"unlocksDoors": [
710+
{"types": ["super"], "requires": []},
711+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
712+
],
713+
"note": [
714+
"With a runway of 5 tiles (open end) in the other room,",
715+
"the ideal timing for the stutter is to release forward for 5 frames, and repress forward on the last possible frame before the transition.",
716+
"Other timings can work, but will gain the shinecharge further from the door, leaving fewer shinecharge frames remaining.",
717+
"After gaining the shinecharge, continue holding forward in order to make Samus stand.",
718+
"Then turnaround spin jump back toward the door, and continue spin jumping to reach the transition with a shinecharge."
719+
]
720+
},
721+
{
722+
"link": [2, 2],
723+
"name": "Precise Stutter Shinecharge, Leave Shinecharged (4-tile runway)",
724+
"entranceCondition": {
725+
"comeInStutterShinecharging": {
726+
"minTiles": 4
727+
}
728+
},
729+
"requires": [
730+
"canPreciseStutterWaterShineCharge",
731+
"canShinechargeMovementTricky",
732+
"canInsaneJump",
733+
{"shineChargeFrames": 140},
734+
{"or": [
735+
"canBeVeryPatient",
736+
{"shineChargeFrames": 10}
737+
]}
738+
],
739+
"exitCondition": {
740+
"leaveShinecharged": {}
741+
},
742+
"unlocksDoors": [
743+
{"types": ["super"], "requires": []},
744+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
745+
],
746+
"note": [
747+
"With only a runway of 4 tiles (open end) in the other room,",
748+
"the ideal timing for the stutter is to release forward for 4 frames, and repress forward on the last possible frame before the transition.",
749+
"It also works well to release forward for 3 frames and repress on the last possible frame.",
750+
"Other timings can also work, but may gain the shinecharge further from the door, leaving fewer shinecharge frames remaining.",
751+
"After gaining the shinecharge, continue holding forward in order to make Samus stand.",
752+
"Then turnaround spin jump back toward the door, and continue spin jumping to reach the transition with a shinecharge."
753+
]
754+
},
755+
{
756+
"link": [2, 2],
757+
"name": "Precise Stutter Shinecharge, Leave Shinecharged (3-tile runway)",
758+
"entranceCondition": {
759+
"comeInStutterShinecharging": {
760+
"minTiles": 3
761+
}
762+
},
763+
"requires": [
764+
"canPreciseStutterWaterShineCharge",
765+
"canShinechargeMovementTricky",
766+
"canInsaneJump",
767+
{"shineChargeFrames": 145},
768+
{"or": [
769+
"canBeVeryPatient",
770+
{"shineChargeFrames": 10}
771+
]}
772+
],
773+
"exitCondition": {
774+
"leaveShinecharged": {}
775+
},
776+
"unlocksDoors": [
777+
{"types": ["super"], "requires": []},
778+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
779+
],
780+
"note": [
781+
"With only a runway of 3 tiles (open end) in the other room,",
782+
"the ideal timing for the stutter is to release forward for 3 or 4 frames, and repress forward on the last possible frame before the transition.",
783+
"Other timings can work, but will gain the shinecharge further from the door, leaving fewer shinecharge frames remaining.",
784+
"After gaining the shinecharge, continue holding forward in order to make Samus stand.",
785+
"Then turnaround spin jump back toward the door, and continue spin jumping to reach the transition with a shinecharge.",
786+
"Alternatively, with greater difficulty but saving some shinecharge frames,",
787+
"after performing the turnaround spin jump, briefly moonwalk back, then retain momentum by boomeranging forward",
788+
"(switching from pressing backward to pressing forward on the next frame),",
789+
"and arm pump to reach the door quickly."
790+
],
791+
"devNote": [
792+
"The same shinecharge frames could be achieved with a closed end runway (effective length of 2.4375),",
793+
"with a 3-frame stutter, but there doesn't appear to be any application."
794+
]
795+
},
796+
{
797+
"link": [2, 2],
798+
"name": "Precise Stutter Shinecharge, Leave Shinecharged (2-tile runway)",
799+
"entranceCondition": {
800+
"comeInStutterShinecharging": {
801+
"minTiles": 2
802+
}
803+
},
804+
"requires": [
805+
"canPreciseStutterWaterShineCharge",
806+
"canShinechargeMovementTricky",
807+
"canInsaneJump",
808+
{"shineChargeFrames": 150},
809+
{"or": [
810+
"canBeVeryPatient",
811+
{"shineChargeFrames": 15}
812+
]}
813+
],
814+
"exitCondition": {
815+
"leaveShinecharged": {}
816+
},
817+
"unlocksDoors": [
818+
{"types": ["super"], "requires": []},
819+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
820+
],
821+
"note": [
822+
"With only a runway of 2 tiles (open end) in the other room,",
823+
"the ideal timing for the stutter is to release forward for 3 frames, and repress forward on the last possible frame before the transition.",
824+
"Other timings can work, but will gain the shinecharge further from the door, leaving fewer shinecharge frames remaining.",
825+
"After gaining the shinecharge, continue holding forward in order to make Samus stand.",
826+
"Then turnaround spin jump back toward the door, and continue spin jumping to reach the transition with a shinecharge.",
827+
"Alternatively, with greater difficulty but saving some shinecharge frames,",
828+
"after performing the turnaround spin jump, briefly moonwalk back, then retain momentum by boomeranging forward",
829+
"(switching from pressing backward to pressing forward on the next frame),",
830+
"and arm pump to reach the door quickly."
831+
],
832+
"devNote": [
833+
"FIXME: The canBeVeryPatient requirement is for difficulty placement of the boomerang method;",
834+
"but the boomerang (or maybe specifically the moonwalk boomerang) should possibly be its own tech,",
835+
"and the same with rapid arm pumping."
836+
]
837+
},
838+
{
839+
"link": [2, 2],
840+
"name": "Precise Stutter Shinecharge, Leave Shinecharged (1-tile runway)",
841+
"entranceCondition": {
842+
"comeInStutterShinecharging": {
843+
"minTiles": 1
844+
}
845+
},
846+
"requires": [
847+
"canPreciseStutterWaterShineCharge",
848+
"canInsaneJump",
849+
"canBeVeryPatient",
850+
"canShinechargeMovementTricky",
851+
{"shineChargeFrames": 160}
852+
],
853+
"exitCondition": {
854+
"leaveShinecharged": {}
855+
},
856+
"unlocksDoors": [
857+
{"types": ["super"], "requires": []},
858+
{"types": ["missiles", "powerbomb"], "requires": ["never"]}
859+
],
860+
"note": [
861+
"With only 1 tile of runway in the other room, Samus should ideally start on the last pixel of runway with X subpixels of $3FFF or less.",
862+
"Run toward the door, releasing forward for exactly 1 frame and pressing it again on the last possible frame before the transition.",
863+
"Starting with X subpixels of $7FFF can also work (e.g., by simply backing against the door ledge, then jumping and turning around mid-air);",
864+
"in this case, Samus must advance 1 or 2 pixels with an arm pump before the transition (e.g., firing a shot or pressing and/or releasing an angle button),",
865+
"and the shinecharge will be gained slightly further away from the door.",
866+
"After gaining the shinecharge, continue holding forward in order to make Samus stand.",
867+
"Then turnaround spin jump back toward the door, and continue spin jumping to reach the transition with a shinecharge.",
868+
"Alternatively, with greater difficulty but saving some shinecharge frames,",
869+
"after performing the turnaround spin jump, briefly moonwalk back, then retain momentum by boomeranging forward",
870+
"(switching from pressing backward to pressing forward on the next frame),",
871+
"and arm pump to reach the door quickly."
872+
],
873+
"detailNote": [
874+
"Ideal subpixels ($3FFF) can be achieved using one of several methods:",
875+
"1) press forward against the door ledge (or a wall aligned with it);",
876+
"jump, and while mid-air, tap forward for exactly 1 frame to land with subpixels $BFFF,",
877+
"moonwalk back for exactly 1 frame to end with subpixels $3FFF.",
878+
"2) press forward against the door ledge (from a platform below, assuming one exists)",
879+
"turn around (while on the ground), and moonwalk back two pixels,",
880+
"then jump and mid-air turnaround onto the ledge;",
881+
"if Samus jumped from the correct pixel but does not land on the ledge, then it was needed to moonwalk back 1 more frame;",
882+
"in this case it is possible to retry by doing a mid-air turnaround back onto the platform, and moonwalking back for 1 frame.",
883+
"3) if X-Ray is available, press against the door ledge (from a platform below, assuming one exists)",
884+
"turn around (while on the ground), then jump and mid-air turnaround toward the door,",
885+
"and use X-Ray to turnaround in place away from the door;",
886+
"repeat this sequence 3 more times: jump, mid-air turnaround, X-Ray turnaround;",
887+
"then do one more jump and mid-air turnaround, high enough to land on the door ledge,",
888+
"and Samus should be in the correct position with subpixels $3FFF."
889+
]
890+
},
891+
{
892+
"link": [2, 2],
893+
"name": "Water Shinecharge, Leave With Temporary Blue",
894+
"entranceCondition": {
895+
"comeInRunning": {
896+
"minTiles": 0.4375,
897+
"speedBooster": true
898+
}
899+
},
900+
"requires": [
901+
"canWaterShineCharge",
902+
"canXRayTurnaround",
903+
"canLongChainTemporaryBlue"
904+
],
905+
"exitCondition": {
906+
"leaveWithTemporaryBlue": {}
907+
},
908+
"unlocksDoors": [{"types": ["ammo"], "requires": []}],
909+
"note": [
910+
"Start with low run speed by positioning exactly 2 pixels from the door.",
911+
"Use X-ray to turn around, and chain temporary blue back to the door."
912+
],
913+
"devNote": [
914+
"This can also be done with a stutter shinecharge, which can shorten the temp blue chain,",
915+
"but not by enough to remove the need for the canLongChainTemporaryBlue requirement."
916+
]
917+
},
605918
{
606919
"id": 16,
607920
"link": [2, 2],

0 commit comments

Comments
 (0)