Fullscreen magic effects cause missing dialog UI
Affected are things like Beliar shrines, corrupted Innos shrines, Dialog with Seekers, Fullscreen spells like Storm (Unwetter). Reproducable.
The bug starts happening precisely when deactivating atmospheric scattering for the first time. After that, it will always happen regardless of atmospheric scattering settings. So since original sky default commit it always happens, but before that it could be provoked too.
When using beliar shrine with the bug happening, it correctly shows reddish screen effect + distortion but no dialog. Without the bug, that effect is missing (only distortion then), but dialog is shown.
There is the way to make scattering is ON by default? I can't edit UserSettings.bin to force it. And "dx11" doens't rember it when i click "apply" in regular f11 window.
Before this original sky commit, Atmospheric Scattering was on by default (which means that you also loose the original Gothic sky and instead get the not very nice AS sky, which is the reason why it was turned off.). Here is the relevant line of code for the default settings.
At least it workaround to avoid this glitch, even dx11 sky is inferior.
I dont understand... so the glitch occurs when AS is OFF or ON? Should we keep just keep it off and never mess with the setting for it in order to avoid this bug?
If AS is ON at game start and never changed: Dialogs GUI is visible, but some GUI effects are missing (?) and you don't get the original sky. If AS is OFF or was OFF anytime after game start, its the opposite.
In <= 17.4 as well as Captains Fix Version and Bonne's Version, AS is ON by default. In 17.5, AS is OFF by default.
Edit: You should probably keep it on because of the dialogs (or just use Captains fix version until real new version is released).
Thanks for the answer! I just checked and AS is off for me, never changed that setting. I downloaded the DX mod a week ago so that would explain it, it must be 17.5. The Storm spell did mess up when I used it; I got the experience for killing the NPCs, but it did not show me the message that I did. Also, when I talked to an NPC, the dialogue box was shown, but not the dialogue texts itself. This fixed itself after waiting for a bit (probably until the storm spell was completely over). I did not test Beliar's Shrine because I assumed I would get same bug you descriped in your first post.
Do you still recommend turning it on, even if it was off before? I mean I didn't even notice the sky being different cause I barely look up ingame.
Seems like the entire UI is affected, Main Menu invisible for some seconds after using spell.
How to get rid of this problem?
I'm doing some research right now, it seems to be related to "screenblend.scx" VisualFX's.
Ukur and I noticed some weird things similar to this happening when using a dll that renders the Barrier in Gothic II ... the same bug happened because I was not calling zrenderer->FlushPolys() after barrier->RenderLayer(). With atmospheric scattering OFF!
Read this thread from here on: https://forum.worldofplayers.de/forum/threads/1531781-Dll-Release-Barrier-(and-MagFrontier)-in-Gothic-2/page2?p=26043400&viewfull=1#post26043400
There are some videos showing similar things. After finally adding zrenderer->FlushPolys() here:
https://github.com/withmorten/G12Dll/blob/master/G2Barrier/g2barrier.cpp#L629
... it worked.
Will edit when I find new things.
Adding RenderSkyPost() in D3D11 after DrawSky() (which calles RenderSkyPre() from the game if AtmoScatter is off), it did NOT change things at all.
Edit 1: The interesting thing about the barrier bug btw was, that it seemd the alpha func got changed from ADD to BLEND for whatever reason. In that time, the menu did not get displayed. The alpha func for the *.scx is also BLEND. Perhaps, if anything is set to BLEND, this bug occurs? Additionally, water animations with BLEND func do not get rendered properly (black background).
Edit 2: Whyever that happened, setting the alpha func of the barrier to BLEND always does not reproduce the issue. So scratch that.
Edit 3: So yeah. This only happens for .scx VisFXs, which are zCVobScreenFX's. For some reason these do not get rendererd without atmospheric scattering enabled permanently. I have no idea why. Nothing in the code seems to give a valid reason why initing this setting to false, or worse, changing it to false and then back, should cause this issue.
A workaround would be to modify the scripts to remove any and all Wld_PlayEffect of any *.scx Visual FX, then you can keep AtmosphericScattering on false.
Is there any way to fix it without going into internals of the code? Normal users need the solution.
So is there any way to fix this problem for a regular user? I also have it. Not even a complete reinstall fixed it.
Try enabling Atmospheric Scattering in the Renderers Advanced Setting (Strg+F11) while in Main Menu BEFORE loading/starting a game.
I have tried that already, but that doesnt help either.
Ok then i suggest trying to use the renderer version by BonneCW, Kirides or Captain (all of them are based on this renderer but have some additional changes including switch of atmospheric scattering setting): Bonne (might be only available on Spine, not sure): https://www.worldofgothic.de/dl/download_540.htm (Note: making a Spine account is not needed) Kirides: https://forum.worldofplayers.de/forum/threads/1546222-Yet-Another-D3D11-Renderer
I've tried them all but none of them helps. Also if i try to play without the DX11 renderer the problem still continues to exist.
If you played without them and problem still exists, that means that the renderer is still installed and running.
The other renderer versions definitely fix the problem. Make sure you delete the renderers settings file (should be somewhere inside the renderer folder inside Gothic/system folder) and correctly install them.
No the renderer is deleted and definitely not running. I even uninstalled the game, deleted every file and then installed it on another drive. No DX11 mod and still have the problem.
Then you must have a copy of the game somewhere that you are using without noticing and that still has the renderer installed. The original renderer is not capable of producing this problem. Right click your Gothic shortcut -> Properties -> Target, make sure target is the correct Gothic installation.
Its steam version, so no shortcuts. Plus i started directly with the .exe in the installed /system folder. If you dont believe me i can post a video. But there is no renderer doing anything.
edit: here is the video https://streamable.com/vcp1t
Ok that is interesting. Do you have a seeker left somewhere that you can try to speak to and check if you get a dialog? Does your game work without Systempack (you may need to reduce resolution to a very low value to get it to work)? Which Systempack version are you using?
Seekers never had dialogue box to begin with. Only reason i never had a problem with them is, because i remembered there is and empty "End dialogue" after their speeches. The game doesnt launch without the systempack, even when i lowered resolution to 800x600 which the lowest.
Thing i used: gothic2_fix-2.6.0.0-rev2 Playerkit 2.8 SystemPack 1.8 and the DX11 mod.
Ok try with SystemPack 1.7 then.
I get the same results with SystemPack 1.7 too.
Ok then im out of ideas, sorry.
So now months later after i had to abandon that G2 playthrough, i finally found a solution for it after a complete new install and run with Legend of Ahssun started to get plagued by the same exact problem and once again completely halting progress in chapter 5, even though i did not touch the DX11 settings so it would not happen(as it was thought that was the problem with atmospheric scattering).
Basically if it happens all you have to do is:
- enable marvin mode
- open console
- export your character ie.: “hero export bugfix”
- import back your character with: “hero import bugfix”
- and it should work now
I accidentally found this fix after googling for a solution in german in some random dude’s post on WoG forums facing the same problem. I dont think its caused by the DX11 renderer though, because even after removing the renderer this can still happen.(and removing the renderer doesnt fix it) I think its either a problem coming with the steam version or playerkit, sysempak(no idea what these actually do though) or the patch required for those, since long ago in 2000s i never ever had this problem with my retail copy and that one never had any of those installed for it.
I felt like posting it in case another fellow Nameless Hero faces this problem and cant find a solution and doesnt know german or think of searching for it in german. So hopefully they find their way here.
Related: https://github.com/BonneCW/GD3D11/pull/42