-
Notifications
You must be signed in to change notification settings - Fork 2.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
God of War Ghost Of Sparta unlimited enemies in The Vortex #8299
Comments
Can you post your save(not save state...I hope it's not picky on which version of the game you have). |
PPSSPP instantly crashes when I try to load the save(probably can't load different region saves) |
Savestate near the savepoint |
Sadly that's not good enough either. |
Right,some games are not allowed to use savedata cross region. |
So basically the enemies should eventually stop coming, but they don't? And it helps to lower the Mhz? That's a bit crazy. I guess this means our timing is too far off somewhere. Does it change anything to disable the max 60 fps hack? -[Unknown] |
disable the max 60 fps didin't help. |
If you change -[Unknown] |
I try |
Change PSP's CPU to lower clock such as 222,111(lower is better),restart the emulator,load the game and load game saves,don't load the previous savestates. |
What settings are you using to get fullspeed sorry this is off topic. |
For a modern desktop for example an i5 2500K and Geforce 750ti,it gets full speed on a default setting,for a mobile,may need to low down PSP's CPU clock such as 133 or even lower to get full speed,but with the lower clock,the FPS also become lower,such as 20/20 (100%),if the cpu clock is lower than 132,it occur othe bugs such as can't catch the rope,can't climb up a wall,on the other side if you want a consistent 60/60 fps in fighting or some demanding areas,you will have to adjust cpu clock to higher such as 666. |
I clear the game for the first time while still using my old pc(Pentium 4 2.8Ghz,6600GT,1GB ram)and the cpu was set to 80 and buffered rendering was disabled(disabling it will make some effects to look weird but it was definitely a nice speed boost). PS.About the clock speed,the opposite can also be said...I just tried the game at 1000Mhz and Kratos stuck in one place and I couldn't move from there |
Would Intel i5 6K and 530 Skylake run this fine? |
My old pc is WAAAAY weaker than those two and as I said,I clear the game without any problems. PPSSPP don't have really high requirements.It doesn't need the latest hardware to run games. |
That's with the higher cost right? Ideally, we should find a way to model the costs better. Maybe even calculate the affected pixels or something... -[Unknown] |
Yes,it cost higher. |
I finally could pass the vortex with 222mhz in PPSSPP Android after a lot of issues. I am publishing the save state after the vortex for people with problems with endless enemies. https://drive.google.com/file/d/1Yrx2a5kLLSYvwgviUVJMfXDx3CIHQtok/view?usp=drivesdk |
I've started to think some of this timing should probably consider whether things are in VRAM or cached RAM. For example, if I'm texturing from VRAM, that ought to be faster than texturing from RAM, especially if I use the uncached flag. Same for vertex or index data, perhaps. Maybe we need more models on the speed of drawing. -[Unknown] |
I don't think texturing cares about the upper address bit that specified cached or not - the texture unit it has its own cache. But yes I'd expect it to be faster to texture from VRAM than RAM, but that might depend on the level of memory traffic to RAM and so on, and the access pattern to the texture ... It's very hard to model performance at that kind of detail, all we can do is possibly approximate a little better. |
Hi, probably I'm stuck in this bug too. How can I fix it? |
dliedke <https://github.com/dliedke>
commented over 1 year ago
<#8299 (comment)>
I finally could pass the vortex with 222mhz in PPSSPP Android after a lot
of issues. I am publishing the save state after the vortex for people with
problems with endless enemies.
https://drive.google.com/file/d/1Yrx2a5kLLSYvwgviUVJMfXDx3CIHQtok/view?usp=drivesdk
Em seg, 29 de jul de 2019 17:05, galehawk599 <[email protected]>
escreveu:
… Hi, probably I'm stuck in this bug too. How can I fix it?
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#8299?email_source=notifications&email_token=AD5XJWXD4ZQAXO2KABGORQDQB5EQHA5CNFSM4BXL2IS2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD3B3E7Y#issuecomment-516141695>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AD5XJWQX2J24BEH4ART7JQLQB5EQHANCNFSM4BXL2ISQ>
.
|
I do not know but on ppsspp i have finished all 2 gow relleases. They are not unlimited. It is just 10 minutes fight. It is same as on real HW(i have used my favourite 60mhz and yeah for that jump i have used 222mhz) |
It'd be awesome if someone could time it on a real PSP (best most amazing would be to have 3 samples of timing to confirm.) That way we can compare to PPSSPP and be sure. -[Unknown] |
@dliedke.. your save data still loading it from ship where I face unlimited enemies, is there another save data which passed through that? |
I am sorry vik, that is the only one I have. |
I set my cpu to 222mhz and it's worked for me.. thanks guys |
That warning compat exists because there's a ton of confirmed problems caused by enforcing cpu clocks, especially low ones and people abuse that very commonly as speedhack and then report bugs caused by it. The warning makes it clear and probably stopped a bunch of useless issues being opened by less tech savvy users which is a great thing and worth keeping. This exact issue here is controversial since many people passed this place just fine with default clocks all the way just with info that it requires 10 minutes like on the real hardware while other claim it's completely broken on default settings. Opinions of users, even those that tend to report a lot are hardly objective, it's common people are taking shortcuts while testing especially things that require an active play for 10 minutes or more like abusing savestates and as far as I remember that particular setting does nothing instantly so it's actual state often was and probably still is very confused. Another thing to consider is that we have linked issue from open emu here where at least one person passed the bug by using fast forward. As such I suspect the issue here might be affected by different performance hack - ForceMax60FPS which was proven to not be as safe as initially everyone thought, and it IS enforced to those games since it significally helps with performance. This could also be the difference if some people passed that moment in the game only on past versions as in the past it was just a setting and some people never used it. Preferably to play GOW games you'd want to try a fixed 30 or 60 fps mod for the game itself and standard settings, by using those hacks you'd automatically avoid ForceMax60FPS as well. You could also just remove it from ForceMax60FPS compat hack and keep everything else on default, load the game normally without using savestates and test like that. |
Yeah, I'm not sure what type of timer it's using at this vortex stage. It's very strange. I made another attempt and commented out the game id under I then tried some of the hacks listed in this 5 year old forum thread God of War Chains of Olympus/Ghost of Sparta - Performance improvements codes. No difference with "unlimited fps" enabled (It appeared to still be tied to 60fps?). I then set it to 30 FPS fixed, and stage immediately advanced. It's almost like the game sets it so the number of enemies on the screen gradually grows and grows, until there is a significant frame drop. On fast systems (I'm on an M1 mac), that could take a while. Just a theory anyway. |
I solved it with the default setting only using the cheat 30fps/60fps[fixed] |
@IrfanH495 what device are you using? |
Hm, that's weird. BlockTransferAllowCreateFB only helps if it can help avoiding some GPU readbacks, and I don't think God of War: GoS does a lot of those..... Maybe I'm wrong about that. As for the 30fps thing fixing the Vortex, I'm starting to feel that we're going to have to do something to somehow detect when in the vortex and enable it programmatically there, even if it's quite distasteful accuracy-wise, heh... |
sharp sh04h freeze/fc on adreno vulkan but it only happens sometimes. |
@Panderner like this sometimes freeze |
I ran a few more tests playing with different settings. With the unlimited HP hack and clock speed set to 222, I dodged around the boat trying not to kill any enemies. Sure enough, the stage progressed after just a couple minutes. Progression does not appear to be tied to how many enemies are killed. In another test, I set the clock speed to 0 (auto) and tried the same thing of not fighting the enemies. Many minutes passed without progression. I then held the fast-forward button, which sped up the game. Still no progression after several minutes. In summary, what works to pass the vortex:
What doesn't work (by itself):
|
@IrfanH495 send me the logs if the game freezes? |
cheat 60fps fix also helps |
sorry I don't know how to get logs, anyway I'm not sure this is an issue |
For me, the |
What version of the game do you have, if it's any different than savedata provided here, could you provide your savedata from before beating that moment so more people could test it? Your experience with 60 fps hack seems very weird as most people that used it reported huge performance improvements, maybe your experience differs because you had different hack active under it(lower cheats overwrite those ran before it) or something doesn't work with it. |
Here's a copy of the save, using rom I'm running an M1 mac. I have no clue why the 60fps hack fixes me to 30fps but doesn't help pass the vortex, or why the 30fps hack doesn't give a fixed 30fps and does help pass the vortex. |
From comments under: https://www.youtube.com/watch?v=e_rzVPlfxWc
So it probably is caused by [ForceMax60FPS] and possibly wasn't a problem before the hack was implemented. Edit: tested it myself, game works fine if removed from that hack(still takes somewhat long time, but that's supposed to be normal), but it will not work from savestate, needs restart and reload from in-game savedata to clear the compat hack. Probably it would be better to just remove that hack and if performance is an issue implement fixed 60fps patch as a compat, doesn't have to be cwc, I'm sure it's not doing much, going to look it up. |
I checked the fps hacks for this game and as I thought they're very simple. We could just do that for this game and remove the game breaking ForceMax60FPS hack. Definitely better than tell people to mess with emulated PSP CPU clock to pass the broken part. |
@LunaMoo That's very interesting! So you verified if you run that way, the enemies indeed stop coming? That would probably be worth a new compat.ini flag indeed. |
Yes, it takes a few minutes, but with ForceMax60FPS properly disabled(game loaded from savedata), the game eventually continues with a cutscene. Fixed fps hacks help on their own basically by avoiding the internal frameskip caused by ForceMax60FPS(since it never exceeds 60, it never triggers). So probably best solution would be to do both, remove ForceMax60FPS and add our own fixed fps hack, to avoid patching every region separately could probably be done by function replacements I guess. If the function that it patches is too generic we could just patch a different one. |
Well it sounds like we can just add a [GodOfWar60Fps] compat.ini setting, which is checked in sceDisplaySetFrameBuf and simply calls sceDisplayWaitVblankStart from there. And remove the god of war game IDs from [forcemaxfps]. Right? |
I'm not sure how to syscall from within another, but if that's possible then yeah. It might need to be called after through. |
Is that the case? I use fastforward and will see 120/60 for the framerate.
Ohhh! I didn't realize I had to start from savedata (as opposed to a saved state) in order for the Scenario 1:
Scenario 2:
Scenario 3:
I also tried a forth scenario to beat the vortex with default settings, but PPSSPP crashed about 5 minutes in. Will a system crash report help? I'll attach it. note: |
[RequireDefaultCPUClock] is only a setting that activates a warning to inform an user he's using game breaking setting known to break particular game. Differences in timing are probably related to defeating enemies or something as the difference is pretty large between 1 and 2 which are the exact same thing. [ForceMax60FPS] is a hack that limits max FPS game can render to 60, GOW does much more and that value increases the more you overclock emulated PSP CPU which is why when you have it disabled, the game get's much heavier to emulate by overclocking it. |
Interesting! Well, I did notice that the games performance suffered when [ForceMax60FPS] was disabled, except for when the CPU was adjusted. But even at 999, where the game is really smooth, I won't get more than 62-64 fps. it tried to stick around 60 (at least near the vortex levels). Here's a copy of the SAVEDATA. |
Just to note, we can't simply call sceDisplayWaitVblankStart from inside of sceDisplaySetFrameBuf since movies are actually running at fixed framerate already, so adding sceDisplayWaitVblankStart there makes videos missbehave. Seems to work well as a function replace, if that's acceptable. |
|
Lower CPU clock may help it like 222MHZ.
![01](https://cloud.githubusercontent.com/assets/3481559/11990821/f8076ffc-aa4d-11e5-9534-4b9b647a3654.png)
The text was updated successfully, but these errors were encountered: