Ice Momentum and Dupe State: Difference between pages

From JakSpeedruns Wiki
(Difference between pages)
Jump to navigation Jump to search
No edit summary
 
No edit summary
 
Line 1: Line 1:
[[File:Ice Momentum.gif|thumb|Using ice momentum to extend the distance of a double jump spin]]
[[File:Dupe State Eco.gif|frame|Collecting [[Blue Eco|blue eco]] while in dupe state.]]
'''Ice momentum''' is a movement technique that utilizes the ice physics in the level Snowy Mountain and can only be performed in [[Jak and Daxter: The Precursor Legacy]]. The technique involves using ice physics to prolong Jak's aerial momentum.
'''Dupe state''' is a "state" that Jak can enter while performing the duplication exploit on scout flies. Some side effects that occur while in dupe state include seemingly random hardlocks, statue glitch, failure to load certain parts of the game, and collectable entities not disappearing after collecting them. Dupe state can travel across save files, which is a trait not seen in any other known state. This leads some to believe that dupe state is not actually a state.


Ice momentum is the biggest cause of accidental deaths in Snowy Mountain for new speedrunners due to it being a commonly overlooked technique. It only occurs in one level, so it is not prioritized by runners. New speedrunners eventually learn the benefits of ice momentum, usually on their own, and become more familiar with how the movement works. This leads to less accidental deaths and better split times in Snowy Mountain.  
Using yellow eco while dupe state is active will lead to a statue glitch, where Jak becomes frozen in place right after you press the square button to shoot yellow eco. This is the only known way to consistently perform the statue glitch.
 
Currently, there is no use for dupe state in any speedruns of Jak and Daxter: The Precursor Legacy.  


== Technical ==
== Technical ==
Ice surfaces are programmed to act like real world ice, converting Jak's momentum into a slide effect that slowly deteriorates in speed over time. However, if Jak lands on an ice surface with built up momentum and immediately jumps, the momentum from the ice slide will transfer into the jump without the speed deterioration. This allows Jak to cover much more horizontal distance  than intended by using conventional jumping techniques. Once Jak has initiated the jump off of an ice surface, the momentum can not be redirected, but it can be cancelled with a quick ground pound. The full potential of ice momentum is achieved by diving onto an ice surface with Flut Flut and immediately jumping to transfer the diving momentum into the jump.
Water111 had this to say when asked about what could be causing dupe state.
 
"A lot of the stuff in levels in Jak 1 is a "process". So there is a process for each orb, enemy, animated thing, camera, Jak,..... Each process gets run once per frame by the kernel, and each process has some memory associated with it to store its state (like where the item is located, what animation it plays...). Many processes have their memory allocated manually, like the orbs, which go into a special "collectables" heap. But other things, (like flies which spawn from crates, eco....) go on the "actor" heap. This actor heap has some really complicated code that will move around the memory for processes to compact them together and get larger chunks of free memory. However, this code is really sensitive - if any process using the actor heap accidentally writes past its allocated memory, the engine won't be able to maintain the actor heap any more. This means that deleting actors might not work, or there could be random memory corruption. Some common side effects of the actor heap getting messed up is objects don't disappear when they are supposed to, because they cannot be deleted from the actor heap. Other times, certain objects won't spawn because the actor heap is too full. Or sometimes, when it tries to spawn new enemies, it will just crash because it overwrites something else in the actor heap. I believe in debug mode, it would display "Low Actor Memory" in this case. I am not sure how save data could cause this to happen though."
 
== Tutorial ==
To activate dupe state, you need to load a save file (without saving) on a specific frame of a spin kick while collecting a scout fly. Once you load back in, the dupe state will be active. It works best on Geyser Rock with the first scout fly you encounter. You are able to load any save file once you have the initial spin kick set up, allowing the state to carry over with Jak to any level you load him in to.


== Demonstration ==
<youtube>https://www.youtube.com/watch?v=FYUAW7dEvBk</youtube>
<youtube>https://youtu.be/LHWlxIBxAp4</youtube>


{{Movement_Techniques}}
== Discovery ==
Dupe state was inadvertently found along side the discovery of Precursor Orb, Scout Fly, and Power Cell duplication in Jak and Daxter: The Precursor Legacy, which was discovered by RNGPenguin on January 14, 2018. While other runners attempted to perform the duplication exploit, some of them reported strange side effects when failing the dupe and reloading the save file to try again. These side effects were listed earlier at the top of the page. Two days later on January 16, 2018, Ruh found a consistent setup to cause the strange side effects and coined the name Dupe State.
<youtube>https://www.youtube.com/watch?v=377ULKPYh3s</youtube>

Revision as of 23:53, 14 February 2024

Collecting blue eco while in dupe state.

Dupe state is a "state" that Jak can enter while performing the duplication exploit on scout flies. Some side effects that occur while in dupe state include seemingly random hardlocks, statue glitch, failure to load certain parts of the game, and collectable entities not disappearing after collecting them. Dupe state can travel across save files, which is a trait not seen in any other known state. This leads some to believe that dupe state is not actually a state.

Using yellow eco while dupe state is active will lead to a statue glitch, where Jak becomes frozen in place right after you press the square button to shoot yellow eco. This is the only known way to consistently perform the statue glitch.

Currently, there is no use for dupe state in any speedruns of Jak and Daxter: The Precursor Legacy.

Technical

Water111 had this to say when asked about what could be causing dupe state.

"A lot of the stuff in levels in Jak 1 is a "process". So there is a process for each orb, enemy, animated thing, camera, Jak,..... Each process gets run once per frame by the kernel, and each process has some memory associated with it to store its state (like where the item is located, what animation it plays...). Many processes have their memory allocated manually, like the orbs, which go into a special "collectables" heap. But other things, (like flies which spawn from crates, eco....) go on the "actor" heap. This actor heap has some really complicated code that will move around the memory for processes to compact them together and get larger chunks of free memory. However, this code is really sensitive - if any process using the actor heap accidentally writes past its allocated memory, the engine won't be able to maintain the actor heap any more. This means that deleting actors might not work, or there could be random memory corruption. Some common side effects of the actor heap getting messed up is objects don't disappear when they are supposed to, because they cannot be deleted from the actor heap. Other times, certain objects won't spawn because the actor heap is too full. Or sometimes, when it tries to spawn new enemies, it will just crash because it overwrites something else in the actor heap. I believe in debug mode, it would display "Low Actor Memory" in this case. I am not sure how save data could cause this to happen though."

Tutorial

To activate dupe state, you need to load a save file (without saving) on a specific frame of a spin kick while collecting a scout fly. Once you load back in, the dupe state will be active. It works best on Geyser Rock with the first scout fly you encounter. You are able to load any save file once you have the initial spin kick set up, allowing the state to carry over with Jak to any level you load him in to.

Discovery

Dupe state was inadvertently found along side the discovery of Precursor Orb, Scout Fly, and Power Cell duplication in Jak and Daxter: The Precursor Legacy, which was discovered by RNGPenguin on January 14, 2018. While other runners attempted to perform the duplication exploit, some of them reported strange side effects when failing the dupe and reloading the save file to try again. These side effects were listed earlier at the top of the page. Two days later on January 16, 2018, Ruh found a consistent setup to cause the strange side effects and coined the name Dupe State.