|
304 | 304 | { |
305 | 305 | "id": 13, |
306 | 306 | "link": [1, 2], |
307 | | - "name": "Precise Grapple", |
| 307 | + "name": "Precise Grapple Fling with Morph", |
308 | 308 | "requires": [ |
309 | 309 | "canPreciseGrapple", |
310 | | - "canTrickyJump", |
| 310 | + "canLateralMidAirMorph", |
| 311 | + "canResetFallSpeed", |
311 | 312 | {"or": [ |
312 | 313 | "canInsaneJump", |
313 | | - {"and": [ |
314 | | - "canLateralMidAirMorph", |
315 | | - {"thornHits": 5} |
316 | | - ]} |
| 314 | + {"thornHits": 5} |
317 | 315 | ]} |
318 | 316 | ], |
319 | 317 | "note": [ |
320 | | - "Fling Samus from the first set of grapple blocks to the second set without falling. Requires precise timing.", |
321 | | - "It can help to perform a lateral mid-air morph and unmorph." |
322 | | - ] |
| 318 | + "Fling Samus from the first set of grapple blocks to the second set without falling.", |
| 319 | + "This requires precise timing but is made easier by morphing and unmorphing to reset Samus' fall speed." |
| 320 | + ], |
| 321 | + "devNote": [ |
| 322 | + "The 5 thornHits are for lenience since it is difficult to get this first try." |
| 323 | + ] |
| 324 | + }, |
| 325 | + { |
| 326 | + "link": [1, 2], |
| 327 | + "name": "Very Precise Grapple Fling", |
| 328 | + "requires": [ |
| 329 | + "canPreciseGrapple", |
| 330 | + "canInsaneJump", |
| 331 | + {"or": [ |
| 332 | + "canBeVeryPatient", |
| 333 | + {"thornHits": 5} |
| 334 | + ]} |
| 335 | + ], |
| 336 | + "note": [ |
| 337 | + "Fling Samus from the first set of grapple blocks to the second set without falling.", |
| 338 | + "This requires a frame-perfect release of Grapple and a 2-frame window to fire Grapple again." |
| 339 | + ], |
| 340 | + "devNote": [ |
| 341 | + "The 5 thornHits are for lenience since it is very difficult to get this first try." |
| 342 | + ] |
323 | 343 | }, |
324 | 344 | { |
325 | 345 | "id": 14, |
|
438 | 458 | ], |
439 | 459 | "note": [ |
440 | 460 | "Using speed from the adjacent room, perform a ceiling mockball to make it across the gap." |
441 | | - ] |
| 461 | + ], |
| 462 | + "devNote": [ |
| 463 | + "The 5 thornHits are for lenience since it is very difficult to get this first try." |
| 464 | + ] |
442 | 465 | }, |
443 | 466 | { |
444 | 467 | "link": [1, 2], |
|
461 | 484 | ], |
462 | 485 | "note": [ |
463 | 486 | "Using speed from the adjacent room, perform a ceiling mockball and equip or unequip Spring Ball to make it across the gap." |
| 487 | + ], |
| 488 | + "devNote": [ |
| 489 | + "The 5 thornHits are for lenience since it is very difficult to get this first try." |
464 | 490 | ] |
465 | 491 | }, |
466 | 492 | { |
|
481 | 507 | {"thornHits": 5} |
482 | 508 | ]}, |
483 | 509 | {"not": "f_DefeatedPhantoon"} |
| 510 | + ], |
| 511 | + "devNote": [ |
| 512 | + "The 5 thornHits are for lenience since it is difficult to get this first try." |
| 513 | + ] |
| 514 | + }, |
| 515 | + { |
| 516 | + "link": [1, 2], |
| 517 | + "name": "Insane Speedy Jump (Power Off)", |
| 518 | + "entranceCondition": { |
| 519 | + "comeInRunning": { |
| 520 | + "speedBooster": true, |
| 521 | + "minTiles": 36 |
| 522 | + } |
| 523 | + }, |
| 524 | + "requires": [ |
| 525 | + "canInsaneJump", |
| 526 | + {"or": [ |
| 527 | + "canBeVeryPatient", |
| 528 | + {"thornHits": 5} |
| 529 | + ]}, |
| 530 | + {"not": "f_DefeatedPhantoon"} |
| 531 | + ], |
| 532 | + "note": [ |
| 533 | + "Run from the adjacent room and jump at the end of the platform.", |
| 534 | + "Aim down just before bonking the ceiling." |
| 535 | + ], |
| 536 | + "detailNote": [ |
| 537 | + "This requires a last-frame jump and has a 2-frame window for the aim-down." |
| 538 | + ], |
| 539 | + "devNote": [ |
| 540 | + "The 5 thornHits are for lenience since it is very difficult to get this first try." |
484 | 541 | ] |
485 | 542 | }, |
486 | 543 | { |
|
0 commit comments