RPCS3 / rpcs3

PlayStation 3 emulator and debugger
https://rpcs3.net/
GNU General Public License v2.0
15.37k stars 1.91k forks source link

Demon's Souls reliably hangs after build 6718 #4568

Closed ashemedai closed 6 years ago

ashemedai commented 6 years ago

System: Windows 10 (April's update; build 1803), GTX 980, Intel i7-4770, 16 GB Settings: Vulkan, Write Color Buffers, English (US), Pads: DualShock 4, rest default Firmware: 4.82 Kept the title to Demon's Souls as it's the only ISO I have dumped at the moment, so could not personally verify with other titles.

After PR #4553 (tested with build 6734) Demon's Souls hangs after fighting the first enemy in the tutorial. Audio keeps playing, FPS counter still fluctuates at times, but game is otherwise hung up.

After forcibly quitting the emulator render window, you cannot load the game again due to encountering {PPU[0x1000000] Thread (main_thread)} class std::runtime_error thrown: Verification failed (e=0xb7) (0): (in file Emu\Cell\SPUASMJITRecompiler.cpp:2753). It does not matter if you delete the save game and clear the LLVM cache, problem persists.

I could not reproduce the above mentioned loading problem with PR #4565 and build 63e4a0d8. That build, however, still has the hang problem described earlier.

Build 6718 works, as in: I can continue past the first enemy, kill some others and walk around for a while.

I've attached the log file of the 63e4a0d8 build run until the hang: RPCS3.gz I might have missed something subtle, but it does not seem that there's anything in the log that's out of the ordinary. If there's anything I can do to help narrow it down, let me know.

rthomasv3 commented 6 years ago

I can confirm the same issue. System: elementary OS 0.4.1 Loki, R9380X, AMD FX-8350, 16GB RAM. I was unable to find settings that work, always drops to ~10 FPS in the counter and hangs after the first or second enemy.

Dreadmoth commented 6 years ago

I have encountered the same issue (BLES00932) - the game hangs whilst loading a savegame with some progress, or shortly after the first enemy in the tutorial. I am also unable to boot the game again once I've stopped emulation after a hang, but I found it's possible to get it to start again (until the next hang) by deleting the following file:

rpcs3\data\BLES00932\ppu-Jn6VNnpwAE4RVNGTAov70kUVgwKA-EBOOT.BIN\spu-§safe-v1.dat (folder and filename might vary between regions)

Setting SPU Decoder to Interpreter also allows booting. With it I can complete the tutorial, but trying to enter Boletarian Palace (via Archstone or savegame) results in an infinite loading screen.

Windows 7, i7-4770, GTX 460

Parthorisian commented 6 years ago

Demon soulz[blus30443] stuck before going to menu https://i.imgur.com/Nu0vxEg.jpg since #4565 Log DemonsoulzStuckRPCS3.zip for build 0.0.5-6737

thinkdude commented 6 years ago

I confirm it freezes within first minute or so and will not start again.

money123451 commented 6 years ago

can we get someone with a TSX enabled cpu to test to see if neko added a TSX optimization to the non TSX cpu branch since all these logs are with older cpus (like my i7-4770k) also if your testing with this build go to the games config folder after each run and delete the PPU-something-something folders to fix the error {PPU[0x1000000] Thread (main_thread)} class std::runtime_error thrown: Verification failed (e=0xb7) (0): (in file Emu\Cell\SPUASMJITRecompiler.cpp:2753)

Moonsera commented 6 years ago

At work now so can't attach log, but I figured out what causes the hang. When you kill the first enemy in tutorial, his body becomes a ragdoll, and at this moment game freezes. Same thing happens if you get past him and try to break crates, freezes the instant your rolling body touches the crate. So it's something physics-related. P.S. i7-3770K here.

pauls-gh commented 6 years ago

I'm seeing freezes in Tales of Vesperia now too. Usually at the start menu.

Nekotekina commented 6 years ago

Try #4603 please

isshininu commented 6 years ago

Well, DeS still hangs on loading screen for me: spu asmjit RPCS3.log.gz

spu llvm RPCS3.log.gz

Nekotekina commented 6 years ago

Another bug was fixed in that PR

thinkdude commented 6 years ago

Hey I'm getting the hangs and I have an i5-7600k

On Thu, May 17, 2018, 12:57 Ivan notifications@github.com wrote:

Another bug was fixed in that PR

— You are receiving this because you commented. Reply to this email directly, view it on GitHub https://github.com/RPCS3/rpcs3/issues/4568#issuecomment-389989812, or mute the thread https://github.com/notifications/unsubscribe-auth/AlhO7naG3VJF56IAp13smtlHsgSzKXaEks5tzdYXgaJpZM4T896x .

flatflatflat commented 6 years ago

Same issue here. Demon Souls hangs. Tried 6718 (pull 4503) and that still works, but anything after that results in DeS hanging when loading a save and showing the npc's during loading. tried all different cpu/gpu settings, no difference. Only thing that has worked has been to revert to 6718 or earlier builds. (I haven't tried every build since then, but 8 or so) RPCS3.log.gz

Parthorisian commented 6 years ago

Dont noticed any infinite loading screen. Character is able travel between worlds as usual. Can confirm - game runs but hang(after killing octopushead) https://i.imgur.com/fprN2jg.png +after exploding miracle https://i.imgur.com/jKdNNbs.jpg May be physics bug Log DemonSoulz_hangRPCS3.zip

TigiHof commented 6 years ago

Still no fix for this with the latest build 0.0.5-c1f84fff. The game freezes after a couple of minutes every time I try it. I have an i7-6700k.

Parthorisian commented 6 years ago

For now Demon soulz[blus30443] still able load menu, but unfortunately stuck immediately after loading https://i.imgur.com/J3YXqZN.png Log DemonSoulz_stuckRPCS3.zip Update: for build6845 still same(physics related bug. described by Moonsera) issue**

NTZ1989 commented 6 years ago

Demon's Soul BLUS30443 still hangs in the build 6815, I start the game from the zero when I reach on Nexus and I travel to the Boletarian, I got stuck on a infinite loading screen that show a random NPC, the fps keep counting at the top of the emulator's windows but it doesn't leave that Screen, it keeps loading endlessly. I tried older builds too, like the 6718 and it still happens there either.

About to hang after one minute or two of gameplay, it is just set the right options. Somes old builds I got this issues too, I disabled the options "Enable Thread Scheduler" and "GPU Texture Scalling". Set 4 or 6 threads, SPU Delay Penalty: 0 ( Somes builds bugs when you set this), Write Colors Buffers. I was able to play it no hangs till the Nexus part when I got stuck on an infinity NPC's loading screen.

Ryzen 1700 | Windows 10 1803 | No supports TSX

Parthorisian commented 6 years ago

NTZ1989 Old kd11 expbuild https://ci.appveyor.com/api/buildjobs/370t489e4itv7ysx/artifacts/rpcs3-v0.0.5-9cdc6f80_win64.7z still able work even for my i7-4770 in best way (still some glitches and random hangs+crashes)

NTZ1989 commented 6 years ago

@Parthorisian Thanks! I tested it and the error kept happening, I used the recommended settings and I've loaded my save on Nexus when I try to travel for the first time to the unique dungeon available, Boletarian Palace. I got this infinite loading screen:

infinite loading screen demon s souls

The fps' counter keep varying but it doesn't pass through that screen no matter how many time I wait, it doesn't freeze the emulator but I feel like some kind of Looping or something similar...

Then I opened the config.yml and changed the PPU Threads from 2 to 1 and SPU Penalty from 3 to 0 I got this error code when I try to open the "Configure" option, it keep repeating the error, preventing me to open that windows and to change the emulator settings.

error rpcs3

it hangs the emulator, makes me force to close its task.

I gave a brief check, the i7 4970 supports TSX but unfornatully my ryzen 1700 just AVX+ and AVX2+ I can't affirm for sure this is the reason that is the causing the issues but any build seems pass through that screen on my pc...

Updating I could fix the error with the "Configure" windows wont opening, deleting the config.yml file. Opening the emulator again, re-creates it reseting the settings already existed but fixing this error.

psennermann commented 6 years ago

If this cannot be fixed, why not just reverting or partially reverting #4553 ? I mean breaking Demon's Soul, NiNoKuni, GTI Club and maybe other games for fixing The House of Dead 4 doesn't seem to me a great deal...

Asinin3 commented 6 years ago

No one said it can't be fixed, just use old builds for now. We're still in alpha regressions are to be expected more testing on Pull Requests from users would help reduce the amount of regressions in master builds.

Parthorisian commented 6 years ago

@NTZ1989 Ive never seen this issue, "infinite loading screen". For all tested builds. But i dont have Windows 10 build 1803. Only old Haswell 4770, Win7SP1Ultx64bit(updates before December 2016y) and Win10LTSB(updates before March 2017y). May be another patch for Win10b1803 (like #4579) can help.

NTZ1989 commented 6 years ago

@Parthorisian Every build that I tested gets stuck on an infinity loading screen, I'm starting the game from the zero. I've already tested many builds before, more than 10 ones, if you want I can record a short video showing it. The oldest build that I tried was the 6487 until the last one released today the 6841... No Success, they all get stuck during the same point to me, when I get in the Nexus for the first time, the only dungeon available is Boletarian, when I touch the stone to teleport to it, it displays a loading screen with a random NPC, the fps drops from 30 about 9fps varing and I gets stuck on that screen, no matter how may time I wait. I'll put my log file, I hope that it can help you.

RPCS3.log.gz

NTZ1989 commented 6 years ago

I copied the code generated by the emulator, not the Gz file, that code the emulator generates when the game is running in live.

I don't know nothing about codes or programming but it keep repeating itself

U {PPU[0x1000017] Thread (NexusRevolution Main) [0x01d55654]} sceNp TODO: sceNpManagerGetNpId(npId=0xd0378864) U {PPU[0x1000017] Thread (NexusRevolution Main) [0x00e123ec]} sceNp TODO: sceNpManagerGetOnlineName(onlineName=0xd0378888) U {PPU[0x1000017] Thread (NexusRevolution Main) [0x00e123fc]} sceNp TODO: sceNpManagerGetAvatarUrl(avatarUrl=*0xd03788bc)

Copy of the emulator Log.zip

code repeating demon souls

It says something about online stuff, no sure. But as standard the emulator is set to "Disconnected" status.

NTZ1989 commented 6 years ago

Maybe it is nothing but looking at the code just before it starts to repeat these three lines it gives these erros:

dirName=“BLUS30443”, errDialog=0x0, funcStat=0x1970c00, container=4294967295) E {PPU[0x1000000] Thread (main_thread) [0x00c3a9d4]} 'sys_ppu_thread_detach' failed with 0x80010005 : CELL_ESRCH [1] E {PPU[0x1000013] Thread (_cellsurMixerMain) [0x01d554ec]} '_sys_lwmutex_lock' failed with 0x80010005 : CELL_ESRCH [1] E {PPU[0x1000013] Thread (_cellsurMixerMain) [0x01d554ec]} '_sys_lwmutex_lock' failed with 0x80010005 : CELL_ESRCH [2] E {PPU[0x1000013] Thread (_cellsurMixerMain) [0x01d554ec]} '_sys_lwmutex_lock' failed with 0x80010005 : CELL_ESRCH [3] E {PPU[0x1000011] Thread (_sys_MixerChStripMain) [0x01d554ec]} '_sys_lwmutex_lock' failed with 0x80010005 : CELL_ESRCH [1] E {PPU[0x1000011] Thread (_sys_MixerChStripMain) [0x01d554ec]} '_sys_lwmutex_lock' failed with 0x80010005 : CELL_ESRCH [2] E {PPU[0x1000011] Thread (_sys_MixerChStripMain) [0x01d554ec]} '_sys_lwmutex_lock' failed with 0x80010005 : CELL_ESRCH [3] E {PPU[0x1000013] Thread (_cellsurMixerMain) [0x01547fb0]} 'sys_mutex_lock' failed with 0x80010008 : CELL_EDEADLK [1] E {PPU[0x1000013] Thread (_cellsurMixerMain) [0x01547fb0]} 'sys_mutex_lock' failed with 0x80010008 : CELL_EDEADLK [2] U {PPU[0x1000017] Thread (NexusRevolution Main) [0x01d55654]} sceNp TODO: sceNpManagerGetNpId(npId=0xd0378864) U {PPU[0x1000017] Thread (NexusRevolution Main) [0x00e123ec]} sceNp TODO: sceNpManagerGetOnlineName(onlineName=0xd0378888) U {PPU[0x1000017] Thread (NexusRevolution Main) [0x00e123fc]} sceNp TODO: sceNpManagerGetAvatarUrl(avatarUrl=0xd03788bc) E {PPU[0x1000013] Thread (_cellsurMixerMain) [0x01547fb0]} 'sys_mutex_lock' failed with 0x80010008 : CELL_EDEADLK [3]

and then after that, it keep repeating this endlessly:

U {PPU[0x1000017] Thread (NexusRevolution Main) [0x01d55654]} sceNp TODO: sceNpManagerGetNpId(npId=0xd0378864) U {PPU[0x1000017] Thread (NexusRevolution Main) [0x00e123ec]} sceNp TODO: sceNpManagerGetOnlineName(onlineName=0xd0378888) U {PPU[0x1000017] Thread (NexusRevolution Main) [0x00e123fc]} sceNp TODO: sceNpManagerGetAvatarUrl(avatarUrl=*0xd03788bc)

as I said, i'm not programmer and don't know nothing about it, maybe this is related or not.

kd-11 commented 6 years ago

sceNp* spam is harmless. Easiest way to isolate this is to just start the tutorial and kill the first enemy (the one who does not attack). When his death animation completes and ragdoll physics should start, the system will lock up almost instantly.

NTZ1989 commented 6 years ago

@kd-11 Hello!
Yes, these hangs happened with my too, mainly after killing the first enemy during the tutorial, but using custom settings I can't avoid this... I did a record, where I prove that changing somes settings it is completely avoidable and you can play it without to hang, just some infinite loading screen, I used the lastest version available 6844 though I couldn't go further on it, I tested with older builds where I could go until Nexus and there I algo get stuck on an infinite loading screen.

Here is the video's link, I credited it putting your official midias (Twitter, Patreon, Official Site, Youtube and said about what the project is...) My intention isn't to promote myself just to provide more info about the issue:

https://youtu.be/3nwAgsyzJVU

00:00 - 02:45 1st attempting - Using the standard settings, I could go a little bit further from the mentioned spot but it hanged.

02:46 - 04:47 2nd attempting - Using the same settings as the 1st test, just to see if it hangs again, it did exactly on the same spot.

04:48 - 05:04 I applied somes custom settings.

05:05 - 08:32 I play it without to hang, I went further from the mentioned spot...

08:33 - 10:18 The inifinite loading screen that I'm saying, I just waited almost 2 minutes to don't make the video too long but I could've waited 10, 20 minutes and still get stuck on this screen. On older builds I could pass through it, finish the tutorial and reaching on Nexus, where I can't travel to Boletarian, I got stuck on it again.

IbanPetrov commented 6 years ago

"Loading precompiled shaders from disk" build6718 (638 loading pipeline object) => build6750 (392 lpo, ~61%) video PS: build6733 (pr4505) F {PPU[0x1000000] Thread (main_thread)} class std::runtime_error thrown: Verification failed (e=0xb7) (0): (in file Emu\Cell\SPUASMJITRecompiler.cpp:2753)

money123451 commented 6 years ago

Ctrl + F "SPUASMJITRecompiler" match 2 of now 4 is my other comment about how to fix that also you can go back another build if you want. @IbanPetrov

CaptainStarPaw commented 6 years ago

Thanks for posting a video example @NTZ1989 The lockup at 2:46 is exactly what I am experiencing too, using the latest build.

tommis15 commented 6 years ago

Still facing the freezing issue after killing first few NPCs in tutorial, is this fixed for anyone?

AniLeo commented 6 years ago

It's still an issue yes

Sekanato commented 6 years ago

Me too. Hangs on any character contact with the ragdoll'ed enemy body. Build v0.0.5-6936-09c816223 XPS15 9560 Win10 Pro 1803 i7-7700HQ 8GB RAM GTX 1050 4gb

Does not hang on RPCS3 v0.0.5-6675-bd1d4de42 But the soldier shield does not render there :smile:

munderwoods commented 6 years ago

Same issue on i7-3770

M0rt41 commented 6 years ago

Exactly the same issue here, sucha shame since this game runs really well on this build FPS wise. Anyone has any ideas for a workaround ?

munderwoods commented 6 years ago

Sure, just use the last build that worked. https://obk.ee/rpcs3/archive/rpcs3-v0.0.5-6697-753d8170_win64.7z

psennermann commented 6 years ago

Last working is 6718, not 6697...

P.S. having absolutely no knowledge at all, anyone knows if it would be possible to build (locally) the new code (latest revisions) without PR #4553 ?

tommis15 commented 6 years ago

@Sekanato You just made me realize that it was freezing when it came into contact with ragdoll. Was curious so I tested it.

ragdoll_freeze

munderwoods commented 6 years ago

@psennermann I know that would seem to make sense, but I tried 6718 and it still crashed in the same way.

M0rt41 commented 6 years ago

I have tried 6697 it works but the game runs much better on the current version (well except for the crashing obviously :P)

isshininu commented 6 years ago

Big ragdoll problem. I just tried to reproduce this problem on new savefile. Log attached . Game stops after killing and ragdollising. RPCS3.log.gz

Sekanato commented 6 years ago

@tommis15 You're welcome :wink: At first I also thought, that it freezes on any kill after souls counter goes up, but after I've killed the first enemy and it didn't freeze but did after killing the second one, I got that the game freezes only on character-ragdoll interaction for me. Sounds like a "fun souls challenge" to play through the whole game without touching the corpses of your enemies :laughing:

money123451 commented 6 years ago

well ... its any havoc object I bet (rolling into things that break also locks it up) so just avoiding the corpses would not really make this issue go away.

munderwoods commented 6 years ago

Pretty sure it also hangs at the load screens. It definitely was for me, so I think that will make your challenge unwinable @Sekanato

Edit: Yeah, hangs when you warp to the Nexus. It's unfortunate since performance is so great on the build. Definitely seems to be physics related as you guys were saying.

Sekanato commented 6 years ago

@money123451 @munderwoods Well, yeah. That's a shame.

isshininu commented 6 years ago

Ugh. Actually I just checked problem PR and there was an update of LLVM submodules. Perhaps there is definitely some error in there. I guess, it might be a problem on LLVM side?

lcmps commented 6 years ago

image Got the exactly same freeze, as @Sekanato said, freeze when in contact with ragdolls

Applesmmmmmmmm commented 6 years ago

demon s souls freeze enemy roll v0 0 5-6976 alpha The freeze also occurs when enemies roll, as can be seen in this screenshot. Not sure if it has the same cause as the ragdoll freeze.

Yessos commented 6 years ago

I can confirm that switching from LLVM Recompiler to Interpreter does nothing - it still freezes on ragdoll interaction.

tommis15 commented 6 years ago

On the latest master I am no longer having the issue with freezing on ragdoll interaction.

psennermann commented 6 years ago

Am I the only one who gets constant crashes/stuck screen when loading Demon's Soul with rpcs3 0.0.5-7069 (I can't even get in-game - no TSX CPU)?