-
-
Notifications
You must be signed in to change notification settings - Fork 1.7k
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
[BUG]: Battlefield 2 - Modern combat 2 - 1e Flickering bug (v1.7.3859) #8869
Comments
Won't fix. Use software mode. (the hw fix/GSC/OI has no effect on sw mode) Some of my rambling:
|
I put a lot of effort to provide this information and a concrete solution,... and you dont even look at it or comment on the arguments i provide... I compiled the latest version with my patches and both of the issues i posted got resolved.... |
@IamLupo can you provide your patches? |
@ElTioRata You can ask the community for fixes for the emultor in our discord: https://discord.com/invite/bf2mc Because the PCSX2 developers keep closing tickets and totally ignore out fixes without feedback we desided to keep it in our community to discusse these issue and provide solutions to our community. |
Reopening as it is a valid issue despite the difficulty of fixing it. If you want to post the patch here I can add it to PCSX2 so it can be used by everyone. |
@JordanTheToaster I didn’t expect someone to care. Sorry for my grumpy comment earlier. The patch itself might be useless at the moment. The newest PCSX2 versions have changed a lot, and we’ve noticed many positive improvements! Let me give you a more in-depth explanation. Here are the issues we encountered related to this topic: 1: "Black main menu" issue: 2: Flickering when playing online: Basically, these issues have been resolved in the latest PCSX2 versions. Regarding the second issue/solution I previously posted [1], there were additional visual glitches, like skybox flickering. These issues have also started to disappear in the newer PCSX2 versions. Great work! However, three new issues have emerged in the latest PCSX2 versions: 1: The sun doesn’t render anymore: 2: Visual glitch with duplicated screen rendering: 3: Explosion texture glitch during online gameplay: All in all, PCSX2 has improved significantly and is now in a very playable state for the community. |
Lupo has covered the gist of the remaining bugs; In V1.7.3858 the explosion bug is fixed with this modified vulkan shader tfx.glsl Just to highlight that these bugs pertain to the Multiplayer section of the game only which we restored full functionality to last year. This can be accessed with network enabled and a PCSX2 network config with Manual DNS: 128.140.0.23. The Game is multi ELF where the Multiplayer game boots from: As far as I can see the Singleplayer portion of the game is fixed by Stenzek previously. I can provide gs dumps from both the current stable release and V1.7.3858 if needed. |
@OmegaGG Thanks for jumping in on that one. I forgot the explosion vehicle can be solved with the shader patch in V1.7.3858. For latest PCSX2 version this shader fix doesnt work anymore. It prevents you to reach the online menu's anymore and the menu's stay black. I see the following has been changed compaired to yours and V1.7.3858. Before:
After:
|
Oke i can confirm now with latest PCSX2 version the explosion vehicle is fixed by edit the tfx.glsl. Before:
After:
|
@IamLupo Can you post a gs dump of the explosion vehicle issue? |
@OmegaGG we also forgot to mention one other bug: The flashbangs for the flash grenade doesn't work in any PCSX2 version. Basically the flash bang itself doesn't show up. Normally the screen should be white for a second or 2 and then fades away. |
I don't see any difference between hw and sw? |
oke i pressed ctrl + shift + f8 for multiple frames. Let me reupload a new one |
The file becomes pretty big :( 90 mb. Let me check to upload on our web server. |
Here are my GS Dumps |
Describe the Bug
The bug consist of heavy flickering graphics issues that happends for Battlefield 2 Modern Combat in multiplayer mode. This starts to happen for any hardware as renderer. Software renderer does work correctly without flickering! Our discord community all confirms they experience the same issue thats why i jumped in for investigation and a solution.
The flickering issues I manage to track down by testing version 1.7.3858 that has not the flickering issue. The version 1.7.3859 has the flickering issue.
By checking the pull 7797 for version v1.7.3859. You see that Battlefield 2 got a specific patch GSHwHack::OI_Battlefield2.
By disable "beforeDraw" for "GSHwHack::OI_Battlefield2" in the "GameIndex.yaml", I manage to stop the 1e flickering issue. Because we disabled the Hardware fix in "beforeDraw" we triggered a old bug called "black main menu". This basically didn't draw the full main menu on the screen that caused for a large black screen. With the "GSHwHack::OI_Battlefield2" it patched the width and height of that image.
After debugging this "GSHwHack::OI_Battlefield2" patch i manage to understand better how it worked. Thats why i changed the code to not let it trigger anymore in multiplayer.
Basically i patch the code that it only can trigger false when he detect the main menu. If he is not in the main menu he return true and no patch is applied on the GS.
In the orginal "GSHwHack::OI_Battlefield2" line 959 you see it has a extra if statement to return true. I didnt fully get the reason behind this desision. Because of this it returns to much false returns. This was the main cause of this flicker issue in multiplayer.
My idea is to split this into 2 patches: "GSHwHack::OI_Battlefield2SP"(default) and "GSHwHack::OI_Battlefield2MP". This way our BF2:MC online community can switch what patch to choose in "GameIndex.yaml" file. I notice right now that the BF2:MC community keeps on a lower PCSX2 version because of this issue.
Reproduction Steps
Change settings:
Graphic:
Renderer: Direct3D 12
Adapter: RTX 3080
Network & HDD
Enable network
Ethernet device Type: Sockets
Ethernet device: Ethernet
Start the game, click in the main menu: Play online
Create a new adapter with DNS IP(45.7.228.197).
Login with your account or your create one.
Join a random server
Once you joined the game the flickering starts happening.
Expected Behavior
No response
PCSX2 Revision
v1.7.3859
Operating System
Windows 10 (64bit)
If Linux - Specify Distro
No response
CPU
AMD Ryzen 9 5900X
GPU
RTX 3080
GS Settings
SLUS-21026:
name: "Battlefield 2 - Modern Combat"
region: "NTSC-U"
compat: 5
gsHWFixes:
autoFlush: 1 # Post-processing.
halfPixelOffset: 2 # Offset post-processing.
texturePreloading: 1 # Spikes all over the place otherwise.
getSkipCount: "GSC_Battlefield2" # Depth clear.
beforeDraw: "OI_Battlefield2" # Framebuffer copy, fixes rendering for bottom part of screen.
Emulation Settings
GS Window Screenshots
The screenshot doesn't show it correctly, but the screen keeps flickering,..
This is how the "Black main menu" looks like. It is filled for 90% unrendered screen.
Logs & Dumps
GS Dump: https://mega.nz/file/Acpx2KbZ#ipJWX53b0KDEPQ1C-sE0ZHVlvIE9p1uDGzrl3ESt0HE
The text was updated successfully, but these errors were encountered: