Grand Theft Auto IV: Difference between revisions

From RPCS3 Wiki
m (Text replacement - "|spu block size = <!-- Safe, Mega, Giga --> " to "|spu block size = <!-- Safe, Mega, Giga --> ")
 
(67 intermediate revisions by 11 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:GTA4.jpg}}|300px]]
|developer = Rockstar Games
|developer = Rockstar Games
|publisher = Rockstar Games
|publisher = Rockstar Games
Line 7: Line 8:
|genre    = Action, Adventure
|genre    = Action, Adventure
|modes    = Single-player, Multiplayer
|modes    = Single-player, Multiplayer
|gameid    = {{gameid|id=BLES00229, BLUS30127, NPEB00882, NPUB30702|ird=Yes}}<br>'''''The Complete Edition'''''<br>{{gameid|id=BLES01128, BLUS30682|ird=Yes}}
|gameid    = {{gameid|id=BLES00229, BLUS30127, NPEB00882, NPUB30702|oid=BLES00258, BLJM60093|ird=Yes}}<br>'''''The Complete Edition'''''<br>{{gameid|id=BLES01128, BLUS30682|oid=BLJM60346|ird=Yes}}
|internal resolution = 1152x640
}}
}}


Line 15: Line 17:


==Configuration==
==Configuration==
<!-- Only enter mandatory non-default settings to be used. Delete parameters which are not applicable -->{{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), LLVM Recompiler -->
|ppu decoder                           = <!-- Interpreter (static), Interpreter (dynamic), Recompiler (LLVM) -->
|ppu decoder notes                   =  
|ppu decoder notes                     =  
|spu decoder                         = <!-- Interpreter (precise), Interpreter (fast), ASMJIT Recompiler, LLVM Recompiler -->
|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) -->
|preferred spu threads notes         =  
|preferred spu threads notes           =  
|firmware settings                  = <!-- Automatically load required libraries, Manually load selected libraries, Load automatic and manual selection, Load liblv2.sprx only -->
|thread scheduler                     = <!-- Operating System, RPCS3 Scheduler, RPCS3 Alternative Scheduler -->
|firmware settings notes            = <!-- Where Manually load selected libraries or Load automatic and manual selection options is selected, mention the list of libraries to be selected in this parameter -->
|thread scheduler notes               =  
|enable thread scheduler             = <!-- On, Off -->
|enable spu loop detection             = <!-- On, Off -->
|enable thread scheduler notes       =
|enable spu loop detection notes       =  
|lower spu thread priority          = <!-- On, Off -->
|spu xfloat accuracy                  = Accurate<!-- Accurate, Approximate, Relaxed -->
|lower spu thread priority notes    =  
|spu xfloat accuracy notes             = Fixes missing collision. Requires SPU LLVM recompiler. Expect audio stutter.
|enable spu loop detection           = <!-- On, Off -->
|spu block size                       = <!-- Safe, Mega, Giga -->
|enable spu loop detection notes     =  
|spu block size notes                  =
|spu cache                          = <!-- On, Off -->
|tsx instructions                      = <!-- Enabled, Disabled, Forced -->
|spu cache notes                    =
|tsx instructions notes                =  
|accurate xfloat                    = On
|accurate xfloat notes               = Fixes missing collision. Requires SPU LLVM recompiler.
|spu block size                     = <!-- Safe, Mega, Giga -->
|spu block size notes                =  
<!-- GPU configuration -->
<!-- GPU configuration -->
|renderer                           = Vulkan <!-- OpenGL, Vulkan -->
|renderer                             = <!-- OpenGL, Vulkan, Disabled -->
|renderer notes                     = Recommended for getting the best performance.
|renderer notes                       =  
|aspect ratio                       = <!-- Auto, 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                 = <!-- Automatic, Disabled, 2x, 4x, 8x, 16x -->
|anisotropic filter                   = <!-- Auto, 2x, 4x, 8x, 16x -->
|anisotropic filter notes           =  
|anisotropic filter notes             =
|default resolution                 = <!-- 1920x1080, 1280x720, 720x480, 720x576, 1600x1080, 1440x1080, 1280x1080, 960x1080 -->
|anti-aliasing                        = <!-- Auto, Disabled -->
|default resolution notes           =  
|anti-aliasing notes                  =
|resolution scale                   = <!-- Range between 50% to 800% -->
|zcull accuracy                        = Relaxed<!-- Precise, Approximate, Relaxed -->
|resolution scale notes             =  
|zcull accuracy notes                  = Improves performance without any noticeable issues.
|resolution scale threshold         = <!-- Range between 1 to 1024 in the format 16 x 16 -->
|shader quality                        = <!-- High, Low, Auto -->
|resolution scale threshold notes   =  
|shader quality notes                  =
|write color buffers                 = On
|3d rendering mode                    = <!-- Disabled, Anaglyph, Side-by-side, Over-under -->
|write color buffers notes           = Fixes missing reflections.
|3d rendering mode notes              =  
|strict rendering mode               = <!-- On, Off -->
|default resolution                   = <!-- 1920x1080, 1280x720, 720x480, 720x576, 1600x1080, 1440x1080, 1280x1080, 960x1080 -->
|strict rendering mode notes         =  
|default resolution notes             =  
|vsync                               = <!-- On, Off -->
|resolution scale                     = <!-- Value between 50% to 800% -->
|vsync notes                         =  
|resolution scale notes               =  
|stretch to display area             = <!-- On, Off -->
|resolution scale threshold           = <!-- Value between 1 to 1024 in the format 16 x 16 -->
|stretch to display area notes       =  
|resolution scale threshold notes     =
|disable vertex cache                = <!-- On, Off -->
|shader mode                          = <!-- Legacy (singlethreaded), Async (multithreaded), Async with Shader Interpreter, Shader Interpreter only -->
|disable vertex cache notes         =  
|shader mode notes                    =  
|disable async shader compiler      = <!-- On, Off -->
|write color buffers                   = On<!-- On, Off -->
|disable async shader compiler notes =  
|write color buffers notes             = Fixes missing reflections.
|strict rendering mode                 = <!-- On, Off -->
|strict rendering mode notes           =  
|vsync                                 = <!-- On, Off -->
|vsync notes                           =  
|stretch to display area               = <!-- On, Off -->
|stretch to display area notes         =  
|multithreaded rsx                    = On<!-- On, Off -->
|multithreaded rsx notes               = Improves performance.
|asynchronous texture streaming        = On<!-- On, Off -->
|asynchronous texture streaming notes = If you have a stronger GPU, this can give substantial performance boost.
<!-- Audio configuration -->
<!-- Audio configuration -->
|audio out windows                   = <!-- XAudio2, OpenAL -->
|audio out windows                     = <!-- Cubeb, XAudio2, Disabled -->
|audio out windows notes             =  
|audio out windows notes               =  
|audio out linux                     = <!-- OpenAL, PulseAudio, ALSA -->
|audio out linux                       = <!-- Cubeb, FAudio, Disabled -->
|audio out linux notes               =  
|audio out linux notes                 =  
|dump to file                        = <!-- On, Off -->
|audio format                          = <!-- Stereo, Surround 5.1, Surround 7.1, Automatic, Manual -->
|dump to file notes                 =  
|audio format notes                   =  
|convert to 16-bit                  = <!-- On, Off -->
|dump to file                          = <!-- On, Off -->
|convert to 16-bit notes             =  
|dump to file notes                   =  
|downmix to stereo                  = <!-- On, Off -->
|convert to 16-bit                    = <!-- On, Off -->
|downmix to stereo notes             =  
|convert to 16-bit notes               =  
|volume                             = <!-- Range between 0% to 200% -->
|volume                               = <!-- Value between 0% to 200% -->
|volume notes                       =  
|volume notes                         =  
|enable buffering                   = <!-- On, Off -->
|enable buffering                     = <!-- On, Off -->
|enable buffering notes             =  
|enable buffering notes               =  
|audio buffer duration               = <!-- Range between 20ms to 250ms -->
|audio buffer duration                 = <!-- Value between 20ms to 250ms -->
|audio buffer duration notes         =  
|audio buffer duration notes           =  
|enable time stretching             = <!-- On, Off -->
|enable time stretching               = <!-- On, Off -->
|enable time stretching notes       =  
|enable time stretching notes         =  
|time stretching threshold           = <!-- Range between 0% to 100% -->
|time stretching threshold             = <!-- Value between 0% to 100% -->
|time stretching threshold notes    =  
|time stretching threshold notes      =
|microphone type                      = <!-- Disabled, Standard, SingStar, Real SingStar, Rocksmith -->
|microphone type notes                =
<!-- I/O configuration -->
|keyboard handler                      = <!-- Null, Basic -->
|keyboard handler notes                =
|mouse handler                        = <!-- Null, Basic -->
|mouse handler notes                  =
|camera input                          = <!-- Unknown, EyeToy, PS Eye, UVC 1.1 -->
|camera input notes                    =
|camera settings                      = <!-- Null, Fake, Qt -->
|camera settings notes                =
|move handler                          = <!-- Null, Fake, Mouse -->
|move handler notes                    =
<!-- Network configuration -->
|network status                        = <!-- Disconnected, Connected -->
|network status notes                  =
|psn status                            = <!-- Disconnected, Simulated, RPCN -->
|psn status notes                      =
<!-- Advanced configuration -->
|debug console mode                    = <!-- On, Off -->
|debug console mode notes              =
|accurate llvm dfma                    = <!-- On, Off -->
|accurate llvm dfma notes              =
|accurate getllar                      = <!-- On, Off -->
|accurate getllar notes                =
|accurate rsx reservation access      = <!-- On, Off -->
|accurate rsx reservation access notes =
|accurate spu dma                      = <!-- On, Off -->
|accurate spu dma notes                =
|ppu llvm accurate vector nans        = <!-- On, Off -->
|ppu llvm accurate vector nans notes  =
|ppu llvm java mode handling          = <!-- On, Off -->
|ppu llvm java mode handling notes    =
|silence all logs                      = <!-- On, Off -->
|silence all logs notes                =
|sleep timers accuracy                = As Host<!-- As Host, Usleep Only, All Timers -->
|sleep timers accuracy notes          = Slightly improves performance.
|maximum spurs threads                = <!-- Unlimited, Single digit between 0 to 5 (e.g. 3) -->
|maximum spurs threads notes          =
|firmware libraries                    = <!-- Switch to LLE, Switch to HLE -->
|firmware libraries notes              = <!-- Mention the libraries to be manually selected here -->
|read depth buffers                    = <!-- On, Off -->
|read depth buffers notes              =
|write depth buffers                  = <!-- On, Off -->
|write depth buffers notes            =
|read color buffers                    = <!-- On, Off -->
|read color buffers notes              =
|disable on-disk shader cache          = <!-- On, Off -->
|disable on-disk shader cache notes    =
|disable vertex cache                  = <!-- On, Off -->
|disable vertex cache notes            =
|rsx fifo accuracy                    = Atomic<!-- Fast, Atomic, Ordered & Atomic -->
|rsx fifo accuracy notes              = Helps to reduce crashes.
|driver wake-up delay                  = <!-- Value between 0 to 7000 -->
|driver wake-up delay notes            =
|vblank rate                          = <!-- Value between 1 to 500 -->
|vblank rate notes                    =
|vblank ntsc fixup                    = <!-- On, Off -->
|vblank ntsc fixup notes              =
|clocks scale                          = <!-- Value between 10 to 1000 -->
|clocks scale notes                    =  
<!-- Debug configuration -->
<!-- Debug configuration -->
|force cpu blit emulation            = <!-- On, Off -->
|disable zcull occlusion queries      = <!-- On, Off -->
|force cpu blit emulation notes      =
|disable zcull occlusion queries notes =
|use gpu texture scaling            = <!-- On, Off -->
|force cpu blit emulation             = <!-- On, Off -->
|use gpu texture scaling notes       =  
|force cpu blit emulation notes       =  
|accurate getllar                    = <!-- On, Off -->
|force gpu texture scaling            = <!-- On, Off -->
|accurate getllar notes             =
|force gpu texture scaling notes       =  
|accurate putlluc                    = <!-- On, Off -->
|hook static functions                 = <!-- On, Off -->
|accurate putlluc notes              =  
|hook static functions notes           =  
|hook static functions               = <!-- On, Off -->
|accurate ppu 128 reservations        = <!-- Always Enabled, Disabled, Value between 1 to 8 -->
|hook static functions notes         =  
|accurate ppu 128 reservations notes   =  
|debug console mode                  = <!-- On, Off -->
|ppu thread count                      = <!-- Value between 1 to 8 -->
|debug console mode notes           =  
|ppu thread count notes                =  
<!-- Enhancements -->
<!-- Recommended patches -->
|sleep timers accuracy              = <!-- Host, Usleep, All -->
|highly recommended patch              = <!-- Mention patch names -->
|sleep timers accuracy notes        =
|highly recommended patch notes       =  
|clocks scale                        = <!-- Range between 10 to 1000 -->
|recommended patch                    = <!-- Mention patch names -->
|clocks scale notes                 =  
|recommended patch notes               =  
|vblank rate                        = <!-- Range between 1 to 500 -->
|vblank rate 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." -->
This game is currently not playable.
* {{issue|14194}}: The base game (v1.00) crashes during booting. The only way to fix it is by updating. It happens with the standard version (e.g. BLUS30127).
 
==Special Notes==
<!-- Mention any additional notes if necessary. If no special notes are required, remove this section -->
{{netplay
|gamever        = 1.02
|rpcs3 version  = N/A
|connect        = Yes<!-- Yes, No, Partial, Untested, N/A -->
|lobbies        = Yes<!-- Yes, No, Partial, Untested, N/A -->
|match          = Yes<!-- Yes, No, Partial, Untested, N/A -->
|features      = Partial<!-- Yes, No, Partial, Untested, N/A -->
|custom servers = Not required<!-- Available, Not available, Not required, Untested -->
|notes          = Party mode and friends do not work but it's possible to join custom matches with the phone to play together.
}}
{{patch
|type    = PPU
|version = 1.2
|content =
Anchors:
  gta4_fps_notes: &gta4_fps_notes
    "Set Framelimit to 60 FPS otherwise loading screen layers will go too fast."
 
PPU-d5041972c3464b734ed27f0b94b505a2a14471c8:
  "Unlock FPS":
    Games:
      "Grand Theft Auto IV (Grand Theft Auto 4)":
        BLUS30127: [ 01.08 ]
        NPUB30702: [ 01.08 ]
    Author: "Zolika1351"
    Notes: *gta4_fps_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00f18830, 0x00000000 ]
 
PPU-a2c90aafce24744d5ac6da8ad009ce301458c8a7:
  "Unlock FPS":
    Games:
      "Grand Theft Auto IV (Grand Theft Auto 4)":
        BLES00229: [ 01.08 ]
        NPEB00882: [ 01.09 ]
    Author: "Zolika1351, illusion"
    Notes: *gta4_fps_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00f18840, 0x00000000 ]
}}

Latest revision as of 20:14, 26 March 2024

Grand Theft Auto IV
GTA4.jpg
Developer(s) Rockstar Games
Publisher(s) Rockstar Games
Series Grand Theft Auto
Release date(s) April 29, 2008
Release type Multi-platform
Genre(s) Action, Adventure
Mode(s) Single-player, Multiplayer
GameID(s) BLES00229 (IRD), BLUS30127 (IRD), NPEB00882, NPUB30702, BLES00258 (IRD), BLJM60093 (IRD)
The Complete Edition
BLES01128 (IRD), BLUS30682 (IRD), BLJM60346 (IRD)
Internal resolution 1152x640
Quick links Check Compatibility
Open Issues
Search Google
Wikipedia Page

Grand Theft Auto IV was developed by Rockstar North and is the eleventh title in the Grand Theft Auto series, and the first main entry since 2004's Grand Theft Auto: San Andreas. Set within the fictional Liberty City (based on New York City), the single-player story follows a war veteran, Niko Bellic, and his attempts to escape his past while under pressure from loan sharks and mob bosses. The open world design lets players freely roam Liberty City, consisting of three main islands.

The game is played from a third-person perspective and its world is navigated on-foot or by vehicle. Throughout the single-player mode, players play as Niko Bellic. An online multiplayer mode is included with the game, allowing up to 32 players to engage in both co-operative and competitive gameplay in a recreation of the single-player setting. Two expansion packs were later released for the game, The Lost and Damned and The Ballad of Gay Tony, which both feature new plots that are interconnected with the main Grand Theft Auto IV storyline, and follow new protagonists.

Configuration

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

CPU configuration

Setting Option Notes
SPU xfloat accuracy Accurate Fixes missing collision. Requires SPU LLVM recompiler. Expect audio stutter.

GPU configuration

Setting Option Notes
ZCULL accuracy Relaxed Improves performance without any noticeable issues.
Write color buffers On Fixes missing reflections.
Multithreaded RSX On Improves performance.
Asynchronous texture streaming On If you have a stronger GPU, this can give substantial performance boost.

Advanced configuration

Setting Option Notes
Sleep timers accuracy As Host Slightly improves performance.
RSX FIFO accuracy Atomic Helps to reduce crashes.

Known Issues

  • Issue 14194: The base game (v1.00) crashes during booting. The only way to fix it is by updating. It happens with the standard version (e.g. BLUS30127).

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.02 N/A Yes Yes Yes Partial Not required Party mode and friends do not work but it's possible to join custom matches with the phone to play together.

Patches

Anchors:
  gta4_fps_notes: &gta4_fps_notes
    "Set Framelimit to 60 FPS otherwise loading screen layers will go too fast."

PPU-d5041972c3464b734ed27f0b94b505a2a14471c8:
  "Unlock FPS":
    Games:
      "Grand Theft Auto IV (Grand Theft Auto 4)":
        BLUS30127: [ 01.08 ]
        NPUB30702: [ 01.08 ]
    Author: "Zolika1351"
    Notes: *gta4_fps_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00f18830, 0x00000000 ]

PPU-a2c90aafce24744d5ac6da8ad009ce301458c8a7:
  "Unlock FPS":
    Games:
      "Grand Theft Auto IV (Grand Theft Auto 4)":
        BLES00229: [ 01.08 ]
        NPEB00882: [ 01.09 ]
    Author: "Zolika1351, illusion"
    Notes: *gta4_fps_notes
    Patch Version: 1.0
    Patch:
      - [ be32, 0x00f18840, 0x00000000 ]