PCSX2 / pcsx2

PCSX2 - The Playstation 2 Emulator
https://pcsx2.net
GNU General Public License v3.0
11.63k stars 1.61k forks source link

Ace Combat 5 Invincible Enemy Issue #1842

Closed jupiterbjy closed 7 years ago

jupiterbjy commented 7 years ago

PCSX2 version: 1.5.1902

PCSX2 options: None

Plugins used: All default

Description of the issue: Ace Combat 5 - Unable to Kill enemy Nimrods and Freights in Mission 3 after cut-scene. Lost all memcard data after this update, so I'm starting 100 hours save file from ash. Thanks for that.

How to reproduce the issue: Bios-USA 2.20 / Ace Combat 5 / Normal / Mission 3. Deal all incoming planes and skip cut-scene,

Last known version to work: PCSX2 1.5.1744/1899 works great with little graphical glitches.

PC specifications: Win10 64bit i5-3570 GTX960 OC 16GB ram

FlatOutPS2 commented 7 years ago

As you mention it doesn't have the issue with dev-1899 this has to be a regression caused by https://github.com/PCSX2/pcsx2/pull/1835

volodymyrkutsenko commented 7 years ago

Sorry to hear about your memcard. I suppose you're talking about the Mission 3 where you have to protect the Kestrel carrier. Unfortunately, I cannot reproduce the issue as all the enemies are killable after the cut-scene including Nimrods for me. In any case I don't think the game could have a regression caused by the mentioned PR because the game never uses CFC2 for reading the TPC register. It must have been something else.

mirh commented 7 years ago

Do you have automatic fixes enabled? Because that was the behaviour before sudonim brought 35da3319dfb3f82f12135e9956b186a5f6f3e385

jupiterbjy commented 7 years ago

Automatic fix? Is that kind of speedhack?

And one more, compared to 1744 version, game is very laggy. Same configure with this: https://youtu.be/7ayr1W6RIa8 gives me only 70% speed.

I'll try clean install at march 1st and see if problem is still happening. Thanks for replies!

FlatOutPS2 commented 7 years ago

Automatic fix? Is that kind of speedhack?

No, it's automatic gamefixes(it includes a hack for Ace Combat 5). You can enable or disable it on the System tab of PCSX2. If Preset is enabled in Config > Emulation Settings, Automatic Gamefixes is always enabled.

jupiterbjy commented 7 years ago

Since I never touch emulation settings, It won't be a problem. I wonder if this serious perfomance drop and invincible bug has something to do. I can't use computer currently, can't check it. I kept OpenGL with Blending unit acc. as high, and possible to use 200% turbo mode while using 1744 and 18XX. but currently just 70% even in main menu..

mirh commented 7 years ago

Ace combat doesn't require anything special. You can disable accurate date, blending and I think CRC hacks too.

I currently can't check either, otherwise I'd try newest builds.

jupiterbjy commented 7 years ago

Well, It CRC hack's half pixel offset/round sprite fixes texture issues, and blending unit accuracy fix missle's gradation. And OpenGL fixes lost shadow, engine heat effect, Hrimpaxi burst missle.

mirh commented 7 years ago

Mhh.. I had never noticed last 4 things. But half pixel offset is the wrong hack though.

jupiterbjy commented 7 years ago

how do you play then? exhaust heat effect never appears on direct X, nor shadow and lens flare.. but half pixel do fix separated plane sprite back into one in direct X. After half pixel offset: http://imgur.com/tvsdIvf Before: http://imgur.com/Qpp9WOM Direct X hanger: http://imgur.com/gzbb1BH OpenGL hanger: http://imgur.com/CNJvDOC Direct X plane view : https://i.gyazo.com/ec60b06b03c33182bce9d8e4607ff82c.png OpenGL plane view: https://i.gyazo.com/a646c9fc08626f99ef83059f11f48f7f.png

No blur or no shadow in Direct X, it's also bug isnt it?

Currently starting from ashes to check if invincible bug is happening

jupiterbjy commented 7 years ago

Checked. Invincible enemies are fixed on lastest revision 1909 But not seeing Ace pilot at mission 1, even after killing all 12 planes solo. was 1909 a revert?

mirh commented 7 years ago

Before

Half-pixel hack is an old "brute force" hack. I'm not saying that it might not help but afaik it presents issues here or there. The actual proper one is

UserHacks_round_sprite_offset=2
Userhacks_align_sprite_X=1
UserHacks_unscale_point_line=1

Direct X hanger

Wtf? I don't remember a similar mess since.. 2013 I guess?

When I get home I'll really have to check.

FlatOutPS2 commented 7 years ago

Wtf? I don't remember a similar mess since.. 2013 I guess?

The hanger issue is due to the lack of hardware depth in DX, so you must not have played the game in Hardware mode between 2013 and 2015(when hardware depth was introduced for OGL). :P

Checked. Invincible enemies are fixed on lastest revision 1909 But not seeing Ace pilot at mission 1, even after killing all 12 planes solo. was 1909 a revert?

No change has been made that should be able to alter the issue. It must've been something on your side.

jupiterbjy commented 7 years ago

I see.. no changes, huh. Actually I fresh started game in 1744 and transfered to 1909, I'll check if new game in 1901/1909 still cause problem or not.

And about round sprite, is 2 means half or full? Setting it full makes missle trail less gradiant, and those settings had no effect on my side last time.. I'll try it anyway, thanks for that ;)

mirh commented 7 years ago

Ok so..... I had never noticed that thing in the hangar.. Because I had never starred at planes there in the first place. Depth emulation is indeed it.

Then, when in-game, other shortcomings of DX seem to be the scaling of some lines in both radar and menu map, and the odd shadowing on the plane/engine (related to #1547 perhaps?). But then it seems to actually beat opengl by not making "green" the radar zone.

Blending unit accuracy set from high onward also slightly change the right bottom of the screen http://www5.zippyshare.com/v/0ra4VNzL/file.html

Last but not least, in anything but software mode, half of the clouds are missing and "squadron commands d-pad" is amiss.

And about round sprite, is 2 means half or full?

You should notice I provided plenty of links to further read.

Also, I wouldn't know where to look for lens flare or "shadows". After burner can be seen fiy.

jupiterbjy commented 7 years ago

Well, I can confirm you that there indeed a layer of shadow not seen in direct X, and heat induced light refraction effect is rarely seen in direct X. I'll make comparsion video at sunday. And about green zone of radar, you mean border of map in 5 or ECM of zero? I get both shown in Opengl..

And one thing I want to tell you guys is, I'm really not trying to be offensive. My mothertougue is not english, so I'm not pretty good at expressing my thoughts, sorry about that;;

FlatOutPS2 commented 7 years ago

You can tell the shadows are missing in DX by watching the shadow of the body of the plane on the wings, it's missing in DX Harware, but it is there in Software mode and OGL Hardware. This again is due to the lack of hardware depth.

You can see the smoke effect of the engines in DX, but the heat effect is missing/very faint. This is due the lack of blending unit accuracy(needs basic on OGL).

mirh commented 7 years ago

Links are blue and underlined even in Swahili 💋 Anyway, np

And about green zone of radar, you mean border of map in 5 or ECM of zero?

I mean the actual radar is green instead of transparent.

....

...

Jesus christ opengl amd?

gregory38 commented 7 years ago

Note that due to missing depth emulation, DX will skip some draw calls. Obviously it will miss some effects. Less obvious it can (sometimes) also fix effects.

FlatOutPS2 commented 7 years ago

I've never noticed the radar issue @mirh mentioned, so it might be a driver bug issue in OGL rather than something that is fixed in DX.

gregory38 commented 7 years ago

gsdump are often interesting to compare the rendering in 2 different drivers ;) If it is AMD again, and it could be, I don't know what to do....

mirh commented 7 years ago

So.. radar is fine in ogl in nov1 build.. Tomorrow I'll try to dissect better.

In other news gregory, there seems to be an UI misalignment problem and missing clouds in OGL hw for you to check.

FlatOutPS2 commented 7 years ago

The UI misalignment problem is another I can't reproduce.

The two main problems in this game(which also affect the other AC games) are the missing clouds and the sun shining through solid objects in Hardware mode.

jupiterbjy commented 7 years ago

Hmm, about soild object, you mean plane or terrain? At least terrain is out of that problem, shown in 'Final Option'. And, about missaligned UI, again, check my video, from 4:00 https://youtu.be/7ayr1W6RIa8

And mirh, watch that from 4:30, see heat effect from jet without afterburner. That effect is the only reason I moved into openGL, at cost of performance ;)

FlatOutPS2 commented 7 years ago

Hmm, about soild object, you mean plane or terrain? At least terrain is out of that problem, shown in 'Final Option'.

Plane. It affects both third person and cockpit view.

And, about missaligned UI, again, check my video, from 4:00

That's a different issue. You just didn't enable the HW hacks @mirh suggested earlier, which would've fixed the UI issues visible in the video.

jupiterbjy commented 7 years ago

Still, I cannot use my pc due to daily routine. Therefore, that video is not updated. I'll test right away tomorrow, 7 p.m. GMT +9

And one more thing I want to ask: half pixel offset do fix fogs misalignned in mission like 'LIT FUSE', but cause so many issues, especially trees. I've tried for 3 hours to replace it, but no luck. Is there any recommended settings for that?

mirh commented 7 years ago

You should learn to distinguish between upscaling issue, which are a thing, and renderer bugs, which are another. It's just confusing otherwise.

Said this... It seems like I was getting green radar.. Due to me loading from a savestate? Does it even make sense?

jupiterbjy commented 7 years ago

Well, sorry for confusing you. You know, I lack knowledge, just signed up github for bug report ;) About green radar, I also had green border in DX too,. And disappears if I apply hacks. Isn't it normal?

jupiterbjy commented 7 years ago

Checked all versions, cannot reproduce invincible bug. Tried 3 versions but no effect. Shall we close thread or change topic?

Btw, round sprite full fixed sprite issue(fog), which I never succeed in DX mode. Seems like Unscale Point line is not needed.. I'll check Hrimpaxi if it's burst missle is fixed. Both Zero and 5 had same issue on that.

mirh commented 7 years ago

Well, sorry for confusing you. You know, I lack knowledge, just signed up github for bug report ;)

Yes, but notice that even NOW in the last post you continued to talk about sprites hacks like normal. They (including unscale) are only needed for upscaling, and you never ever specified that nevertheless.

...anyway, TL;DR bugs we might still keep this bug report:

FlatOutPS2 commented 7 years ago

This issue can be closed soon as far as I'm concerned. Another issue can be opened for Hardware mode issues (clouds and sun issues). The depth emulation doesn't need an issue, it's just a lack of hardware depth in D3D. We know it isn't there. If we open new issues for every game that needs an option which is available in OGL and not in D3D, we'd have several hundred more open issues. If it wasn't for the OGL performance issues with AMD GPU's, no one would care anyway.

Does the save state issue also happen when you create a new save state or was just a one-time fluke(did you make the savestate with an older PCSX2/GSdx version)?

jupiterbjy commented 7 years ago

I'm not getting savestate issue. But moving savestates of 18XX on 1902 did broke it. I got issue for Round Sprite=Full, which makes effect(Afterburner, Shadow) misaligned at center.. but I'm just fine with that.

btw, we need to take Hrimpaxi/Pixy's burst missle explosion effect a bit serious. I'm uploading both problem in one video, currently Google's processing it..

jupiterbjy commented 7 years ago

https://youtu.be/DL_tSblFtgA?t=600 check this out, cinematics and engine exhaust is splited. Take a look from 10:00 for just 1 min. And you will see half pixel offset fix engine exhaust in 10:55

Btw, really thanks you guys for helping me out, although we didn't fix nor found cause of main issue, I think I've learned many parts of PCSX2, and limit of each rendering options ;)

mirh commented 7 years ago

For the love of everything lovable (and for the.. like third time?), can you first try on NATIVE resolution? Said this, I have never seen the game all that broken, if you ask me. And indeed, I guess part of the problem is because you hadn't sprit I must be writing posts on drugs or something. First of all, I had totally forgot about UserHacks_merge_pp_sprite=1. Secondly, just now I realize half-pixel offset is not the same of wild arms offset.

And my goodness the clarity this brings on. Thank you so much. To sum-up my best recommended settings now

UserHacks_round_sprite_offset=2
Userhacks_align_sprite_X=1
UserHacks_merge_pp_sprite=1
UserHacks_unscale_point_line=1
UserHacks_HalfPixelOffset=3

In other news, your gsdx looks strange. Mine is like this.

If we open new issues for every game that needs an option which is available in OGL and not in D3D, we'd have several hundred more open issues.

Then let's open a meta-meta issues for all features missing in d3d 😛

If it wasn't for the OGL performance issues with AMD GPU's, no one would care anyway.

Oh right, lol, sometimes my mind is off the world. .. Albeit, if it's between API's capabilities.. I mean, why not? [have at least an issue for tracking what's missing] And besides, older intel/amd users are pretty much condemned too.

Does the save state issue also happen when you create a new save state or was just a one-time fluke(did you make the savestate with an older PCSX2/GSdx version)?

I was almost going to tell you it's a one-time fluke. But then I had this problem even in another one (albeit I still cannot figure out what's the trigger). And it was made with same pcsx2 version, yes.

EDIT: I was also thinking that the COP2 patches for AC5 and zero were just made for the NTSC-U and PAL-E releases. Perhaps japanese ones are still bugged? Shouldn't we point that out somehow?

FlatOutPS2 commented 7 years ago

have at least an issue for tracking what's missing

I know what's missing, and I also know that list might significantly reduce soon, so let's wait a while. We could also consider opening a feature request issue for a multi-threaded OpenGL Hardware renderer. :P

I was almost going to tell you it's a one-time fluke. But then I had this problem even in another one (albeit I still cannot figure out what's the trigger). And it was made with same pcsx2 version, yes.

I'll try to reproduce it.

EDIT: I was also thinking that the COP2 patches for AC5 and zero were just made for the NTSC-U and PAL-E releases. Perhaps japanese ones are still bugged? Shouldn't we point that out somehow?

Many patches don't have a NTSC-J equivalent. It might be a good a idea to make an issue with a collection of all gameindex patches. That makes it easier to track which versions have the patches and might help with eventually resolving the issues they fix too.

mirh commented 7 years ago

I know what's missing, and I also know that list might significantly reduce soon, so let's wait a while.

Uh, looking forward to it then. For as much, I hope you realize that of course nobody outside you and 2-3 people really knows that list 😝

We could also consider opening a feature request issue for a multi-threaded OpenGL Hardware renderer. :P

Developer might want to attempt to our lives.

I'll try to reproduce it.

I can attach them if you want.

Many patches don't have a NTSC-J equivalent. It might be a good a idea to make an issue with a collection of all gameindex patches.

I was actually thinking more *bigger*. For example: if it wasn't for me [providing the log to sudonim] back then, I'm not sure how much time PAL versions could have stayed unfixed. Of course you can't tell user to get the game into another game region.. But if they are actually affected, why not telling them to come back to us because the issue is trivial and the fix is stupid but we need them?

Some method to link/merge similar games in GameIndex.dbf would be required though. In turn this made me remember we had a quite long debate over reforming regions in #825.

jupiterbjy commented 7 years ago

Wow, mirh, your settings are quite different, is that same 1909? and, can you check if half-sprite=3 cause tree glitch? Since I dont have that option.. https://i.gyazo.com/5d9c816c3fa0134d2565cb9f1b0ed45b.png How can I have one like you?

mirh commented 7 years ago

I was using AVX 1, thanks

AVX 1 is no more since some weeks. What have your hands on?

just add this line in inis?

Yes. Trees seem ok then.

jupiterbjy commented 7 years ago

https://youtu.be/lFR2gHaBRt4 Check around 11:20, this is the last problem I'm currently facing. Resolution is 3x native. Any recommendation for this?

mirh commented 7 years ago

If you can share a gs dump I could take a look (unfortunately I have controller unavailable to reach there).

Besides, you still haven't explained where that AVX1 came from.

jupiterbjy commented 7 years ago

I'll try, so you get clean burst missle explosion, right? I'll make dump at..saturday. And about AVX1, It's date was around 2016/12/26, which means it's from dev ver 1744. I just perfomed overwriting.

mirh commented 7 years ago

Lol, then. @anybodyelse do you think printing build/rev version/date in emulog might help to avoid this kind of problems? Or do you think the "hassle" is not worth the (ideally) one-time-only benefit?

FlatOutPS2 commented 7 years ago

@anybodyelse do you think printing build/rev version/date in emulog might help to avoid this kind of problems?

We could get rid of the full path of a plugin and add the plugin revision date intead.

jupiterbjy commented 7 years ago

So AVX1 is updated to AVX2 and I was using it after year changed.. lol I'll dump right away at saterday, around 8~9PM. I have to clear game again, since my memcard is gonner ;) Currently paused from mission 21. Man, I hate 8492.

mirh commented 7 years ago

Try setting UserHacks_SpriteHack to 0 or 2. I found half creates like "bubbles" in supersonic shock waves.

jupiterbjy commented 7 years ago

I was doing MMD port into gmod, and did lots of retry at 23 24 25, so I couldn't reach end in time, couldn't make dump. Sorry for that..

And, I've seen shockwave a little bit acting similar with burst missle too, I'll try that setting next sunday, thanks!

oldmud0 commented 7 years ago

I read through the posts and could not find a resolution that had to do with the original issue (invincible enemies). Are you sure this is a regression? I do remember this issue was in 1.2.1-r5875 - it was very well documented and there were some attempts to fix but don't have links right now.

mirh commented 7 years ago

I mentioned that in third comment. Now the whole thread is a dump on:

TODO (but in other tickets):

Good night

sudonim1 commented 7 years ago

This has become a bit of a mess of different issues, hasn't it? I'll quickly explain what the invincible enemies fixing patch is about.

The game uses VU macro code which reads flags while instructions are in the pipeline which will write new flags (4 cycle latency). Full pipeline emulation for VU macro code is even more complicated than for VU micro code and we aren't even close to being able to do that, so the patch and several like it for other games reorder the instructions to implement the same logic without pipeline emulation.

sudonim1 commented 7 years ago

re. why VU macro code pipeline emulation is so hard, it means emulating the full superscalar R5900 pipeline correctly. I'm interested in doing this at some point for single blocks, but we'll never have correct R5900 pipeline emulation in the recompiler across branches.