The Last of Us: Difference between revisions

From RPCS3 Wiki
(→‎Patches: add canary patches)
(simplifying no mlaa spu crash patch)
Line 446: Line 446:
Anchors:
Anchors:
   tlou100_spucrashfix: &tlou100_spucrashfix
   tlou100_spucrashfix: &tlou100_spucrashfix
     - [ be16, 0x1291C0C, 0x3F00 ] # SPU crash workaround, set float to 0.5 for sun pos(?)
     - [ be16, 0x1291C0C, 0x3F00 ]     # set float to 0.5 for sun pos(?)
     - [ be16, 0x14C7EA8, 0xBFC0 ] # set display gamma in debug menu to -1.5
     - [ be32, 0x0093e8b4, 0xc0490316 ] # Dev Menu -> Rendering -> HDR Tonemapping -> display brightness -1.5
    - [ be32, 0x00A7A790, 0x60000000 ] # nop init
    - [ be32, 0x006BEC04, 0x60000000 ] # nop after init
    - [ be32, 0x00335DB8, 0x60000000 ] # nop reset


   tlou111_spucrashfix: &tlou111_spucrashfix
   tlou111_spucrashfix: &tlou111_spucrashfix
     - [ be16, 0x12C41A4, 0x3F00 ] # SPU crash workaround, set float to 0.5 for sun pos(?)
     - [ be16, 0x12C41A4, 0x3F00 ]     # set float to 0.5 for sun pos(?)
     - [ be16, 0x1571D4C, 0xBFC0 ] # set display gamma in debug menu to -1.5
     - [ be32, 0x0096c400, 0xc0490319 ] # Dev Menu -> HDR Tonemapping -> display brightness -1.5
    - [ be32, 0x00AAA2C0, 0x60000000 ] # nop init
    - [ be32, 0x006E8088, 0x60000000 ] # nop after init
    - [ be32, 0x0034AFB8, 0x60000000 ] # nop reset


   spucrashnotes: &spucrashnotes "This patch attempts to addresses issues caused by the MLAA patch causing crashes during the following subchapters.\nBill's Town: High School Escape\nPittsburgh: Financial District, Escape the City\nUniversity: Go Big Horns\nKnown Issues:\nMenu too dark.\nSun in wrong position.\nLighting flickers during sun position change."
   spucrashnotes: &spucrashnotes "This patch attempts to addresses issues caused by the MLAA patch causing crashes during the following subchapters.\nBill's Town: High School Escape\nPittsburgh: Financial District, Escape the City\nUniversity: Go Big Horns\nKnown Issues:\nMenu too dark.\nSun in wrong position.\nLighting flickers during sun position change."
Line 480: Line 474:
   SPU Crash Workaround:
   SPU Crash Workaround:
     Games: *tlou100_title
     Games: *tlou100_title
     Author: illusion
     Author: illusion, ZEROx
     Notes: *spucrashnotes
     Notes: *spucrashnotes
     Patch Version: 1.0
     Patch Version: 1.0
Line 489: Line 483:
   SPU Crash Workaround:
   SPU Crash Workaround:
     Games: *tlou111_title
     Games: *tlou111_title
     Author: illusion
     Author: illusion, ZEROx
     Notes: *spucrashnotes
     Notes: *spucrashnotes
     Patch Version: 1.0
     Patch Version: 1.0

Revision as of 03:03, 26 September 2020

The Last of Us
Developer(s) Naughty Dog
Publisher(s) Sony Computer Entertainment
Release date(s) June 14, 2013
Release type PlayStation exclusive
Genre(s) Action, Adventure, Survival horror
Mode(s) Single-player, Multiplayer
GameID(s) BCES01584 (IRD), BCES01585 (IRD), BCUS98174 (IRD), NPEA00435, BCAS20270 (IRD), BCJS37010 (IRD), NPJA00096, NPUA80960
Left Behind
NPEA00521, NPJA00129, NPUA81175, NPHA80279
Demo
NPHA80206, NPUA70257
Quick links Check Compatibility
Open Issues
Search Google
Wikipedia Page

The Last of Us is a game where players control Joel, a smuggler tasked with escorting a teenage girl, Ellie, across a post-apocalyptic United States. The Last of Us is played from a third-person perspective. Players use firearms and improvised weapons, and can use stealth to defend against hostile humans and cannibalistic creatures infected by a mutated strain of the Cordyceps fungus. In the online multiplayer mode, up to eight players engage in cooperative and competitive gameplay.

Development of The Last of Us began in 2009, soon after the release of Naughty Dog's previous game, Uncharted 2: Among Thieves. For the first time in the company's history, Naughty Dog split into two teams; while one team developed Uncharted 3: Drake's Deception, the other half developed The Last of Us. The relationship between Joel and Ellie became the central focus of the game, with all other elements developed around it. Actors Troy Baker and Ashley Johnson portrayed Joel and Ellie respectively through voice and motion capture, and assisted creative director Neil Druckmann with the development of the characters and story. The original score was composed and performed by Gustavo Santaolalla.

Following its announcement in December 2011, The Last of Us was widely anticipated. Upon release, it received critical acclaim, with praise directed at its narrative, gameplay, visual and sound design, characterization, and depiction of female characters. The Last of Us became one of the best-selling games on the PlayStation 3, selling over 1.3 million units in its first week and 17 million by April 2018. After the game's release, Naughty Dog released several downloadable content additions. The Last of Us: Left Behind adds a single-player campaign following Ellie and her best friend Riley.

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
Renderer Vulkan Recommended to get the best performance.
Framelimit 60 Enabling framelimit prevents rare crashes during loading screens when framerate may exceed 500FPS. Alternatively, enable VSync on a 60Hz monitor for the same effect.
Resolution scale 100 Resolution scaling is only supported when the MLAA patch is enabled.
Resolution scale threshold 1x1 When using Resolution scaling above 100%, this must be set to 1x1 otherwise some effects like lens flare wil be missing.
Write color buffers On Fixes graphical issues (nuclear rain and particles effect) with a slight reduction in performance.

Advanced configuration

Setting Option Notes
Accurate RSX reservation access On To be enabled on systems that do not have TSX.
Read color buffers On Fixes graphical issues when certain patches are enabled.
Vblank rate 120 Vblank rate should be double of the target framerate. Hence, setting Vblank to 120Hz will raise the FPS cap to 60.

Known Issues

This game is currently not playable.

Special Notes

Patches

Anchors:
  tlou100_mlaa: &tlou100_mlaa
    - [ be32, 0x00a51a8c, 0x48000a64 ] # unconditonally branch to disable MLAA
  
  # 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)
  #    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)
  
  tlou100_mesh: &tlou100_mesh
    - [ be32, 0x00923a94, 0x98090004 ] # 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
    - [ be32, 0x00a7a470, 0x9b830067 ] # Disable SSAO                (r27 => r28) (mem address: 0x14C7C0F)
  
  tlou100_mb: &tlou100_mb
    - [ be32, 0x00a7a4d4, 0x9b830086 ] # Disable motion blur         (r27 => r28) (mem address: 0x14C7C2E)
  
  tlou100_dof: &tlou100_dof
    - [ be32, 0x00a7a4e0, 0x9b830089 ] # Disable depth of field      (r27 => r28) (mem address: 0x14C7C31)
  
  tlou100_dbv: &tlou100_dbv
    - [ be32, 0x00a7a760, 0x9b6302f5 ] # Depth buffer viewport       (r28 => r27) (mem address: 0x14C7E9D)
  
  tlou100_dbf: &tlou100_dbf
    - [ be32, 0x00a7a7ac, 0x9b830319 ] # Depth border fix            (r27 => r28) (mem address: 0x14C7EC1)
  
  tlou100_db: &tlou100_db
    - [ be32, 0x00a7a7b8, 0x90e303e8 ] # Depth buffer                (r27 => r6 ) (mem address: 0x14C7F93)
  
  tlou100_speed: &tlou100_speed
    - [ be32, 0x00a7a6b8, 0x938302b4 ] # Speedboost                               (mem address: 0x14c7e5f)
  
  tlou100_spulighting: &tlou100_spulighting
    - [ be32, 0x00afeb24, 0x48000010 ]
  
  tlou111_mlaa: &tlou111_mlaa
    - [ be32, 0x00a80350, 0x48000ab8 ] # unconditonally branch to disable MLAA
  
  # 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)
  #    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)
  
  tlou111_mesh: &tlou111_mesh
    - [ be32, 0x009515d8, 0x98090004 ] # 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
    - [ be32, 0x00aa9f9c, 0x9b830067 ] # Disable SSAO                (r27 => r28) (mem address: 0x1571AAF)
  
  tlou111_mb: &tlou111_mb
    - [ be32, 0x00aaa000, 0x9b830086 ] # Disable motion blur         (r27 => r28) (mem address: 0x1571ACE)
  
  tlou111_dof: &tlou111_dof
    - [ be32, 0x00aaa00c, 0x9b830089 ] # Disable depth of field      (r27 => r28) (mem address: 0x1571AD1)
  
  tlou111_dbv: &tlou111_dbv
    - [ be32, 0x00aaa290, 0x9b6302f9 ] # Depth buffer viewport       (r28 => r27) (mem address: 0x1571D41)
  
  tlou111_dbf: &tlou111_dbf
    - [ be32, 0x00aaa2d8, 0x9b83031d ] # Depth border fix            (r27 => r28) (mem address: 0x1571D65)
  
  tlou111_db: &tlou111_db
    - [ be32, 0x00aaa2e4, 0x90c303ec ] # Depth buffer                (r27 => r6 ) (mem address: 0x1571E37)
  
  tlou111_speed: &tlou111_speed
    - [ be32, 0x00aaa1e8, 0x938302b8 ] # Speedboost                               (mem address: 0x1571d03)
  
  tlou111_spulighting: &tlou111_spulighting
    - [ be32, 0x00b294ec, 0x48000010 ]
  
  dbnotes: &dbnotes "This patch causes vertex explosion during \"Cabin Resort\" Subchapter.\nDisable this patch and enable SPU Lighting patch for this chapter."
  spulightingnotes: &spulightingnotes "Removes some broken effects and improve performance.\nThis patch can always be enabled."
  
  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 ]

PPU-9df60dc1aa5005a0c80e9066e4951dc0471553e6:
  Disable in-built MLAA:
    Games: *tlou100_title
    Author: Whatcookie
    Notes: Allows for the use of Resolution Scaling in the title and also improves performance. However, please note that this patch causes a few issues such as the subchapter "The Cargo" only showing a blackscreen, incorrect bloom effect and the hearing feature no longer working. However, the first two issues can be addressed with the post-processing patch below.
    Patch Version: 1.0
    Patch:
      - [ load, *tlou100_mlaa ]
  Post-processing modes:
    Games: *tlou100_title
    Author: JohnHolmesII, ZEROx, illusion, Juhn
    Notes: This patch addresses issues caused by the MLAA patch such as the subchapter "The Cargo" only showing a blackscreen and incorrect bloom effect.
    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 ]
  Depth buffer:
    Games: *tlou100_title
    Author: JohnHolmesII, ZEROx, illusion, Juhn
    Notes: *dbnotes
    Patch Version: 1.0
    Patch:
      - [ load, *tlou100_db ]
  Speedboost:
    Games: *tlou100_title
    Author: ZEROx, illusion
    Notes: Improves performance in certain areas. May cause issues.
    Patch Version: 1.0
    Patch:
      - [ load, *tlou100_speed ]
  Disable SPU lighting:
    Games: *tlou100_title
    Author: ZeroX
    Notes: *spulightingnotes
    Patch Version: 1.0
    Patch:
      - [ load, *tlou100_spulighting ]

PPU-120fb71f7352d62521c639b0e99f960018c10a56:
  Disable in-built MLAA:
    Games: *tlou111_title
    Author: Whatcookie
    Notes: Allows for the use of Resolution Scaling in the title and also improves performance. However, please note that this patch causes a few issues such as the subchapter "The Cargo" only showing a blackscreen, incorrect bloom effect and the hearing feature no longer working. However, the first two issues can be addressed with the post-processing patch below.
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_mlaa ]
  Post-processing modes:
    Games: *tlou111_title
    Author: JohnHolmesII, ZEROx, illusion, Juhn
    Notes: This patch addresses issues caused by the MLAA patch such as the subchapter "The Cargo" only showing a blackscreen and incorrect bloom effect.
    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.0
    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 buffer viewport:
    Games: *tlou111_title
    Author: JohnHolmesII, ZEROx, illusion, Juhn
    Notes: 
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_dbv ]
  Depth border fix:
    Games: *tlou111_title
    Author: JohnHolmesII, ZEROx, illusion, Juhn
    Notes: 
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_dbf ]
  Depth buffer:
    Games: *tlou111_title
    Author: JohnHolmesII, ZEROx, illusion, Juhn
    Notes: *dbnotes
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_db ]
  Speedboost:
    Games: *tlou111_title
    Author: ZEROx, illusion
    Notes: Improves performance in certain areas. May cause issues.
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_speed ]
  Disable SPU Lighting:
    Games: *tlou111_title
    Author: ZeroX
    Notes: *spulightingnotes
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_spulighting ]

Canary Patches

Anchors:
  tlou100_spucrashfix: &tlou100_spucrashfix
    - [ be16, 0x1291C0C, 0x3F00 ]      # set float to 0.5 for sun pos(?)
    - [ be32, 0x0093e8b4, 0xc0490316 ] # Dev Menu -> Rendering -> HDR Tonemapping -> display brightness -1.5

  tlou111_spucrashfix: &tlou111_spucrashfix
    - [ be16, 0x12C41A4, 0x3F00 ]      # set float to 0.5 for sun pos(?)
    - [ be32, 0x0096c400, 0xc0490319 ] # Dev Menu -> HDR Tonemapping -> display brightness -1.5

  spucrashnotes: &spucrashnotes "This patch attempts to addresses issues caused by the MLAA patch causing crashes during the following subchapters.\nBill's Town: High School Escape\nPittsburgh: Financial District, Escape the City\nUniversity: Go Big Horns\nKnown Issues:\nMenu too dark.\nSun in wrong position.\nLighting flickers during sun position change."

  tlou100_title: &tlou100_title
    "The Last of Us":
      BCES01584: [ 01.00 ]
      BCES01585: [ 01.00 ]
      BCUS98174: [ 01.00 ]
      BCJS37010: [ 01.00 ]
      BCAS20270: [ 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 ]

PPU-9df60dc1aa5005a0c80e9066e4951dc0471553e6:
  SPU Crash Workaround:
    Games: *tlou100_title
    Author: illusion, ZEROx
    Notes: *spucrashnotes
    Patch Version: 1.0
    Patch:
      - [ load, *tlou100_spucrashfix ]

PPU-120fb71f7352d62521c639b0e99f960018c10a56:
  SPU Crash Workaround:
    Games: *tlou111_title
    Author: illusion, ZEROx
    Notes: *spucrashnotes
    Patch Version: 1.0
    Patch:
      - [ load, *tlou111_spucrashfix ]