|
261 | 261 | }, |
262 | 262 | "requires": [ |
263 | 263 | {"shineChargeFrames": 110}, |
| 264 | + "canShinechargeMovementComplex", |
264 | 265 | "canPreciseWalljump", |
265 | 266 | "canConsecutiveWalljump", |
266 | | - "canShinechargeMovement", |
267 | | - "canMidairShinespark", |
| 267 | + "canHorizontalMidairShinespark", |
268 | 268 | {"shinespark": {"frames": 78}} |
269 | 269 | ], |
270 | 270 | "flashSuitChecked": true, |
|
281 | 281 | } |
282 | 282 | }, |
283 | 283 | "requires": [ |
| 284 | + "canShinechargeMovementComplex", |
284 | 285 | "canPreciseWalljump", |
285 | 286 | "canConsecutiveWalljump", |
286 | | - "canShinechargeMovement", |
287 | | - "canMidairShinespark", |
| 287 | + "canHorizontalMidairShinespark", |
288 | 288 | {"shinespark": {"frames": 78}} |
289 | 289 | ], |
290 | 290 | "flashSuitChecked": true, |
|
299 | 299 | }, |
300 | 300 | "requires": [ |
301 | 301 | {"shineChargeFrames": 80}, |
| 302 | + "HiJump", |
| 303 | + "canShinechargeMovementComplex", |
| 304 | + "canHorizontalMidairShinespark", |
302 | 305 | {"or": [ |
303 | 306 | {"and": [ |
304 | 307 | "canWalljump", |
305 | | - {"shinespark": {"frames": 20}} |
| 308 | + {"shinespark": {"frames": 80}} |
306 | 309 | ]}, |
307 | | - "canTrickyDashJump" |
308 | | - ]}, |
309 | | - "HiJump", |
310 | | - "canShinechargeMovement", |
311 | | - "canMidairShinespark", |
312 | | - {"shinespark": {"frames": 60}} |
| 310 | + {"and": [ |
| 311 | + "canTrickyDashJump", |
| 312 | + {"shinespark": {"frames": 60}} |
| 313 | + ]} |
| 314 | + ]} |
313 | 315 | ], |
314 | 316 | "flashSuitChecked": true, |
315 | | - "note": "Walljump or build run speed using the full runway to jump high enough for the shinespark." |
| 317 | + "note": "Wall jump or build run speed using the full runway to jump high enough for the shinespark." |
316 | 318 | }, |
317 | 319 | { |
318 | 320 | "id": 9, |
|
325 | 327 | } |
326 | 328 | }, |
327 | 329 | "requires": [ |
| 330 | + "HiJump", |
| 331 | + "canHorizontalMidairShinespark", |
| 332 | + "canShinechargeMovementComplex", |
328 | 333 | {"or": [ |
329 | 334 | {"and": [ |
330 | 335 | "canWalljump", |
331 | | - {"shinespark": {"frames": 20}} |
| 336 | + {"shinespark": {"frames": 80}} |
332 | 337 | ]}, |
333 | | - "canTrickyDashJump" |
334 | | - ]}, |
335 | | - "HiJump", |
336 | | - "canShinechargeMovement", |
337 | | - "canMidairShinespark", |
338 | | - {"shinespark": {"frames": 60}} |
| 338 | + {"and": [ |
| 339 | + "canTrickyDashJump", |
| 340 | + {"shinespark": {"frames": 60}} |
| 341 | + ]} |
| 342 | + ]} |
339 | 343 | ], |
340 | 344 | "flashSuitChecked": true, |
341 | | - "note": "Walljump or build run speed using the full runway to jump high enough for the shinespark." |
| 345 | + "note": "Wall jump or build run speed using the full runway to jump high enough for the shinespark." |
342 | 346 | }, |
343 | 347 | { |
344 | 348 | "id": 10, |
|
350 | 354 | "requires": [ |
351 | 355 | {"shineChargeFrames": 155}, |
352 | 356 | {"notable": "Left Side Diagonal Shinespark"}, |
| 357 | + "h_speedJump", |
353 | 358 | "canTrickyJump", |
354 | | - "canShinechargeMovementComplex", |
| 359 | + "canShinechargeMovementTricky", |
355 | 360 | "canMidairShinespark", |
356 | 361 | {"shinespark": {"frames": 40}} |
357 | 362 | ], |
|
620 | 625 | "requires": [ |
621 | 626 | "canWalljump", |
622 | 627 | "canShinechargeMovementComplex", |
| 628 | + "canHorizontalMidairShinespark", |
623 | 629 | {"obstaclesCleared": ["B"]}, |
624 | 630 | {"or": [ |
625 | 631 | {"canShineCharge": {"usedTiles": 32, "gentleUpTiles": 6, "openEnd": 1}}, |
|
639 | 645 | "name": "Big Jump Horizontal Shinespark", |
640 | 646 | "requires": [ |
641 | 647 | {"notable": "Big Jump Shinespark"}, |
| 648 | + "h_speedJump", |
642 | 649 | "canShinechargeMovementComplex", |
| 650 | + "canHorizontalMidairShinespark", |
643 | 651 | {"obstaclesCleared": ["B"]}, |
644 | 652 | {"canShineCharge": {"usedTiles": 32, "gentleDownTiles": 6, "openEnd": 1}}, |
645 | 653 | {"shinespark": {"frames": 52}}, |
|
660 | 668 | "canShinechargeMovementTricky", |
661 | 669 | {"obstaclesCleared": ["B"]}, |
662 | 670 | {"canShineCharge": {"usedTiles": 23, "gentleDownTiles": 6, "openEnd": 1}}, |
663 | | - {"shinespark": {"frames": 26}} |
| 671 | + {"or": [ |
| 672 | + {"and": [ |
| 673 | + "h_speedJump", |
| 674 | + {"shinespark": {"frames": 30, "excessFrames": 2}} |
| 675 | + ]}, |
| 676 | + {"shinespark": {"frames": 46, "excessFrames": 2}} |
| 677 | + ]} |
664 | 678 | ], |
665 | 679 | "flashSuitChecked": true, |
666 | 680 | "note": [ |
667 | 681 | "Charge a spark to the right a specific distance of about 6 tiles past the broken Speed blocks.", |
668 | | - "Then turn around, run and jump, and activate a diagonal spark as late as possible.", |
669 | | - "By shortening the jump, it is possible to kill a Ripper and collect its drop while falling." |
| 682 | + "Then turn around, run and jump, and diagonal spark as late as possible. By shortening the jump it is easier but uses more Energy.", |
| 683 | + "With a shortened jump, it is possible but not expected to kill a Ripper and collect its drop while falling.", |
| 684 | + "Alternatively, it is possible to shinecharge right to left, then run and jump and then shinespark just before hitting the acid;", |
| 685 | + "This is a bit tighter and uses more Energy, but doesn't rely on the larger jump from Speed Booster." |
| 686 | + ], |
| 687 | + "devNote": [ |
| 688 | + "There is a large variance in the number of shinespark frames based on the runway used and how long jump is held.", |
| 689 | + "The frames included are a reasonable approximation, although a tighter set of frames could be included with more specific details." |
670 | 690 | ] |
671 | 691 | }, |
672 | 692 | { |
|
718 | 738 | {"canShineCharge": {"usedTiles": 32, "gentleUpTiles": 6, "openEnd": 1}}, |
719 | 739 | "canWalljump", |
720 | 740 | "canShinechargeMovementComplex", |
| 741 | + "canHorizontalMidairShinespark", |
721 | 742 | {"shinespark": {"frames": 85}} |
722 | 743 | ], |
723 | 744 | "exitCondition": { |
|
735 | 756 | {"canShineCharge": {"usedTiles": 32, "gentleDownTiles": 6, "openEnd": 1}}, |
736 | 757 | "canSpeedyJump", |
737 | 758 | "canShinechargeMovementComplex", |
| 759 | + "canHorizontalMidairShinespark", |
738 | 760 | {"shinespark": {"frames": 57}} |
739 | 761 | ], |
740 | 762 | "exitCondition": { |
|
751 | 773 | "name": "Leave With Spark (Short Speedy HiJump)", |
752 | 774 | "requires": [ |
753 | 775 | "HiJump", |
| 776 | + "canSpeedyJump", |
754 | 777 | {"obstaclesCleared": ["B", "E"]}, |
755 | 778 | {"canShineCharge": {"usedTiles": 32, "gentleDownTiles": 6, "openEnd": 1}}, |
756 | 779 | "canShinechargeMovementComplex", |
| 780 | + "canHorizontalMidairShinespark", |
757 | 781 | {"shinespark": {"frames": 56}} |
758 | 782 | ], |
759 | 783 | "exitCondition": { |
|
771 | 795 | "h_shinechargeMaxRunway", |
772 | 796 | "canSpeedyJump", |
773 | 797 | "canShinechargeMovementComplex", |
| 798 | + "canHorizontalMidairShinespark", |
774 | 799 | {"shinespark": {"frames": 53}} |
775 | 800 | ], |
776 | 801 | "exitCondition": { |
|
1496 | 1521 | "requires": [ |
1497 | 1522 | {"obstaclesCleared": ["B"]}, |
1498 | 1523 | "canShinechargeMovement", |
| 1524 | + "canMidairShinespark", |
1499 | 1525 | {"or": [ |
1500 | 1526 | {"canShineCharge": {"usedTiles": 32, "gentleUpTiles": 6, "openEnd": 1}}, |
1501 | 1527 | {"and": [ |
1502 | 1528 | "h_shinechargeMaxRunway", |
1503 | 1529 | {"obstaclesCleared": ["A"]} |
1504 | 1530 | ]} |
1505 | 1531 | ]}, |
1506 | | - {"shinespark": {"frames": 40}} |
| 1532 | + {"or": [ |
| 1533 | + {"shinespark": {"frames": 31, "excessFrames": 6}}, |
| 1534 | + {"and": [ |
| 1535 | + "HiJump", |
| 1536 | + {"shinespark": {"frames": 25, "excessFrames": 5}} |
| 1537 | + ]}, |
| 1538 | + {"and": [ |
| 1539 | + "HiJump", |
| 1540 | + "canSpeedyJump", |
| 1541 | + {"shinespark": {"frames": 19, "excessFrames": 6}} |
| 1542 | + ]} |
| 1543 | + ]} |
1507 | 1544 | ], |
1508 | | - "flashSuitChecked": true |
| 1545 | + "flashSuitChecked": true, |
| 1546 | + "devNote": "FIXME: A big jump spark could be used to save Energy." |
1509 | 1547 | }, |
1510 | 1548 | { |
1511 | 1549 | "id": 40, |
|
0 commit comments