Try / OpenGothic

Reimplementation of Gothic 2 Notr
MIT License
1.17k stars 85 forks source link

Can't start new game [GOG/PL] #229

Closed ghost closed 2 years ago

ghost commented 2 years ago

Hello. I can't start new game. My system is openSUSE Tumbleweed. I tried some time ago on openSUSE Leap and had similar problem.

Here is what terminal says:

yberion@localhost:~/.wine/drive_c/OpenGothic> ./build/opengothic/Gothic2Notr.sh -g "../GOG Games/Gothic 2 PL/" OpenGothic v1.0 dev no .ini file in path - using default settings no .ini file in path - using default settings GPU = AMD RADV RAVEN Depth format = 13 Shadow format = 5 Info: ZEN: Reading presets... swapchain is outdated - reset renderer loading error: Not a valid format loading error: Not a valid format loading error: Not a valid format loading error: Not a valid format not implemented call [APPLY_OPTIONS_VIDEO] loading error: Not a valid format

Should I provide more info?

Try commented 2 years ago

Hi, @XardasXP !

loading error: Not a valid format

That doesn't look normal: do you have a clean setup, or with mods installed?

ghost commented 2 years ago

This error occurs on clean install (Polish version from GOG), not even SystemPack installed. I tried on my install of The Golden Gate mod with -w addonworld.zen switch and it launches new game without issues. When I try to specify -w newworld.zen on clean install I get:

yberion@localhost:~/.wine/drive_c/OpenGothic> ./build/opengothic/Gothic2Notr.sh -g "../GOG Games/Gothic 2 PL/" -w newworld.zen OpenGothic v1.0 dev no *.ini file in path - using default settings GPU = AMD RADV RAVEN Depth format = 13 Shadow format = 5 Info: ZEN: Reading presets... swapchain is outdated - reset renderer Info: ZEN: Reading world... Info: oCWorld reading chunk: MeshAndBsp Info: ZEN: Reading mesh... Info: Reading mesh '' (Version: 265) Info: Found 260696 vertices Info: ZEN: Done reading mesh! Info: oCWorld reading chunk: VobTree loading error: Valuetype name does not match expected type. Value:numKeyframes

And the new game is not loading again.

Try commented 2 years ago

Thanks for info, @XardasXP !

I've been trying to reproduce the issue on Steam/PL edition with no success so far. Error you observing is:

loading error: Valuetype name does not match expected type. Value:numKeyframes

Mean that file-parser failed to load variable named as numKeyframes. I'm not sure why exactly, but seems different releases of gothic have a slightly different data packing, what makes our reader not 100% bulletproof.

If it's possible for you, you may try to switch from GOG to CD/Steam or from polish to english, while I'm working on fix.

TheSiege commented 2 years ago

I don't have the problem on the polish version - but the exact same problem with the german GOG version; fortunately I also have a steam version and can confirm that the german Steam version works

Try commented 2 years ago

Tested current dev build on freshly installed GoG/Pl. Issue is not reproducable: изображение

ghost commented 2 years ago

I did another clean install of GOG/PL NOTR and tested current dev build. I noticed something weird. When I have tried to launch new game with OpenGothic, it don't launched again. But after I launched a game with original Gothic2.exe and then tried OpenGothic it worked this time. It seems like Gothic2.exe did something to game files.

ghost commented 2 years ago

On clean install, where I have not launched Gothic2.exe I'm getting now this output:

yberion@localhost:~/.wine/drive_c/OpenGothic> ./build/opengothic/Gothic2Notr.sh -g ../GOG\ Games/Gothic\ 2\ PL/ OpenGothic v1.0 dev no .ini file in path - using default settings no .ini file in path - using default settings GPU = AMD RADV RAVEN Depth format = 13 Shadow format = 5 Info: ZEN: Reading presets... swapchain is outdated - reset renderer unable to open Zen-file: "world.zen" Info: Reading 20826 blocks

---crashlog(SIGSEGV)--- GPU: AMD RADV RAVEN

1: WayMatrix::startPoint() const - /home/yberion/.wine/drive_c/OpenGothic/build/opengothic/Gothic2Notr(_ZNK9WayMatrix10startPointEv+0xc) [0x60b9fc]

2: World::createPlayer(std::basic_string_view<char, std::char_traits >) - /home/yberion/.wine/drive_c/OpenGothic/build/opengothic/Gothic2Notr(_ZN5World12createPlayerESt17basic_string_viewIcSt11char_traitsIcEE+0x1a) [0x61013a]

3: GameSession::GameSession(std::cxx11::basic_string<char, std::char_traits, std::allocator >) - /home/yberion/.wine/drive_c/OpenGothic/build/opengothic/Gothic2Notr(_ZN11GameSessionC1ENSt7cxx1112basic_stringIcSt11char_traitsIcESaIcEEE+0x22c) [0x52e5dc]

4: GameSession::GameSession(std::__cxx11::basic_string<char, std::char_traits, std::allocator >) - /home/yberion/.wine/drive_c/OpenGothic/build/opengothic/Gothic2Notr() [0x59ec8c]

5: GameSession::GameSession(std::__cxx11::basic_string<char, std::char_traits, std::allocator >) - /home/yberion/.wine/drive_c/OpenGothic/build/opengothic/Gothic2Notr() [0x54464c]

6: GameSession::GameSession(std::__cxx11::basic_string<char, std::char_traits, std::allocator >) - /lib64/libstdc++.so.6(+0xdfc44) [0x7f163b048c44]

7: GameSession::GameSession(std::__cxx11::basic_string<char, std::char_traits, std::allocator >) - /lib64/libc.so.6(+0xa4427) [0x7f163acdf427]

8: GameSession::GameSession(std::__cxx11::basic_string<char, std::char_traits, std::allocator >) - /lib64/libc.so.6(+0x12d810) [0x7f163ad68810]

Segmentation fault (core dumped)

I compared md5sums of my previous clean install (where I have not launched Gothic2.exe) and new clean install (where I have launched Gothic2.exe). Many files have diffrent md5sums. I'm not pasting there output from diff because it's very long.

Try commented 2 years ago

unable to open Zen-file: "world.zen"

Seems like your setup was detected as Gothic1 for some reason

Try to specify world explicitly: ./build/opengothic/Gothic2Notr.sh -g ../GOG\ Games/Gothic\ 2\ PL/ -w newworld.zen

ghost commented 2 years ago

It says:

yberion@localhost:~/.wine/drive_c/OpenGothic> ./build/opengothic/Gothic2Notr.sh -g ../GOG\ Games/Gothic\ 2\ PL/ -w newworld.zen OpenGothic v1.0 dev no .ini file in path - using default settings no .ini file in path - using default settings GPU = AMD RADV RAVEN Depth format = 13 Shadow format = 5 Info: ZEN: Reading presets... swapchain is outdated - reset renderer Info: ZEN: Reading world... Info: oCWorld reading chunk: MeshAndBsp Info: ZEN: Reading mesh... Info: Reading mesh '' (Version: 265) Info: Found 260696 vertices Info: ZEN: Done reading mesh! Info: oCWorld reading chunk: VobTree loading error: Valuetype name does not match expected type. Value:numKeyframes

Eulenmensch93 commented 2 years ago

Tried GoG English and Polish version on Arch Linux, both worked as expected. I also tried to install openSUSE Tumbleweed, but my USB drive seems to be broken, I will try again in the next few days.

Eulenmensch93 commented 2 years ago

I was able to test it on openSUSE Tumbleweed and it worked as expected, so the problem is most likely hardware related.

Just a quick note, when I got OpenGothic to compile and link properly with clang I got an error from the Vulkan API. I could resolve the problem by installing the vulkan validation layer (I remembered that from one of our debug sessions). @Try I don't think that this is intended or is it? If not then I would create a new issue with the necessary log files.

ghost commented 2 years ago

I did a clean install of the newest GOG Gothic 2 PL and run the newest OpenGothic from AppVeyor on top of it. The game started without issues.