Version Check and Punch Glitch: Difference between pages

From JakSpeedruns Wiki
(Difference between pages)
Jump to navigation Jump to search
 
 
Line 1: Line 1:
This page lists the various differences you will encounter on each copy of the Jak and Daxter games.
'''Punch glitch''' is a bug that is exclusively encountered on the PlayStation 3 Jak and Daxter Collection.


== PlayStation 2 (PS2) ==
== Technical ==
=== Jak and Daxter: The Precursor Legacy ===
During the development of the PC port for Jak and Daxter: The Precursor Legacy, it was discovered that punch glitch was occurring.
[[File:PS2 Jak and Daxter Disc 2.PNG|thumb|The number 2 on the inner ring of the disc indicates that this is a Black Label #2 (NTSC-U/C) disc, which does have Citadel Skip.]]
[[File:PS2 Disc Number Version Check Discovery.PNG|thumb|The discovery of being able to identify which PS2 discs have Citadel Skip or not.]]
If you have a North American Black Label (NTSC-U/C) copy of [[Jak and Daxter: The Precursor Legacy]], you may or may not have [[Citadel Skip]]. If you look on the back of the disc, you will find a number on the inner ring. This number indicates your version of the game and whether or not you have Citadel Skip. If you see a 1 or a 2, Citadel Skip is not patched and will work. If you see a 3 (or higher), Citadel Skip is patched and will not work.


[[File:Jak and Daxter TPL Disc Comparison for Citadel Skip.jpg|500px]]
<blockquote>
The issue is the acos in logic-target.gc. In PCSX2/PS2 it can never quite return 0.0. But on PC it does, and it causes 0/0 instead of 0/very-small-number. This is used as the input to a slerp and it ends up setting the output quaternion to 0 0 0 0. Over the next 2 frames, this completely breaks the dir-targ and unknown-quaternion00 and the target/camera rotation matrix ends up being identity. This sudden change rotates jak's velocity so it is entirely in the global x direction.


{| class="wikitable" style="margin:left"
My understanding is that this should only happen when the dir-targ aligns with jak's velocity exactly. It may only be catastrophic if the camera is also aligned so that pushing forward on the stick will move jak in this direction.
|-
! Version !! Citadel Skip
|-
| Black Label #1 (NTSC-U/C) || style="background: green; color:white;" | Yes
|-
| Black Label #2 (NTSC-U/C) || style="background: green; color:white;" | Yes
|-
| Black Label #3+ (NTSC-U/C) || style="background: red; color:white;" | No
|-
| Greatest Hits (NTSC-U/C) || style="background: red; color:white;" | No
|-
| Black Label (PAL) || style="background: green; color:white;" | Yes
|-
| Platinum Label (PAL) (NTSC-U/C) || style="background: green; color:white;" | Yes
|-
| Black Label (NTSC-J/Korean) || style="background: red; color:white;" | No
|-
| Silver Label (NTSC-J) || style="background: red; color:white;" | No
|}


=== Jak II ===
I don't think the location has anything to do with it. It's possible that it only happens on ground that's perfectly level but I don't know. Instead, I think it tends to happen in places where people are lined up well with the camera and punching in/out of the camera exactly.
In the Greatest Hits version, a patch was implemented to fix the [[Stadium Bug]] and to prevent the game from crashing during the final cutscene.


=== Jak 3 ===
- Water111
[[Jak 3]] contains little to no changes between versions.
</blockquote>


=== Jak X: Combat Racing ===
On the Black Label release, there is a bug referred to as [[Autosave Glitch]] that can occur. This bug causes the games autosave feature to fail and not actually save the game. It can also potentially corrupt the game's save data. You will know if the bug occurs when the memory card icon in the bottom corner flashes nonstop. The bug was fixed in the Greatest Hits version.


=== Jak and Daxter: The Lost Frontier ===
The following code was added to <code>acos</code> in <code>trigonometry.gc</code> to fix the problem:


== PlayStation 3 (PS3) ==
<nowiki>
[[File:Jak and Daxter Collection and Trilogy PS3.jpg|thumb|The North American Jak and Daxter Collection and European Jak and Daxter Trilogy for the PlayStation 3.]]
(defun acos ((arg0 float))
In 2012, [https://en.wikipedia.org/wiki/Mass_Media_(company) Mass Media], a subsidiary of THQ, was tasked with porting the Jak and Daxter trilogy to the PlayStation 3. Below are the major differences for each of the games that are in this port.
  "Inverse cosine. Returns rotation units"
  (let ((result (- 16384.000000 (asin arg0))))
    (#when PC_PORT
      ;; to avoid punch glitch:
      ;; (note: it might be a better fix to change the global rounding mode,
      ;;  but it's not super clear to me that the mode picked by PCSX2 is
      ;;  more accurate than normal in all cases. So, we'll do this for now.)
      (when (= result 0.0)
        (set! result 0.00000000001)
        )
      )
    result
    )
  )</nowiki>


All Jak games and versions on the PS3 suffer from [[Punch Glitch|punch glitch]].
== Discovery ==


=== Jak and Daxter: The Precursor Legacy ===
== Other Notes ==
Major differences include:
* Slower save/load times
* No Citadel Skip
* Punch Glitch


=== Jak II ===
Major differences include:
* Faster save/load times
* Punch Glitch


=== Jak 3 ===
{{Glitches}}
Major differences include:
* Faster save/load times
* Punch Glitch
 
== PlayStation 4 (PS4) ==
[[File:Jak and Daxter Bundle and Collection Artwork PSStore.jpg|thumb|The PlayStation Store artwork for the North American Jak and Daxter Bundle and European Jak and Daxter Collection.]]
In 2017, the first four Jak and Daxter games were virtually released for the PlayStation 4 in North America and Europe. The North American version is titled the [https://store.playstation.com/en-us/product/UP9000-CUSA02522_00-JADBUNDLE0000001 Jak and Daxter Bundle] and the European version is titled the [https://store.playstation.com/en-gb/product/EP9000-CUSA07934_00-JAKDAXTER0BUNDLE Jak and Daxter Collection].
 
Jak 3 and Jak X: Combat Racing are listed on the Japanese PlayStation Store, but these are the North American (NTSC-U/C) English versions.
 
The PS4 and PS5 versions of the game are not actual ports. Instead, they are emulations of the PS2 versions.
 
<youtube>https://www.youtube.com/watch?v=WkIJV84HV2E</youtube>
 
=== Jak and Daxter: The Precursor Legacy ===
[[File:50 60 Hertz Bug on PAL PS4.PNG|thumb|Using the Video Mode menu option to switch between 50 and 60 Hz would result in a texture corruption on the PAL PS4 release.]]
When the bundle was first released on the PS4, it was quickly discovered that the games were not ported but were instead emulated versions of the PS2 releases. In the beginning, the North American release of [[Jak and Daxter: The Precursor Legacy]] on the PS4 was an emulated of a Black Label #1 which had Citadel Skip. Soon after, a patch was pushed out that fixed a [https://youtu.be/3Y99EIPZ1vE?si=YXWgErkss_ldTesv&t=32 texture corruption glitch] in the European release and updated the North American release from Black Label #1 to Greatest Hits, removing Citadel Skip. This made it so [https://store.playstation.com/en-gb/product/EP9000-CUSA07934_00-JAKDAXTER0BUNDLE only the European (PAL) version of the bundle contained Citadel Skip]].
 
Other notable changes include:
 
* Controller input lag
* Inverted camera controls and later reverted back to original PS2 camera controls
* Limited directional inputs
* Jak slowly slides on the floor when idle
 
=== Jak II ===
When Jak II was first released on the PS4, a massive frame rate issue on the PAL release was noticeable. The default frame rate for PAL is 50 Hz and the PlayStation 4 was trying to emulate the game at 60 Hz. This caused the game to run ~16.7% slower and made the game unplayable. The bug was quickly patched.
 
Major differences include:
 
* Inverted camera controls (L1 + L3)
* Crackling audio during cutscenes
* Disabled the Progressive Scan and Refresh Rate menu options in the PAL release
* Game crashes if you skip the final cutscene at a specific time
* Texture bug on water planes
* Controller input lag
* Limited directional inputs
* Inconsistent frame rate
 
=== Jak 3 ===
Major differences include:
 
* Disabled the Progressive Scan and Refresh Rate menu options in the PAL release
* Texture bug on water planes
* Controller input lag
* Limited directional inputs
* Inconsistent frame rate
 
=== Jak X: Combat Racing ===
[[File:Jak X Turbo Particle Effect Not Anchored Properly.PNG|thumb|Thruster particle effects floating behind the vehicle due to poor anchoring.]]
Major differences include:
 
* Some vehicles are missing tires and get stuck on tracks
* Thruster particle effects are not anchored properly to vehicles (floating behind the vehicle)
* Controller input lag
* Limited directional inputs
* Inconsistent frame rate
 
== PlayStation 5 (PS5) ==
=== Jak and Daxter: The Precursor Legacy ===
 
=== Jak II ===
 
=== Jak 3 ===
 
=== Jak X: Combat Racing ===
 
== PlayStation Portable (PSP) ==
=== Jak and Daxter: The Precursor Legacy ===
 
=== Jak II ===
 
=== Jak 3 ===
 
=== Daxter ===
 
=== Jak and Daxter: The Lost Frontier ===
 
== PlayStation Vita (PSVita) ==
=== Jak and Daxter: The Precursor Legacy ===
 
=== Jak II ===
 
=== Jak 3 ===
 
== OpenGOAL PC Port ==
Many changes were made in the OpenGOAL versions of the games.
 
=== Jak and Daxter: The Precursor Legacy ===
Major differences include:
* Added subtitles option
* Added ability to skip cutscenes
* Fixed various game crashing bugs
* Added the option for mods and texture packs
* Allows for different controller support
 
=== Jak II ===
* Fixed various game crashing bugs
* Added the option for mods and texture packs
* Allows for different controller support

Revision as of 00:48, 19 February 2024

Punch glitch is a bug that is exclusively encountered on the PlayStation 3 Jak and Daxter Collection.

Technical

During the development of the PC port for Jak and Daxter: The Precursor Legacy, it was discovered that punch glitch was occurring.

The issue is the acos in logic-target.gc. In PCSX2/PS2 it can never quite return 0.0. But on PC it does, and it causes 0/0 instead of 0/very-small-number. This is used as the input to a slerp and it ends up setting the output quaternion to 0 0 0 0. Over the next 2 frames, this completely breaks the dir-targ and unknown-quaternion00 and the target/camera rotation matrix ends up being identity. This sudden change rotates jak's velocity so it is entirely in the global x direction.

My understanding is that this should only happen when the dir-targ aligns with jak's velocity exactly. It may only be catastrophic if the camera is also aligned so that pushing forward on the stick will move jak in this direction.

I don't think the location has anything to do with it. It's possible that it only happens on ground that's perfectly level but I don't know. Instead, I think it tends to happen in places where people are lined up well with the camera and punching in/out of the camera exactly.

- Water111


The following code was added to acos in trigonometry.gc to fix the problem:

(defun acos ((arg0 float))
  "Inverse cosine. Returns rotation units"
  (let ((result (- 16384.000000 (asin arg0))))
    (#when PC_PORT
      ;; to avoid punch glitch:
      ;; (note: it might be a better fix to change the global rounding mode,
      ;;  but it's not super clear to me that the mode picked by PCSX2 is
      ;;  more accurate than normal in all cases. So, we'll do this for now.)
      (when (= result 0.0)
        (set! result 0.00000000001)
        )
      )
    result
    )
  )

Discovery

Other Notes

Glitches, Bugs, Exploits, and Secrets
Jak and Daxter: The Precursor Legacy Audio Pause GlitchBridge BlastDark GlitchDeveloper PicturesDupe StateFlut Flut EscapeGame CrashGhost GlitchHard FishIdle DeloadLine GlitchMoon WalkOrb Duplication GlitchPause BufferPunch GlitchStatue GlitchVoid OutWalking While TalkingZombie GlitchZoomer Escape
Jak II Developer PicturesGame CrashGhost TownInvisibility GlitchInvulnerability GlitchLine GlitchOrb Duplication GlitchPause BufferPeacemaker StackingPunch GlitchStatue GlitchZombie Glitch
Jak 3 Developer PicturesGame CrashInvisibility GlitchInvulnerability GlitchLine GlitchOrb Duplication GlitchPeacemaker StackingPunch GlitchStatue GlitchZombie Glitch
Jak X Line Glitch
Daxter placeholder text
Jak and Daxter: The Lost Frontier placeholder text