Uncharted 3: Drake's Deception: Difference between revisions

From RPCS3 Wiki
(Edit to add info about Uncharted 3 Reloaded project https://www.youtube.com/watch?v=xpHqeCPSl-I&t=0s)
 
(90 intermediate revisions by 12 users not shown)
Line 1: Line 1:
<!-- please read the wiki conventions page and documentation for templates before creating a new game page -->{{vginfobox
<!-- please read the wiki conventions page and documentation for templates before creating a new game page -->{{vginfobox
|image    = [[File:{{#setmainimage:UC3 Cover.jpg}}|300px]]
|developer = Naughty Dog
|developer = Naughty Dog
|publisher = Sony Computer Entertainment
|publisher = Sony Computer Entertainment
|series    = Uncharted
|series    = Uncharted
|date      = {{vgregion|NA=November 1, 2011|EU=November 2, 2011|AU=November 3, 2011}}
|date      = {{vgregion|NA=November 1, 2011|EU=November 2, 2011|AU=November 3, 2011}}
|release  = PlayStation exclusive <!-- Choose one of the following: PlayStation 3 exclusive, PlayStation exclusive, Console exclusive, Multi-platform -->
|release  = PlayStation exclusive<!-- Choose one of the following: PlayStation 3 exclusive, PlayStation exclusive, Console exclusive, Multi-platform -->
|genre    = Action, Adventure, Third-person shooter, Platform
|genre    = Action, Adventure, Third-person shooter, Platform
|modes    = Single-player, Multiplayer <!-- Choose all relevant options: Single-player, Co-op, Multiplayer -->
|modes    = Single-player, Co-op, Multiplayer<!-- Choose all relevant options: Single-player, Co-op, Multiplayer -->
|gameid    = {{gameid|id=BCES01175, BCES01176, BCUS98233|ird=Yes}}<br>'''''Game of the Year Edition'''''<br>{{gameid|id=BCES01670, BCUS99086|ird=Yes}}<br>'''''Beta'''''<br>{{gameid|id=BCET70034, NPUA70153, NPUA70180|ird=No}}
|gameid    = {{gameid|id=BCES01175, BCES01176, BCUS98233, BCJS37004, BCAS25009|ird=Yes}}<br>'''''Game of the Year Edition'''''<br>{{gameid|id=BCES01670, BCES01692, BCUS99086, BCAS25014|ird=Yes}}<br>'''''Free To Play'''''<br>{{gameid|id=NPEA00422|oid=NPUA80858|ird=NA}}<br>'''''Kiosk Demo'''''<br>{{gameid|id=NPUA70183|ird=NA}}<br>'''''Beta'''''<br>{{gameid|id=BCET70034, BCET70043, NPUA70153, NPUA70180, NPHA80158|ird=NA}}<br>'''''Soundtrack'''''<br>{{gameid|id=NPEA00330|ird=NA}}
|internal resolution = 1280x720
}}
}}


Line 19: Line 21:
<!-- Enter mandatory non-default settings to be used. Recommendatory or default settings can be entered only on exceptional basis. -->{{config
<!-- Enter mandatory non-default settings to be used. Recommendatory or default settings can be entered only on exceptional basis. -->{{config
<!-- CPU configuration -->
<!-- CPU configuration -->
|ppu decoder                          = <!-- Interpreter (precise), Interpreter (fast), Recompiler (LLVM) -->
|ppu decoder                          = <!-- Interpreter (static), Interpreter (dynamic), Recompiler (LLVM) -->
|ppu decoder notes                    =  
|ppu decoder notes                    =  
|spu decoder                          = <!-- Interpreter (precise), Interpreter (fast), Recompiler (ASMJIT), Recompiler (LLVM) -->
|spu decoder                          = <!-- Interpreter (static), Interpreter (dynamic), Recompiler (ASMJIT), Recompiler (LLVM) -->
|spu decoder notes                    =  
|spu decoder notes                    =  
|preferred spu threads                = <!-- Auto, Single digit between 1 to 6 (e.g. 3), Range between 1 to 6 (e.g. 1 - 3) -->
|preferred spu threads                = <!-- Auto, Single digit between 1 to 6 (e.g. 3), Range between 1 to 6 (e.g. 1 - 3) -->
Line 27: Line 29:
|thread scheduler                      = <!-- Operating System, RPCS3 Scheduler, RPCS3 Alternative Scheduler -->
|thread scheduler                      = <!-- Operating System, RPCS3 Scheduler, RPCS3 Alternative Scheduler -->
|thread scheduler notes                =  
|thread scheduler notes                =  
|lower spu thread priority            = <!-- On, Off -->
|lower spu thread priority notes      =
|enable spu loop detection            = <!-- On, Off -->
|enable spu loop detection            = <!-- On, Off -->
|enable spu loop detection notes      =  
|enable spu loop detection notes      =  
|spu cache                            = <!-- On, Off -->
|spu xfloat accuracy                  = <!-- Accurate, Approximate, Relaxed -->
|spu cache notes                      =
|spu xfloat accuracy notes             =  
|accurate xfloat                      = <!-- On, Off -->
|accurate xfloat notes                 =  
|spu block size                        = <!-- Safe, Mega, Giga -->
|spu block size                        = <!-- Safe, Mega, Giga -->
|spu block size notes                  =  
|spu block size notes                  =  
Line 44: Line 42:
|aspect ratio                          = <!-- 4:3, 16:9 -->
|aspect ratio                          = <!-- 4:3, 16:9 -->
|aspect ratio notes                    =  
|aspect ratio notes                    =  
|framelimit                            = <!-- Off, 59.94, 50, 60, 30, Auto -->
|framelimit                            = <!-- Off, 50, 60, 30, Auto, PS3 Native, Infinite -->
|framelimit notes                      =  
|framelimit notes                      =  
|anisotropic filter                    = <!-- Auto, 2x, 4x, 8x, 16x -->
|anisotropic filter                    = <!-- Auto, 2x, 4x, 8x, 16x -->
Line 50: Line 48:
|anti-aliasing                        = <!-- Auto, Disabled -->
|anti-aliasing                        = <!-- Auto, Disabled -->
|anti-aliasing notes                  =  
|anti-aliasing notes                  =  
|zcull accuracy                        = Relaxed<!-- Precise, Approximate, Relaxed -->
|zcull accuracy notes                  = Fixes blurry visuals that tend to occur when aiming or when navigating in foggy areas. Slightly improves performance as well.
|shader quality                        = <!-- High, Low, Auto -->
|shader quality notes                  =
|3d rendering mode                    = <!-- Disabled, Anaglyph, Side-by-side, Over-under -->
|3d rendering mode notes              =
|default resolution                    = <!-- 1920x1080, 1280x720, 720x480, 720x576, 1600x1080, 1440x1080, 1280x1080, 960x1080 -->
|default resolution                    = <!-- 1920x1080, 1280x720, 720x480, 720x576, 1600x1080, 1440x1080, 1280x1080, 960x1080 -->
|default resolution notes              =  
|default resolution notes              =  
|resolution scale                      = 100 <!-- Value between 50% to 800% -->
|resolution scale                      = 100<!-- Value between 50% to 800% -->
|resolution scale notes                = Resolution scaling is only supported when the MLAA patch is enabled.
|resolution scale notes                = Resolution scaling is only supported when the MLAA patch is enabled.
|resolution scale threshold            = <!-- Value between 1 to 1024 in the format 16 x 16 -->
|resolution scale threshold            = <!-- Value between 1 to 1024 in the format 16 x 16 -->
|resolution scale threshold notes      =  
|resolution scale threshold notes      =  
|shader mode                          = <!-- Legacy (singlethreaded), Async (multithreaded), Async with Shader Interpreter, Shader Interpreter only -->
|shader mode                          = <!-- Legacy (singlethreaded), Async (multithreaded), Async with Shader Interpreter, Shader Interpreter only -->
|shader mode notes                    =  
|shader mode notes                    =
|write color buffers                  = On <!-- On, Off -->
|write color buffers                  = On<!-- On, Off -->
|write color buffers notes            = Fixes brightness in some scenes.
|write color buffers notes            = Fixes brightness in some scenes.
|strict rendering mode                = <!-- On, Off -->
|strict rendering mode                = <!-- On, Off -->
Line 70: Line 74:
|disable vertex cache                  = <!-- On, Off -->
|disable vertex cache                  = <!-- On, Off -->
|disable vertex cache notes            =  
|disable vertex cache notes            =  
|multithreaded rsx                    = <!-- On, Off -->
|multithreaded rsx                    = On<!-- On, Off -->
|multithreaded rsx notes              =  
|multithreaded rsx notes              = Improves performance depending on the hardware.
|asynchronous texture streaming        = <!-- On, Off -->
|asynchronous texture streaming        = On<!-- On, Off -->
|asynchronous texture streaming notes  =  
|asynchronous texture streaming notes  = Improves performance depending on the GPU.
<!-- Audio configuration -->
<!-- Audio configuration -->
|audio out windows                    = <!-- XAudio2, OpenAL, Disabled -->
|audio out windows                    = <!-- Cubeb, XAudio2, Disabled -->
|audio out windows notes              =  
|audio out windows notes              =  
|audio out linux                      = <!-- OpenAL, PulseAudio, ALSA, Disabled -->
|audio out linux                      = <!-- Cubeb, FAudio, Disabled -->
|audio out linux notes                =  
|audio out linux notes                =  
|audio channels                        = <!-- Surround 7.1, Downmix to Stereo, Downmix to 5.1 -->
|audio format                          = <!-- Stereo, Surround 5.1, Surround 7.1, Automatic, Manual -->
|audio channels notes                 =  
|audio format notes                   =  
|dump to file                          = <!-- On, Off -->
|dump to file                          = <!-- On, Off -->
|dump to file notes                    =  
|dump to file notes                    =  
Line 104: Line 108:
|camera input                          = <!-- Unknown, EyeToy, PS Eye, UVC 1.1 -->
|camera input                          = <!-- Unknown, EyeToy, PS Eye, UVC 1.1 -->
|camera input notes                    =  
|camera input notes                    =  
|camera settings                      = <!-- Null, Fake -->
|camera settings                      = <!-- Null, Fake, Qt -->
|camera settings notes                =  
|camera settings notes                =  
|move handler                          = <!-- Null, Fake, Mouse -->
|move handler                          = <!-- Null, Fake, Mouse -->
|move handler notes                    =  
|move handler notes                    =  
<!-- Network configuration -->
|network status                        = <!-- Disconnected, Connected -->
|network status notes                  =
|psn status                            = <!-- Disconnected, Simulated, RPCN -->
|psn status notes                      =
<!-- Advanced configuration -->
<!-- Advanced configuration -->
|debug console mode                    = <!-- On, Off -->
|debug console mode                    = <!-- On, Off -->
Line 113: Line 122:
|accurate llvm dfma                    = <!-- On, Off -->
|accurate llvm dfma                    = <!-- On, Off -->
|accurate llvm dfma notes              =  
|accurate llvm dfma notes              =  
|accurate rsx reservation access      = On <!-- On, Off -->
|accurate rsx reservation access      = On<!-- On, Off -->
|accurate rsx reservation access notes = To be enabled on systems that do not have TSX.
|accurate rsx reservation access notes = Prevents random freezing/crashing while playing the game.
|ppu llvm accurate vector nans        = <!-- On, Off -->
|ppu llvm accurate vector nans        = <!-- On, Off -->
|ppu llvm accurate vector nans notes  =  
|ppu llvm accurate vector nans notes  =  
Line 127: Line 136:
|read depth buffers                    = <!-- On, Off -->
|read depth buffers                    = <!-- On, Off -->
|read depth buffers notes              =  
|read depth buffers notes              =  
|handle rsx memory tiling              = On<!-- On, Off -->
|handle rsx memory tiling notes        = Fixes black squares if playing unpatched.
|rsx fifo accuracy                    = Atomic<!-- Fast, Atomic, Ordered & Atomic -->
|rsx fifo accuracy notes              = Helps with stability.
|write depth buffers                  = <!-- On, Off -->
|write depth buffers                  = <!-- On, Off -->
|write depth buffers notes            =  
|write depth buffers notes            =  
|read color buffers                    = On <!-- On, Off -->
|read color buffers                    = On<!-- On, Off -->
|read color buffers notes              = Fixes black screen if playing unpatched.
|read color buffers notes              = Fixes black screen if playing unpatched. Not needed if using patches.
|disable on-disk shader cache          = <!-- On, Off -->
|disable on-disk shader cache          = <!-- On, Off -->
|disable on-disk shader cache notes    =  
|disable on-disk shader cache notes    =  
Line 141: Line 154:
|vblank rate                          = <!-- Value between 1 to 500 -->
|vblank rate                          = <!-- Value between 1 to 500 -->
|vblank rate notes                    =  
|vblank rate notes                    =  
|vblank ntsc fixup                    = <!-- On, Off -->
|vblank ntsc fixup notes              =
|clocks scale                          = <!-- Value between 10 to 1000 -->
|clocks scale                          = <!-- Value between 10 to 1000 -->
|clocks scale notes                    =  
|clocks scale notes                    =  
Line 148: Line 163:
|force cpu blit emulation              = <!-- On, Off -->
|force cpu blit emulation              = <!-- On, Off -->
|force cpu blit emulation notes        =  
|force cpu blit emulation notes        =  
|use gpu texture scaling               = <!-- On, Off -->
|force gpu texture scaling             = <!-- On, Off -->
|use gpu texture scaling notes         =
|force gpu texture scaling notes       =  
|accurate getllar                      = <!-- On, Off -->
|accurate getllar notes                =  
|hook static functions                = <!-- On, Off -->
|hook static functions                = <!-- On, Off -->
|hook static functions notes          =  
|hook static functions notes          =  
|accurate ppu 128 reservations        = <!-- Always Enabled, Disabled, Value between 1 to 8 -->
|accurate ppu 128 reservations        = <!-- Always Enabled, Disabled, Value between 1 to 8 -->
|accurate ppu 128 reservations notes  =  
|accurate ppu 128 reservations notes  =  
|ppu llvm java mode handling          = <!-- True, False -->
|ppu llvm java mode handling          = <!-- On, Off -->
 
|ppu llvm java mode handling notes    =
|ppu llvm java mode handling notes    =
<!-- Recommended patches -->
|highly recommended patch              = Depth Border Fix, Depth Buffer Viewport, Disable in-built MLAA, Disable Mesh Trimming, Enable GPU Lighting, Performance (WCB)<!-- Mention patch names -->
|highly recommended patch notes        = Improves performance and allows Resolution Scaling to work properly.
|recommended patch                    = Disable Bloom, Disable Depth of Field, Disable SSAO, Disable Motion Blur, Skip Intro<!-- Mention patch names -->
|recommended patch notes              =
}}
}}


==Known Issues==
==Known Issues==
<!-- Mention any known issues relating to the game. Use the issue and PR template if necessary. If no notable issues are present, mention "There are no reported issues with this title." -->
<!-- Mention any known issues relating to the game. Use the issue and PR template if necessary. If no notable issues are present, mention "There are no reported issues with this title." -->
Random occurring crashes/freezes can happen on weaker hardware. Just restart the game and keep playing.
* Random occurring crashes/freezes can happen on weaker hardware. Just restart the game and keep playing.
 
* Game only renders button prompts and the loading screen spinning ring resulting in black screen unless patches or RCB are enabled.
Game only renders button prompts and the loading screen spinning ring resulting in black screen unless patches or RCB are enabled.
* Game tends to freeze when you're idling or have the game paused for a while, you will have to restart RPCS3 when this happens.
 
• Blur may occur in certain acts (example act 8 on the spinning globe) where Relaxed Zcull has been acknowledged to fix this on some hardware.


==Special Notes==
==Special Notes==
<!-- Mention any additional notes if necessary. If no special notes are required, remove this section -->
<!-- Mention any additional notes if necessary. If no special notes are required, remove this section -->
{{netplay
|gamever        = 1.19
|rpcs3 version  = 0.0.22-17022
|connect        = Yes<!-- Yes, No, Partial, Untested, N/A -->
|lobbies        = Yes<!-- Yes, No, Partial, Untested, N/A -->
|match          = Partial<!-- Yes, No, Partial, Untested, N/A -->
|features      = Partial<!-- Yes, No, Partial, Untested, N/A -->
|custom servers = Available<!-- Available, Not available, Not required, Untested -->
|notes          = Uncharted 3 Reloaded brings back the MP and Coop functions (original servers were shutdown in 2019). Currently in closed beta/must be whitelisted to join it.
}}
{{patch
{{patch
|type    = PPU
|type    = PPU
Line 177: Line 203:
Anchors:
Anchors:
   uc3_100_FPS: &uc3_100_FPS
   uc3_100_FPS: &uc3_100_FPS
     - [ be32, 0x0093b348, 0x90e30034 ] #FPS
     - [ be32, 0x0093b348, 0x90e30034 ] # FPS
     - [ be32, 0x0093b34c, 0x90e30038 ] #Unlock
     - [ be32, 0x0093b34c, 0x90e30038 ] # Unlock
 
 
   uc3_100_mlaa: &uc3_100_mlaa
   uc3_100_mlaa: &uc3_100_mlaa
     - [ be32, 0x00635f90, 0x60000000 ] # nop byte write on 00 9c
     - [ be32, 0x00635f90, 0x60000000 ] # nop byte write on 00 9c
     - [ be16, 0x0093b46c, 0x9b83 ]    # store 0
     - [ be16, 0x0093b46c, 0x9b83 ]    # store 0
  #- [ be32, 0x00720340, 0x480009ac ] # unconditonally branch to disable MLAA
  # - [ be32, 0x00720340, 0x480009ac ] # unconditonally branch to disable MLAA
 
 
   # This patch cycles through various post-processing modes. Values accepted are:
   # This patch cycles through various post-processing modes. Values accepted are:
   #    0 = None
   #    0 = None
Line 192: Line 218:
   #    4 = Bloom & Depth of Field
   #    4 = Bloom & Depth of Field
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
 
 
   uc3_100_post: &uc3_100_post
   uc3_100_post: &uc3_100_post
     - [ be32, 0x0093acd4, 0x39000003 ] # Post-processing modes  (mem address: 0x1346D47)
     - [ be32, 0x0093acd4, 0x39000003 ] # Post-processing modes  (mem address: 0x1346d47)
 
 
   uc3_100_mesh: &uc3_100_mesh
   uc3_100_mesh: &uc3_100_mesh
     - [ be32, 0x0073f05c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12C3940)
     - [ be32, 0x0073f05c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12c3940)
 
 
   # Many settings below are enabled/disabled in sub_AA9E6C. In this subroutine, // needs correction on subroutine
   # Many settings below are enabled/disabled in sub_AA9E6C. In this subroutine, // needs correction on subroutine
   #    r6  = 2
   #    r6  = 2
Line 205: Line 231:
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # source register from one to the other, though some are words and some are bytes, so be careful.
   # source register from one to the other, though some are words and some are bytes, so be careful.
 
 
   uc3_100_ssao: &uc3_100_ssao
   uc3_100_ssao: &uc3_100_ssao
     - [ be32, 0x00635f8c, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x00635f8c, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x0093b3ac, 0x9b830057 ] # Disable SSAO          (mem address: 0x1346DBF)
     - [ be32, 0x0093b3ac, 0x9b830057 ] # Disable SSAO          (mem address: 0x1346dbf)
 
 
   uc3_100_dof: &uc3_100_dof
   uc3_100_dof: &uc3_100_dof
     - [ be32, 0x0093b430, 0x9b83007a ] # Disable Depth of Field (mem address: 0x1346DE2)
     - [ be32, 0x0093b430, 0x9b83007a ] # Disable Depth of Field (mem address: 0x1346de2)
 
 
   uc3_100_speed: &uc3_100_speed
   uc3_100_speed: &uc3_100_speed
     - [ be32, 0x0093b44c, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x1346DE9)
     - [ be32, 0x0093b44c, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x1346de9)
 
 
   uc3_100_dbv: &uc3_100_dbv
   uc3_100_dbv: &uc3_100_dbv
     - [ be32, 0x0093b6b8, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1347061)
     - [ be32, 0x0093b6b8, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1347061)
 
 
   uc3_100_dbf: &uc3_100_dbf
   uc3_100_dbf: &uc3_100_dbf
     - [ be32, 0x0093b6f8, 0x9b83031d ] # Depth border fix      (mem address: 0x1347085)
     - [ be32, 0x0093b6f8, 0x9b83031d ] # Depth border fix      (mem address: 0x1347085)
 
 
   uc3_100_db: &uc3_100_db
   uc3_100_db: &uc3_100_db
     - [ be32, 0x00635f88, 0x60000000 ] # nop byte write on 03 ec
     - [ be32, 0x00635f88, 0x60000000 ] # nop byte write on 03 ec
Line 229: Line 255:
     - [ be32, 0x00635fb8, 0x60000000 ] # nop byte write on 00 9c
     - [ be32, 0x00635fb8, 0x60000000 ] # nop byte write on 00 9c
     - [ be16, 0x0093b494, 0x9b83 ]    # store 0
     - [ be16, 0x0093b494, 0x9b83 ]    # store 0
  #- [ be32, 0x00720368, 0x480009ac ] # unconditonally branch to disable MLAA
  # - [ be32, 0x00720368, 0x480009ac ] # unconditonally branch to disable MLAA
 
 
   # This patch cycles through various post-processing modes. Values accepted are:
   # This patch cycles through various post-processing modes. Values accepted are:
   #    0 = None
   #    0 = None
Line 238: Line 264:
   #    4 = Bloom & Depth of Field
   #    4 = Bloom & Depth of Field
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
 
 
   uc3_JP_100_post: &uc3_JP_100_post
   uc3_JP_100_post: &uc3_JP_100_post
     - [ be32, 0x0093acfc, 0x39000003 ] # Post-processing modes
     - [ be32, 0x0093acfc, 0x39000003 ] # Post-processing modes
 
 
   uc3_JP_100_mesh: &uc3_JP_100_mesh
   uc3_JP_100_mesh: &uc3_JP_100_mesh
     - [ be32, 0x0073f084, 0x980b0004 ] # Disable mesh trimming
     - [ be32, 0x0073f084, 0x980b0004 ] # Disable mesh trimming
 
 
   # Many settings below are enabled/disabled in sub_93B2C0. In this subroutine,
   # Many settings below are enabled/disabled in sub_93B2C0. In this subroutine,
   #    r6  = 2
   #    r6  = 2
Line 251: Line 277:
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # source register from one to the other, though some are words and some are bytes, so be careful.
   # source register from one to the other, though some are words and some are bytes, so be careful.
 
 
   uc3_JP_100_ssao: &uc3_JP_100_ssao
   uc3_JP_100_ssao: &uc3_JP_100_ssao
     - [ be32, 0x00635fb4, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x00635fb4, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x0093b3d4, 0x9b830057 ] # Disable SSAO
     - [ be32, 0x0093b3d4, 0x9b830057 ] # Disable SSAO
 
 
   uc3_JP_100_dof: &uc3_JP_100_dof
   uc3_JP_100_dof: &uc3_JP_100_dof
     - [ be32, 0x0093b458, 0x9b83007a ] # Disable Depth of Field
     - [ be32, 0x0093b458, 0x9b83007a ] # Disable Depth of Field
 
 
   uc3_JP_100_speed: &uc3_JP_100_speed
   uc3_JP_100_speed: &uc3_JP_100_speed
     - [ be32, 0x0093b474, 0x9b830081 ] # Speedup (WCB)
     - [ be32, 0x0093b474, 0x9b830081 ] # Speedup (WCB)
 
 
   uc3_JP_100_dbv: &uc3_JP_100_dbv
   uc3_JP_100_dbv: &uc3_JP_100_dbv
     - [ be32, 0x0093b6e0, 0x9b6302f9 ] # Depth buffer viewport
     - [ be32, 0x0093b6e0, 0x9b6302f9 ] # Depth buffer viewport
 
 
   uc3_JP_100_dbf: &uc3_JP_100_dbf
   uc3_JP_100_dbf: &uc3_JP_100_dbf
     - [ be32, 0x0093b720, 0x9b83031d ] # Depth border fix
     - [ be32, 0x0093b720, 0x9b83031d ] # Depth border fix
 
 
   uc3_JP_100_db: &uc3_JP_100_db
   uc3_JP_100_db: &uc3_JP_100_db
     - [ be32, 0x00635fb0, 0x60000000 ] # nop byte write on 03 ec
     - [ be32, 0x00635fb0, 0x60000000 ] # nop byte write on 03 ec
Line 312: Line 338:
     - [ be32, 0x00728d08, 0xec630532 ]
     - [ be32, 0x00728d08, 0xec630532 ]
     - [ be32, 0x00728d0c, 0x4e800020 ]
     - [ be32, 0x00728d0c, 0x4e800020 ]
 
 
   uc3_110_mb: &uc3_110_mb
   uc3_110_mb: &uc3_110_mb
     - [ be32, 0x0077aacc, 0x480000c4 ] # Disable motion blur
     - [ be32, 0x0077aacc, 0x480000c4 ] # Disable motion blur
 
 
   # This patch cycles through various post-processing modes. Values accepted are:
   # This patch cycles through various post-processing modes. Values accepted are:
   #    0 = None
   #    0 = None
Line 323: Line 349:
   #    4 = Bloom & Depth of Field
   #    4 = Bloom & Depth of Field
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
 
 
   uc3_110_post: &uc3_110_post
   uc3_110_post: &uc3_110_post
     - [ be32, 0x0094d0b8, 0x39000003 ] # Post-processing modes  (mem address: 0x1376F77)
     - [ be32, 0x0094d0b8, 0x39000003 ] # Post-processing modes  (mem address: 0x1376f77)
 
 
   uc3_110_mesh: &uc3_110_mesh
   uc3_110_mesh: &uc3_110_mesh
     - [ be32, 0x00747b0c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12D5A70)
     - [ be32, 0x00747b0c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12d5a70)
 
 
   # Many settings below are enabled/disabled in sub_AA9E6C. In this subroutine, // needs correction on subroutine
   # Many settings below are enabled/disabled in sub_AA9E6C. In this subroutine, // needs correction on subroutine
   #    r6  = 2
   #    r6  = 2
Line 336: Line 362:
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # source register from one to the other, though some are words and some are bytes, so be careful.
   # source register from one to the other, though some are words and some are bytes, so be careful.
 
 
   uc3_110_ssao: &uc3_110_ssao
   uc3_110_ssao: &uc3_110_ssao
     - [ be32, 0x0063e010, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x0063e010, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x0094d790, 0x9b830057 ] # Disable SSAO          (mem address: 0x1376FEF)
     - [ be32, 0x0094d790, 0x9b830057 ] # Disable SSAO          (mem address: 0x1376fef)
 
 
   uc3_110_dof: &uc3_110_dof
   uc3_110_dof: &uc3_110_dof
     - [ be32, 0x0094d814, 0x9b83007a ] # Disable Depth of Field (mem address: 0x1377012)
     - [ be32, 0x0094d814, 0x9b83007a ] # Disable Depth of Field (mem address: 0x1377012)
 
 
   uc3_110_speed: &uc3_110_speed
   uc3_110_speed: &uc3_110_speed
     - [ be32, 0x0094d830, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x1377019)
     - [ be32, 0x0094d830, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x1377019)
 
 
   uc3_110_dbv: &uc3_110_dbv
   uc3_110_dbv: &uc3_110_dbv
     - [ be32, 0x0094da9c, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1377291)
     - [ be32, 0x0094da9c, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1377291)
 
 
   uc3_110_dbf: &uc3_110_dbf
   uc3_110_dbf: &uc3_110_dbf
     - [ be32, 0x0094dadc, 0x9b83031d ] # Depth border fix      (mem address: 0x13772B5)
     - [ be32, 0x0094dadc, 0x9b83031d ] # Depth border fix      (mem address: 0x13772b5)
 
 
   uc3_110_db: &uc3_110_db
   uc3_110_db: &uc3_110_db
     - [ be32, 0x0063e00c, 0x60000000 ] # nop byte write on 03 ec
     - [ be32, 0x0063e00c, 0x60000000 ] # nop byte write on 03 ec
Line 358: Line 384:


   uc3_119_FPS: &uc3_119_FPS
   uc3_119_FPS: &uc3_119_FPS
     - [ be32, 0x0096e980, 0x3b6000da ] #FPS
     - [ be32, 0x0096e980, 0x3b6000da ] # FPS
     - [ be32, 0x0096e97c, 0x48000040 ] #Unlock
     - [ be32, 0x0096e97c, 0x48000040 ] # Unlock
 
 
   uc3_119_mlaa: &uc3_119_mlaa
   uc3_119_mlaa: &uc3_119_mlaa
     - [ be32, 0x0064df28, 0x60000000 ] # nop byte write on 00 9c
     - [ be32, 0x0064df28, 0x60000000 ] # nop byte write on 00 9c
     - [ be16, 0x0096eaa0, 0x9b83 ]    # store 0
     - [ be16, 0x0096eaa0, 0x9b83 ]    # store 0
    - [ be32, 0x0073c214, 0x60000000 ] # mp crash fix (test)
     #- [ be32, 0x0073a1d8, 0x480009ac ] # unconditonally branch to disable MLAA
     #- [ be32, 0x0073a1d8, 0x480009ac ] # unconditonally branch to disable MLAA
     # Beginning of new blooom code
     # Beginning of new blooom code
Line 401: Line 428:
     - [ be32, 0x0073a234, 0xec630532 ]
     - [ be32, 0x0073a234, 0xec630532 ]
     - [ be32, 0x0073a238, 0x4e800020 ]
     - [ be32, 0x0073a238, 0x4e800020 ]
 
 
   uc3_119_mb: &uc3_119_mb
   uc3_119_mb: &uc3_119_mb
     - [ be32, 0x0078b0e4, 0x480000c4 ] # Disable motion blur
     - [ be32, 0x0078b0e4, 0x480000c4 ] # Disable motion blur
    
 
   uc3_119_zcull: &uc3_119_zcull
    - [ be32, 0x0078c7d0, 0x3a800001 ] # Heat waves
    - [ byte, 0x0078c7f3, 0x00 ] # Disable broken blur effect
 
   # This patch cycles through various post-processing modes. Values accepted are:
   # This patch cycles through various post-processing modes. Values accepted are:
   #    0 = None
   #    0 = None
Line 412: Line 443:
   #    4 = Bloom & Depth of Field
   #    4 = Bloom & Depth of Field
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
   #    5 = Bloom & Depth of Field & Tonemapping (Default)
 
 
   uc3_119_post: &uc3_119_post
   uc3_119_post: &uc3_119_post
     - [ be32, 0x0096e308, 0x39000003 ] # Post-processing modes  (mem address: 0x1386547)
     - [ be32, 0x0096e308, 0x39000003 ] # Post-processing modes  (mem address: 0x1386547)
 
 
   uc3_119_mesh: &uc3_119_mesh
   uc3_119_mesh: &uc3_119_mesh
     - [ be32, 0x0075811c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12E0DF0)
     - [ be32, 0x0075811c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12e0df0)
 
 
   # Many settings below are enabled/disabled in sub_96E8CC. In this subroutine,
   # Many settings below are enabled/disabled in sub_96E8CC. In this subroutine,
   #    r6  = 2
   #    r6  = 2
Line 425: Line 456:
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
   # source register from one to the other, though some are words and some are bytes, so be careful.
   # source register from one to the other, though some are words and some are bytes, so be careful.
 
 
   uc3_119_ssao: &uc3_119_ssao
   uc3_119_ssao: &uc3_119_ssao
     - [ be32, 0x0064df24, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x0064df24, 0x60000000 ] # nop byte write on 00 57
     - [ be32, 0x0096e9e0, 0x9b830057 ] # Disable SSAO          (mem address: 0x13865BF)
     - [ be32, 0x0096e9e0, 0x9b830057 ] # Disable SSAO          (mem address: 0x13865bf)
 
 
   uc3_119_dof: &uc3_119_dof
   uc3_119_dof: &uc3_119_dof
     - [ be32, 0x0096ea64, 0x9b83007a ] # Disable Depth of Field (mem address: 0x13865E2)
     - [ be32, 0x0096ea64, 0x9b83007a ] # Disable Depth of Field (mem address: 0x13865e2)
 
 
   uc3_119_speed: &uc3_119_speed
   uc3_119_speed: &uc3_119_speed
     - [ be32, 0x0096ea80, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x13865E9)
     - [ be32, 0x0096ea80, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x13865e9)
 
 
   uc3_119_dbv: &uc3_119_dbv
   uc3_119_dbv: &uc3_119_dbv
     - [ be32, 0x0096ecec, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1386861)
     - [ be32, 0x0096ecec, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1386861)
 
 
   uc3_119_dbf: &uc3_119_dbf
   uc3_119_dbf: &uc3_119_dbf
     - [ be32, 0x0096ed2c, 0x9b83031d ] # Depth border fix      (mem address: 0x1386885)
     - [ be32, 0x0096ed2c, 0x9b83031d ] # Depth border fix      (mem address: 0x1386885)
 
 
   uc3_119_db: &uc3_119_db
   uc3_119_db: &uc3_119_db
     - [ be32, 0x0064df20, 0x60000000 ] # nop byte write on 03 ec
     - [ be32, 0x0064df20, 0x60000000 ] # nop byte write on 03 ec
Line 448: Line 479:
   uc3_119_devmenu: &uc3_119_devmenu
   uc3_119_devmenu: &uc3_119_devmenu
     - [ be16, 0x00042814, 0x419e ]
     - [ be16, 0x00042814, 0x419e ]
     - [ byte, 0x00042837, 0x1 ]
     - [ byte, 0x00042837, 0x01 ]
     - [ be32, 0x0083028c, 0x60000000 ] #Don't pause on Select button
     - [ be32, 0x0083028c, 0x60000000 ] # Don't pause on Select button
     - [ be32, 0x0095b720, 0x60000000 ] #Remove "!" model render
     - [ be32, 0x0095b720, 0x60000000 ] # Remove "!" model render
    # string list, may not be 100% accurate, list from hereisme?
     - [ utf8, 0x010d8cf0, "galil-rifle            " ]
     - [ utf8, 0x00de4cc8, "GMAL (SP&MP)  " ] # 16 characters only!
     - [ utf8, 0x010d8d08, "NO_ART_GROUP           " ]
     - [ utf8, 0x00de4cd8, "NO_ART_GROUP   " ] # 16 characters only!
     - [ utf8, 0x010d8d20, "uber-pistol            " ]
     - [ utf8, 0x00de4ce8, "Mag 5 (SP&MP)  " ] # 16 characters only!
     - [ utf8, 0x010d8d38, "dig-explosive-pack     " ]
     - [ utf8, 0x00de4cf8, "C4 (SP&MP)     " ] # 16 characters only!
     - [ utf8, 0x010d8d50, "shotgun-sawedoff      " ]
     - [ utf8, 0x00de4d08, "Shotgun(SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8d68, "m32-grenade-launcher  " ]
     - [ utf8, 0x00de4d18, "Suicide(SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8d80, "baseball-grenade      " ]
     - [ utf8, 0x00de4d28, "Grenade(SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8d98, "t62-tank-mg-turret    " ]
     - [ utf8, 0x00de4d38, "Elicopt Freeze " ] # 16 characters only!
     - [ utf8, 0x010d8db0, "spas12-shotgun        " ]
     - [ utf8, 0x00de4d48, "SAS 12 (SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8dc8, "baseball-grenade      " ]
     - [ utf8, 0x00de4d58, "X3 (SP & MP)  " ] # 16 characters only!
     - [ utf8, 0x010d8de0, "m32-grenade-launcher  " ]
     - [ utf8, 0x00de4d68, "Hammer (SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8df8, "semi-auto-rifle        " ]
     - [ utf8, 0x00de4d78, "SemiAutoRifle  " ] # 16 characters only!
     - [ utf8, 0x010d8e10, "baseball-grenade      " ]
     - [ utf8, 0x00de4d88, "ClusterBomb    " ] # 16 characters only!
     - [ utf8, 0x010d8e28, "shade-weapon           " ]
     - [ utf8, 0x00de4d98, "shade-weapon   " ] # 16 characters only!
     - [ utf8, 0x010d8e40, "statue-puzzle-torch    " ]
     - [ utf8, 0x00de4da8, "Staff (SP)    " ] # 16 characters only!
     - [ utf8, 0x010d8e58, "temple-cistern-map-2  " ]
     - [ utf8, 0x00de4db8, "Temple Map    " ] # 16 characters only!
     - [ utf8, 0x010d8e70, "shade-weapon          " ]
     - [ utf8, 0x00de4dc8, "Temple Map    " ] # 16 characters only!
     - [ utf8, 0x010d8e88, "beretta-silenced      " ]
     - [ utf8, 0x00de4dd8, "Silencer(SP)  " ] # 16 characters only!
     - [ utf8, 0x010d8ea0, "chloe-pistol          " ]
     - [ utf8, 0x00de4de8, "Defender Chloe " ] # 16 characters only!
     - [ utf8, 0x010d8eb8, "baseball-grenade      " ]
     - [ utf8, 0x00de4df8, "Grenade(SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8ed0, "shotgun-pistol        " ]
     - [ utf8, 0x00de4e08, "Pistole(SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8ee8, "p99-pistol            " ]
     - [ utf8, 0x00de4e18, "Para 9 (SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8f00, "temple-cistern-map    " ]
     - [ utf8, 0x00de4e28, "Map (SP)      " ] # 16 characters only!
     - [ utf8, 0x010d8f18, "tkiv-sniper-rifle      " ]
     - [ utf8, 0x00de4e38, "T-Bolt (SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8f30, "stun-grenade          " ]
     - [ utf8, 0x00de4e48, "Flashbang(SP)  " ] # 16 characters only!
     - [ utf8, 0x010d8f48, "rpg                    " ]
     - [ utf8, 0x00de4e58, "RPG (SP & MP)  " ] # 16 characters only!
     - [ utf8, 0x010d8f60, "ak-74-a               " ]
     - [ utf8, 0x00de4e68, "ak-74-a       " ] # 16 characters only!
     - [ utf8, 0x010d8f78, "walther-p5            " ]
     - [ utf8, 0x00de4e78, "Defender(SP)  " ] # 16 characters only!
     - [ utf8, 0x010d8f90, "pkm-rifle              " ]
     - [ utf8, 0x00de4e88, "PAK80 (SP&MP)  " ] # 16 characters only!
     - [ utf8, 0x010d8fa8, "heavy-gau19            " ]
     - [ utf8, 0x00de4e98, "GAU-19        " ] # 16 characters only!
     - [ utf8, 0x010d8fc0, "pirate-shield          " ]
     - [ utf8, 0x00de4ea8, "Shield (SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d8fd8, "baseball-grenade      " ]
     - [ utf8, 0x00de4eb8, "Mega Bomb SP&MP" ] # 16 characters only!
     - [ utf8, 0x010d8ff0, "dragunov-rifle        " ]
     - [ utf8, 0x00de4ec8, "Sniper (SP&MP) " ] # 16 characters only!
     - [ utf8, 0x010d9008, "NO_ART_GROUP           " ]
     - [ utf8, 0x00de4ed8, "NO_ART_GROUP   " ] # 16 characters only!
     - [ utf8, 0x010d9020, "NO_ART_GROUP          " ]
     - [ utf8, 0x00de4ee8, "Unknown        " ] # 16 characters only!
     - [ utf8, 0x010d9038, "sw629-revolver        " ]
     - [ utf8, 0x00de4ef8, "Revolver SP&MP " ] # 16 characters only!
     - [ utf8, 0x010d9050, "NO_ART_GROUP          " ]
     - [ utf8, 0x00de4f08, "Not Work      " ] # 16 characters only!
     - [ utf8, 0x010d9068, "colt-defender-pistol  " ]
     - [ utf8, 0x00de4f18, "9mm            " ] # 16 characters only!
     - [ utf8, 0x010d9080, "ak-74-b                " ]
     - [ utf8, 0x00de4f28, "Kal-7          " ] # 16 characters only!
     - [ utf8, 0x010d9098, "sight-scope            " ]
     - [ utf8, 0x00de4f38, "Freeze        " ] # 16 characters only!
     - [ utf8, 0x010d90b0, "t62-tank-mg-turret    " ]
     - [ utf8, 0x00de4f48, "Elicopt Freeze " ] # 16 characters only!
     - [ utf8, 0x010d90c8, "shade-weapon          " ]
     - [ utf8, 0x00de4f58, "Map (SP)      " ] # 16 characters only!
     - [ utf8, 0x010d90e0, "yt-cistern-map-rolled  " ]
     - [ utf8, 0x00de4f68, "Not Work      " ] # 16 characters only!
     - [ utf8, 0x010d90f8, "machine-gun            " ]
     - [ utf8, 0x00de4f78, "Ak-47          " ] # 16 characters only!
     - [ utf8, 0x010d9110, "fn-fal-rifle          " ]
     - [ utf8, 0x00de4f88, "FAL-SS        " ] # 16 characters only!
     - [ utf8, 0x010d9128, "hk416                  " ]
     - [ utf8, 0x00de4f98, "M9            " ] # 16 characters only!
     - [ utf8, 0x010d9140, "mpa930                " ]
     - [ utf8, 0x00de4fa8, "Arm Micro      " ] # 16 characters only!
     - [ utf8, 0x010d9158, "taurus-sniper-pistol  " ]
     - [ utf8, 0x00de4fb8, "Tau            " ] # 16 characters only!
     - [ utf8, 0x010d9170, "beretta-burst-pistol  " ]
     - [ utf8, 0x00de4fc8, "Raffica        " ] # 16 characters only!
     - [ utf8, 0x010d9188, "NO_ART_GROUP          " ]
     - [ utf8, 0x00de4fd8, "Not Work      " ] # 16 characters only!
     - [ utf8, 0x010d91a0, "riot-shield-hvk        " ]
     - [ utf8, 0x00de4fe8, "Shield (MP)    " ] # 16 characters only!
     - [ utf8, 0x010d91b8, "baseball-grenade      " ]
     - [ utf8, 0x00de4ff8, "Granate        " ] # 16 characters only!
     - [ utf8, 0x010d91d0, "rpg_rocket            " ]
     - [ utf8, 0x00de5008, "RPG (SP)      " ] # 16 characters only!
     - [ utf8, 0x010d91e8, "t62-tank-mg-turret    " ]
     - [ utf8, 0x00de5018, "Elicopt Freeze " ] # 16 characters only!
     - [ utf8, 0x010d9200, "t62-tank-mg-turret    " ]
     - [ utf8, 0x00de5028, "ELicopt Freeze " ] # 16 characters only!
     - [ utf8, 0x010d9218, "grenade-pistol        " ]
     - [ utf8, 0x00de5038, "Not Work      " ] # 16 characters only!
     - [ utf8, 0x010d9230, "t62-tank-mg-turret    " ]
     - [ utf8, 0x00de5048, "ELicopt Freeze " ] # 16 characters only!
     - [ utf8, 0x010d9248, "t62-tank-mg-turret    " ]
     - [ utf8, 0x00de5058, "Elicopt Freeze " ] # 16 characters only!
     - [ be32, 0x004de820, 0x39ce0018 ] #   addi      r14,r14,0x18
    # end of string list
     - [ be32, 0x004de828, 0x488e3b21 ] #    bl        SUB_00dc2348
     - [ be32, 0x00a63088, 0x48371ce5 ] #     bl        SUB_00dd4d6c
     - [ be32, 0x00dc2348, 0x3de0010d ] #    lis       r15,0x10d
    # begin of main()
     - [ be32, 0x00dc234c, 0x61ef8cd8 ] #    ori       r15,r15,0x8cd8
     - [ be32, 0x00de5068, 0x4003afbf ] #    "Give player Weapon" menu
     - [ be32, 0x00dc2350, 0x7c8f7214 ] #    add        r4,r15,r14
     - [ be32, 0x00dd4d6c, 0x813e8008 ] #    lwz       r9,-0x7ff8(r30)
     - [ be32, 0x00dc2354, 0x4e800020 ] #    blr
     - [ be32, 0x00dd4d70, 0x8aa90539 ] #    lbz       r21,0x539(r9)
    # taskmgr
     - [ be32, 0x00dd4d74, 0x2d950000 ] #    cmpwi      cr3,r21,0x0
    # active task
     - [ be32, 0x00dd4d78, 0x408e0064 ] #    bne        cr3,LAB_00dd4ddc
    # text
     - [ be32, 0x00dd4d7c, 0x3e4000de ] #    lis        r18,0xde
     - [ be32, 0x00a082c8, 0x484001e0 ]
     - [ be32, 0x00dd4d80, 0x3a524cc7 ] #    addi      r18,r18,0x4cc7
     - [ be32, 0x00e084a8, 0x3c60011d ]
     - [ be32, 0x00dd4d84, 0x807203a1 ] #    lwz        r3,0x3a1(r18)=>DAT_00de5068                      = 4003AFBFh
     - [ be32, 0x00e084ac, 0x6063f410 ]
     - [ be32, 0x00dd4d88, 0x80030001 ] #   lwz        r0,0x1(r3)=>DAT_4003afc0
     - [ be32, 0x00e084b0, 0x4bbffe1c ]
     - [ be32, 0x00dd4d8c, 0x89f203a5 ] #    lbz        r15,0x3a5(r18)=>DAT_00de506c
    # drawing
     - [ be32, 0x00dd4d90, 0x2f8f0000 ] #    cmpwi      cr7,r15,0x0
    # todo: link with active task bool
     - [ be32, 0x00dd4d94, 0x409e0010 ] #    bne        cr7,LAB_00dd4da4
     - [ be32, 0x00737ed0, 0x486d05f4 ]
     - [ be32, 0x00dd4d98, 0x2f800000 ] #    cmpwi      cr7,r0,0x0
     - [ be32, 0x00e084c4, 0x3ca0013b ]
     - [ be32, 0x00dd4d9c, 0x419e000c ] #    beq        cr7,LAB_00dd4da8
     - [ be32, 0x00e084c8, 0x60a5e594 ]
     - [ be32, 0x00dd4da0, 0x4800003c ] #    b          LAB_00dd4ddc
     - [ be32, 0x00e084cc, 0x8bc50000 ]
     - [ be32, 0x00dd4da4, 0x84030050 ] #    lwzu      r0,0x50(r3)=>DAT_4003b00f
     - [ be32, 0x00e084d0, 0x2f9e0001 ]
    # StringParser()
     - [ be32, 0x00e084d4, 0x419e003c ]
     - [ be32, 0x00dd4da8, 0x8c120001 ] #    lbzu      r0,0x1(r18)=>DAT_00de4cc8                        = "MAL (SP&MP)  "
     - [ be32, 0x00e084d8, 0x3ca0011d ]
     - [ be32, 0x00dd4dac, 0x2f800000 ] #    cmpwi      cr7,r0,0x0
     - [ be32, 0x00e084dc, 0x60a5f3f8 ]
     - [ be32, 0x00dd4db0, 0x419e0024 ] #    beq        cr7,LAB_00dd4dd4
     - [ be32, 0x00e084e0, 0x7fdef278 ]
     - [ be32, 0x00dd4db4, 0x48000008 ] #    b          LAB_00dd4dbc
     - [ be32, 0x00e084e4, 0x3fc04248 ]
     - [ be32, 0x00dd4db8, 0x8c120001 ] #    lbzu      r0,0x1(r18)=>s_MAL_(SP&MP)_00de4cc9              = "MAL (SP&MP)  "
     - [ be32, 0x00e084e8, 0x93c50000 ]
     - [ be32, 0x00dd4dbc, 0x9c030001 ] #    stbu      r0,0x1(r3)=>DAT_4003afc0
     - [ be32, 0x00e084ec, 0x3fc04422 ]
     - [ be32, 0x00dd4dc0, 0x2f800000 ] #    cmpwi      cr7,r0,0x0
     - [ be32, 0x00e084f0, 0x63de8000 ]
     - [ be32, 0x00dd4dc4, 0x409efff4 ] #    bne        cr7,LAB_00dd4db8
     - [ be32, 0x00e084f4, 0x93c50004 ]
     - [ be32, 0x00dd4dc8, 0x6063000f ] #    ori        r3,r3,0xf
     - [ be32, 0x00e084f8, 0xc0250000 ]
     - [ be32, 0x00dd4dcc, 0x38630060 ] #    addi      r3,r3,0x60
     - [ be32, 0x00e084fc, 0xc0450004 ]
     - [ be32, 0x00dd4dd0, 0x4bffffd8 ] #    b          LAB_00dd4da8
     - [ be32, 0x00e08500, 0x38a0ffff ]
     - [ be32, 0x00dd4dd4, 0x3a600001 ] #    li        r19,0x1 // ret 1;
     - [ be32, 0x00e08504, 0x3cc0011d ]
     - [ be32, 0x00dd4dd8, 0x9a690539 ] #    stb        r19,0x539(r9)
     - [ be32, 0x00e08508, 0x60c6f410 ]
     - [ be32, 0x00dd4ddc, 0x4e800020 ] #    blr
     - [ be32, 0x00e0850c, 0x4bb9de3d ]
    # end of main()
     - [ be32, 0x00e08510, 0x4b92f9c4 ]


   uc3_119_devplus: &uc3_119_devplus
   uc3_119_devplus: &uc3_119_devplus
    - [ byte, 0x00de506c, 0x1 ]
     - [ be16, 0x00d9ea48, 0x202b ] # _+
     - [ be16, 0x00d9ea48, 0x202b ] # _+
     - [ be32, 0x0112cb94, 0x01381D1E ] # base ptr
     - [ be32, 0x0112cb94, 0x01381d1e ] # base ptr
     - [ be32, 0x0112cb90, 0x00df5880 ] # str
     - [ be32, 0x0112cb90, 0x00df5880 ] # str
     - [ be32, 0x0002f4c0, 0x38dc009f ] # vis
     - [ be32, 0x0002f4c0, 0x38dc009f ] # vis
Line 569: Line 599:
     - [ be32, 0x0002f6a4, 0x38dc48be ] # wireframe ball
     - [ be32, 0x0002f6a4, 0x38dc48be ] # wireframe ball
     - [ be32, 0x0112cc74, 0x00da0590 ] # str
     - [ be32, 0x0112cc74, 0x00da0590 ] # str
     - [ be32, 0x0112cc78, 0x011D0F90 ] # ptr show vox to Disable Death Zone
     - [ be32, 0x0112cc78, 0x011d0f90 ] # ptr show vox to Disable Death Zone
     - [ be32, 0x0112cc7c, 0x00da0530 ] # str
     - [ be32, 0x0112cc7c, 0x00da0530 ] # str
     - [ be32, 0x0112cc80, 0x0137F441 ] # ptr "Log Vox To SPU TTY" to Disable Death Collision
     - [ be32, 0x0112cc80, 0x0137f441 ] # ptr "Log Vox To SPU TTY" to Disable Death Collision
     - [ be32, 0x0112cc84, 0x00da0548 ] # str
     - [ be32, 0x0112cc84, 0x00da0548 ] # str
     - [ be32, 0x0112cc88, 0x0120C5C0 ] # ptr "Include Rejected Vox" to Disable NPC Spawn
     - [ be32, 0x0112cc88, 0x0120c5c0 ] # ptr "Include Rejected Vox" to Disable NPC Spawn
     - [ be32, 0x0112cc8c, 0x00da0570 ] # str
     - [ be32, 0x0112cc8c, 0x00da0570 ] # str
     - [ be32, 0x0112cc90, 0x01343F95 ] # ptr "Log Vox Lookups to TTY" to Make Invulnerable
     - [ be32, 0x0112cc90, 0x01343f95 ] # ptr "Log Vox Lookups to TTY" to Make Invulnerable
     - [ be32, 0x0112cc64, 0x01343F84 ] # ptr
     - [ be32, 0x0112cc64, 0x01343f84 ] # ptr
     - [ be32, 0x0112cc68, 0x00da05e0 ]
     - [ be32, 0x0112cc68, 0x00da05e0 ]
   # Disable Death Collision
   # Disable Death Collision
     - [ be64, 0x00da0530, 0x44697361626C6520 ]
     - [ be64, 0x00da0530, 0x44697361626c6520 ]
     - [ be64, 0x00da0538, 0x446561746820436F ]
     - [ be64, 0x00da0538, 0x446561746820436f ]
     - [ be64, 0x00da053f, 0x6C6C6973696F6E00 ]
     - [ be64, 0x00da053f, 0x6c6c6973696f6e00 ]
   # Disallow Npcs from Spawning
   # Disallow Npcs from Spawning
     - [ be64, 0x00da0548, 0x446973616C6C6F77 ]
     - [ be64, 0x00da0548, 0x446973616c6c6f77 ]
     - [ be64, 0x00da0550, 0x204E706373206672 ]
     - [ be64, 0x00da0550, 0x204e706373206672 ]
     - [ be64, 0x00da0558, 0x6F6D20537061776E ]
     - [ be64, 0x00da0558, 0x6f6d20537061776e ]
     - [ be32, 0x00da0560, 0x696E6700 ]
     - [ be32, 0x00da0560, 0x696e6700 ]
   # Make Invulnerable
   # Make Invulnerable
     - [ be64, 0x00da0570, 0x4D616B6520496E76 ]
     - [ be64, 0x00da0570, 0x4d616b6520496e76 ]
     - [ be64, 0x00da0578, 0x756C6E657261626C ]
     - [ be64, 0x00da0578, 0x756c6e657261626c ]
     - [ be16, 0x00da0580, 0x6500 ]
     - [ be16, 0x00da0580, 0x6500 ]
   # Enable Death Zone
   # Enable Death Zone
     - [ be64, 0x00da0590, 0x456E61626C652044 ]
     - [ be64, 0x00da0590, 0x456e61626c652044 ]
     - [ be64, 0x00da0598, 0x65617468205A6F6E ]
     - [ be64, 0x00da0598, 0x65617468205a6f6e ]
     - [ be16, 0x00da05a0, 0x6500 ]
     - [ be16, 0x00da05a0, 0x6500 ]
   # Enable Wireframe Balls
   # Enable Wireframe Balls
     - [ be64, 0x00da05a8, 0x456E61626C652057 ]
     - [ be64, 0x00da05a8, 0x456e61626c652057 ]
     - [ be64, 0x00da05b0, 0x6972656672616D65 ]
     - [ be64, 0x00da05b0, 0x6972656672616d65 ]
     - [ be64, 0x00da05b8, 0x2042616C6C730000 ]
     - [ be64, 0x00da05b8, 0x2042616c6c730000 ]
   # Enable Red Wireframe
   # Enable Red Wireframe
     - [ be64, 0x00da05c0, 0x456E61626C652052 ]
     - [ be64, 0x00da05c0, 0x456e61626c652052 ]
     - [ be64, 0x00da05c8, 0x6564205769726566 ]
     - [ be64, 0x00da05c8, 0x6564205769726566 ]
     - [ be32, 0x00da05d0, 0x72616D65 ]
     - [ be32, 0x00da05d0, 0x72616d65 ]
   # NPC Model Scale
   # NPC Model Scale
     - [ be64, 0x00da05e0, 0x4E5043204D6F6465 ]
     - [ be64, 0x00da05e0, 0x4e5043204d6f6465 ]
     - [ be64, 0x00da05e8, 0x6C205363616C6500 ]
     - [ be64, 0x00da05e8, 0x6c205363616c6500 ]


   uc3_119_lanmode: &uc3_119_lanmode
   uc3_119_lanmode: &uc3_119_lanmode
Line 631: Line 661:
     - [ be32, 0x00dd4ef0, 0x4e800020 ]
     - [ be32, 0x00dd4ef0, 0x4e800020 ]


   debugmenunotesUC3: &debugmenunotesUC3 "L3 + Start = Dev Menu\nL3 + Select = Quick Menu\nL3 + Triangle = Debug Text\nL2 + R2 = Debug Fly"
   uc3_fps_notes: &uc3_fps_notes
    "Haven't tested how this affects cutscenes."


   uc3mlaanotes: &uc3mlaanotes "Allows for the use of Resolution Scaling in the title and also improves performance.\nVersion 2.0 Fixes high levels of Bloom in some areas. (1.10 and 1.19 Only)"
   uc3_debugmenu_notes: &uc3_debugmenu_notes
    "L3 + Start = Dev Menu\nL3 + Select = Quick Menu\nL3 + Triangle = Debug Text\nL2 + R2 = Debug Fly"


   uc3gpulightingnotes: &uc3gpulightingnotes "Uses GPU (RSX) path for lighting effects instead of SPU.\nFixes rendering of lightning effects that are being rendered broken via SPU path and greatly improves performance over it.\nThis path is incomplete and results in some missing effects such as Volumetric lighting."
   uc3_mlaa_notes: &uc3_mlaa_notes
    "Allows for the use of Resolution Scaling in the title and improves performance.\nVersion 2.0 Fixes high levels of bloom in some areas. (1.10 and 1.19 Only)\nVersion 3.0 Fixes Crash in some multiplayer levels. (1.19 Only)"


   uc3camshakenotes: &uc3camshakenotes "Last modified: 1 Mar 2021\n\nDisables Camera Shake during Gameplay.\nIn-Game-Cinematics remain is unaffected."
   uc3_wcbperformance_notes: &uc3_wcbperformance_notes
    "Enable this patch if you are using \"Write Color Buffers\" to restore performance."
 
  uc3_gpulighting_notes: &uc3_gpulighting_notes
    "Uses GPU (RSX) path for lighting effects instead of SPU.\nFixes rendering of lighting effects that are broken via SPU path and greatly improves performance over it.\nThis path is incomplete and results in some missing effects such as Volumetric lighting."
 
  uc3_camshake_notes: &uc3_camshake_notes
    "Disables Camera Shake during gameplay.\nIn-Game-Cinematics are unaffected."
 
  uc3_zcull_notes: &uc3_zcull_notes
    "Enables rendering of Heat Wave effect under Approximate ZCull, normally works with Precise ZCull only, but Precise ZCull has a big speed impact"


   uc3_119title: &uc3_119title
   uc3_119title: &uc3_119title
      "Uncharted 3: Drake's Deception":
    "Uncharted 3: Drake's Deception":
        BCES01175: [ 01.19 ]
      BCES01175: [ 01.19 ]
        BCES01176: [ 01.19 ]
      BCES01176: [ 01.19 ]
        BCES01670: [ 01.19 ]
      BCES01670: [ 01.19 ]
        BCES01692: [ 01.19 ]
      BCES01692: [ 01.19 ]
        BCUS98233: [ 01.19 ]
      BCUS98233: [ 01.19 ]
        BCJS37004: [ 02.17 ]
      BCJS37004: [ 02.17 ]
        NPEA00422: [ 01.19 ]
      NPEA00422: [ 01.19 ]
        NPUA80858: [ 01.19 ]
      NPUA80858: [ 01.19 ]
        BCUS99086: [ 01.19 ]
      BCUS99086: [ 01.19 ]
      BCAS25014: [ 01.19 ]
      BCAS25009: [ 01.19 ]


   uc3_110title: &uc3_110title
   uc3_110title: &uc3_110title
      "Uncharted 3: Drake's Deception":
    "Uncharted 3: Drake's Deception":
        BCES01670: [ 01.10 ]
      BCES01670: [ 01.10 ]
        BCAS25014: [ 01.10 ]
      BCAS25014: [ 01.10 ]


   uc3_100title: &uc3_100title
   uc3_100title: &uc3_100title
      "Uncharted 3: Drake's Deception":
    "Uncharted 3: Drake's Deception":
        BCES01175: [ 01.00 ]
      BCES01175: [ 01.00 ]
        BCES01176: [ 01.00 ]
      BCES01176: [ 01.00 ]
        BCES01692: [ 01.00 ]
      BCES01692: [ 01.00 ]
        BCUS98233: [ 01.00 ]
      BCUS98233: [ 01.00 ]
 
  uc3beta100_title: &uc3beta100_title
    "Uncharted 3: Drake's Deception Multiplayer Beta":
      NPUA70153: [ 01.00 ]
      NPHA80158: [ 01.00 ]
      BCET70034: [ 01.00 ]
 
  uc3beta104_title: &uc3beta104_title
    "Uncharted 3: Drake's Deception Multiplayer Beta":
      NPUA70153: [ 01.04 ]
      NPHA80158: [ 01.04 ]
      BCET70034: [ 01.04 ]
 
  uc3_subway_EU: &uc3_subway_EU
    "Uncharted 3: Drake's Deception Multiplayer":
      BCET70043: [ 01.00 ]
 
  uc3_subway_US: &uc3_subway_US
    "Uncharted 3: Drake's Deception Subway":
      NPUA70180: [ 01.00 ]
 
  uc3_kioskdemo: &uc3_kioskdemo
    "Uncharted 3: Drake's Deception Demo":
      NPUA70183: [ 01.00 ]
 
  uc3_USpreview: &uc3_USpreview
    "Uncharted 3: Drake's Deception Preview":
      BCUS98233: [ 01.00 ]


PPU-49c96996b6f3c0b32422375978c41e0c7ed95183:
PPU-49c96996b6f3c0b32422375978c41e0c7ed95183:
   Unlock FPS:
   "Unlock FPS":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: superepic31
     Author: "superepic31"
     Notes: Haven't tested how this affects cutscenes.
     Notes: *uc3_fps_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_FPS ]
       - [ load, *uc3_100_FPS ]
   Disable in-built MLAA:
   "Disable in-built MLAA":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: Whatcookie
     Author: "Whatcookie"
     Notes: *uc3mlaanotes
     Notes: *uc3_mlaa_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_mlaa ]
       - [ load, *uc3_100_mlaa ]
   Post-processing Modes:
   "Post-processing Modes":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_post ]
       - [ load, *uc3_100_post ]
   Disable Mesh Trimming:
   "Disable Mesh Trimming":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_mesh ]
       - [ load, *uc3_100_mesh ]
   Disable SSAO:
   "Disable SSAO":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_ssao ]
       - [ load, *uc3_100_ssao ]
   Disable Depth of Field:
   "Disable Depth of Field":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_dof ]
       - [ load, *uc3_100_dof ]
   Performance (WCB):
   "Performance (WCB)":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: Enable this patch if you are using "Write Color Buffers" to restore performance.
     Notes: *uc3_wcbperformance_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_speed ]
       - [ load, *uc3_100_speed ]
   Depth Buffer Viewport:
   "Depth Buffer Viewport":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_dbv ]
       - [ load, *uc3_100_dbv ]
   Depth Border Fix:
   "Depth Border Fix":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_dbf ]
       - [ load, *uc3_100_dbf ]
   Enable GPU Lighting:
   "Enable GPU Lighting":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: *uc3gpulightingnotes
     Notes: *uc3_gpulighting_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_100_db ]
       - [ load, *uc3_100_db ]
   Disable Camera Shake:
   "Disable Camera Shake":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: illusion
     Author: "illusion"
     Notes: *uc3camshakenotes
     Notes: *uc3_camshake_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ be16, 0x00806c88, 0x3800 ]
       - [ be16, 0x00806c88, 0x3800 ]
   Debug Menu:
   "Debug Menu":
     Games: *uc3_100title
     Games: *uc3_100title
     Author: dron_3, HdHereidme, illusion
     Author: "dron_3, HdHereidme, illusion"
     Notes: *debugmenunotesUC3
     Notes: *uc3_debugmenu_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
Line 750: Line 823:


PPU-48fa849dfeaef2f36ec042a576f29bda19ec1de0:
PPU-48fa849dfeaef2f36ec042a576f29bda19ec1de0:
   Disable in-built MLAA:
   "Disable in-built MLAA":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: Whatcookie
     Author: "Whatcookie"
     Notes: *uc3mlaanotes
     Notes: *uc3_mlaa_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_mlaa ]
       - [ load, *uc3_JP_100_mlaa ]
   Post-processing Modes:
   "Post-processing Modes":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_post ]
       - [ load, *uc3_JP_100_post ]
   Disable Mesh Trimming:
   "Disable Mesh Trimming":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_mesh ]
       - [ load, *uc3_JP_100_mesh ]
   Disable SSAO:
   "Disable SSAO":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_ssao ]
       - [ load, *uc3_JP_100_ssao ]
   Disable Depth of Field:
   "Disable Depth of Field":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_dof ]
       - [ load, *uc3_JP_100_dof ]
   Performance (WCB):
   "Performance (WCB)":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: Enable this patch if you are using "Write Color Buffers" to restore performance.
     Notes: *uc3_wcbperformance_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_speed ]
       - [ load, *uc3_JP_100_speed ]
   Depth Buffer Viewport:
   "Depth Buffer Viewport":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_dbv ]
       - [ load, *uc3_JP_100_dbv ]
   Depth Border Fix:
   "Depth Border Fix":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_dbf ]
       - [ load, *uc3_JP_100_dbf ]
   Enable GPU Lighting:
   "Enable GPU Lighting":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: *uc3gpulightingnotes
     Notes: *uc3_gpulighting_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_JP_100_db ]
       - [ load, *uc3_JP_100_db ]
   Debug Menu:
   "Debug Menu":
     Games:
     Games:
       "Uncharted 3: Drake's Deception":
       "Uncharted 3: Drake's Deception":
         BCJS37004: [ 01.00 ]
         BCJS37004: [ 01.00 ]
     Author: dron_3, HdHereidme, illusion
     Author: "dron_3, HdHereidme, illusion"
     Notes: *debugmenunotesUC3
     Notes: *uc3_debugmenu_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
Line 842: Line 915:


PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16:
PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16:
   Disable in-built MLAA:
   "Disable in-built MLAA":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: Whatcookie, ZEROx
     Author: "Whatcookie, ZEROx"
     Notes: *uc3mlaanotes
     Notes: *uc3_mlaa_notes
     Patch Version: 2.0
     Patch Version: 2.0
     Patch:
     Patch:
       - [ load, *uc3_110_mlaa ]
       - [ load, *uc3_110_mlaa ]
   Disable Motion Blur:
   "Disable Motion Blur":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx
     Author: "ZEROx"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_mb ]
       - [ load, *uc3_110_mb ]
   Disable Bloom:
   "Disable Bloom":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_post ]
       - [ load, *uc3_110_post ]
   Disable Mesh Trimming:
   "Disable Mesh Trimming":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_mesh ]
       - [ load, *uc3_110_mesh ]
   Disable SSAO:
   "Disable SSAO":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_ssao ]
       - [ load, *uc3_110_ssao ]
   Disable Depth of Field:
   "Disable Depth of Field":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_dof ]
       - [ load, *uc3_110_dof ]
   Performance (WCB):
   "Performance (WCB)":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: Enable this patch if you are using "Write Color Buffers" to restore performance.
     Notes: *uc3_wcbperformance_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_speed ]
       - [ load, *uc3_110_speed ]
   Depth Buffer Viewport:
   "Depth Buffer Viewport":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_dbv ]
       - [ load, *uc3_110_dbv ]
   Depth Border Fix:
   "Depth Border Fix":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_dbf ]
       - [ load, *uc3_110_dbf ]
   Enable GPU Lighting:
   "Enable GPU Lighting":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: *uc3gpulightingnotes
     Notes: *uc3_gpulighting_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_110_db ]
       - [ load, *uc3_110_db ]
   Disable Camera Shake:
   "Disable Camera Shake":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: illusion
     Author: "illusion"
     Notes: *uc3camshakenotes
     Notes: *uc3_camshake_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ be16, 0x00812b44, 0x3800 ]
       - [ be16, 0x00812b44, 0x3800 ]
   Debug Menu:
   "Debug Menu":
     Games: *uc3_110title
     Games: *uc3_110title
     Author: dron_3, HdHereidme, illusion
     Author: "dron_3, HdHereidme, illusion"
     Notes: *debugmenunotesUC3
     Notes: *uc3_debugmenu_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
Line 928: Line 1,001:


PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba:
PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba:
   Unlock FPS:
   "Unlock FPS":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: superepic31
     Author: "superepic31"
     Notes: Haven't tested how this affects cutscenes.
     Notes: *uc3_fps_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_FPS ]
       - [ load, *uc3_119_FPS ]
   Disable in-built MLAA:
   "Disable in-built MLAA":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: Whatcookie, ZEROx
     Author: "Whatcookie, ZEROx, illusion"
     Notes: *uc3mlaanotes
     Notes: *uc3_mlaa_notes
     Patch Version: 2.0
     Patch Version: 3.0
     Patch:
     Patch:
       - [ load, *uc3_119_mlaa ]
       - [ load, *uc3_119_mlaa ]
   Disable Motion Blur:
   "Disable Motion Blur":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx
     Author: "ZEROx"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_mb ]
       - [ load, *uc3_119_mb ]
   Disable Bloom:
   "Disable Bloom":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_post ]
       - [ load, *uc3_119_post ]
   Disable Mesh Trimming:
   "Disable Mesh Trimming":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_mesh ]
       - [ load, *uc3_119_mesh ]
   Disable SSAO:
   "Disable SSAO":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_ssao ]
       - [ load, *uc3_119_ssao ]
   Disable Depth of Field:
   "Disable Depth of Field":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_dof ]
       - [ load, *uc3_119_dof ]
   Performance (WCB):
   "Performance (WCB)":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: Enable this patch if you are using "Write Color Buffers" to restore performance.
     Notes: *uc3_wcbperformance_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_speed ]
       - [ load, *uc3_119_speed ]
   Depth Buffer Viewport:
   "Heat waves Approximate ZCull fix":
    Games: *uc3_119title
    Author: "ZEROx"
    Notes: *uc3_zcull_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_zcull ]
  "Depth Buffer Viewport":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_dbv ]
       - [ load, *uc3_119_dbv ]
   Depth Border Fix:
   "Depth Border Fix":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_dbf ]
       - [ load, *uc3_119_dbf ]
   Enable GPU Lighting:
   "Enable GPU Lighting":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: ZEROx, illusion
     Author: "ZEROx, illusion"
     Notes: *uc3gpulightingnotes
     Notes: *uc3_gpulighting_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_db ]
       - [ load, *uc3_119_db ]
   Debug Menu:
   "Debug Menu":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: dron_3, HdHereidme, illusion, ZEROx
     Author: "dron_3, HdHereidme, illusion, ZEROx, Skye"
     Notes: *debugmenunotesUC3
     Notes: *uc3_debugmenu_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_devmenu ]
       - [ load, *uc3_119_devmenu ]
   Dev Menu Plus:
   "Dev Menu Plus":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: illusion, Skye Modz
     Author: "illusion, Skye"
     Notes: "Last modified: December 14 2020\nReplaces audio options with various debug features."
     Notes: "Replaces audio options with various debug features."
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_devplus ]
       - [ load, *uc3_119_devplus ]
   Disable Camera Shake:
   "Disable Camera Shake":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: illusion
     Author: "illusion"
     Notes: *uc3camshakenotes
     Notes: *uc3_camshake_notes
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ be16, 0x008242cc, 0x3800 ]
       - [ be16, 0x008242cc, 0x3800 ]
   Enable Lan Mode:
   "Enable LAN Mode":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: illusion, ZEROx, Skye Modz
     Author: "illusion, ZEROx, Skye"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ load, *uc3_119_lanmode ]
       - [ load, *uc3_119_lanmode ]
   Skip Intro:
   "Skip Intro":
     Games: *uc3_119title
     Games: *uc3_119title
     Author: illusion
     Author: "illusion"
     Notes:  
     Notes:
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ be32, 0x00043e2c, 0x480000dc ]
       - [ be32, 0x00043e2c, 0x480000dc ]
  "DEBUG: Replace Task With Test Tasks":
    Games: *uc3_119title
    Author: "illusion, icemesh" # SID Utils
    Notes: "Only enable this patch if you know what you are doing!!"
    Patch Version: 1.0
    Patch:
      # *test-task-graph*
      - [ be32, 0x00a0d014, 0x3c80f0f3 ]
      - [ be32, 0x00a0d01c, 0x6084d6c8 ]
      - [ be32, 0x00a0b2c4, 0x3ca0f0f3 ]
      - [ be32, 0x00a0b2cc, 0x60a5d6c8 ]
      - [ be16, 0x0004417c, 0x4800 ]
      # test-tasks begin!!
      # SID("tasks") -> SID("test-tasks") // under debug group
      - [ be32, 0x009d0e84, 0x48421188 ]
      - [ be32, 0x00df200c, 0x81490000 ]
      - [ be32, 0x00df2010, 0x3d006772 ]
      - [ be32, 0x00df2014, 0x61083261 ]
      - [ be32, 0x00df2018, 0x7f885000 ]
      - [ be32, 0x00df201c, 0x409e0014 ]
      - [ be32, 0x00df2020, 0x3d002203 ]
      - [ be32, 0x00df2024, 0x6108c98c ]
      - [ be32, 0x00df2028, 0x91090000 ]
      - [ be32, 0x00df202c, 0x7d284b78 ]
      - [ be32, 0x00df2030, 0x81490000 ]
      - [ be32, 0x00df2034, 0x4bbdee54 ]
  "Infinite Health":
    Games: *uc3_119title
    Author: "CodeUnique3"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00479cd8, 0x60000000 ]
  "Infinite Ammo":
    Games: *uc3_119title
    Author: "CodeUnique3"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x006e4284, 0x60000000 ]


PPU-e63051dc8ec0f9256f047f62a6abd0e955805419:
PPU-e63051dc8ec0f9256f047f62a6abd0e955805419:
   "Bug Fix: Crash on Entering MP Menu":
   "Bug Fix: Crash on Entering LAN MP Menu":
     Games:
     Games: *uc3beta100_title
       "Uncharted 3: Drake's Deception Multiplayer Beta":
    Author: "illusion"
        NPUA70153: [ 01.00 ]
    Notes:
    Patch Version: 1.0
    Patch:
       - [ byte, 0x0003e6c3, 0x00 ]
  "Disable Uncharted TV":
    Games: *uc3beta100_title
     Author: "illusion"
     Author: "illusion"
    Notes: "Fixes significant slowdown because the video is no longer hosted on the server."
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ byte, 0x0003e6c3, 0x0 ]
       - [ be16, 0x00700f42, 0x0000 ] # ret 0
   Disable Uncharted TV:
      - [ be16, 0x00700f50, 0x4800 ] # don't spawn video threads
     Games:
   "Disable Camera Sprint":
      "Uncharted 3: Drake's Deception Multiplayer Beta":
     Games: *uc3beta100_title
        NPUA70153: [ 01.00 ]
     Author: "illusion"
     Author: illusion
     Notes:
     Notes: Improves performance when there are no videos hosted on the server.
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
       - [ byte, 0x00229217, 0x0 ]
       - [ be32, 0x0019e450, 0x98c30178 ]
   Unlock Main Menu:
   "Unlock Main Menu":
     Games:
     Games: *uc3beta100_title
      "Uncharted 3: Drake's Deception Multiplayer Beta":
     Author: "illusion, ZEROx, Skye"
        NPUA70153: [ 01.00 ]
    Notes:
     Author: illusion, Skye
     Patch Version: 1.0
     Patch Version: 1.0
     Patch:
     Patch:
Line 1,088: Line 1,212:
       - [ be32, 0x00cea328, 0x88090078 ]
       - [ be32, 0x00cea328, 0x88090078 ]
       - [ be32, 0x00cea32c, 0x4e800020 ]
       - [ be32, 0x00cea32c, 0x4e800020 ]
PPU-9584776e7fca409ed410f8a713832267020d8ac3:
  "Bug Fix: Crash on Entering LAN MP Menu":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ byte, 0x0003e563, 0x00 ]
  "Disable Uncharted TV":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes: "Fixes crash after entering MP menu due to offline video streaming API."
    Patch Version: 1.0
    Patch:
      - [ be16, 0x0070194e, 0x0000 ] # ret 0
      - [ be16, 0x0070195c, 0x4800 ] # don't spawn video threads
  "Disable Sprint Camera":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0019e300, 0x98c30178 ]
  "Disable Camera Shake":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0076e440, 0x38000001 ]
  "Unlock Main Menu":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be64, 0x00d1e414, 0x000009298aab4a4b ]
      - [ be32, 0x007f9f20, 0x4852449d ] #    bl        SUB_00d1e3bc
      - [ be32, 0x00d1e3bc, 0x81c90320 ] #    lwz        r14,0x320(r9)
      - [ be32, 0x00d1e3c0, 0x2c8e0000 ] #    cmpwi      cr1,r14,0x0
      - [ be32, 0x00d1e3c4, 0x4086002c ] #    bne        cr1,LAB_00d1e3f0
      - [ be32, 0x00d1e3c8, 0x3e0000d1 ] #    lis        r16,0xd1
      - [ be32, 0x00d1e3cc, 0x6210e40c ] #    ori        r16,r16,0xe40c
      - [ be32, 0x00d1e3d0, 0x3de00110 ] #    lis        r15,0x110
      - [ be32, 0x00d1e3d4, 0x61efb828 ] #    ori        r15,r15,0xb828
      - [ be32, 0x00d1e3d8, 0xea300008 ] #    ld        r17,0x8(r16)=>DAT_00d1e414
      - [ be32, 0x00d1e3dc, 0x1e510008 ] #    mulli      r18,r17,0x8
      - [ be32, 0x00d1e3e0, 0xfa4f0000 ] #    std        r18,0x0(r15)=>LAB_0011b828
      - [ be32, 0x00d1e3e4, 0x3a800001 ] #    li        r20,0x1
      - [ be32, 0x00d1e3e8, 0x92890320 ] #    stw        r20,0x320(r9)
      - [ be32, 0x00d1e3ec, 0x9aaf0008 ] #    stb        r21,0x8(r15)=>LAB_0011b830
      - [ be32, 0x00d1e3f0, 0xea6f0000 ] #    ld        r19,0x0(r15)=>LAB_0011b828
      - [ be32, 0x00d1e3f4, 0x7eb29800 ] #    cmpd      cr5,r18,r19
      - [ be32, 0x00d1e3f8, 0x4196000c ] #    beq        cr5,LAB_00d1e404
      - [ be32, 0x00d1e3fc, 0x4bf993b5 ] #    bl        FUN_00cb77b0
      - [ be32, 0x00d1e400, 0x92840000 ] #    stw        r20,0x0(r4)
      - [ be32, 0x00d1e404, 0x88090078 ] #    lbz        r0,0x78(r9)
      - [ be32, 0x00d1e408, 0x4e800020 ] #    blr
  "Disable Post on SPU":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes: "Slight overbloom in some areas. Needs correction."
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897644, 0x9b43 ] # post on spu        = 0
  "Disable Motion Blur":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008975f8, 0x9b43 ] # mb                  = 0
  "Disable Mesh Trimming":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x006b1cc0, 0x9949 ] # mesh trim          = 0
  "Disable SSAO":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897578, 0x9b43 ] # ssao                = 0
  "Disable Depth of Field":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897604, 0x9b43 ] # dof                = 0
  "Performance (WCB)":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897620, 0x9b83 ] # reload depth buffer = 0
  "Depth Buffer Viewport":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897880, 0x9b63 ] # depth viewport      = 1
  "Depth Border Fix":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008978c0, 0x9b83 ] # depth border        = 0
  "Enable GPU Lighting":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008978cc, 0x9103 ] # spu lighting        = 2
PPU-40958bda5885891f0a4eb69f2c87ed4942dfa5e7:
  "Enable GPU Lighting":
    Games: *uc3_kioskdemo
    Author: "illusion, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093ac18, 0x90e303ec ]
  "Disable in-built MLAA":
    Games: *uc3_kioskdemo
    Author: "Whatcookie, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x0093a980, 0x9b83 ]
  "Unlock FPS":
    Games: *uc3_kioskdemo
    Author: "superepic31, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a85c, 0x48000040 ]
      - [ be32, 0x0093a860, 0x3b6000da ]
  "Depth Buffer Viewport":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093abcc, 0x9b6302f9 ]
  "Depth Border Fix":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093ac0c, 0x9b83031d ]
  "Performance (WCB)":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a960, 0x9b830081 ]
  "Disable Bloom":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a1e8, 0x39000003 ]
  "Disable Depth of Field":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a944, 0x9b83007a ]
  "Disable SSAO":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a8c0, 0x9b830057 ]
  "Disable Motion Blur":
    Games: *uc3_kioskdemo
    Author: "ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x007719ec, 0x480000c4 ]
  "Disable Mesh Trimming":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0073ea7c, 0x980b0004 ]
  "Debug Menu":
    Games: *uc3_kioskdemo
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0072f5c0, 0x38000001 ]
      - [ be32, 0x0072f5c4, 0x980b2163 ]
PPU-f986a163b81248b801709f0c5bb427c090b40dc7:
  "Debug Menu":
    Games: *uc3_subway_EU
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x007312bc, 0x38000001 ]
      - [ be32, 0x007312c0, 0x980b2163 ]
PPU-50ce7f4553ace724111440a399b02cbfd045a2b1:
  "Debug Menu":
    Games: *uc3_subway_US
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x007313e0, 0x38000001 ]
      - [ be32, 0x007313e4, 0x980b2163 ]
PPU-0ff0b00602e5ffc67f32ab69840bbb2c7df735fe:
  "Debug Menu":
    Games: *uc3_USpreview
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0072ee5c, 0x38000001 ]
      - [ be32, 0x0072ee60, 0x980b2163 ]
  "Enable GPU Lighting":
    Games: *uc3_USpreview
    Author: "illusion, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a8c4, 0x90e303ec ]
  "Disable in-built MLAA":
    Games: *uc3_USpreview
    Author: "Whatcookie, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x0093a62c, 0x9b83 ]
  "Unlock FPS":
    Games: *uc3_USpreview
    Author: "superepic31, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a508, 0x48000040 ]
      - [ be32, 0x0093a50c, 0x3b6000da ]
  "Depth Buffer Viewport":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a878, 0x9b6302f9 ]
  "Depth Border Fix":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a8b8, 0x9b83031d ]
  "Performance (WCB)":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a60c, 0x9b830081 ]
  "Disable Bloom":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00939e94, 0x39000003 ]
  "Disable Depth of Field":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a5f0, 0x9b83007a ]
  "Disable SSAO":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a56c, 0x9b830057 ]
  "Disable Motion Blur":
    Games: *uc3_USpreview
    Author: "ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00771284, 0x480000c4 ]
  "Disable Mesh Trimming":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0073e318, 0x980b0004 ]
}}
}}

Latest revision as of 16:46, 11 October 2024

Uncharted 3: Drake's Deception
UC3 Cover.jpg
Developer(s) Naughty Dog
Publisher(s) Sony Computer Entertainment
Series Uncharted
Release date(s) NA November 1, 2011
EU November 2, 2011
AU November 3, 2011
Release type PlayStation exclusive
Genre(s) Action, Adventure, Third-person shooter, Platform
Mode(s) Single-player, Co-op, Multiplayer
GameID(s) BCES01175 (IRD), BCES01176 (IRD), BCUS98233 (IRD), BCJS37004 (IRD), BCAS25009 (IRD)
Game of the Year Edition
BCES01670 (IRD), BCES01692 (IRD), BCUS99086 (IRD), BCAS25014 (IRD)
Free To Play
NPEA00422, NPUA80858
Kiosk Demo
NPUA70183
Beta
BCET70034, BCET70043, NPUA70153, NPUA70180, NPHA80158
Soundtrack
NPEA00330
Internal resolution 1280x720
Quick links Check Compatibility
Open Issues
Search Google
Wikipedia Page

Uncharted 3: Drake's Deception is the third game in the Uncharted series, and follows Nathan Drake, who partners with his mentor Victor Sullivan as they search for the legendary lost city of Iram of the Pillars, whilst competing with a mercenary group led by Sullivan's former employer, Katherine Marlowe.

Drake has a large number of different animation sets, enabling him to react according to his surroundings. Drake is physically adept and is able to jump, sprint, climb, swim, scale narrow ledges and wall-faces to get between points, and perform other acrobatic actions. Drake can now take on opponents in more ways than before: hand-to-hand combat with multiple opponents, contextual melee attacks, and new stealth options. Uncharted 3 also features expanded and diverse traversal moves with deep gunplay. Drake can be equipped with up to two firearms – one single-handed and one two-handed – and four grenades. Drake can pick up weapons, automatically replacing the existing weapon he was using, and additional ammunition from downed enemies.

Uncharted 3: Drake's Deception received critical acclaim from critics, with praise for its voice acting, graphics, writing, story, and cinematic quality; criticism was directed at its gunplay controls, which was improved with a post-release update, and failure to live up to its more critically successful predecessor.

Configuration

Options that deviate from RPCS3's default settings and provide the best experience with this title are listed below.

GPU configuration

Setting Option Notes
ZCULL accuracy Relaxed Fixes blurry visuals that tend to occur when aiming or when navigating in foggy areas. Slightly improves performance as well.
Resolution scale 100 Resolution scaling is only supported when the MLAA patch is enabled.
Write color buffers On Fixes brightness in some scenes.
Multithreaded RSX On Improves performance depending on the hardware.
Asynchronous texture streaming On Improves performance depending on the GPU.

Advanced configuration

Setting Option Notes
Accurate RSX reservation access On Prevents random freezing/crashing while playing the game.
Read color buffers On Fixes black screen if playing unpatched. Not needed if using patches.
Handle RSX memory tiling On Fixes black squares if playing unpatched.
RSX FIFO accuracy Atomic Helps with stability.

Recommended patches

Game patches are available through the RPCS3 Patch Manager. To enable them, right-click a game in RPCS3 then select "Manage Game Patches". Game Patches are created by RPCS3's community, and can alter how a game runs. More information can be found here.

Recommendation Patch name Notes
Highly recommended patch Depth Border Fix, Depth Buffer Viewport, Disable in-built MLAA, Disable Mesh Trimming, Enable GPU Lighting, Performance (WCB) Improves performance and allows Resolution Scaling to work properly.
Recommended patch Disable Bloom, Disable Depth of Field, Disable SSAO, Disable Motion Blur, Skip Intro

Known Issues

  • Random occurring crashes/freezes can happen on weaker hardware. Just restart the game and keep playing.
  • Game only renders button prompts and the loading screen spinning ring resulting in black screen unless patches or RCB are enabled.
  • Game tends to freeze when you're idling or have the game paused for a while, you will have to restart RPCS3 when this happens.

Special Notes

Netplay testing

For the complete list of games tested with RPCN, please check the RPCN Compatibility List.

Game Version RPCS3 Version Connects? Create/Join lobbies? Match with others? Online features working? Requires custom servers? Notes
1.19 0.0.22-17022 Yes Yes Partial Partial Available Uncharted 3 Reloaded brings back the MP and Coop functions (original servers were shutdown in 2019). Currently in closed beta/must be whitelisted to join it.

Patches

Anchors:
  uc3_100_FPS: &uc3_100_FPS
    - [ be32, 0x0093b348, 0x90e30034 ] # FPS
    - [ be32, 0x0093b34c, 0x90e30038 ] # Unlock

  uc3_100_mlaa: &uc3_100_mlaa
    - [ be32, 0x00635f90, 0x60000000 ] # nop byte write on 00 9c
    - [ be16, 0x0093b46c, 0x9b83 ]     # store 0
  # - [ be32, 0x00720340, 0x480009ac ] # unconditonally branch to disable MLAA

  # This patch cycles through various post-processing modes. Values accepted are:
  #    0 = None
  #    1 = Bloom
  #    2 = Depth of Field
  #    3 = ??? (Tonemapping)
  #    4 = Bloom & Depth of Field
  #    5 = Bloom & Depth of Field & Tonemapping (Default)

  uc3_100_post: &uc3_100_post
    - [ be32, 0x0093acd4, 0x39000003 ] # Post-processing modes  (mem address: 0x1346d47)

  uc3_100_mesh: &uc3_100_mesh
    - [ be32, 0x0073f05c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12c3940)

  # Many settings below are enabled/disabled in sub_AA9E6C. In this subroutine, // needs correction on subroutine
  #    r6  = 2
  #    r27 = 1
  #    r28 = 0
  # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
  # source register from one to the other, though some are words and some are bytes, so be careful.

  uc3_100_ssao: &uc3_100_ssao
    - [ be32, 0x00635f8c, 0x60000000 ] # nop byte write on 00 57
    - [ be32, 0x0093b3ac, 0x9b830057 ] # Disable SSAO           (mem address: 0x1346dbf)

  uc3_100_dof: &uc3_100_dof
    - [ be32, 0x0093b430, 0x9b83007a ] # Disable Depth of Field (mem address: 0x1346de2)

  uc3_100_speed: &uc3_100_speed
    - [ be32, 0x0093b44c, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x1346de9)

  uc3_100_dbv: &uc3_100_dbv
    - [ be32, 0x0093b6b8, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1347061)

  uc3_100_dbf: &uc3_100_dbf
    - [ be32, 0x0093b6f8, 0x9b83031d ] # Depth border fix       (mem address: 0x1347085)

  uc3_100_db: &uc3_100_db
    - [ be32, 0x00635f88, 0x60000000 ] # nop byte write on 03 ec
    - [ be32, 0x0093b704, 0x90e303ec ] # Depth buffer           (mem address: 0x1347157)

  uc3_JP_100_mlaa: &uc3_JP_100_mlaa
    - [ be32, 0x00635fb8, 0x60000000 ] # nop byte write on 00 9c
    - [ be16, 0x0093b494, 0x9b83 ]     # store 0
  # - [ be32, 0x00720368, 0x480009ac ] # unconditonally branch to disable MLAA

  # This patch cycles through various post-processing modes. Values accepted are:
  #    0 = None
  #    1 = Bloom
  #    2 = Depth of Field
  #    3 = ??? (Tonemapping)
  #    4 = Bloom & Depth of Field
  #    5 = Bloom & Depth of Field & Tonemapping (Default)

  uc3_JP_100_post: &uc3_JP_100_post
    - [ be32, 0x0093acfc, 0x39000003 ] # Post-processing modes

  uc3_JP_100_mesh: &uc3_JP_100_mesh
    - [ be32, 0x0073f084, 0x980b0004 ] # Disable mesh trimming

  # Many settings below are enabled/disabled in sub_93B2C0. In this subroutine,
  #    r6  = 2
  #    r27 = 1
  #    r28 = 0
  # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
  # source register from one to the other, though some are words and some are bytes, so be careful.

  uc3_JP_100_ssao: &uc3_JP_100_ssao
    - [ be32, 0x00635fb4, 0x60000000 ] # nop byte write on 00 57
    - [ be32, 0x0093b3d4, 0x9b830057 ] # Disable SSAO

  uc3_JP_100_dof: &uc3_JP_100_dof
    - [ be32, 0x0093b458, 0x9b83007a ] # Disable Depth of Field

  uc3_JP_100_speed: &uc3_JP_100_speed
    - [ be32, 0x0093b474, 0x9b830081 ] # Speedup (WCB)

  uc3_JP_100_dbv: &uc3_JP_100_dbv
    - [ be32, 0x0093b6e0, 0x9b6302f9 ] # Depth buffer viewport

  uc3_JP_100_dbf: &uc3_JP_100_dbf
    - [ be32, 0x0093b720, 0x9b83031d ] # Depth border fix

  uc3_JP_100_db: &uc3_JP_100_db
    - [ be32, 0x00635fb0, 0x60000000 ] # nop byte write on 03 ec
    - [ be32, 0x0093b72c, 0x90e303ec ] # Depth buffer = 2

  uc3_110_mlaa: &uc3_110_mlaa
    - [ be32, 0x0063e014, 0x60000000 ] # nop byte write on 00 9c
    - [ be16, 0x0094d850, 0x9b83 ]     # store 0
    #- [ be32, 0x00728cac, 0x480009ac ] # unconditonally branch to disable MLAA
    # Beginning of new blooom code
    - [ be16, 0x0077bd92, 0xfd40 ]
    - [ byte, 0x0077bdb7, 0xb0 ]
    - [ byte, 0x0077be4b, 0xb0 ]
    - [ be32, 0x0077bdb0, 0x4bfacf01 ]
    - [ be32, 0x00728cb0, 0xc1a907d4 ]
    - [ be32, 0x00728cb4, 0x808907d8 ]
    # Desert storm
    - [ be32, 0x00728cb8, 0x80beacb4 ]
    - [ be32, 0x00728cbc, 0x7f842800 ]
    - [ be32, 0x00728cc0, 0x409d0030 ]
    # Deflicker check
    - [ be32, 0x00728cc4, 0x80be3e6c ]
    - [ be32, 0x00728cc8, 0x7f842800 ]
    - [ be32, 0x00728ccc, 0x409d0018 ]
    # Yemen: Talbot chase
    - [ be32, 0x00728cd0, 0x80be1144 ]
    - [ be32, 0x00728cd4, 0x7f842800 ]
    - [ be32, 0x00728cd8, 0x409d0018 ]
    # Talbot multiplier 0.5
    - [ be32, 0x00728cdc, 0x38a00068 ]
    - [ be32, 0x00728ce0, 0x48000008 ]
    # Desert storm multiplier 0.04
    - [ be32, 0x00728ce4, 0x38a0edc8 ]
    # Value correction
    - [ be32, 0x00728ce8, 0x7d85f42e ]
    - [ be32, 0x00728cec, 0xedad0332 ]
    - [ be32, 0x00728cf0, 0x4e800020 ]
    # Yemen temple Dof Correction
    - [ be32, 0x0077b864, 0x4bfad491 ]
    - [ be32, 0x00728cf4, 0xc07d08dc ]
    - [ be32, 0x00728cf8, 0x801d07e8 ]
    - [ be32, 0x00728d00, 0x409c000c ]
    - [ be32, 0x00728d04, 0xc29e0068 ]
    - [ be32, 0x00728d08, 0xec630532 ]
    - [ be32, 0x00728d0c, 0x4e800020 ]

  uc3_110_mb: &uc3_110_mb
    - [ be32, 0x0077aacc, 0x480000c4 ] # Disable motion blur

  # This patch cycles through various post-processing modes. Values accepted are:
  #    0 = None
  #    1 = Bloom
  #    2 = Depth of Field
  #    3 = ??? (Tonemapping)
  #    4 = Bloom & Depth of Field
  #    5 = Bloom & Depth of Field & Tonemapping (Default)

  uc3_110_post: &uc3_110_post
    - [ be32, 0x0094d0b8, 0x39000003 ] # Post-processing modes  (mem address: 0x1376f77)

  uc3_110_mesh: &uc3_110_mesh
    - [ be32, 0x00747b0c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12d5a70)

  # Many settings below are enabled/disabled in sub_AA9E6C. In this subroutine, // needs correction on subroutine
  #    r6  = 2
  #    r27 = 1
  #    r28 = 0
  # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
  # source register from one to the other, though some are words and some are bytes, so be careful.

  uc3_110_ssao: &uc3_110_ssao
    - [ be32, 0x0063e010, 0x60000000 ] # nop byte write on 00 57
    - [ be32, 0x0094d790, 0x9b830057 ] # Disable SSAO           (mem address: 0x1376fef)

  uc3_110_dof: &uc3_110_dof
    - [ be32, 0x0094d814, 0x9b83007a ] # Disable Depth of Field (mem address: 0x1377012)

  uc3_110_speed: &uc3_110_speed
    - [ be32, 0x0094d830, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x1377019)

  uc3_110_dbv: &uc3_110_dbv
    - [ be32, 0x0094da9c, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1377291)

  uc3_110_dbf: &uc3_110_dbf
    - [ be32, 0x0094dadc, 0x9b83031d ] # Depth border fix       (mem address: 0x13772b5)

  uc3_110_db: &uc3_110_db
    - [ be32, 0x0063e00c, 0x60000000 ] # nop byte write on 03 ec
    - [ be32, 0x0094dae8, 0x90e303ec ] # Depth buffer = 2       (mem address: 0x1377387)

  uc3_119_FPS: &uc3_119_FPS
    - [ be32, 0x0096e980, 0x3b6000da ] # FPS
    - [ be32, 0x0096e97c, 0x48000040 ] # Unlock

  uc3_119_mlaa: &uc3_119_mlaa
    - [ be32, 0x0064df28, 0x60000000 ] # nop byte write on 00 9c
    - [ be16, 0x0096eaa0, 0x9b83 ]     # store 0
    - [ be32, 0x0073c214, 0x60000000 ] # mp crash fix (test)
    #- [ be32, 0x0073a1d8, 0x480009ac ] # unconditonally branch to disable MLAA
    # Beginning of new blooom code
    - [ be16, 0x0078c3aa, 0x1530 ]
    - [ byte, 0x0078c3cf, 0xb0 ]
    - [ byte, 0x0078c463, 0xb0 ]
    - [ be32, 0x0078c3c8, 0x4bfade15 ]
    - [ be32, 0x0073a1dc, 0xc1a907d4 ]
    - [ be32, 0x0073a1e0, 0x808907d8 ]
    # Desert storm
    - [ be32, 0x0073a1e4, 0x80beacec ]
    - [ be32, 0x0073a1e8, 0x7f842800 ]
    - [ be32, 0x0073a1ec, 0x409d0030 ]
    # Deflicker check
    - [ be32, 0x0073a1f0, 0x80be5774 ]
    - [ be32, 0x0073a1f4, 0x7f842800 ]
    - [ be32, 0x0073a1f8, 0x409d0018 ]
    # Yemen: Talbot chase
    - [ be32, 0x0073a1fc, 0x80be2a34 ]
    - [ be32, 0x0073a200, 0x7f842800 ]
    - [ be32, 0x0073a204, 0x409d0018 ]
    # Talbot multiplier 0.5
    - [ be32, 0x0073a208, 0x38a015f4 ]
    - [ be32, 0x0073a20c, 0x48000008 ]
    # Desert storm multiplier 0.04
    - [ be32, 0x0073a210, 0x38a01474 ]
    # Value correction
    - [ be32, 0x0073a214, 0x7d85f42e ]
    - [ be32, 0x0073a218, 0xedad0332 ]
    - [ be32, 0x0073a21c, 0x4e800020 ]
    # Yemen temple Dof Correction
    - [ be32, 0x0078be7c, 0x4bfae3a5 ]
    - [ be32, 0x0073a220, 0xc07d08dc ]
    - [ be32, 0x0073a224, 0x801d07e8 ]
    - [ be32, 0x0073a22c, 0x409c000c ]
    - [ be32, 0x0073a230, 0xc29e2998 ]
    - [ be32, 0x0073a234, 0xec630532 ]
    - [ be32, 0x0073a238, 0x4e800020 ]

  uc3_119_mb: &uc3_119_mb
    - [ be32, 0x0078b0e4, 0x480000c4 ] # Disable motion blur

  uc3_119_zcull: &uc3_119_zcull
    - [ be32, 0x0078c7d0, 0x3a800001 ] # Heat waves
    - [ byte, 0x0078c7f3, 0x00 ] # Disable broken blur effect

  # This patch cycles through various post-processing modes. Values accepted are:
  #    0 = None
  #    1 = Bloom
  #    2 = Depth of Field
  #    3 = ??? (Tonemapping)
  #    4 = Bloom & Depth of Field
  #    5 = Bloom & Depth of Field & Tonemapping (Default)

  uc3_119_post: &uc3_119_post
    - [ be32, 0x0096e308, 0x39000003 ] # Post-processing modes  (mem address: 0x1386547)

  uc3_119_mesh: &uc3_119_mesh
    - [ be32, 0x0075811c, 0x980b0004 ] # Disable mesh trimming  (mem address: 0x12e0df0)

  # Many settings below are enabled/disabled in sub_96E8CC. In this subroutine,
  #    r6  = 2
  #    r27 = 1
  #    r28 = 0
  # and these are stored into some memory blob to represent settings. Most values can be switched by just changing the
  # source register from one to the other, though some are words and some are bytes, so be careful.

  uc3_119_ssao: &uc3_119_ssao
    - [ be32, 0x0064df24, 0x60000000 ] # nop byte write on 00 57
    - [ be32, 0x0096e9e0, 0x9b830057 ] # Disable SSAO           (mem address: 0x13865bf)

  uc3_119_dof: &uc3_119_dof
    - [ be32, 0x0096ea64, 0x9b83007a ] # Disable Depth of Field (mem address: 0x13865e2)

  uc3_119_speed: &uc3_119_speed
    - [ be32, 0x0096ea80, 0x9b830081 ] # Speedup (WCB)          (mem address: 0x13865e9)

  uc3_119_dbv: &uc3_119_dbv
    - [ be32, 0x0096ecec, 0x9b6302f9 ] # Depth buffer viewport  (mem address: 0x1386861)

  uc3_119_dbf: &uc3_119_dbf
    - [ be32, 0x0096ed2c, 0x9b83031d ] # Depth border fix       (mem address: 0x1386885)

  uc3_119_db: &uc3_119_db
    - [ be32, 0x0064df20, 0x60000000 ] # nop byte write on 03 ec
    - [ be32, 0x0096ed38, 0x90e303ec ] # Depth buffer = 2       (mem address: 0x1386957)

  uc3_119_devmenu: &uc3_119_devmenu
    - [ be16, 0x00042814, 0x419e ]
    - [ byte, 0x00042837, 0x01 ]
    - [ be32, 0x0083028c, 0x60000000 ] # Don't pause on Select button
    - [ be32, 0x0095b720, 0x60000000 ] # Remove "!" model render
    - [ utf8, 0x010d8cf0, "galil-rifle            " ]
    - [ utf8, 0x010d8d08, "NO_ART_GROUP           " ]
    - [ utf8, 0x010d8d20, "uber-pistol            " ]
    - [ utf8, 0x010d8d38, "dig-explosive-pack     " ]
    - [ utf8, 0x010d8d50, "shotgun-sawedoff       " ]
    - [ utf8, 0x010d8d68, "m32-grenade-launcher   " ]
    - [ utf8, 0x010d8d80, "baseball-grenade       " ]
    - [ utf8, 0x010d8d98, "t62-tank-mg-turret     " ]
    - [ utf8, 0x010d8db0, "spas12-shotgun         " ]
    - [ utf8, 0x010d8dc8, "baseball-grenade       " ]
    - [ utf8, 0x010d8de0, "m32-grenade-launcher   " ]
    - [ utf8, 0x010d8df8, "semi-auto-rifle        " ]
    - [ utf8, 0x010d8e10, "baseball-grenade       " ]
    - [ utf8, 0x010d8e28, "shade-weapon           " ]
    - [ utf8, 0x010d8e40, "statue-puzzle-torch    " ]
    - [ utf8, 0x010d8e58, "temple-cistern-map-2   " ]
    - [ utf8, 0x010d8e70, "shade-weapon           " ]
    - [ utf8, 0x010d8e88, "beretta-silenced       " ]
    - [ utf8, 0x010d8ea0, "chloe-pistol           " ]
    - [ utf8, 0x010d8eb8, "baseball-grenade       " ]
    - [ utf8, 0x010d8ed0, "shotgun-pistol         " ]
    - [ utf8, 0x010d8ee8, "p99-pistol             " ]
    - [ utf8, 0x010d8f00, "temple-cistern-map     " ]
    - [ utf8, 0x010d8f18, "tkiv-sniper-rifle      " ]
    - [ utf8, 0x010d8f30, "stun-grenade           " ]
    - [ utf8, 0x010d8f48, "rpg                    " ]
    - [ utf8, 0x010d8f60, "ak-74-a                " ]
    - [ utf8, 0x010d8f78, "walther-p5             " ]
    - [ utf8, 0x010d8f90, "pkm-rifle              " ]
    - [ utf8, 0x010d8fa8, "heavy-gau19            " ]
    - [ utf8, 0x010d8fc0, "pirate-shield          " ]
    - [ utf8, 0x010d8fd8, "baseball-grenade       " ]
    - [ utf8, 0x010d8ff0, "dragunov-rifle         " ]
    - [ utf8, 0x010d9008, "NO_ART_GROUP           " ]
    - [ utf8, 0x010d9020, "NO_ART_GROUP           " ]
    - [ utf8, 0x010d9038, "sw629-revolver         " ]
    - [ utf8, 0x010d9050, "NO_ART_GROUP           " ]
    - [ utf8, 0x010d9068, "colt-defender-pistol   " ]
    - [ utf8, 0x010d9080, "ak-74-b                " ]
    - [ utf8, 0x010d9098, "sight-scope            " ]
    - [ utf8, 0x010d90b0, "t62-tank-mg-turret     " ]
    - [ utf8, 0x010d90c8, "shade-weapon           " ]
    - [ utf8, 0x010d90e0, "yt-cistern-map-rolled  " ]
    - [ utf8, 0x010d90f8, "machine-gun            " ]
    - [ utf8, 0x010d9110, "fn-fal-rifle           " ]
    - [ utf8, 0x010d9128, "hk416                  " ]
    - [ utf8, 0x010d9140, "mpa930                 " ]
    - [ utf8, 0x010d9158, "taurus-sniper-pistol   " ]
    - [ utf8, 0x010d9170, "beretta-burst-pistol   " ]
    - [ utf8, 0x010d9188, "NO_ART_GROUP           " ]
    - [ utf8, 0x010d91a0, "riot-shield-hvk        " ]
    - [ utf8, 0x010d91b8, "baseball-grenade       " ]
    - [ utf8, 0x010d91d0, "rpg_rocket             " ]
    - [ utf8, 0x010d91e8, "t62-tank-mg-turret     " ]
    - [ utf8, 0x010d9200, "t62-tank-mg-turret     " ]
    - [ utf8, 0x010d9218, "grenade-pistol         " ]
    - [ utf8, 0x010d9230, "t62-tank-mg-turret     " ]
    - [ utf8, 0x010d9248, "t62-tank-mg-turret     " ]
    - [ be32, 0x004de820, 0x39ce0018 ] #    addi       r14,r14,0x18
    - [ be32, 0x004de828, 0x488e3b21 ] #    bl         SUB_00dc2348
    - [ be32, 0x00dc2348, 0x3de0010d ] #    lis        r15,0x10d
    - [ be32, 0x00dc234c, 0x61ef8cd8 ] #    ori        r15,r15,0x8cd8
    - [ be32, 0x00dc2350, 0x7c8f7214 ] #    add        r4,r15,r14
    - [ be32, 0x00dc2354, 0x4e800020 ] #    blr
    # taskmgr
    # active task
    # text
    - [ be32, 0x00a082c8, 0x484001e0 ]
    - [ be32, 0x00e084a8, 0x3c60011d ]
    - [ be32, 0x00e084ac, 0x6063f410 ]
    - [ be32, 0x00e084b0, 0x4bbffe1c ]
    # drawing
    # todo: link with active task bool
    - [ be32, 0x00737ed0, 0x486d05f4 ]
    - [ be32, 0x00e084c4, 0x3ca0013b ]
    - [ be32, 0x00e084c8, 0x60a5e594 ]
    - [ be32, 0x00e084cc, 0x8bc50000 ]
    - [ be32, 0x00e084d0, 0x2f9e0001 ]
    - [ be32, 0x00e084d4, 0x419e003c ]
    - [ be32, 0x00e084d8, 0x3ca0011d ]
    - [ be32, 0x00e084dc, 0x60a5f3f8 ]
    - [ be32, 0x00e084e0, 0x7fdef278 ]
    - [ be32, 0x00e084e4, 0x3fc04248 ]
    - [ be32, 0x00e084e8, 0x93c50000 ]
    - [ be32, 0x00e084ec, 0x3fc04422 ]
    - [ be32, 0x00e084f0, 0x63de8000 ]
    - [ be32, 0x00e084f4, 0x93c50004 ]
    - [ be32, 0x00e084f8, 0xc0250000 ]
    - [ be32, 0x00e084fc, 0xc0450004 ]
    - [ be32, 0x00e08500, 0x38a0ffff ]
    - [ be32, 0x00e08504, 0x3cc0011d ]
    - [ be32, 0x00e08508, 0x60c6f410 ]
    - [ be32, 0x00e0850c, 0x4bb9de3d ]
    - [ be32, 0x00e08510, 0x4b92f9c4 ]

  uc3_119_devplus: &uc3_119_devplus
    - [ be16, 0x00d9ea48, 0x202b ] # _+
    - [ be32, 0x0112cb94, 0x01381d1e ] # base ptr
    - [ be32, 0x0112cb90, 0x00df5880 ] # str
    - [ be32, 0x0002f4c0, 0x38dc009f ] # vis
    - [ be32, 0x0112cb98, 0x00df5610 ] # str
    - [ be32, 0x0002f500, 0x38dc4acb ] # wireframe
    - [ be32, 0x0112cb9c, 0x00df5628 ] # str
    - [ be32, 0x0002f53c, 0x38dc4acc ] # see through
    - [ be32, 0x0112cba0, 0x00df5648 ] # str
    - [ be32, 0x0002f578, 0x38dc4acd ] # point
    - [ be32, 0x0112cba4, 0x00df7308 ] # str
    - [ be32, 0x0002f5b4, 0x38dc48e6 ] # post on spu
    - [ be32, 0x0112cba8, 0x00df6cf0 ] # str
    - [ be32, 0x0002f5f0, 0x38dc48c4 ] # dof
    - [ be32, 0x0112cbac, 0x00df6ed8 ] # str
    - [ be32, 0x0002f62c, 0x38dc48c1 ] # mb // overwrites itself
    - [ be32, 0x0112cbb0, 0x00da05c0 ] # str
    - [ be32, 0x0002f668, 0x38dc48f1 ] # red wireframe
    - [ be32, 0x0112cbb4, 0x00da05a8 ] # str
    - [ be32, 0x0002f6a4, 0x38dc48be ] # wireframe ball
    - [ be32, 0x0112cc74, 0x00da0590 ] # str
    - [ be32, 0x0112cc78, 0x011d0f90 ] # ptr show vox to Disable Death Zone
    - [ be32, 0x0112cc7c, 0x00da0530 ] # str
    - [ be32, 0x0112cc80, 0x0137f441 ] # ptr "Log Vox To SPU TTY" to Disable Death Collision
    - [ be32, 0x0112cc84, 0x00da0548 ] # str
    - [ be32, 0x0112cc88, 0x0120c5c0 ] # ptr "Include Rejected Vox" to Disable NPC Spawn
    - [ be32, 0x0112cc8c, 0x00da0570 ] # str
    - [ be32, 0x0112cc90, 0x01343f95 ] # ptr "Log Vox Lookups to TTY" to Make Invulnerable
    - [ be32, 0x0112cc64, 0x01343f84 ] # ptr
    - [ be32, 0x0112cc68, 0x00da05e0 ]
  # Disable Death Collision
    - [ be64, 0x00da0530, 0x44697361626c6520 ]
    - [ be64, 0x00da0538, 0x446561746820436f ]
    - [ be64, 0x00da053f, 0x6c6c6973696f6e00 ]
  # Disallow Npcs from Spawning
    - [ be64, 0x00da0548, 0x446973616c6c6f77 ]
    - [ be64, 0x00da0550, 0x204e706373206672 ]
    - [ be64, 0x00da0558, 0x6f6d20537061776e ]
    - [ be32, 0x00da0560, 0x696e6700 ]
  # Make Invulnerable
    - [ be64, 0x00da0570, 0x4d616b6520496e76 ]
    - [ be64, 0x00da0578, 0x756c6e657261626c ]
    - [ be16, 0x00da0580, 0x6500 ]
  # Enable Death Zone
    - [ be64, 0x00da0590, 0x456e61626c652044 ]
    - [ be64, 0x00da0598, 0x65617468205a6f6e ]
    - [ be16, 0x00da05a0, 0x6500 ]
  # Enable Wireframe Balls
    - [ be64, 0x00da05a8, 0x456e61626c652057 ]
    - [ be64, 0x00da05b0, 0x6972656672616d65 ]
    - [ be64, 0x00da05b8, 0x2042616c6c730000 ]
  # Enable Red Wireframe
    - [ be64, 0x00da05c0, 0x456e61626c652052 ]
    - [ be64, 0x00da05c8, 0x6564205769726566 ]
    - [ be32, 0x00da05d0, 0x72616d65 ]
  # NPC Model Scale
    - [ be64, 0x00da05e0, 0x4e5043204d6f6465 ]
    - [ be64, 0x00da05e8, 0x6c205363616c6500 ]

  uc3_119_lanmode: &uc3_119_lanmode
    - [ be32, 0x00a6308c, 0x48371e19 ]
    - [ be64, 0x00dd4d58, 0x000009298aab4a4b ]
    - [ be32, 0x00dd4ea4, 0x81c90320 ]
    - [ be32, 0x00dd4ea8, 0x2c8e0000 ]
    - [ be32, 0x00dd4eac, 0x4086002c ]
    - [ be32, 0x00dd4eb0, 0x3e0000dd ]
    - [ be32, 0x00dd4eb4, 0x62104d58 ]
    - [ be32, 0x00dd4eb8, 0x3de0011e ]
    - [ be32, 0x00dd4ebc, 0x61ef3ba4 ]
    - [ be32, 0x00dd4ec0, 0xea300000 ]
    - [ be32, 0x00dd4ec4, 0x1e510008 ]
    - [ be32, 0x00dd4ec8, 0xfa4f0000 ]
    - [ be32, 0x00dd4ecc, 0x3a800001 ]
    - [ be32, 0x00dd4ed0, 0x92890320 ]
    - [ be32, 0x00dd4ed4, 0x9aaf0008 ]
    - [ be32, 0x00dd4ed8, 0xea6f0000 ]
    - [ be32, 0x00dd4edc, 0x7eb29800 ]
    - [ be32, 0x00dd4ee0, 0x4196000c ]
    - [ be32, 0x00dd4ee4, 0x4bf993c5 ]
    - [ be32, 0x00dd4ee8, 0x92840000 ]
    - [ be32, 0x00dd4eec, 0x88090078 ]
    - [ be32, 0x00dd4ef0, 0x4e800020 ]

  uc3_fps_notes: &uc3_fps_notes
    "Haven't tested how this affects cutscenes."

  uc3_debugmenu_notes: &uc3_debugmenu_notes
    "L3 + Start = Dev Menu\nL3 + Select = Quick Menu\nL3 + Triangle = Debug Text\nL2 + R2 = Debug Fly"

  uc3_mlaa_notes: &uc3_mlaa_notes
    "Allows for the use of Resolution Scaling in the title and improves performance.\nVersion 2.0 Fixes high levels of bloom in some areas. (1.10 and 1.19 Only)\nVersion 3.0 Fixes Crash in some multiplayer levels. (1.19 Only)"

  uc3_wcbperformance_notes: &uc3_wcbperformance_notes
    "Enable this patch if you are using \"Write Color Buffers\" to restore performance."

  uc3_gpulighting_notes: &uc3_gpulighting_notes
    "Uses GPU (RSX) path for lighting effects instead of SPU.\nFixes rendering of lighting effects that are broken via SPU path and greatly improves performance over it.\nThis path is incomplete and results in some missing effects such as Volumetric lighting."

  uc3_camshake_notes: &uc3_camshake_notes
    "Disables Camera Shake during gameplay.\nIn-Game-Cinematics are unaffected."

  uc3_zcull_notes: &uc3_zcull_notes
    "Enables rendering of Heat Wave effect under Approximate ZCull, normally works with Precise ZCull only, but Precise ZCull has a big speed impact"

  uc3_119title: &uc3_119title
    "Uncharted 3: Drake's Deception":
      BCES01175: [ 01.19 ]
      BCES01176: [ 01.19 ]
      BCES01670: [ 01.19 ]
      BCES01692: [ 01.19 ]
      BCUS98233: [ 01.19 ]
      BCJS37004: [ 02.17 ]
      NPEA00422: [ 01.19 ]
      NPUA80858: [ 01.19 ]
      BCUS99086: [ 01.19 ]
      BCAS25014: [ 01.19 ]
      BCAS25009: [ 01.19 ]

  uc3_110title: &uc3_110title
    "Uncharted 3: Drake's Deception":
      BCES01670: [ 01.10 ]
      BCAS25014: [ 01.10 ]

  uc3_100title: &uc3_100title
    "Uncharted 3: Drake's Deception":
      BCES01175: [ 01.00 ]
      BCES01176: [ 01.00 ]
      BCES01692: [ 01.00 ]
      BCUS98233: [ 01.00 ]

  uc3beta100_title: &uc3beta100_title
    "Uncharted 3: Drake's Deception Multiplayer Beta":
      NPUA70153: [ 01.00 ]
      NPHA80158: [ 01.00 ]
      BCET70034: [ 01.00 ]

  uc3beta104_title: &uc3beta104_title
    "Uncharted 3: Drake's Deception Multiplayer Beta":
      NPUA70153: [ 01.04 ]
      NPHA80158: [ 01.04 ]
      BCET70034: [ 01.04 ]

  uc3_subway_EU: &uc3_subway_EU
    "Uncharted 3: Drake's Deception Multiplayer":
      BCET70043: [ 01.00 ]

  uc3_subway_US: &uc3_subway_US
    "Uncharted 3: Drake's Deception Subway":
      NPUA70180: [ 01.00 ]

  uc3_kioskdemo: &uc3_kioskdemo
    "Uncharted 3: Drake's Deception Demo":
      NPUA70183: [ 01.00 ]

  uc3_USpreview: &uc3_USpreview
    "Uncharted 3: Drake's Deception Preview":
      BCUS98233: [ 01.00 ]

PPU-49c96996b6f3c0b32422375978c41e0c7ed95183:
  "Unlock FPS":
    Games: *uc3_100title
    Author: "superepic31"
    Notes: *uc3_fps_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_FPS ]
  "Disable in-built MLAA":
    Games: *uc3_100title
    Author: "Whatcookie"
    Notes: *uc3_mlaa_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_mlaa ]
  "Post-processing Modes":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_post ]
  "Disable Mesh Trimming":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_mesh ]
  "Disable SSAO":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_ssao ]
  "Disable Depth of Field":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_dof ]
  "Performance (WCB)":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_speed ]
  "Depth Buffer Viewport":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_dbv ]
  "Depth Border Fix":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_dbf ]
  "Enable GPU Lighting":
    Games: *uc3_100title
    Author: "ZEROx, illusion"
    Notes: *uc3_gpulighting_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_100_db ]
  "Disable Camera Shake":
    Games: *uc3_100title
    Author: "illusion"
    Notes: *uc3_camshake_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00806c88, 0x3800 ]
  "Debug Menu":
    Games: *uc3_100title
    Author: "dron_3, HdHereidme, illusion"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00041e34, 0x419e ]

PPU-48fa849dfeaef2f36ec042a576f29bda19ec1de0:
  "Disable in-built MLAA":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "Whatcookie"
    Notes: *uc3_mlaa_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_mlaa ]
  "Post-processing Modes":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_post ]
  "Disable Mesh Trimming":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_mesh ]
  "Disable SSAO":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_ssao ]
  "Disable Depth of Field":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_dof ]
  "Performance (WCB)":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_speed ]
  "Depth Buffer Viewport":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_dbv ]
  "Depth Border Fix":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_dbf ]
  "Enable GPU Lighting":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "ZEROx, illusion"
    Notes: *uc3_gpulighting_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_JP_100_db ]
  "Debug Menu":
    Games:
      "Uncharted 3: Drake's Deception":
        BCJS37004: [ 01.00 ]
    Author: "dron_3, HdHereidme, illusion"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00041e34, 0x419e ]

PPU-664fb0e4a94c62c15a6474841c202fb2bf80ce16:
  "Disable in-built MLAA":
    Games: *uc3_110title
    Author: "Whatcookie, ZEROx"
    Notes: *uc3_mlaa_notes
    Patch Version: 2.0
    Patch:
      - [ load, *uc3_110_mlaa ]
  "Disable Motion Blur":
    Games: *uc3_110title
    Author: "ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_mb ]
  "Disable Bloom":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_post ]
  "Disable Mesh Trimming":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_mesh ]
  "Disable SSAO":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_ssao ]
  "Disable Depth of Field":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_dof ]
  "Performance (WCB)":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_speed ]
  "Depth Buffer Viewport":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_dbv ]
  "Depth Border Fix":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_dbf ]
  "Enable GPU Lighting":
    Games: *uc3_110title
    Author: "ZEROx, illusion"
    Notes: *uc3_gpulighting_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_110_db ]
  "Disable Camera Shake":
    Games: *uc3_110title
    Author: "illusion"
    Notes: *uc3_camshake_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00812b44, 0x3800 ]
  "Debug Menu":
    Games: *uc3_110title
    Author: "dron_3, HdHereidme, illusion"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00042624, 0x419e ]

PPU-02a88c3c6cd415b0bb81f1606bc743835881a4ba:
  "Unlock FPS":
    Games: *uc3_119title
    Author: "superepic31"
    Notes: *uc3_fps_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_FPS ]
  "Disable in-built MLAA":
    Games: *uc3_119title
    Author: "Whatcookie, ZEROx, illusion"
    Notes: *uc3_mlaa_notes
    Patch Version: 3.0
    Patch:
      - [ load, *uc3_119_mlaa ]
  "Disable Motion Blur":
    Games: *uc3_119title
    Author: "ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_mb ]
  "Disable Bloom":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_post ]
  "Disable Mesh Trimming":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_mesh ]
  "Disable SSAO":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_ssao ]
  "Disable Depth of Field":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_dof ]
  "Performance (WCB)":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_speed ]
  "Heat waves Approximate ZCull fix":
    Games: *uc3_119title
    Author: "ZEROx"
    Notes: *uc3_zcull_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_zcull ]
  "Depth Buffer Viewport":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_dbv ]
  "Depth Border Fix":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_dbf ]
  "Enable GPU Lighting":
    Games: *uc3_119title
    Author: "ZEROx, illusion"
    Notes: *uc3_gpulighting_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_db ]
  "Debug Menu":
    Games: *uc3_119title
    Author: "dron_3, HdHereidme, illusion, ZEROx, Skye"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_devmenu ]
  "Dev Menu Plus":
    Games: *uc3_119title
    Author: "illusion, Skye"
    Notes: "Replaces audio options with various debug features."
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_devplus ]
  "Disable Camera Shake":
    Games: *uc3_119title
    Author: "illusion"
    Notes: *uc3_camshake_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008242cc, 0x3800 ]
  "Enable LAN Mode":
    Games: *uc3_119title
    Author: "illusion, ZEROx, Skye"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ load, *uc3_119_lanmode ]
  "Skip Intro":
    Games: *uc3_119title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00043e2c, 0x480000dc ]
  "DEBUG: Replace Task With Test Tasks":
    Games: *uc3_119title
    Author: "illusion, icemesh" # SID Utils
    Notes: "Only enable this patch if you know what you are doing!!"
    Patch Version: 1.0
    Patch:
      # *test-task-graph*
      - [ be32, 0x00a0d014, 0x3c80f0f3 ]
      - [ be32, 0x00a0d01c, 0x6084d6c8 ]
      - [ be32, 0x00a0b2c4, 0x3ca0f0f3 ]
      - [ be32, 0x00a0b2cc, 0x60a5d6c8 ]
      - [ be16, 0x0004417c, 0x4800 ]
      # test-tasks begin!!
      # SID("tasks") -> SID("test-tasks") // under debug group
      - [ be32, 0x009d0e84, 0x48421188 ]
      - [ be32, 0x00df200c, 0x81490000 ]
      - [ be32, 0x00df2010, 0x3d006772 ]
      - [ be32, 0x00df2014, 0x61083261 ]
      - [ be32, 0x00df2018, 0x7f885000 ]
      - [ be32, 0x00df201c, 0x409e0014 ]
      - [ be32, 0x00df2020, 0x3d002203 ]
      - [ be32, 0x00df2024, 0x6108c98c ]
      - [ be32, 0x00df2028, 0x91090000 ]
      - [ be32, 0x00df202c, 0x7d284b78 ]
      - [ be32, 0x00df2030, 0x81490000 ]
      - [ be32, 0x00df2034, 0x4bbdee54 ]
  "Infinite Health":
    Games: *uc3_119title
    Author: "CodeUnique3"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00479cd8, 0x60000000 ]
  "Infinite Ammo":
    Games: *uc3_119title
    Author: "CodeUnique3"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x006e4284, 0x60000000 ]

PPU-e63051dc8ec0f9256f047f62a6abd0e955805419:
  "Bug Fix: Crash on Entering LAN MP Menu":
    Games: *uc3beta100_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ byte, 0x0003e6c3, 0x00 ]
  "Disable Uncharted TV":
    Games: *uc3beta100_title
    Author: "illusion"
    Notes: "Fixes significant slowdown because the video is no longer hosted on the server."
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00700f42, 0x0000 ] # ret 0
      - [ be16, 0x00700f50, 0x4800 ] # don't spawn video threads
  "Disable Camera Sprint":
    Games: *uc3beta100_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0019e450, 0x98c30178 ]
  "Unlock Main Menu":
    Games: *uc3beta100_title
    Author: "illusion, ZEROx, Skye"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be64, 0x00cea3d0, 0x000009298aab4a4b ]
      - [ be32, 0x007f8fc4, 0x484f131d ]
      - [ be32, 0x00cea2e0, 0x81c90320 ]
      - [ be32, 0x00cea2e4, 0x2c8e0000 ]
      - [ be32, 0x00cea2e8, 0x4086002c ]
      - [ be32, 0x00cea2ec, 0x3e0000ce ]
      - [ be32, 0x00cea2f0, 0x621041c0 ]
      - [ be32, 0x00cea2f4, 0x3de0010e ]
      - [ be32, 0x00cea2f8, 0x61ef319c ]
      - [ be32, 0x00cea2fc, 0xea306210 ]
      - [ be32, 0x00cea300, 0x1e510008 ]
      - [ be32, 0x00cea304, 0xfa4f6f8c ]
      - [ be32, 0x00cea308, 0x3a800001 ]
      - [ be32, 0x00cea30c, 0x92890320 ]
      - [ be32, 0x00cea310, 0x9aaf6f94 ]
      - [ be32, 0x00cea314, 0xea6f6f8c ]
      - [ be32, 0x00cea318, 0x7eb29800 ]
      - [ be32, 0x00cea31c, 0x4196000c ]
      - [ be32, 0x00cea320, 0x4bf993c5 ]
      - [ be32, 0x00cea324, 0x92840000 ]
      - [ be32, 0x00cea328, 0x88090078 ]
      - [ be32, 0x00cea32c, 0x4e800020 ]

PPU-9584776e7fca409ed410f8a713832267020d8ac3:
  "Bug Fix: Crash on Entering LAN MP Menu":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ byte, 0x0003e563, 0x00 ]
  "Disable Uncharted TV":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes: "Fixes crash after entering MP menu due to offline video streaming API."
    Patch Version: 1.0
    Patch:
      - [ be16, 0x0070194e, 0x0000 ] # ret 0
      - [ be16, 0x0070195c, 0x4800 ] # don't spawn video threads
  "Disable Sprint Camera":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0019e300, 0x98c30178 ]
  "Disable Camera Shake":
    Games: *uc3beta104_title
    Author: "illusion"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0076e440, 0x38000001 ]
  "Unlock Main Menu":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be64, 0x00d1e414, 0x000009298aab4a4b ]
      - [ be32, 0x007f9f20, 0x4852449d ] #     bl         SUB_00d1e3bc
      - [ be32, 0x00d1e3bc, 0x81c90320 ] #     lwz        r14,0x320(r9)
      - [ be32, 0x00d1e3c0, 0x2c8e0000 ] #     cmpwi      cr1,r14,0x0
      - [ be32, 0x00d1e3c4, 0x4086002c ] #     bne        cr1,LAB_00d1e3f0
      - [ be32, 0x00d1e3c8, 0x3e0000d1 ] #     lis        r16,0xd1
      - [ be32, 0x00d1e3cc, 0x6210e40c ] #     ori        r16,r16,0xe40c
      - [ be32, 0x00d1e3d0, 0x3de00110 ] #     lis        r15,0x110
      - [ be32, 0x00d1e3d4, 0x61efb828 ] #     ori        r15,r15,0xb828
      - [ be32, 0x00d1e3d8, 0xea300008 ] #     ld         r17,0x8(r16)=>DAT_00d1e414
      - [ be32, 0x00d1e3dc, 0x1e510008 ] #     mulli      r18,r17,0x8
      - [ be32, 0x00d1e3e0, 0xfa4f0000 ] #     std        r18,0x0(r15)=>LAB_0011b828
      - [ be32, 0x00d1e3e4, 0x3a800001 ] #     li         r20,0x1
      - [ be32, 0x00d1e3e8, 0x92890320 ] #     stw        r20,0x320(r9)
      - [ be32, 0x00d1e3ec, 0x9aaf0008 ] #     stb        r21,0x8(r15)=>LAB_0011b830
      - [ be32, 0x00d1e3f0, 0xea6f0000 ] #     ld         r19,0x0(r15)=>LAB_0011b828
      - [ be32, 0x00d1e3f4, 0x7eb29800 ] #     cmpd       cr5,r18,r19
      - [ be32, 0x00d1e3f8, 0x4196000c ] #     beq        cr5,LAB_00d1e404
      - [ be32, 0x00d1e3fc, 0x4bf993b5 ] #     bl         FUN_00cb77b0
      - [ be32, 0x00d1e400, 0x92840000 ] #     stw        r20,0x0(r4)
      - [ be32, 0x00d1e404, 0x88090078 ] #     lbz        r0,0x78(r9)
      - [ be32, 0x00d1e408, 0x4e800020 ] #     blr
  "Disable Post on SPU":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes: "Slight overbloom in some areas. Needs correction."
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897644, 0x9b43 ] # post on spu         = 0
  "Disable Motion Blur":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008975f8, 0x9b43 ] # mb                  = 0
  "Disable Mesh Trimming":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x006b1cc0, 0x9949 ] # mesh trim           = 0
  "Disable SSAO":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897578, 0x9b43 ] # ssao                = 0
  "Disable Depth of Field":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897604, 0x9b43 ] # dof                 = 0
  "Performance (WCB)":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897620, 0x9b83 ] # reload depth buffer = 0
  "Depth Buffer Viewport":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x00897880, 0x9b63 ] # depth viewport      = 1
  "Depth Border Fix":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008978c0, 0x9b83 ] # depth border        = 0
  "Enable GPU Lighting":
    Games: *uc3beta104_title
    Author: "illusion, ZEROx"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x008978cc, 0x9103 ] # spu lighting        = 2

PPU-40958bda5885891f0a4eb69f2c87ed4942dfa5e7:
  "Enable GPU Lighting":
    Games: *uc3_kioskdemo
    Author: "illusion, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093ac18, 0x90e303ec ]
  "Disable in-built MLAA":
    Games: *uc3_kioskdemo
    Author: "Whatcookie, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x0093a980, 0x9b83 ]
  "Unlock FPS":
    Games: *uc3_kioskdemo
    Author: "superepic31, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a85c, 0x48000040 ]
      - [ be32, 0x0093a860, 0x3b6000da ]
  "Depth Buffer Viewport":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093abcc, 0x9b6302f9 ]
  "Depth Border Fix":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093ac0c, 0x9b83031d ]
  "Performance (WCB)":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a960, 0x9b830081 ]
  "Disable Bloom":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a1e8, 0x39000003 ]
  "Disable Depth of Field":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a944, 0x9b83007a ]
  "Disable SSAO":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a8c0, 0x9b830057 ]
  "Disable Motion Blur":
    Games: *uc3_kioskdemo
    Author: "ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x007719ec, 0x480000c4 ]
  "Disable Mesh Trimming":
    Games: *uc3_kioskdemo
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0073ea7c, 0x980b0004 ]
  "Debug Menu":
    Games: *uc3_kioskdemo
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0072f5c0, 0x38000001 ]
      - [ be32, 0x0072f5c4, 0x980b2163 ]

PPU-f986a163b81248b801709f0c5bb427c090b40dc7:
  "Debug Menu":
    Games: *uc3_subway_EU
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x007312bc, 0x38000001 ]
      - [ be32, 0x007312c0, 0x980b2163 ]

PPU-50ce7f4553ace724111440a399b02cbfd045a2b1:
  "Debug Menu":
    Games: *uc3_subway_US
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x007313e0, 0x38000001 ]
      - [ be32, 0x007313e4, 0x980b2163 ]

PPU-0ff0b00602e5ffc67f32ab69840bbb2c7df735fe:
  "Debug Menu":
    Games: *uc3_USpreview
    Author: "dron_3, HdHereidme, FlexBy"
    Notes: *uc3_debugmenu_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0072ee5c, 0x38000001 ]
      - [ be32, 0x0072ee60, 0x980b2163 ]
  "Enable GPU Lighting":
    Games: *uc3_USpreview
    Author: "illusion, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a8c4, 0x90e303ec ]
  "Disable in-built MLAA":
    Games: *uc3_USpreview
    Author: "Whatcookie, ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be16, 0x0093a62c, 0x9b83 ]
  "Unlock FPS":
    Games: *uc3_USpreview
    Author: "superepic31, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a508, 0x48000040 ]
      - [ be32, 0x0093a50c, 0x3b6000da ]
  "Depth Buffer Viewport":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a878, 0x9b6302f9 ]
  "Depth Border Fix":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a8b8, 0x9b83031d ]
  "Performance (WCB)":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes: *uc3_wcbperformance_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a60c, 0x9b830081 ]
  "Disable Bloom":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00939e94, 0x39000003 ]
  "Disable Depth of Field":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a5f0, 0x9b83007a ]
  "Disable SSAO":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0093a56c, 0x9b830057 ]
  "Disable Motion Blur":
    Games: *uc3_USpreview
    Author: "ZEROx, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00771284, 0x480000c4 ]
  "Disable Mesh Trimming":
    Games: *uc3_USpreview
    Author: "ZEROx, illusion, FlexBy"
    Notes:
    Patch Version: 1.0
    Patch:
      - [ be32, 0x0073e318, 0x980b0004 ]