Yakuza 4: Difference between revisions

From RPCS3 Wiki
m (Text replacement - "<!-- Host, Usleep, All -->" to "<!-- As Host, Usleep Only, All Timers -->")
(Remove retired setting 'Accurate GETLLAR')
 
(54 intermediate revisions by 7 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
|developer =  
|image    = [[File:{{#setmainimage:Y4.jpg}}|300px]]
|publisher = {{vgregion|}}
|developer = Ryu Ga Gotoku Studio
|publisher = Sega
|series    = Yakuza
|series    = Yakuza
|date      = {{vgregion|}}
|date      = {{vgregion|JP=March 18, 2010|NA=March 15, 2011|EU=March 18, 2011}}
|release  = <!-- Choose one of the following: PlayStation 3 exclusive, PlayStation exclusive, Console exclusive, Multi-platform -->
|release  = Multi-platform<!-- It was a PlayStation exclusive until Xbox One and PC versions were announced at The Game Awards 2020. They will be released on January 28, 2021. -->
|genre    =  
|genre    = Action, Adventure
|modes    = <!-- Choose all relevant options: Single-player, Co-op, Multiplayer -->
|modes    = Single-player<!-- Choose all relevant options: Single-player, Co-op, Multiplayer -->
|gameid    = {{gameid|}}
|gameid    = {{gameid|id=BLES01081, BLUS30643, BLJM60208, NPEB02036, NPUB31510|ird=Yes}}<br>'''''Demo'''''<br>{{gameid|id=NPEB90322, NPUB90512, NPHB00330|ird=NA}}
|wikipedia = <!-- delete if not applicable -->
|vndb      = <!-- delete if not applicable -->
|title    = <!-- Used only in niche scenarios. Delete if not applicable -->
}}
}}


<!-- Give a brief description about the game -->
'''''Yakuza 4''''' (<u>Japanese</u>: 龍が如く4 伝説を継ぐもの <u>Hepburn</u>: Ryū ga Gotoku 4: Densetsu o Tsugumono, ''lit. Like a Dragon 4: Successor of the Legend'') is the sequel to [[Yakuza 3]], and the first Yakuza game that did not feature the involvement of Daisuke Sato, the current series producer and one of the members involved since the very first game.
 
The available mini-games are pachinko, fishing, onsen, table tennis, hanafuda and karaoke, including duets with non-player characters (NPCs). In Haruka's Wish, the player must raise Haruka's trust level. Each main character has a side game or goal which must be completed, and many side games are related to trophies.
 
Akiyama may create friendship (<u>Japanese</u>: 馴染み <u>Hepburn</u>: Najimi) with some NPCs by buying them items, or with some storekeepers by being a regular customer. His other mission, Create a #1 Hostess! (<u>Japanese</u>: No.1キャバ嬢をつくろう! <u>Hepburn</u>: No.1 Kyabajō o Tsukurō!), is to scout girls for the cabaret he owns. A girl is improved by dressing her up and training her. After she becomes number one, the player can choose a final outfit for her and she will appear at the cabaret. A similar challenge in the Japanese version of Yakuza 3 was cut from overseas versions. Saejima's mission, Create a Fighter! (<u>Japanese</u>: 格闘家をつくろう! <u>Hepburn</u>: Kakutōka o Tsukurō!) is to train fighters to win tournaments after 50 rounds or less of training (building up movesets). Different movesets allow different moves to be performed. Tanimura's mission, Resolving Police-Radio Disputes (<u>Japanese</u>: 警察無線トラブル解決バトル <u>Hepburn</u>: Keisatsu Musen Toraburu Kaiketsu Batoru), is to keep the peace on the streets of Kamurocho. Radio reports tell him where to find incidents, and the player must defeat the perpetrator. In Kiryu's mission, Team Encounter Battle (<u>Japanese</u>: チームエンカウントバトル), seven gangs attack him and he must fight to reach each gang leader.
 
Each character has his own style of fighting and special moves as their body frames are different. Kiryu focuses on the powerful blows of Karate and Boxing, Akiyama prefers swift attacks combining Taekwondo and Wrestling, Saejima favors brawling attacks using Judo and Street fighting, Tanimura uses the defensive maneuvers of Aikido and Kung Fu that he learned from his fellow Police Officers.


==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, Approximate, Relaxed -->
|lower spu thread priority notes    =  
|spu xfloat accuracy notes             =  
|enable spu loop detection           = <!-- On, Off -->
|spu block size                       = Mega <!-- Safe, Mega, Giga -->
|enable spu loop detection notes     =  
|spu block size notes                 = No improvement to performance but reduces the number of SPU cache objects.
|spu cache                          = <!-- On, Off -->
|tsx instructions                     = <!-- Enabled, Disabled, Forced -->
|spu cache notes                    =
|tsx instructions notes               =  
|accurate xfloat                    = <!-- On, Off -->
|accurate xfloat notes               =  
|spu block size                     = Mega <!-- Safe, Mega, Giga -->
|spu block size notes               = No improvement to performance but reduces the number of SPU cache objects
|tsx instructions                   = <!-- Enabled, Disabled, Forced -->
|tsx instructions notes             =
<!-- GPU configuration -->
<!-- GPU configuration -->
|renderer                           = Vulkan <!-- OpenGL, Vulkan -->
|renderer                             = <!-- OpenGL, Vulkan, Disabled -->
|renderer notes                     =  
|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             =  
|anti-aliasing                       = <!-- Auto, Disabled -->
|anti-aliasing                         = <!-- Auto, Disabled -->
|anti-aliasing notes                 =  
|anti-aliasing notes                   =
|default resolution                 = <!-- 1920x1080, 1280x720, 720x480, 720x576, 1600x1080, 1440x1080, 1280x1080, 960x1080 -->
|zcull accuracy                        = <!-- Precise, Approximate, Relaxed -->
|default resolution notes           =  
|zcull accuracy notes                  =
|resolution scale                   = <!-- Range between 50% to 800% -->
|shader quality                        = <!-- High, Low, Auto -->
|resolution scale notes             =  
|shader quality notes                  =
|resolution scale threshold         = 512 x 512 <!-- Range between 1 to 1024 in the format 16 x 16 -->
|3d rendering mode                    = <!-- Disabled, Anaglyph, Side-by-side, Over-under -->
|resolution scale threshold notes   = Prevents weird borders from showing up when upscaling.
|3d rendering mode notes              =  
|write color buffers                 = <!-- On, Off -->
|default resolution                   = <!-- 1920x1080, 1280x720, 720x480, 720x576, 1600x1080, 1440x1080, 1280x1080, 960x1080 -->
|write color buffers notes           =  
|default resolution notes             =  
|strict rendering mode               = <!-- On, Off -->
|resolution scale                     = <!-- Value between 50% to 800% -->
|strict rendering mode notes         =  
|resolution scale notes               =  
|vsync                               = <!-- On, Off -->
|resolution scale threshold           = 512 x 512 <!-- Value between 1 to 1024 in the format 16 x 16 -->
|vsync notes                         =  
|resolution scale threshold notes     = Prevents screen borders from showing up.
|stretch to display area             = <!-- On, Off -->
|shader mode                          = <!-- Legacy (singlethreaded), Async (multithreaded), Async with Shader Interpreter, Shader Interpreter only -->
|stretch to display area notes       =  
|shader mode notes                    =
|disable vertex cache               = <!-- On, Off -->
|write color buffers                   = <!-- On, Off -->
|disable vertex cache notes         =  
|write color buffers notes             =  
|multithreaded rsx                   = <!-- On, Off -->
|strict rendering mode                 = <!-- On, Off -->
|multithreaded rsx notes             =
|strict rendering mode notes           =  
|disable async shader compiler      = <!-- On, Off -->
|vsync                                 = <!-- On, Off -->
|disable async shader compiler notes =  
|vsync notes                           =  
|stretch to display area               = <!-- On, Off -->
|stretch to display area notes         =
|enable 3d                            = <!-- On, Off -->
|enable 3d notes                      =  
|disable vertex cache                 = <!-- On, Off -->
|disable vertex cache notes           =  
|multithreaded rsx                     = <!-- On, Off -->
|multithreaded rsx notes               =  
|asynchronous texture streaming        = <!-- On, Off -->
|asynchronous texture streaming notes =  
<!-- 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                     = <!-- Null, Standard, SingStar, Real SingStar, Rocksmith -->
|microphone type                       = <!-- Disabled, Standard, SingStar, Real SingStar, Rocksmith -->
|microphone type notes              =
|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, Usleep Only, All Timers -->
|sleep timers accuracy notes          =
|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                    = <!-- Fast, Atomic, Ordered & Atomic -->
|rsx fifo accuracy notes              =
|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 -->
|use gpu texture scaling               = <!-- On, Off -->
|accurate getllar notes             =
|use 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 llvm java mode handling          = <!-- On, Off -->
|debug console mode notes            =
|ppu llvm java mode handling notes     =  
<!-- Enhancements -->
|sleep timers accuracy              = <!-- As Host, Usleep Only, All Timers -->
|sleep timers accuracy notes        =
|clocks scale                        = <!-- Range between 10 to 1000 -->
|clocks scale notes                 =  
|vblank rate                        = <!-- Range between 1 to 500 -->
|vblank rate notes                   =  
}}
}}


==Known Issues==
==Known Issues==
===Random crashes===
===Random Crashing - <i>{{issue|4489}}</i>===
The title suffers from random crashes and currently there are no methods to prevent the crashes.
The game currently suffers from random crashing without any log output.
 
===Game updates for the JP copy - <i>{{issue|12068}}</i> ===
If you're interested in installing the game updates for the jp copy of this game then before doing that you must first run the game in the base version (v1.00) and let it install its game data to the HDD, after that's done you can safely install the game updates. Failing to do so before installing the updates will prevent the game from going past the initial boot screen.


<s>The random crashes can be fixed by enabling Accurate GETLLAR in the debug menu</s> - No longer possible since {{pr|6056}}.


==Special Notes==
==Special Notes==
===Reducing log spam===
Due to the high amount of warnings spammed in the log, this title tends to crash during extended gameplay sessions. So it is recommended to restrict logging of certain errors to allow better performance while ingame. '''Please note that you cannot submit logs in the GitHub tracker or Discord server with this modification'''. If you wish to report bugs or seek help for this game, you '''MUST''' remove the below change before generating the log for this purpose. If you wish to restrict logging:
# Launch RPCS3
# Right-click on the game and press '''Configure'''
# When the Settings Menu opens, hit '''Save''' and close the emulator
# Navigate to <code>RPCS3\config\custom_configs\config_GAMEID.yml</code> and open the file using a text editor
# Scroll to the bottom of the file and '''replace''' the '''last line''' with the following:
:: <pre>Log: {sys_semaphore: Fatal, sys_fs: Fatal, sys_vm: Fatal, sys_memory: Fatal, RSX: Fatal, sys_lwmutex: Fatal, sys_spu: Fatal, sys_event: Fatal, sys_rsx: Fatal}</pre>

Latest revision as of 23:51, 6 June 2024

Yakuza 4
Y4.jpg
Developer(s) Ryu Ga Gotoku Studio
Publisher(s) Sega
Series Yakuza
Release date(s) JP March 18, 2010
NA March 15, 2011
EU March 18, 2011
Release type Multi-platform
Genre(s) Action, Adventure
Mode(s) Single-player
GameID(s) BLES01081 (IRD), BLUS30643 (IRD), BLJM60208 (IRD), NPEB02036, NPUB31510
Demo
NPEB90322, NPUB90512, NPHB00330
Quick links Check Compatibility
Open Issues
Search Google
Wikipedia Page

Yakuza 4 (Japanese: 龍が如く4 伝説を継ぐもの Hepburn: Ryū ga Gotoku 4: Densetsu o Tsugumono, lit. Like a Dragon 4: Successor of the Legend) is the sequel to Yakuza 3, and the first Yakuza game that did not feature the involvement of Daisuke Sato, the current series producer and one of the members involved since the very first game.

The available mini-games are pachinko, fishing, onsen, table tennis, hanafuda and karaoke, including duets with non-player characters (NPCs). In Haruka's Wish, the player must raise Haruka's trust level. Each main character has a side game or goal which must be completed, and many side games are related to trophies.

Akiyama may create friendship (Japanese: 馴染み Hepburn: Najimi) with some NPCs by buying them items, or with some storekeepers by being a regular customer. His other mission, Create a #1 Hostess! (Japanese: No.1キャバ嬢をつくろう! Hepburn: No.1 Kyabajō o Tsukurō!), is to scout girls for the cabaret he owns. A girl is improved by dressing her up and training her. After she becomes number one, the player can choose a final outfit for her and she will appear at the cabaret. A similar challenge in the Japanese version of Yakuza 3 was cut from overseas versions. Saejima's mission, Create a Fighter! (Japanese: 格闘家をつくろう! Hepburn: Kakutōka o Tsukurō!) is to train fighters to win tournaments after 50 rounds or less of training (building up movesets). Different movesets allow different moves to be performed. Tanimura's mission, Resolving Police-Radio Disputes (Japanese: 警察無線トラブル解決バトル Hepburn: Keisatsu Musen Toraburu Kaiketsu Batoru), is to keep the peace on the streets of Kamurocho. Radio reports tell him where to find incidents, and the player must defeat the perpetrator. In Kiryu's mission, Team Encounter Battle (Japanese: チームエンカウントバトル), seven gangs attack him and he must fight to reach each gang leader.

Each character has his own style of fighting and special moves as their body frames are different. Kiryu focuses on the powerful blows of Karate and Boxing, Akiyama prefers swift attacks combining Taekwondo and Wrestling, Saejima favors brawling attacks using Judo and Street fighting, Tanimura uses the defensive maneuvers of Aikido and Kung Fu that he learned from his fellow Police Officers.

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 block size Mega No improvement to performance but reduces the number of SPU cache objects.

GPU configuration

Setting Option Notes
Resolution scale threshold 512 x 512 Prevents screen borders from showing up.

Known Issues

Random Crashing - Issue 4489

The game currently suffers from random crashing without any log output.

Game updates for the JP copy - Issue 12068

If you're interested in installing the game updates for the jp copy of this game then before doing that you must first run the game in the base version (v1.00) and let it install its game data to the HDD, after that's done you can safely install the game updates. Failing to do so before installing the updates will prevent the game from going past the initial boot screen.


Special Notes