Page values for "The Last of Us"

From RPCS3 Wiki

"Patch" values

1 row is stored for this page
FieldField typeAllowed valuesValue
versionFloat1.2
patchWikitext

Anchors:

 # Since we only change store reg and branch, we don't need to patch last 2 bytes again.
 tlou100_mlaa: &tlou100_mlaa
   - [ be16, 0x00a7a514, 0x9b83 ]     # store 0
 #  - [ be16, 0x00a51a8c, 0x4800 ]     # unconditonally branch to disable MLAA
   - [ be16, 0x0092ddac, 0x4800 ]     # Skip memory check function
   - [ be32, 0x00ae5d4c, 0x38000000 ] # Green rain
   - [ be32, 0x00a2c4f0, 0x38000000 ] # Green rain
   - [ be32, 0x00a2c4fc, 0x38000000 ] # Green rain
   - [ be32, 0x00a58da8, 0x60000000 ] # skip assert: x + w <= width && y + h <= height
   - [ be32, 0x0093e30c, 0xc1890990 ] # Cargo fix
   - [ be32, 0x0093e394, 0xc0090990 ] # Reticle bloom
 # Dof patch
   - [ be32, 0x0093dd64, 0x48113d2d ] # Call1
   - [ be32, 0x0093dd88, 0x48113d19 ] # Call2
   - [ be32, 0x00a0ae2c, 0x48046c85 ] # Call3
 # Func 1 Overall DoF 1
   - [ be32, 0x00a51a90, 0xc09c0aa4 ] # Load f4
   - [ be32, 0x00a51a94, 0xc27e04d4 ] # f19 = 0.3
   - [ be32, 0x00a51a98, 0xec8404f2 ] # f4*f19
   - [ be32, 0x00a51a9c, 0x4e800020 ] # Return
 # Func 2 Cutscene Dof
   - [ be32, 0x00a51aa0, 0xc01c0aac ] # Load f0
   - [ be32, 0x00a51aa4, 0xc17e1d34 ] # f11 = 0.75
   - [ be32, 0x00a51aa8, 0xec0002f2 ] # f0*f11
   - [ be32, 0x00a51aac, 0x4e800020 ] # Return
 # Func 3 Overall Dof 2
   - [ be32, 0x00a51ab0, 0x3d200146 ] # r9 = 1460000
   - [ be32, 0x00a51ab4, 0x3929481c ] # r9 = 146481c
   - [ be32, 0x00a51ab8, 0x80080014 ] # Load pattern to r0
   - [ be32, 0x00a51abc, 0x7f804800 ] # Compare r0 to r9
   - [ be32, 0x00a51ac0, 0x409e0010 ]
   - [ be32, 0x00a51ac4, 0xc01e10a0 ] # f0 = 0.3
   - [ be32, 0x00a51ac8, 0xd008000c ] # Store f0
   - [ be32, 0x00a51acc, 0x48000008 ]
   - [ be32, 0x00a51ad0, 0xd3e8000c ] # Default store
   - [ be32, 0x00a51ad4, 0x4e800020 ] # Return
 # Bloom correction patch v2.2
   - [ be32, 0x0093e308, 0x481137d1 ] # Call
   - [ be32, 0x00a51ad8, 0xc1a909a4 ] # Load f13
   - [ be32, 0x00a51adc, 0xc19e064c ] # f12 = 0.69
   - [ be32, 0x00a51ae0, 0x808909a8 ] # r4 unique value e198
   - [ be32, 0x00a51ae4, 0x2f840000 ] # if r4 <= 0
   - [ be32, 0x00a51ae8, 0x409d0058 ] # Skip to Main menu
 # Bills town Bloater and escape (2)
   - [ be32, 0x00a51aec, 0x3ca03ba4 ] # r5 = 3ba40000
   - [ be32, 0x00a51af0, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51af4, 0x419c0074 ] # go to Patch if less
 # Bills town Cemetery (1)
   - [ be32, 0x00a51af8, 0x808909a4 ] # r4 unique value e194
   - [ be32, 0x00a51afc, 0x3ca03e80 ] # r5 = 3e800000
   - [ be32, 0x00a51b00, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51b04, 0x419c0068 ] # go to Patch if less
 # Bills town main street (2)
   - [ be32, 0x00a51b08, 0x3ca04026 ] # r5 = 40260000
   - [ be32, 0x00a51b0c, 0x38a56666 ] # r5 = 40266666
   - [ be32, 0x00a51b10, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51b14, 0x419e0054 ] # go to Patch if ==
 # Bills town Trap (2)
   - [ be32, 0x00a51b18, 0x3ca0403d ] # r5 = 403d0000
   - [ be32, 0x00a51b1c, 0x38a5e4e2 ] # r5 = 403ce4e2
   - [ be32, 0x00a51b20, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51b24, 0x419e0044 ] # go to Patch if ==
 # Bills Town intro check (2)
   - [ be32, 0x00a51b28, 0x808909bc ] # r4 unique value e1ac
   - [ be32, 0x00a51b2c, 0x3ca04007 ] # r5 = 40070000
   - [ be32, 0x00a51b30, 0x38a50a3d ] # r5 = 40070a3d
   - [ be32, 0x00a51b34, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51b38, 0x419e0030 ] # go to Patch if ==
   - [ be32, 0x00a51b3c, 0x4e800020 ] # Return
 # Patch Menu/Ending level
   - [ be32, 0x00a51b40, 0x808909a0 ] # r4 unique value e190
   - [ be32, 0x00a51b44, 0x3ca03f8d ] # r5 = 3f8d0000
   - [ be32, 0x00a51b48, 0x38a52f6f ] # r5 = 3f8d2f6f
   - [ be32, 0x00a51b4c, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51b50, 0x419e0010 ] # Patch menu
   - [ be32, 0x00a51b54, 0x80a909a4 ] # r5 unique value e194
   - [ be32, 0x00a51b58, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a51b5c, 0x4c9e0020 ] # Return (bnelr)
   - [ be32, 0x00a51b60, 0xc19e03fc ] # f12 = 0.5
   - [ be32, 0x00a51b64, 0x48000008 ] # go to Patch
 # Patch function
   - [ be32, 0x00a51b68, 0xedad0332 ] # f13=f13*f12
   - [ be32, 0x00a51b6c, 0xec000332 ] # f0=f0*f12
   - [ be32, 0x00a51b70, 0x4e800020 ] # Return
 # Special thanks to HdHereidme for debug menu, Smasher248 for inital memory addresses and Skye Mods for mesh trimming
 # address. Without them this patch wouldn't have been possible.
 # This patch cycles through various post-processing modes. Values accepted are:
 #    0 = None
 #    1 = Bloom
 #    2 = Depth of Field
 #    3 = Tonemapping // reversed from orbis version confirmed this exists
 #    4 = Bloom & Depth of Field
 #    5 = Bloom & Depth of Field & Tonemapping (Default)
 tlou100_post: &tlou100_post
 #  - [ be32, 0x00a7991c, 0x38000003 ] # Post-processing modes                    (mem address: 0x14c79c7)
   - [ be32, 0x0093e300, 0xc0090990 ] # load e190 with 0
   - [ be32, 0x0093e30c, 0xc1890990 ] # load e198 with 0f
   - [ be32, 0x0093e394, 0xc0090990 ] # load e1a0 with 0f
 tlou100_mesh: &tlou100_mesh
   - [ be16, 0x00923a94, 0x9809 ]     # Disable Mesh trimming       (r3  => r0 ) (mem address: 0x142c584)
 # Many settings below are enabled/disabled in sub_A7A340. 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.
 tlou100_ssao: &tlou100_ssao
   - [ be16, 0x00a7a470, 0x9b83 ]     # Disable SSAO                (r27 => r28) (mem address: 0x14c7c0f)
 tlou100_mb: &tlou100_mb
   - [ be16, 0x00a7a4d4, 0x9b83 ]     # Disable motion blur         (r27 => r28) (mem address: 0x14c7c2e)
 tlou100_dof: &tlou100_dof
   - [ be16, 0x00a7a4e0, 0x9b83 ]     # Disable depth of field      (r27 => r28) (mem address: 0x14c7c31)
 tlou100_dbv: &tlou100_dbv
   - [ be16, 0x00a7a760, 0x9b63 ]     # Depth buffer viewport       (r28 => r27) (mem address: 0x14c7e9d)
 tlou100_dbf: &tlou100_dbf
   - [ be16, 0x00a7a7ac, 0x9b83 ]     # Depth border fix            (r27 => r28) (mem address: 0x14c7ec1)
 tlou100_db: &tlou100_db
   - [ be16, 0x00a7a7b8, 0x90e3 ]     # Depth buffer                (r27 => r6 ) (mem address: 0x14c7f93)
   - [ be16, 0x00a516ec, 0x4800 ]     # Cabin resort crash fix
 tlou100_speed: &tlou100_speed
   - [ be16, 0x00a7a6b8, 0x9383 ]     # Speedboost                               (mem address: 0x14c7e5f)
 tlou100_devmenu: &tlou100_devmenu
   # debug menu
   - [ be32, 0x000399c8, 0x39c00001 ]
   - [ be16, 0x009ace36, 0x2db6 ]
   - [ be16, 0x009ace3e, 0x2db6 ]
   # pak arg
   - [ be32, 0x004ea8ac, 0x4897451c ]
   - [ be32, 0x00e5edc8, 0x90be82e4 ]
   - [ be32, 0x00e5edcc, 0x88050000 ]
   - [ be32, 0x00e5edd0, 0x4b68bae0 ]
   # menu start
   - [ be32, 0x004e94f8, 0x39ef0020 ]
   - [ be32, 0x004e94fc, 0x48c96f34 ]
   - [ be32, 0x01180430, 0x3c800117 ]
   - [ be32, 0x01180434, 0x6084fe25 ]
   - [ be32, 0x01180438, 0x7c847a14 ]
   - [ be32, 0x0118043c, 0x4b3690c4 ]
   - [ utf8, 0x0117fe45, "shiv                           \x00" ]
   - [ utf8, 0x0117fe65, "pistol-uber-t1                 \x00" ]
   - [ utf8, 0x0117fe85, "NO_ART_GROUP                   \x00" ]
   - [ utf8, 0x0117fea5, "nail-bomb                      \x00" ]
   - [ utf8, 0x0117fec5, "two-by-four                    \x00" ]
   - [ utf8, 0x0117fee5, "nail-bomb                      \x00" ]
   - [ utf8, 0x0117ff05, "turret-sniper                  \x00" ]
   - [ utf8, 0x0117ff25, "pistol-uber-t1                 \x00" ]
   - [ utf8, 0x0117ff45, "shiv                           \x00" ]
   - [ utf8, 0x0117ff65, "radio                          \x00" ]
   - [ utf8, 0x0117ff85, "molotov                        \x00" ]
   - [ utf8, 0x0117ffa5, "bandage-apply                  \x00" ]
   - [ utf8, 0x0117ffc5, "mp-parcel                      \x00" ]
   - [ utf8, 0x0117ffe5, "machete-blade                  \x00" ]
   - [ utf8, 0x01180005, "bow-dark                       \x00" ]
   - [ utf8, 0x01180025, "mini-14-rifle                  \x00" ]
   - [ utf8, 0x01180045, "two-by-four                    \x00" ]
   - [ utf8, 0x01180065, "pistol-shotgun                 \x00" ]
   - [ utf8, 0x01180085, "beer-bottle                    \x00" ]
   - [ utf8, 0x011800a5, "lead-pipe                      \x00" ]
   - [ utf8, 0x011800c5, "lead-pipe                      \x00" ]
   - [ utf8, 0x011800e5, "flashlight                     \x00" ]
   - [ utf8, 0x01180105, "rifle-sniper                   \x00" ]
   - [ utf8, 0x01180125, "m4-rifle-t1                    \x00" ]
   - [ utf8, 0x01180145, "smoke-bomb                     \x00" ]
   - [ utf8, 0x01180165, "throw-brick                    \x00" ]
   - [ utf8, 0x01180185, "shotgun-pump-stock             \x00" ]
   - [ utf8, 0x011801a5, "NO_ART_GROUP                   \x00" ]
   - [ utf8, 0x011801c5, "bloater-pustule                \x00" ]
   - [ utf8, 0x011801e5, "taurus-66b4-revolver           \x00" ]
   - [ utf8, 0x01180205, "nail-bomb                      \x00" ]
   - [ utf8, 0x01180225, "throwing-knife                 \x00" ]
   - [ utf8, 0x01180245, "rifle-bolt                     \x00" ]
   - [ utf8, 0x01180265, "beretta-jaguar-pistol          \x00" ]
   - [ utf8, 0x01180285, "bow                            \x00" ]
   - [ utf8, 0x011802a5, "molotov                        \x00" ]
   - [ utf8, 0x011802c5, "bill-knife                     \x00" ]
   - [ utf8, 0x011802e5, "baseball-bat                   \x00" ]
   - [ utf8, 0x01180305, "pistol-9mm                     \x00" ]
   - [ utf8, 0x01180325, "machete-blade                  \x00" ]
   - [ utf8, 0x01180345, "none                           \x00" ]
   - [ utf8, 0x01180365, "rifle-improvised-assault       \x00" ]
   - [ utf8, 0x01180385, "switchblade                    \x00" ]
   - [ utf8, 0x011803a5, "baseball-bat                   \x00" ]
   - [ utf8, 0x011803c5, "hatchet                        \x00" ]
   - [ utf8, 0x011803e5, "NO_ART_GROUP                   \x00" ]
   - [ utf8, 0x01180405, "flamethrower                   \x00" ]
   # debug draw renderer on 2d
   - [ be32, 0x005f8b48, 0x7fa3eb78 ]
   - [ be32, 0x005f8b4c, 0x4bd551dd ]
   - [ be32, 0x005f8b50, 0x7fa3eb78 ]
   - [ be32, 0x005f8b54, 0x4844df29 ]
   - [ be32, 0x005f8b58, 0x7fa3eb78 ]
   - [ be32, 0x005f8b5c, 0x484b2695 ]
   - [ be32, 0x00033c5c, 0x60000000 ]
   # DC printing
   - [ be32, 0x007681e8, 0x38600001 ]
   - [ be32, 0x007681ec, 0x482b9de1 ]
   - [ be32, 0x007681f0, 0x7fa3eb78 ]
   - [ be32, 0x007681f4, 0x482b9e2d ]
   - [ be32, 0x007681f8, 0x7fa3eb78 ]
   - [ be32, 0x007681fc, 0x486de265 ]
   - [ be32, 0x00768200, 0x48000010 ]
   - [ be32, 0x007f7370, 0x48002708 ] # native-printf
   - [ be32, 0x007f7384, 0x480026f4 ] # native-print-string
   # msgout to msgcon (debug text)
   - [ be32, 0x01293838, 0x013bdab0 ] # msgcon buffer
   # start
   - [ be32, 0x00a46b70, 0x3cc00132 ]
   - [ be32, 0x00a46b74, 0x60c63220 ]
   - [ be32, 0x00a46b78, 0x3ce041b0 ]
   - [ be32, 0x00a46b7c, 0x90e60000 ]
   - [ be32, 0x00a46b80, 0xc0060000 ]
   - [ be32, 0x00a46b84, 0xc0460000 ]
   - [ be32, 0x00a46b88, 0x3ce04204 ]
   - [ be32, 0x00a46b8c, 0x90e60000 ]
   - [ be32, 0x00a46b90, 0xc0260000 ]
   - [ be32, 0x00a46b94, 0x38c0ffff ]
   - [ be32, 0x00a46b98, 0x80fe8098 ]
   - [ be32, 0x00a46b9c, 0x480656e5 ]
   - [ be32, 0x00a46ba0, 0x3cc00132 ]
   - [ be32, 0x00a46ba4, 0x60c63220 ]
   - [ be32, 0x00a46ba8, 0x3ce04422 ]
   - [ be32, 0x00a46bac, 0x60e70080 ]
   - [ be32, 0x00a46bb0, 0x90e60000 ]
   - [ be32, 0x00a46bb4, 0xc0060000 ]
   - [ be32, 0x00a46bb8, 0xc0460000 ]
   - [ be32, 0x00a46bbc, 0x3ce04204 ]
   - [ be32, 0x00a46bc0, 0x90e60000 ]
   - [ be32, 0x00a46bc4, 0xc0260000 ]
   - [ be32, 0x00a46bc8, 0x38c0ffff ]
   - [ be32, 0x00a46bcc, 0x80fe809c ]
   - [ be32, 0x00a46bd0, 0x480656b1 ]
   - [ be32, 0x00a46bd4, 0x807e809c ]
   - [ be32, 0x00a46bd8, 0x88830000 ]
   - [ be32, 0x00a46bdc, 0x2f840000 ] # check
   - [ be32, 0x00a46be0, 0x419e0010 ]
   - [ be32, 0x00a46be4, 0x38800000 ]
   - [ be32, 0x00a46be8, 0x38a00080 ]
   - [ be32, 0x00a46bec, 0x48402c2d ]
   - [ be32, 0x00a46bf0, 0x807e8098 ]
   - [ be32, 0x00a46bf4, 0x88830000 ]
   - [ be32, 0x00a46bf8, 0x2f840000 ] # check
   - [ be32, 0x00a46bfc, 0x419e0010 ]
   - [ be32, 0x00a46c00, 0x38800000 ]
   - [ be32, 0x00a46c04, 0x38a01000 ]
   - [ be32, 0x00a46c08, 0x48402c11 ]
   - [ be32, 0x00a46c0c, 0x48000080 ]
   # taskmgr
   - [ be32, 0x00819e5c, 0x807effec ]
   - [ be32, 0x0128cddc, 0x01323250 ] # our taskmgr buffer
   - [ be32, 0x0129383c, 0x01323250 ] # our taskmgr buffer
   # msgcon buffer in single area
   - [ be32, 0x00a22c20, 0x4848b340 ]
   - [ be32, 0x00eadf60, 0x3d20013b ]
   - [ be32, 0x00eadf64, 0x6129dab0 ]
   - [ be32, 0x00eadf68, 0x4bb74cbc ]
 tlou111_mlaa: &tlou111_mlaa
 #  - [ be16, 0x00aaa040, 0x9b83 ]     # store 0
   - [ be16, 0x00a80350, 0x4800 ]     # unconditonally branch to disable MLAA
   - [ be16, 0x0095b8f8, 0x4800 ]     # Skip memory check function
   - [ be32, 0x00b0e140, 0x38000000 ] # Green rain
   - [ be32, 0x00a5bc38, 0x38000000 ] # Green rain
   - [ be32, 0x00a5bc44, 0x38000000 ] # Green rain
   - [ be32, 0x00a877e0, 0x60000000 ] # skip assert: x + w <= width && y + h <= height
   - [ be32, 0x0096be58, 0xc1890990 ] # Cargo fix
 # Dof correction patch
   - [ be32, 0x0096b8b0, 0x48114aa5 ] # Call1
   - [ be32, 0x0096b8d4, 0x48114a91 ] # Call2
   - [ be32, 0x00a3a588, 0x48045ded ] # Call3
 # Func 1 Overall DoF 1
   - [ be32, 0x00a80354, 0xc09c0aa4 ] # Load f4 e294
   - [ be32, 0x00a80358, 0xc27e0424 ] # f19 = 0.3
   - [ be32, 0x00a8035c, 0xec8404f2 ] # f4*f19
   - [ be32, 0x00a80360, 0x4e800020 ] # Return
 # Func 2 Cutscene Dof
   - [ be32, 0x00a80364, 0xc01c0aac ] # Load f0 e29c
   - [ be32, 0x00a80368, 0xc17e1b64 ] # f11 = 0.75
   - [ be32, 0x00a8036c, 0xec0002f2 ] # f0*f11
   - [ be32, 0x00a80370, 0x4e800020 ] # Return
 # Func 3 Overall Dof 2
   - [ be32, 0x00a80374, 0x3d200151 ] # r9 = 1510000
   - [ be32, 0x00a80378, 0x3929e29c ] # r9 = 150e29c
   - [ be32, 0x00a8037c, 0x80080014 ] # r0 = key addr
   - [ be32, 0x00a80380, 0x7f804800 ] # Compare r0 to r9
   - [ be32, 0x00a80384, 0x409e000c ]
   - [ be32, 0x00a80388, 0xc01e137c ] # f0 = 0.3
   - [ be32, 0x00a8038c, 0xd008000c ] # Store f0
   - [ be32, 0x00a80390, 0xc0050000 ] # Restore f0
   - [ be32, 0x00a80394, 0x4e800020 ] # Return
 # Bloom correction patch
   - [ be32, 0x0096be54, 0x48114549 ] # Call
   - [ be32, 0x00a8039c, 0xc1a909a4 ] # Load f13
   - [ be32, 0x00a803a0, 0xc19e059c ] # f12 = 0.69
   - [ be32, 0x00a803a4, 0x808909a8 ] # r4 unique value e198
   - [ be32, 0x00a803a8, 0x2f840000 ] # if r4 <= 0
   - [ be32, 0x00a803ac, 0x409d0058 ] # Skip to Main menu
 # Bills town Bloater and escape(2)
   - [ be32, 0x00a803b0, 0x3ca03ba4 ] # r5 = 3ba40000
   - [ be32, 0x00a803b4, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a803b8, 0x419c0074 ] # go to Patch if less
 # Bills town Cemetery(1)
   - [ be32, 0x00a803bc, 0x808909a4 ] # r4 unique value e194
   - [ be32, 0x00a803c0, 0x3ca03e80 ] # r5 = 3e800000
   - [ be32, 0x00a803c4, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a803c8, 0x419c0068 ] # go to Patch if less
 # Bills town main street(2)
   - [ be32, 0x00a803cc, 0x3ca04026 ] # r5 = 40260000
   - [ be32, 0x00a803d0, 0x38a56666 ] # r5 = 40266666
   - [ be32, 0x00a803d4, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a803d8, 0x419e0054 ] # go to Patch if ==
 # Bills town Trap(2)
   - [ be32, 0x00a803dc, 0x3ca0403d ] # r5 = 403d0000
   - [ be32, 0x00a803e0, 0x38a5e4e2 ] # r5 = 403ce4e2
   - [ be32, 0x00a803e4, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a803e8, 0x419e0044 ] # go to Patch if ==
 # Bills Town intro check(2)
   - [ be32, 0x00a803ec, 0x808909bc ] # r4 unique value e1ac
   - [ be32, 0x00a803f0, 0x3ca04007 ] # r5 = 40070000
   - [ be32, 0x00a803f4, 0x38a50a3d ] # r5 = 40070a3d
   - [ be32, 0x00a803f8, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a803fc, 0x419e0030 ] # go to Patch if ==
   - [ be32, 0x00a80400, 0x4e800020 ] # Return
 # Patch Menu/Ending level
   - [ be32, 0x00a80404, 0x808909a0 ] # r4 unique value e190
   - [ be32, 0x00a80408, 0x3ca03f8d ] # r5 = 3f8d0000
   - [ be32, 0x00a8040c, 0x38a52f6f ] # r5 = 3f8d2f6f
   - [ be32, 0x00a80410, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a80414, 0x419e0010 ] # Patch menu
   - [ be32, 0x00a80418, 0x80a909a4 ] # r5 unique value e194
   - [ be32, 0x00a8041c, 0x7f842800 ] # compare r4 to r5
   - [ be32, 0x00a80420, 0x4c9e0020 ] # Return (bnelr)
   - [ be32, 0x00a80424, 0xc19e034c ] # f12 = 0.5
   - [ be32, 0x00a80428, 0x48000008 ] # go to Patch
 # Patch function
   - [ be32, 0x00a8042c, 0xedad0332 ] # f13=f13*f12
   - [ be32, 0x00a80430, 0xec000332 ] # f0=f0*f12
   - [ be32, 0x00a80434, 0x4e800020 ] # Return
 # Special thanks to HdHereidme for debug menu, Smasher248 for inital memory addresses and Skye Mods for mesh trimming
 # address. Without them this patch wouldn't have been possible.
 # This patch cycles through various post-processing modes. Values accepted are:
 #    0 = None
 #    1 = Bloom
 #    2 = Depth of Field
 #    3 = Tonemapping // reversed from orbis version confirmed this exists
 #    4 = Bloom & Depth of Field
 #    5 = Bloom & Depth of Field & Tonemapping (Default)
 tlou111_post: &tlou111_post
 #  - [ be32, 0x00aa944c, 0x38000003 ] # Post-processing modes                    (mem address: 0x1571867)
   - [ be32, 0x0096be4c, 0xc0090990 ] # load e190 with 0
   - [ be32, 0x0096be58, 0xc1890990 ] # load e198 with 0
   - [ be32, 0x0096bee0, 0xc0090990 ] # load e1a0 with 0
 tlou111_mesh: &tlou111_mesh
   - [ be16, 0x009515d8, 0x9809 ]     # Disable Mesh trimming       (r3  => r0 ) (mem address: 0x14a9604)
 # Many settings below are enabled/disabled in sub_AA9E6C. 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.
 tlou111_ssao: &tlou111_ssao
   - [ be16, 0x00aa9f9c, 0x9b83 ]     # Disable SSAO
 tlou111_mb: &tlou111_mb
   - [ be32, 0x0096aa94, 0x480000e0 ] # Disable motion blur
 tlou111_dof: &tlou111_dof
   - [ be16, 0x00aaa00c, 0x9b83 ]     # Disable depth of field      (r27 => r28) (mem address: 0x1571ad1)
 tlou111_dbf: &tlou111_dbf
   - [ be16, 0x00aaa2d8, 0x9b83 ]     # Depth border fix            (r27 => r28) (mem address: 0x1571d65)
 tlou111_db: &tlou111_db
   - [ be16, 0x00aaa2e4, 0x90c3 ]     # Depth buffer                (r27 => r6 ) (mem address: 0x1571e37)
   - [ be16, 0x00aaa290, 0x9b63 ]     # Depth buffer viewport       (r28 => r27) (mem address: 0x1571d41)
   - [ be32, 0x00ab9ec8, 0x38000001 ] # Depth buffer viewport       (r28 => r27) (mem address: 0x1571d41)
 # Cabin resort fix
   - [ be64, 0x01572020, 0x1070fd7d7973c900 ] # first line
   - [ be64, 0x01572030, 0x674da76646c80092 ] # second line p.1
   - [ be32, 0x01572039, 0x2bfb00a3 ]         # second line p.2
   - [ be64, 0x01572040, 0x00003f8000014034 ] # third line p.1
   - [ be64, 0x01572048, 0x0000403400013f80 ] # third line p.2
   - [ be64, 0x01572052, 0x3f80000000a3a588 ] # Initial Current result
 # Alpha pass func
   - [ be32, 0x00a7ffac, 0x419e0020 ] # Go to Alpha pass check
   - [ be32, 0x00a7ffb0, 0x3d200157 ] # r9 = 0x1570000
 # Check Task id
   - [ be32, 0x00a7ffb4, 0x3880201f ] # r4 = 0x201f
   - [ be32, 0x00a7ffb8, 0x4800018d ] # Task id func Call
   - [ be32, 0x00a7ffbc, 0x419e0010 ] # beq to Alpha pass check
   - [ be32, 0x00a7ffc0, 0x98091d41 ] # stb Disable Alpha pass
   - [ be32, 0x00a7ffc4, 0xb0092028 ] # sth Store flag (0x1572028)
   - [ be32, 0x00a7ffc8, 0x480001a8 ] # Go to a80170
 # Alpha pass check
   - [ be32, 0x00a7ffcc, 0x88691d41 ] # lbz r3 = Alpha pass
   - [ be32, 0x00a7ffd0, 0x7f801800 ] # cmpw r0 vs r3
   - [ be32, 0x00a7ffd4, 0x409e019c ] # Skip to a80170
   - [ be32, 0x00a7ffd8, 0x2f800000 ] # cmpwi r0 vs 0
   - [ be32, 0x00a7ffdc, 0x419e0010 ] # beq
   - [ be32, 0x00a7ffe0, 0x38800000 ] # li r4 = 0
   - [ be32, 0x00a7ffe4, 0xb0892028 ] # sth Store flag (0x1572028)
   - [ be32, 0x00a7ffe8, 0x48000008 ]
   - [ be32, 0x00a7ffec, 0x38800001 ] # li r4 = 1
   - [ be32, 0x00a7fff0, 0x98891d41 ] # stb r4 Store Alpha pass
   - [ be32, 0x00a7fff4, 0x4800017c ] # Go to a80170
 # Task id func
   - [ be32, 0x00a80144, 0x7ca92214 ] # add r5 = r9 + r4
   - [ be32, 0x00a80148, 0x3c800142 ] # lis r4 = 0x1420000
   - [ be32, 0x00a8014c, 0x88649ef4 ] # lbz r3 = Task id first byte
   - [ be32, 0x00a80150, 0x8c850001 ] # lbzu r4 table byte
   - [ be32, 0x00a80154, 0x2f840000 ] # r4 vs 0 (Default case)
   - [ be32, 0x00a80158, 0x419e000c ] # beq (r4 = 0)
   - [ be32, 0x00a8015c, 0x7f832000 ] # cmpw r3 vs r4
   - [ be32, 0x00a80160, 0x409efff0 ] # Go back
   - [ be32, 0x00a80164, 0x2f840000 ] # cmpwi r4 vs 0
   - [ be32, 0x00a80168, 0x4e800020 ] # Return
 # The Main function
   - [ be32, 0x00a3a584, 0x48045a75 ] # Function Call
   - [ be32, 0x00a7fff8, 0x3d200157 ] # lis r9 = 0x1570000
   - [ be32, 0x00a7fffc, 0x90692060 ] # stw Store r3
   - [ be32, 0x00a80000, 0x90a92064 ] # stw Store r5
   - [ be32, 0x00a80004, 0x3ca00151 ] # lis r5 = 0x1510000
   - [ be32, 0x00a80008, 0x38a5db24 ] # subi r5 = 0x150db24
   - [ be32, 0x00a8000c, 0x80050aec ] # lwz r0 = blizzard byte
   - [ be32, 0x00a80010, 0x2f800000 ] # cmpwi r0 vs 0
   - [ be32, 0x00a80014, 0x419e0114 ] # beq to Default store (a80128)
   - [ be32, 0x00a80018, 0xa0092028 ] # lhz r0 = Alpha pass flag
   - [ be32, 0x00a8001c, 0x2f800001 ] # cmpwi r0 vs 1
   - [ be32, 0x00a80020, 0x419e0108 ] # beq to Default store (a80128)
 # Check key addrs
   - [ be32, 0x00a80024, 0x80080014 ] # lwz r0 = key addr
   - [ be32, 0x00a80028, 0x7f802800 ] # cmpw r0 vs r5(0x150db24)
   - [ be32, 0x00a8002c, 0x38803f00 ] # li r4 = 3f00 Final Result
   - [ be32, 0x00a80030, 0x419e00f0 ] # Go to store result (a80120)
   - [ be32, 0x00a80034, 0x38a50030 ] # addi r5 = 0x150db54
   - [ be32, 0x00a80038, 0x7f802800 ] # cmpw r0 vs r5
   - [ be32, 0x00a8003c, 0x419e00e4 ] # Go to store result (a80120)
   - [ be32, 0x00a80040, 0x38a5ffe4 ] # subi r5 = 0x150db38
   - [ be32, 0x00a80044, 0x7f802800 ] # cmpw r0 vs r5
   - [ be32, 0x00a80048, 0x419e0024 ] # Go to 0x150db38 case (a8006c)
   - [ be32, 0x00a8004c, 0x38a5fff8 ] # subi r5 = 0x150db30
   - [ be32, 0x00a80050, 0x7f802800 ] # cmpw r0 vs r5
   - [ be32, 0x00a80054, 0x409e00d4 ] # Go to Default store (a80128)
 # 0x150db30 case
   - [ be32, 0x00a80058, 0x3880203b ] # li r4 = 0x203b(case a3)
   - [ be32, 0x00a8005c, 0x480000e9 ] # Task id func Call
   - [ be32, 0x00a80060, 0x419e00c8 ] # Go to Default store (a80128)
   - [ be32, 0x00a80064, 0x38803f00 ] # li r4 = 3f00
   - [ be32, 0x00a80068, 0x480000b8 ] # Go to Store result (a80120)
 # 0x150db38 Special cases
   - [ be32, 0x00a8006c, 0x3880203b ] # li r4 = 0x203b(case a3)
   - [ be32, 0x00a80070, 0x480000d5 ] # Task id func Call
   - [ be32, 0x00a80074, 0x419e000c ] # Go to next check
   - [ be32, 0x00a80078, 0x38803f00 ] # li r4 = 0x3f00 Final result
   - [ be32, 0x00a8007c, 0x480000a4 ] # Go to Store result (a80120)
   - [ be32, 0x00a80080, 0x38802036 ] # li r4 0x2036(case 92)
   - [ be32, 0x00a80084, 0x480000c1 ] # Task id func Call
   - [ be32, 0x00a80088, 0x419e000c ] # Go to next check
   - [ be32, 0x00a8008c, 0x38804040 ] # li r4 = 0x4040 Final result
   - [ be32, 0x00a80090, 0x48000090 ] # Go to Store result (a80120)
   - [ be32, 0x00a80094, 0x38802038 ] # li r4 = 0x2038 (cases 2b/fb)
   - [ be32, 0x00a80098, 0x480000ad ] # Task id func Call
   - [ be32, 0x00a8009c, 0x419e000c ] # Skip to usual cases
   - [ be32, 0x00a800a0, 0x38003f80 ] # li r0 = 0x3f80 Final Result
   - [ be32, 0x00a800a4, 0x4800007c ] # Go to Store result (a80120)
   - [ be32, 0x00a800a8, 0x3880202f ] # r4 = 0x202f(main cases)
   - [ be32, 0x00a800ac, 0x48000099 ] # Task id func Call
   - [ be32, 0x00a800b0, 0x419e0014 ] # to Joel cases
   - [ be32, 0x00a800b4, 0x3c60013d ] # lis r3 = 0x13d0000
   - [ be32, 0x00a800b8, 0x886371b4 ] # lbz r3 = Inside/outside byte (13d71b4) (r3)
   - [ be32, 0x00a800bc, 0x38a9203c ] # addi r5 = r9+0x203c(0x157203c Ellie cases)
   - [ be32, 0x00a800c0, 0x48000010 ] #
   - [ be32, 0x00a800c4, 0x3c600151 ] # lis r3 = 0x1510000
   - [ be32, 0x00a800c8, 0x8063e600 ] # lbz r3 = Inside/outside byte (150e600) (r3)
   - [ be32, 0x00a800cc, 0x38a92044 ] # addi r5 = r9+0x2044(0x1572044 Joel cases)
 # Main cases
   - [ be32, 0x00a800d0, 0xa4850004 ] # lhzu r4 from r5
   - [ be32, 0x00a800d4, 0x7f832000 ] # cmpw r3 vs r4
   - [ be32, 0x00a800d8, 0x409efff8 ] # Go back
   - [ be32, 0x00a800dc, 0xa0892050 ] # lhz r4 = Main byte(0x1502050)
   - [ be32, 0x00a800e0, 0x7f832000 ] # cmpw r3 vs r4
   - [ be32, 0x00a800e4, 0xa0850002 ] # lhz r4 = eq-Current/neq-Target result
   - [ be32, 0x00a800e8, 0x419e0028 ] # beq to Store current result
   - [ be32, 0x00a800ec, 0xa0092052 ] # lhz r0 = Current result
   - [ be32, 0x00a800f0, 0x7f802000 ] # cmpw r0 vs r4
   - [ be32, 0x00a800f4, 0x419e0024 ] # beq to Store main byte
 # Switcher (spends 30 frames)
   - [ be32, 0x00a800f8, 0x2f843f80 ] # cmpwi r4 vs 0x3f80
   - [ be32, 0x00a800fc, 0x7c040378 ] # mr r4 = r0
   - [ be32, 0x00a80100, 0x419e000c ] # beq
   - [ be32, 0x00a80104, 0x38840006 ] # addi r4 = r4 + 6
   - [ be32, 0x00a80108, 0x48000008 ] #
   - [ be32, 0x00a8010c, 0x3884fffa ] # subi r4 = r4 - 6
   - [ be32, 0x00a80110, 0xb0892052 ] # sth r4 Store new current result
   - [ be32, 0x00a80114, 0x4800000c ] # b to Store final result
 # Store main byte
   - [ be32, 0x00a80118, 0xb0692050 ] # sth r3 Store main byte  (r9)
 # Store results
   - [ be32, 0x00a8011c, 0xa0892052 ] # sth r4 = Current resullt  (r9)
   - [ be32, 0x00a80120, 0xb088000c ] # sth r4 Store final result (r8)
   - [ be32, 0x00a80124, 0x48000008 ] # Go to return
   - [ be32, 0x00a80128, 0xd3e8000c ] # Default store
 # Returning
   - [ be32, 0x00a8012c, 0x80092056 ] # lwz Load r0 as LR
   - [ be32, 0x00a80130, 0x7c0803a6 ] # mtlr LR = r0
   - [ be32, 0x00a80134, 0x80692060 ] # Restore r3
   - [ be32, 0x00a80138, 0x80a92064 ] # Restore r5
   - [ be32, 0x00a8013c, 0x38920001 ] # Restore r4
   - [ be32, 0x00a80140, 0x4e800020 ] # Return
 tlou111_speed: &tlou111_speed
   - [ be16, 0x00aaa1e8, 0x9383 ]     # Speedboost                               (mem address: 0x1571d03)
 tlou111_devplus: &tlou111_devplus
   - [ be32, 0x012850e8, 0x00e8c3e7 ] # str ptr
   - [ be32, 0x0128515c, 0x00e8c57f ] # str ptr
   - [ be16, 0x00e8c318, 0x202b ] # _+
   - [ byte, 0x00e8c3e7, 42 ] # * in int
   - [ byte, 0x00e8c57f, 42 ] # * in int
 # useless memory option replace with rendering
 # point addr from [] to [], this offsets 002dcc40 store 00 and onwards.
 # i.e [] now becomes [] and so on
   - [ be32, 0x0129732c, 0x015715f0 ] # pointer
   - [ be32, 0x002dcc40, 0x38bc00be ] # disable vis
   - [ be32, 0x012973fc, 0x00ee0490 ]
   - [ be16, 0x00ee0498, 0x5669 ]     # capitalise visibility for
   - [ be32, 0x002dcc74, 0x38bc06d9 ] # wireframe
   - [ be32, 0x01297400, 0x00ee01d8 ]
   - [ be32, 0x002dcca8, 0x38bc06da ] # see through
   - [ be32, 0x01297404, 0x00ee01f0 ]
   - [ be32, 0x002dccdc, 0x38bc06db ] # point mode
   - [ be32, 0x01297408, 0x00ee0210 ]
   - [ be32, 0x002dcd10, 0x38bc04f4 ] # post on spu
   - [ be32, 0x0129740c, 0x00f05a48 ]
   - [ be32, 0x002dcd44, 0x38bc04de ] # motion blur
   - [ be32, 0x01297410, 0x00f05618 ]
   - [ be32, 0x002dcd78, 0x38bc04e1 ] # dof
   - [ be32, 0x01297414, 0x00f05410 ]
   - [ be32, 0x012974e4, 0x0135bfe8 ] # ptr
   - [ be64, 0x00ea8ba0, 0x456e61626c652050 ] # rename string
   - [ be32, 0x00ea8ba8, 0x61757365 ]
   - [ byte, 0x00ea8bac, 0x00 ]       # term str
   - [ be32, 0x01297418, 0x00e8d580 ]
   - [ byte, 0x00eeeef8, 0x00 ]
   - [ byte, 0x00eeef10, 0x00 ]
   - [ byte, 0x00eeef28, 0x00 ]
   - [ byte, 0x00eeef50, 0x00 ]
   - [ be32, 0x012bf4a4, 0x00e8d520 ]
   - [ be32, 0x012bf4a8, 0x00e8d550 ]
 # str, perhaps use utf8 here?
   - [ be64, 0x00e8d520, 0x437265646974733a ]
   - [ be64, 0x00e8d550, 0x4d61646520627920 ]
   - [ be64, 0x00e8d558, 0x696c6c7573696f6e ]
   - [ be64, 0x00e8d560, 0x2c20467265616b6f ]
   - [ be64, 0x00e8d568, 0x20616e6420536d61 ]
   - [ be64, 0x00e8d570, 0x7368657232343800 ]
 # vram stats
   - [ be64, 0x00e8d580, 0x53686f7720437265 ]
   - [ be32, 0x00e8d588, 0x64697473 ]
 # console exclusive code, we don't need this due to post on spu off
   - [ be32, 0x0129741c, 0x0157186e ] # ptr
 #  - [ be32, 0x00aa9444, 0x38600001 ] # remove branch and set r3 to 1
 #  - [ be16, 0x00aa9464, 0x9869 ]     # load from r3
 tlou111_cparts: &tlou111_cparts
   - [ utf8, 0x00e8d600, "Infinite Everything (Ammo, Items, Skills, Parts)" ]
   #- [ be64, 0x00e8d600, 0x496e66696e697465 ] # str Infinite Everything (Ammo, Items, Skills, Parts)
   #- [ be64, 0x00e8d608, 0x2045766572797468 ]
   #- [ be64, 0x00e8d610, 0x696e672028416d6d ]
   #- [ be64, 0x00e8d618, 0x6f2c204974656d73 ]
   #- [ be64, 0x00e8d620, 0x2c20536b696c6c73 ]
   #- [ be64, 0x00e8d628, 0x2c20506172747329 ]
   - [ be32, 0x01286780, 0x00e8d600 ] # point addr to e8e490
   - [ be32, 0x01286784, 0x014f3412 ] # point addr to 014f3412
  1. add
   - [ be32, 0x0003495c, 0x48e58c35 ] # bl 00e8d590
   - [ be32, 0x00e8d590, 0x3fa0014f ] # r29 14f0000
   - [ be32, 0x00e8d594, 0x881d3412 ] # lbz r0, 0x3412, (r29)
   - [ be32, 0x00e8d598, 0x2f800000 ] # cmp r0, 0x0
   - [ be32, 0x00e8d59c, 0x409e0008 ] # bne 0xe8d5a4
   - [ be32, 0x00e8d5a0, 0x7f7fd22e ] # og lhzx
   - [ be32, 0x00e8d5a4, 0x4e800020 ] # ret
   - [ be32, 0x00034968, 0x2f9d096f ] # r29 to 512
   - [ be32, 0x00034970, 0x3ba0096f ] # li r29 512
  1. sub
   - [ be32, 0x000336c0, 0x7e2802a6 ] # mflr r17,LR
   - [ be32, 0x000336c4, 0x48e59f01 ] # call 3
   - [ be32, 0x000336c8, 0x7e2803a6 ] # mtlr LR,r17
   - [ be32, 0x000336cc, 0x3a200000 ] # r17 = 0
   - [ be32, 0x00e8d5c4, 0x7c0b4a2e ] # og lhzx
   - [ be32, 0x00e8d5c8, 0x5408043e ] # og rlwinm
   - [ be32, 0x00e8d5cc, 0x3e00014f ] # r16 = 14f0000
   - [ be32, 0x00e8d5d0, 0x89f03412 ] # lbz r15,0x3412,r16
   - [ be32, 0x00e8d5d4, 0x2f8f0000 ] # r15 vs 0
   - [ be32, 0x00e8d5d8, 0x409e0008 ] # bne
   - [ be32, 0x00e8d5dc, 0x7c050050 ] # og sub
   - [ be32, 0x00e8d5e0, 0x7f882800 ] # og cmpw
   - [ be32, 0x00e8d5e4, 0x39e00000 ] # r15 = 0
   - [ be32, 0x00e8d5e8, 0x3a000000 ] # r16 = 0
   - [ be32, 0x00e8d5ec, 0x4e800020 ] # ret
 tlou111_nailbombsoftlockfix: &tlou111_nailbombsoftlockfix
   - [ be32, 0x0069f7ac, 0x4b9c012d ] # bl SUB_0005f8d8
   - [ be32, 0x0005f8d8, 0x3c800142 ] # lis r4,0x142
   - [ be32, 0x0005f8dc, 0xa0849ef4 ] # lhz r4,-0x610c(r4)
   - [ be32, 0x0005f8e0, 0x70847fff ] # andi r4,r4,0x7fff
   - [ be32, 0x0005f8e4, 0x2f8440bc ] # cmpwi cr7,r4,0x40bc
   - [ be32, 0x0005f8e8, 0x419e0028 ] # beq cr7,LAB_0005f910
   - [ be32, 0x0005f8ec, 0x2f842466 ] # cmpwi cr7,r4,0x2466
   - [ be32, 0x0005f8f0, 0x419e0020 ] # beq cr7,LAB_0005f910
   - [ be32, 0x0005f8f4, 0x2f841ab6 ] # cmpwi cr7,r4,0x1ab6
   - [ be32, 0x0005f8f8, 0x419e0018 ] # beq cr7,LAB_0005f910
   - [ be32, 0x0005f8fc, 0x2f841181 ] # cmpwi cr7,r4,0x1181
   - [ be32, 0x0005f900, 0x419e0010 ] # beq cr7,LAB_0005f910
   - [ be32, 0x0005f904, 0x2f844ad3 ] # cmpwi cr7,r4,0x4ad3
   - [ be32, 0x0005f908, 0x419e0008 ] # beq cr7,LAB_0005f910
   - [ be32, 0x0005f90c, 0x48000008 ] # b   LAB_0005f914
   - [ be32, 0x0005f910, 0x38000001 ] # li  r0,0x1
   - [ be32, 0x0005f914, 0x389b0070 ] # addiparam_2,r27,0x70
   - [ be32, 0x0005f918, 0x4e800020 ] # blr
 tlou111_devmenu: &tlou111_devmenu
   - [ be32, 0x0003a69c, 0x39e00001 ]
   - [ be16, 0x009da99a, 0x2db6 ]
   - [ be16, 0x009da9a2, 0x2db6 ]
   - [ be32, 0x00a1a200, 0x60000000 ] # Remove "!" model render
   - [ be32, 0x0004113c, 0x48000028 ] # No double line in Gameplay Menu
   # str lookup
   - [ utf8, 0x011b4145, "shiv                           " ]
   - [ utf8, 0x011b4165, "pistol-uber-t1                 " ]
   - [ utf8, 0x011b4185, "baseball-bat                   " ]
   - [ utf8, 0x011b41a5, "hatchet                        " ]
   - [ utf8, 0x011b41c5, "NO_ART_GROUP                   " ]
   - [ utf8, 0x011b41e5, "nail-bomb                      " ]
   - [ utf8, 0x011b4205, "two-by-four                    " ]
   - [ utf8, 0x011b4225, "nail-bomb                      " ]
   - [ utf8, 0x011b4245, "turret-sniper                  " ]
   - [ utf8, 0x011b4265, "rifle-lever-action             " ]
   - [ utf8, 0x011b4285, "pistol-uber-t1                 " ]
   - [ utf8, 0x011b42a5, "shiv                           " ]
   - [ utf8, 0x011b42c5, "radio                          " ]
   - [ utf8, 0x011b42e5, "molotov                        " ]
   - [ utf8, 0x011b4305, "bandage-apply                  " ]
   - [ utf8, 0x011b4325, "mp-parcel                      " ]
   - [ utf8, 0x011b4345, "gren-launcher-improvised       " ]
   - [ utf8, 0x011b4365, "shotgun-dbl-barrel             " ]
   - [ utf8, 0x011b4385, "machete-blade                  " ]
   - [ utf8, 0x011b43a5, "bow-dark                       " ]
   - [ utf8, 0x011b43c5, "rifle-variable                 " ]
   - [ utf8, 0x011b43e5, "mini-14-rifle                  " ]
   - [ utf8, 0x011b4405, "two-by-four                    " ]
   - [ utf8, 0x011b4425, "pistol-shotgun                 " ]
   - [ utf8, 0x011b4445, "rifle-improvised-fullauto      " ]
   - [ utf8, 0x011b4465, "super-soaker                   " ]
   - [ utf8, 0x011b4485, "NO_ART_GROUP                   " ]
   - [ utf8, 0x011b44a5, "beer-bottle                    " ]
   - [ utf8, 0x011b44c5, "crossbow-dlc                   " ]
   - [ utf8, 0x011b44e5, "lead-pipe                      " ]
   - [ utf8, 0x011b4505, "lead-pipe                      " ]
   - [ utf8, 0x011b4525, "flamethrower                   " ]
   - [ utf8, 0x011b4545, "desert-eagle-t1                " ]
   - [ utf8, 0x011b4565, "flashlight                     " ]
   - [ utf8, 0x011b4585, "rifle-sniper                   " ]
   - [ utf8, 0x011b45a5, "m4-rifle-t1                    " ]
   - [ utf8, 0x011b45c5, "smoke-bomb                     " ]
   - [ utf8, 0x011b45e5, "throw-brick                    " ]
   - [ utf8, 0x011b4605, "shotgun-pump-stock             " ]
   - [ utf8, 0x011b4625, "silenced-galil-rifle           " ]
   - [ utf8, 0x011b4645, "NO_ART_GROUP                   " ]
   - [ utf8, 0x011b4665, "bloater-pustule                " ]
   - [ utf8, 0x011b4685, "taurus-66b4-revolver           " ]
   - [ utf8, 0x011b46a5, "nail-bomb                      " ]
   - [ utf8, 0x011b46c5, "rifle-improvised-assault       " ]
   - [ utf8, 0x011b46e5, "throwing-knife                 " ]
   - [ utf8, 0x011b4705, "rifle-bolt                     " ]
   - [ utf8, 0x011b4725, "beretta-jaguar-pistol          " ]
   - [ utf8, 0x011b4745, "bow                            " ]
   - [ utf8, 0x011b4765, "molotov                        " ]
   - [ utf8, 0x011b4785, "bill-knife                     " ]
   - [ utf8, 0x011b47a5, "baseball-bat                   " ]
   - [ utf8, 0x011b47c5, "mini-14-rifle                  " ]
   - [ utf8, 0x011b47e5, "pistol-glock-burst             " ]
   - [ utf8, 0x011b4805, "pistol-9mm                     " ]
   - [ utf8, 0x011b4825, "shotgun-tactical               " ]
   - [ utf8, 0x011b4845, "mal-gas-can                    " ]
   - [ utf8, 0x011b4865, "machete-blade                  " ]
   - [ utf8, 0x011b4885, "none                           " ]
   - [ utf8, 0x011b48a5, "rifle-improvised-assault       " ]
   - [ utf8, 0x011b48c5, "binoculars                     " ]
   - [ utf8, 0x011b48e5, "switchblade                    " ]
   - [ utf8, 0x011b4905, "rifle-improvised-fullauto      " ]
   # write str to menu init
   - [ be32, 0x004f1690, 0x39ef0020 ] #     addi       r15,r15,0x20
   - [ be32, 0x004f1694, 0x489c5b99 ] #     bl         SUB_00eb722c
   - [ be32, 0x00eb722c, 0x3c80011b ] #     lis        r4,0x11b
   - [ be32, 0x00eb7230, 0x60844125 ] #     ori        r4,r4,0x4125
   - [ be32, 0x00eb7234, 0x7c847a14 ] #     add        r4,r4,r15
   - [ be32, 0x00eb7238, 0x4e800020 ] #     blr
   # wrtie ptr for pak arg
   - [ be32, 0x004f2a0c, 0x489b08bc ] #     b          LAB_00ea32c8
   - [ be32, 0x00ea32c8, 0x90be82e4 ] #     stw        r5,-0x7d1c(r30) store pointer to null
   - [ be32, 0x00ea32cc, 0x88050000 ] #     lbz        r0,0x0(r5) og
   - [ be32, 0x00ea32d0, 0x4b64f740 ] #     b          LAB_004f2a10
   - [ be32, 0x00574e3c, 0x38600064 ]
   - [ be32, 0x00574e40, 0x907c0000 ]
   - [ be32, 0x00574e44, 0x807c0000 ]
   - [ be32, 0x00574e48, 0x60000000 ]
     # control page
   - [ be32, 0x0034d24c, 0x48b8f27c ] # get page ptr (start)
   - [ be32, 0x00edc4c8, 0x2f890000 ] # check if page ptr is null
   - [ be32, 0x00edc4cc, 0x419e0018 ] # do original code
   - [ be32, 0x00edc4d0, 0x7fc4f378 ] # save working register
   - [ be32, 0x00edc4d4, 0x3bdef51c ] # partially resolve page ptr
   - [ be32, 0x00edc4d8, 0x80a90000 ] # get ptr
   - [ be32, 0x00edc4dc, 0x90be8030 ] # store ptr
   - [ be32, 0x00edc4e0, 0x7c9e2378 ] # restore working register
   - [ be32, 0x00edc4e4, 0x4b470d6c ] # return
   # script print
   # Gameplay Menu bool
   - [ utf8, 0x00e902d8, "SS Printout to Msgcon\x00" ]
   - [ be32, 0x01286784, 0x0150cfe0 ]
   - [ be32, 0x00a5228c, 0x39200001 ] # force mode 1
   - [ be32, 0x00a23ed0, 0x4802e330 ]
   - [ utf8, 0x00efc158, "%x" ]       # branch in hex
   - [ utf8, 0x00efc173, "%x" ]       # branch in hex
   - [ utf8, 0x00efc177, "%x" ]       # branch in hex
   - [ utf8, 0x00efc197, "%x" ]       # branch in hex
   - [ utf8, 0x00efc19b, "%x" ]       # branch in hex
   - [ utf8, 0x00efc7fe, "%x" ]       # imm in hex
   # debug renderer
   - [ be32, 0x0061cf10, 0x7fa3eb78 ]
   - [ be32, 0x0061cf14, 0x4bd47aad ]
   - [ be32, 0x0061cf18, 0x7fa3eb78 ]
   - [ be32, 0x0061cf1c, 0x484bb6b9 ]
   - [ be32, 0x0061cf20, 0x7fa3eb78 ]
   - [ be32, 0x0061cf24, 0x484756c9 ]
   - [ be32, 0x00036a04, 0x60000000 ]
   # msgcon buff
   - [ be32, 0x012c6650, 0x013f1340 ]
   - [ be32, 0x00a92720, 0x60000000 ]
   # msgout to msgcon start
   - [ be32, 0x00a92724, 0x3cc00135 ]
   - [ be32, 0x00a92728, 0x60c67130 ]
   - [ be32, 0x00a9272c, 0x3ce041b0 ]
   - [ be32, 0x00a92730, 0x90e60000 ]
   - [ be32, 0x00a92734, 0xc0060000 ]
   - [ be32, 0x00a92738, 0xc0460000 ]
   - [ be32, 0x00a9273c, 0x3ce04204 ]
   - [ be32, 0x00a92740, 0x90e60000 ]
   - [ be32, 0x00a92744, 0xc0260000 ]
   - [ be32, 0x00a92748, 0x38c0ffff ]
   - [ be32, 0x00a9274c, 0x80fe8098 ]
   - [ be32, 0x00a92750, 0x48047821 ]
   - [ be32, 0x00a92754, 0x807e8098 ]
   - [ be32, 0x00a92758, 0x38800000 ]
   - [ be32, 0x00a9275c, 0x38a01000 ]
   - [ be32, 0x00a92760, 0x483e8fe1 ]
   - [ be32, 0x00a92764, 0x3cc00135 ]
   - [ be32, 0x00a92768, 0x60c67130 ]
   - [ be32, 0x00a9276c, 0x3ce04248 ]
   - [ be32, 0x00a92770, 0x90e60000 ]
   - [ be32, 0x00a92774, 0xc0260000 ]
   - [ be32, 0x00a92778, 0x3ce04422 ]
   - [ be32, 0x00a9277c, 0x60e70080 ]
   - [ be32, 0x00a92780, 0x90e60000 ]
   - [ be32, 0x00a92784, 0xc0460000 ]
   - [ be32, 0x00a92788, 0x3ce00135 ]
   - [ be32, 0x00a9278c, 0x60e77148 ]
   - [ be32, 0x00a92790, 0x38c0ffff ]
   - [ be32, 0x00a92794, 0x480477dd ]
   - [ be32, 0x00a92798, 0x48000064 ]
   # msgcon buffer in single area
   - [ be32, 0x00a519f8, 0x4848a738 ]
   - [ be32, 0x00edc130, 0x3d20013f ]
   - [ be32, 0x00edc134, 0x61291340 ]
   - [ be32, 0x00edc138, 0x4bb758c4 ]
   # taskmgr
   - [ be32, 0x0083f9c0, 0x807eff84 ]
   - [ be32, 0x012befe8, 0x01357148 ]
   # display-msg
   - [ be32, 0x008529f8, 0x60000000 ]
   - [ be32, 0x00852a04, 0x60000000 ]
   # DC printing
   - [ be32, 0x0081c060, 0x48002cbc ] # printf
   - [ be32, 0x0081c074, 0x48002ca8 ] # print-string
   - [ be32, 0x0078c5a4, 0x38600001 ]
   - [ be32, 0x0078c5a8, 0x482c5c05 ]
   - [ be32, 0x0078c5ac, 0x7fa3eb78 ]
   - [ be32, 0x0078c5b0, 0x482c5c51 ]
   - [ be32, 0x0078c5b4, 0x48000018 ]
 tlou_gpulighting_notes: &tlou_gpulighting_notes
   "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.\nVersion 2.0 - Fixes Cabin Resort level crashes/artifacts without removing the fog (1.11 only)"
 tlou_speed_notes: &tlou_speed_notes
   "Improves performance in certain areas. May cause issues."
 tlou_debugmenu_notes: &tlou_debugmenu_notes
   "L3 + Start = Dev Menu\nL3 + Select = Quick Menu\nL3 + Triangle = FPS Text\nL3 + R3 = Debug Fly"
 tlou_infiniteflashlight_notes: &tlou_infiniteflashlight_notes
   "This patch is useful for people who play with something other than DualShock3/4.\nNormaly flashlight battery drains after ~3600 frames, patch disables battery drain, Infinite flashlight battery no controller shake."
 tlou_nocamshake_notes: &tlou_nocamshake_notes
   "Disables camera shake during gameplay.\nIn-Game cinematics remain unaffected."
 tlou_localmp_notes: &tlou_localmp_notes
   "Matchmaking does not work."
 tlou_dbgtasks_notes: &tlou_dbgtasks_notes
   "Only enable this if you know what you are doing!"
 tlou_headcrash_notes: &tlou_headcrash_notes
   "Fixes a bug where throwing an object at an Infected Severed Head causes a game crash."
 tlou_ar_notes: &tlou_ar_notes
   "Requires \"Stretch To Display Area\" checked in the GPU settings. UI Elements will be stretched."
 tlou_fps_notes: &tlou_fps_notes
   "Unlocks FPS without any special settings.\nGame may crash above 500 FPS in loading screens."
 tlou_mlaa_notes: &tlou_mlaa_notes
   "Allows for the use of Resolution Scaling and improves performance.\nVersion 2.0 - Fixes crashes introduced in the original patch.\nVersion 3.0 - Fixes the Green Rain in more areas.\nVersion 4.0 - Fixes high levels of Bloom in some areas.\n\nKnown issues: Listen mode does not work."
 tloulb100_title: &tloulb100_title
   "The Last of Us Left Behind":
     NPUA81175: [ 01.00 ]
     NPEA00521: [ 01.00 ]
 tlou100_title: &tlou100_title
   "The Last of Us":
     BCES01584: [ 01.00 ]
     BCES01585: [ 01.00 ]
     BCUS98174: [ 01.00 ]
     BCJS37010: [ 01.00 ]
     BCAS20270: [ 01.00 ]
     NPEA00435: [ 01.00 ]
     NPUA80960: [ 01.00 ]
 tlou111_title: &tlou111_title
   "The Last of Us":
     BCES01584: [ 01.11 ]
     BCES01585: [ 01.11 ]
     BCUS98174: [ 01.11 ]
     BCJS37010: [ 01.11 ]
     BCAS20270: [ 01.11 ]
     NPEA00435: [ 01.11 ]
     NPUA80960: [ 01.11 ]
     NPHA80243: [ 01.11 ]

PPU-9df60dc1aa5005a0c80e9066e4951dc0471553e6:

 "Disable in-built MLAA":
   Games: *tlou100_title
   Author: "Whatcookie"
   Notes: *tlou_mlaa_notes
   Patch Version: 4.0
   Patch:
     - [ load, *tlou100_mlaa ]
 "Disable Bloom":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_post ]
 "Disable Mesh trimming":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_mesh ]
 "Disable SSAO":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_ssao ]
 "Disable Motion Blur":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_mb ]
 "Disable Depth of Field":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_dof ]
 "Depth buffer viewport":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_dbv ]
 "Depth border fix":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_dbf ]
 "Enable GPU Lighting":
   Games: *tlou100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes: *tlou_gpulighting_notes
   Patch Version: 2.0
   Patch:
     - [ load, *tlou100_db ]
 "Speedboost":
   Games: *tlou100_title
   Author: "ZEROx, illusion"
   Notes: *tlou_speed_notes
   Patch Version: 1.0
   Patch:
     - [ load, *tlou100_speed ]
 "Debug Menu":
   Games: *tlou100_title
   Author: "dron_3, HdHereidme, illusion"
   Notes: *tlou_debugmenu_notes
   Patch Version: 1.01
   Patch:
     - [ load, *tlou100_devmenu ]
 "Bug Fix: Infected Severed Head Crash":
   Games: *tlou100_title
   Author: "illusion, ZEROx"
   Notes: *tlou_headcrash_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x006b06a8, 0x483a4b95 ] # Branch
     - [ be32, 0x00a5523c, 0x3d400001 ] # r10 = 0x10000
     - [ be32, 0x00a55240, 0x7f9d5000 ] # r29 vs r10
     - [ be32, 0x00a55244, 0x409d0008 ] # Skip if r29<=r10 // If r29 less or equal to r10 then do nothing
     - [ be32, 0x00a55248, 0x813d0040 ] # lwz r9,0x40(r29) // load as normal
     - [ be32, 0x00a5524c, 0x4e800020 ] # Return
 "21:9 Aspect Ratio":
   Games: *tlou100_title
   Author: "illusion"
   Notes: *tlou_ar_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x000325b8, 0x60000000 ] # nop write for ar float
     - [ bef32, 0x014aebd0, 0.42 ]      # ar float
     - [ bef32, 0x0128f2f4, 0.75 ]
 "Unlock FPS":
   Games: *tlou100_title
   Author: "illusion"
   Notes: *tlou_fps_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00036ab8, 0x38a00000 ]
 "Infinite flashlight battery":
   Games: *tlou100_title
   Author: "bungholio, ZEROx"
   Notes: *tlou_infiniteflashlight_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x0068eb38, 0x60000000 ]
 "Disable Camera Shake":
   Games: *tlou100_title
   Author: "illusion"
   Notes: *tlou_nocamshake_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00966784, 0x997d ]
 "Enable Local Multiplayer":
   Games: *tlou100_title
   Author: "icemesh, illusion"
   Notes: *tlou_localmp_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00353e7c, 0x3b800001 ] # (icemesh)
     - [ be32, 0x00a0fbc8, 0x38600000 ] # (illusion) # For RPCS3 only, bypass connecting screen
     - [ be32, 0x01268210, 0x0132f628 ] # (illusion)
     - [ be32, 0x00356830, 0x38600000 ] # (illusion)
 "Skip Intro":
   Games: *tlou100_title
   Author: "illusion"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00038ea4, 0x38600001 ]
 "DEBUG: Replace Task With Test Tasks":
   Games: *tlou100_title
   Author: "illusion, icemesh" # SID Utils
   Notes: *tlou_dbgtasks_notes
   Patch Version: 1.0
   Patch:
     # test-tasks begin!!
     - [ be32, 0x009f9064, 0x484b023c ]
     - [ be32, 0x00ea92a0, 0x81490000 ]
     - [ be32, 0x00ea92a4, 0x3d006772 ]
     - [ be32, 0x00ea92a8, 0x61083261 ]
     - [ be32, 0x00ea92ac, 0x7f885000 ]
     - [ be32, 0x00ea92b0, 0x409e0014 ]
     - [ be32, 0x00ea92b4, 0x3d002203 ]
     - [ be32, 0x00ea92b8, 0x6108c98c ]
     - [ be32, 0x00ea92bc, 0x91090000 ]
     - [ be32, 0x00ea92c0, 0x7d284b78 ]
     - [ be32, 0x00ea92c4, 0x81490000 ]
     - [ be32, 0x00ea92c8, 0x4bb4fda0 ]
     # *test-task-graph*
     - [ be16, 0x008203a2, 0xf0f3 ]
     - [ be16, 0x008203aa, 0xd6c8 ]
     - [ be16, 0x0081d2fa, 0xf0f3 ]
     - [ be16, 0x0081d302, 0xd6c8 ]
     # crash fix
     - [ be32, 0x000390b0, 0x48000068 ]
     # no artGroup assert
     - [ be32, 0x0048731c, 0x60000000 ]

PPU-120fb71f7352d62521c639b0e99f960018c10a56:

 "Disable in-built MLAA":
   Games: *tlou111_title
   Author: "Whatcookie, illusion, ZEROx"
   Notes: *tlou_mlaa_notes
   Patch Version: 4.0
   Patch:
     - [ load, *tlou111_mlaa ]
 "Disable Bloom":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_post ]
 "Disable Mesh trimming":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_mesh ]
 "Disable SSAO":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.1
   Patch:
     - [ load, *tlou111_ssao ]
 "Disable Motion Blur":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_mb ]
 "Disable Depth of Field":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_dof ]
 "Depth border fix":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_dbf ]
 "Enable GPU Lighting":
   Games: *tlou111_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn"
   Notes: *tlou_gpulighting_notes
   Patch Version: 2.0
   Patch:
     - [ load, *tlou111_db ]
 "WCB/WDB Performance fix":
   Games: *tlou111_title
   Author: "ZEROx"
   Notes: "Disables Depth Buffer Reload, reduces performance penalty using WCB/WDB."
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaa030, 0x9b83 ] # Speedup 1571ad8 (WCB)
     - [ be32, 0x00a974f4, 0x4bfd4ef1 ] #Call
     - [ be32, 0x00a6c3e4, 0x3c600142 ] #r3 = 0x1420000
     - [ be32, 0x00a6c3e8, 0xa0639ef4 ] #lhz r3,0x9ef4(r3)
     - [ be32, 0x00a6c3ec, 0x2f83080c ] #r3 vs 0x80c
     - [ be32, 0x00a6c3f0, 0x419e000c ] #beq
     - [ be32, 0x00a6c3f4, 0xc1a9038c ] #f13 original load
     - [ be32, 0x00a6c3f8, 0x48000008 ]
     - [ be32, 0x00a6c3fc, 0xc1be8100 ] #f13 == f0
     - [ be32, 0x00a6c400, 0x4e800020 ] #ret
 "Speedboost":
   Games: *tlou111_title
   Author: "ZEROx, illusion"
   Notes: *tlou_speed_notes
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_speed ]
 "Debug Menu":
   Games: *tlou111_title
   Author: "illusion, ZEROx, dron_3, HdHereidme"
   Notes: *tlou_debugmenu_notes
   Patch Version: 1.2
   Patch:
     - [ load, *tlou111_devmenu ]
 "Infinite flashlight battery":
   Games: *tlou111_title
   Author: "bungholio, ZEROx"
   Notes: *tlou_infiniteflashlight_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x006acbc8, 0x60000000 ]
 "Bug Fix: Infected Severed Head Crash":
   Games: *tlou111_title
   Author: "illusion, ZEROx"
   Notes: *tlou_headcrash_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x006d9368, 0x483aa7ed ] # Call
     - [ be32, 0x00a83b54, 0x3d400001 ] # r10 = 0x10000
     - [ be32, 0x00a83b58, 0x7f9d5000 ] # r29 vs r10
     - [ be32, 0x00a83b5c, 0x409d0008 ] # Skip if r29<=r10 // If r29 less or equal to r10 then do nothing
     - [ be32, 0x00a83b60, 0x813d0040 ] # lwz r9,0x40(r29) // load as normal
     - [ be32, 0x00a83b64, 0x4e800020 ] # Return
 "21:9 Aspect Ratio":
   Games: *tlou111_title
   Author: "illusion"
   Notes: *tlou_ar_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x0003556c, 0x60000000 ] # nop write for ar float
     - [ bef32, 0x01558a50, 0.42 ]      # ar float
     - [ bef32, 0x012c1964, 0.75 ]
 "Unlock FPS":
   Games: *tlou111_title
   Author: "illusion"
   Notes: *tlou_fps_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00039d08, 0x38a00000 ]
 "Dev Menu Plus":
   Games: *tlou111_title
   Author: "illusion, Freako, Smasher248"
   Notes: "Replaces some useless options in Memory Tab with rendering features.\nWireframe modes currently do not work on the emulator."
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_devplus ]
 "Disable Pause in Dev Menu":
   Games: *tlou111_title
   Author: "illusion, Freako"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x009d2114, 0x9803 ]
 "NPC Model Scale in Clock Menu":
   Games: *tlou111_title
   Author: "illusion"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x012850f8, 0x0148ae18 ]         # ptr
     - [ be16, 0x0135dcac, 0x3f80 ]             # avoid assertion
     - [ be64, 0x00e8c418, 0x4e5043204d6f6465 ] # string replace
     - [ be32, 0x00e8c420, 0x6c205363 ]
     - [ be16, 0x00e8c424, 0x616c ]
     - [ be64, 0x00e8c426, 0x653a000000000000 ] # 1 byte overlap
 "Disable Camera Shake":
   Games: *tlou111_title
   Author: "illusion"
   Notes: *tlou_nocamshake_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00994234, 0x997d ]
 "Infinite Everything (Parts, Pills, Crafting items)":
   Games: *tlou111_title
   Author: "Medo, Randy97Killa, illusion"
   Notes: "Pick up any amount of parts or items to activate the cheat.\nReplaces 'SS Printout to Msgcon' in Debug Menu Gameplay tab"
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_cparts ]
 "Tool Always Level 5":
   Games: *tlou111_title
   Author: "illusion, ZEROx"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00082960, 0x38000005 ] # tools level load
     - [ be32, 0x00082788, 0x60000000 ] # tools gain pickup, result will be
 "Bug Fix: University Nailbomb Softlock Fix":
   Games: *tlou111_title
   Author: "illusion, ZEROx"
   Notes: "Fixes a softlock at the end of the university chapter."
   Patch Version: 1.0
   Patch:
     - [ load, *tlou111_nailbombsoftlockfix ]
 "Skip Intro":
   Games: *tlou111_title
   Author: "illusion"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x0003dd9c, 0x4800 ]
 "Enable Local Multiplayer":
   Games: *tlou111_title
   Author: "icemesh, illusion"
   Notes: *tlou_localmp_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x0036ad6c, 0x3be00001 ] # (icemesh)
     - [ be32, 0x0036baa4, 0x4800002c ] # (illusion)
     - [ be32, 0x0129a01c, 0x01363538 ] # (illusion)
     - [ be32, 0x00a3f320, 0x38600000 ] # (illusion)
     - [ be32, 0x0036dad0, 0x38600000 ] # (illusion)
 "DEBUG: Replace Task With Test Tasks":
   Games: *tlou111_title
   Author: "illusion, icemesh" # SID Utils
   Notes: *tlou_dbgtasks_notes
   Patch Version: 1.0
   Patch:
     # test-tasks begin!!
     - [ be32, 0x00a29fb0, 0x484b2038 ]
     - [ be32, 0x00edbfe8, 0x81490000 ]
     - [ be32, 0x00edbfec, 0x3d006772 ]
     - [ be32, 0x00edbff0, 0x61083261 ]
     - [ be32, 0x00edbff4, 0x7f885000 ]
     - [ be32, 0x00edbff8, 0x409e0014 ]
     - [ be32, 0x00edbffc, 0x3d002203 ]
     - [ be32, 0x00edc000, 0x6108c98c ]
     - [ be32, 0x00edc004, 0x91090000 ]
     - [ be32, 0x00edc008, 0x7d284b78 ]
     - [ be32, 0x00edc00c, 0x81490000 ]
     - [ be32, 0x00edc010, 0x4bb4dfa4 ]
     # *test-task-graph*
     - [ be32, 0x008461a8, 0x3c80f0f3 ]
     - [ be32, 0x008461b0, 0x6084d6c8 ]
     - [ be32, 0x00841e64, 0x3ca0f0f3 ]
     - [ be32, 0x00841e6c, 0x60a5d6c8 ]
     # crash fix
     - [ be32, 0x0003df68, 0x480000a0 ]
     - [ be32, 0x0057cfe8, 0x60000000 ]
 "Infinite Ammo":
   Games: *tlou111_title
   Author: "Medo, Randy97Killa"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x006b1d94, 0x60000000 ]
 "Infinite Health":
   Games: *tlou111_title
   Author: "Medo, Randy97Killa"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x007caf50, 0x486c0d24 ]
     - [ be32, 0x00e8bc74, 0x3a20008c ]
     - [ be32, 0x00e8bc78, 0x923f0030 ]
     - [ be32, 0x00e8bc7c, 0x923f0038 ]
     - [ be32, 0x00e8bc80, 0x923f0044 ]
     - [ be32, 0x00e8bc84, 0x4b93f2d0 ]

PPU-9e5c67eaf69077c591b7c503bed2b48617643134:

 "Debug Menu":
   Games: *tloulb100_title
   Author: "dron_3, HdHereidme, FlexBy"
   Notes: *tlou_debugmenu_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00a92d94, 0x38000001 ]
     - [ be32, 0x00a92d98, 0x980b2db0 ]
 "Unlock FPS":
   Games: *tloulb100_title
   Author: "illusion, FlexBy"
   Notes: *tlou_fps_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00039d1c, 0x38a00000 ]
 "Skip Intro":
   Games: *tloulb100_title
   Author: "illusion, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x0003ddb0, 0x4800 ]
 "Speedboost":
   Games: *tloulb100_title
   Author: "ZEROx, illusion, FlexBy"
   Notes: *tlou_speed_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaa93c, 0x9383 ]
 "Disable SSAO":
   Games: *tloulb100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaa6f0, 0x9b83 ]
 "Disable Motion Blur":
   Games: *tloulb100_title
   Author: "illusion, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x0096b1e8, 0x480000e0 ]
 "Disable Mesh trimming":
   Games: *tloulb100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00951d2c, 0x9809 ]
 "Disable in-built MLAA":
   Games: *tloulb100_title
   Author: "Whatcookie, illusion, ZEROx, FlexBy"
   Notes: *tlou_mlaa_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaa794, 0x9b83 ]
 "Disable Depth of Field":
   Games: *tloulb100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaa760, 0x9b83 ]
 "Depth border fix":
   Games: *tloulb100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaaa2c, 0x9b83 ]
 "Disable Bloom":
   Games: *tloulb100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     #- [ be32, 0x00aa9ba0, 0x38000003 ]
     - [ be32, 0x0096c5a0, 0xc0090990 ]
     - [ be32, 0x0096c5ac, 0xc1890990 ]
     - [ be32, 0x0096c634, 0xc0090990 ]
 "Disable Camera Shake":
   Games: *tloulb100_title
   Author: "illusion, FlexBy"
   Notes: *tlou_nocamshake_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00994988, 0x997d ]
 "Infinite flashlight battery":
   Games: *tloulb100_title
   Author: "bungholio, ZEROx, FlexBy"
   Notes: *tlou_infiniteflashlight_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x006ad230, 0x60000000 ]
 "Enable GPU Lighting":
   Games: *tloulb100_title
   Author: "JohnHolmesII, ZEROx, illusion, Juhn, FlexBy"
   Notes: *tlou_gpulighting_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00aaaa38, 0x90c3 ]
     - [ be16, 0x00aaa9e4, 0x9b63 ]

PPU-e71d82fa70d09b7df9493f0336717dd9a4977216:

 "Disable in-built MLAA":
   Games:
     "The Last of Us Demo":
       NPUA70257: [ 01.00 ]
   Author: "Whatcookie, illusion, ZEROx, FlexBy"
   Notes: *tlou_mlaa_notes
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00a7a164, 0x9b83 ]
 "Unlock FPS":
   Games:
     "The Last of Us Demo":
       NPUA70257: [ 01.00 ]
   Author: "illusion, FlexBy"
   Notes: *tlou_fps_notes
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00036848, 0x38a00000 ]
 "Debug Menu":
   Games:
     "The Last of Us Demo":
       NPUA70257: [ 01.00 ]
   Author: "dron_3, HdHereidme, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00a46720, 0x38000001 ]
     - [ be32, 0x00a46724, 0x980b2db0 ]

PPU-f293e177971243b66bc3fd62621ce4b246726a4a:

 "Disable in-built MLAA":
   Games:
     "The Last of Us Demo":
       NPHA80246: [ 01.00 ]
   Author: "Whatcookie, illusion, ZEROx, FlexBy"
   Notes: 
   Patch Version: 1.0
   Patch:
     - [ be16, 0x00a7a164, 0x9b83 ]
 "Unlock FPS":
   Games:
     "The Last of Us Demo":
       NPHA80246: [ 01.00 ]
   Author: "illusion, FlexBy"
   Notes: 
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00036848, 0x38a00000 ]
 "Debug Menu":
   Games:
     "The Last of Us Demo":
       NPHA80246: [ 01.00 ]
   Author: "dron_3, HdHereidme, FlexBy"
   Notes:
   Patch Version: 1.0
   Patch:
     - [ be32, 0x00a46720, 0x38000001 ]
     - [ be32, 0x00a46724, 0x980b2db0 ]
typeStringPPU · SPU · CanaryPPU
headerString

"Netplay" values

1 row is stored for this page
FieldField typeAllowed valuesValue
gameverString1.11
rpcs3_versionStringN/A
connectStringYes · No · Partial · Untested · N/ANo
lobbiesStringYes · No · Partial · Untested · N/ANo
matchingStringYes · No · Partial · Untested · N/ANo
featuresStringYes · No · Partial · Untested · N/ANo
custom_serversStringAvailable · Not available · Not required · UntestedNot available
notesWikitext