Eel Roast/Eel Movement
The Eel Roast minigame uses a fairly interesting approach to animating its eels, there are two components that change according to the active level:
- traversal speed
- jump height
To determine the position of an eel during its jump it uses (second-order) bezier curves. Here is a great presentation on how they work.
Traversal Speed: In the context of bezier curves, "traversal speed" describes how much the parameter `t` is increased per second. Since the entire curve has been traversed once `t` reaches `1` we can determine the time it takes the eel to traverse the entire curve by dividing `1/t`
The traversal speed of an eel is determined randomly within the minimum and maximum of the active level.
Jump Height: This describes the maximum height between the eels starting point and the curve's peak (at `t = 0.5`), just as the traversal speed, it is determined randomly within the minimum and maximum bounds.
Both traversal speed and jump height are different for normal eels (colored and electric eels) and bonus eels.
Normal Eels
Level | Speed | Travel Time |
1-3 | 0.2 - 0.35 | 5s - 2.86s |
4-8 | 0.2 - 0.4 | 5s - 2.5s |
9-13 | 0.2 - 0.48 | 5s - 2.08s |
14-18 | 0.2 - 0.56 | 5s - 1.79s |
19-23 | 0.2 - 0.64 | 5s - 1.56s |
24-28 | 0.2 - 0.72 | 5s - 1.39s |
29-33 | 0.2 - 0.8 | 5s - 1.25s |
34-38 | 0.2 - 0.88 | 5s - 1.14s |
39-43 | 0.2 - 0.96 | 5s - 1.04s |
44+ | 0.2 - 1 | 5s - 1s |
Level | Height |
1-8 | 3 - 6 |
9+ | 2.5 - 6 |
Bonus Eels
Level | Speed | Travel Time |
1-3 | 0.25 - 0.35 | 4s - 2.86s |
4 | 0.25 - 0.4 | 4s - 2.5s |
5-8 | 0.25 - 0.45 | 4s - 2.22s |
9-13 | 0.25 - 0.53 | 4s - 1.89s |
14-18 | 0.25 - 0.61 | 4s - 1.64s |
19-23 | 0.25 - 0.69 | 4s - 1.45s |
24-28 | 0.25 - 0.77 | 4s - 1.3s |
29-33 | 0.25 - 0.85 | 4s - 1.18s |
34-38 | 0.25 - 0.93 | 4s - 1.08s |
39-43 | 0.25 - 1.01 | 4s - 0.99s |
44-48 | 0.25 - 1.09 | 4s - 0.92s |
49-53 | 0.25 - 1.17 | 4s - 0.85s |
54+ | 0.25 - 1.25 | 4s - 0.8s |
Level | Height |
1-8 | 2.5 - 7.5 |
9+ | 1.5 - 7.5 |