OpenGothic icon indicating copy to clipboard operation
OpenGothic copied to clipboard

Request: Prebuilt macOS .app bundle for OpenGothic (M1/M2 support)

Open Attilar576 opened this issue 7 months ago • 32 comments

Request: Prebuilt macOS .app bundle for OpenGothic (M1/M2 support)

Hi everyone,

I’d really like to use OpenGothic on my MacBook Air M2 (macOS 15.5 Sequoia), mainly to play “Chronicles of Myrtana: Archolos”.

I’ve already attempted to build the project from source using vcpkg, cmake, ninja, and all dependencies. However, I ran into a series of build errors (especially related to doctest's CMakeLists.txt and other policy/version conflicts) and eventually had to give up after several hours.

So my question is:

👉 Is there a prebuilt .app version for macOS that I could simply download and run?
Even a dev build would be great, just to be able to test and explore.

Alternatively:
Would someone from the community be willing to build and share a .app or .dmg package? I’d be happy to provide feedback or testing help in return.

Thanks a lot in advance – and massive respect for the work on this amazing project!

Best regards,
Attilar

Attilar576 avatar Jul 20 '25 14:07 Attilar576

Hi, @Attilar576 !

There is a MacSource ports project, that distributes prebuilds of open-source games for mac: https://www.macsourceports.com/game/gothic2

mainly to play “Chronicles of Myrtana: Archolos”.

I'm afraid that wont "just work": Archolos uses custom made .dll, that are windows only and many other things, that block it from running.

Try avatar Jul 20 '25 17:07 Try

Hi, @Attilar576 !

There is a MacSource ports project, that distributes prebuilds of open-source games for mac: https://www.macsourceports.com/game/gothic2

mainly to play “Chronicles of Myrtana: Archolos”.

I'm afraid that wont "just work": Archolos uses custom made .dll, that are windows only and many other things, that block it from running.

Hey Try,

many thanks for your fast response! The Prebuild you share is the one, I'm currently playing with. As you can see here, I've already created some very basic workarounds/patches for some mods to work properly. Do you have an idea, if there is a way to play Archolos with a rather simple workaround approach like mine?

Best regards, Attilar

Attilar576 avatar Jul 21 '25 10:07 Attilar576

I actually forgot, that there is already nightly builds in CI: https://ci.appveyor.com/project/Try/opengothic/branch/master/job/xrxv3mf4q7qyebr4/artifacts

Do you have an idea, if there is a way to play Archolos with a rather simple workaround approach like mine?

This is very large topic, mostly described in here: https://github.com/Try/OpenGothic/issues/231 In short OpenGothic already has a small subsystem to emulate memory heap of win32 and some of LeGo api. It's enough to start the game and talk with a few characters on the ship, but not much more.

[from worldofplayers.de] Auch ein paar Rüstungen glitchen etwas

Should be mitigated already by 8d8d11dd

Fight.dat

Since this is very common bug in almost all mods - I'm considering now to have engine-level workaround for it with something like https://github.com/GothicKit/ZenKit/issues/107

Try avatar Jul 21 '25 16:07 Try

I actually forgot, that there is already nightly builds in CI: https://ci.appveyor.com/project/Try/opengothic/branch/master/job/xrxv3mf4q7qyebr4/artifacts

Do you have an idea, if there is a way to play Archolos with a rather simple workaround approach like mine?

This is very large topic, mostly described in here: #231 In short OpenGothic already has a small subsystem to emulate memory heap of win32 and some of LeGo api. It's enough to start the game and talk with a few characters on the ship, but not much more.

[from worldofplayers.de] Auch ein paar Rüstungen glitchen etwas

Should be mitigated already by 8d8d11d

Fight.dat

Since this is very common bug in almost all mods - I'm considering now to have engine-level workaround for it with something like GothicKit/ZenKit#107

Oh wow, thanks a lot for the thorough response 🥇

Do you know a way, I can use the Nightly Build with the Mac Ports Shell? Simply copying it into it causes it to crash, unfortunately :(

Attilar576 avatar Jul 21 '25 17:07 Attilar576

Do you know a way, I can use the Nightly Build with the Mac Ports Shell?

No, unfortunately. Do you maybe have a crash.log file? Does the game runs from command-line?

Try avatar Jul 21 '25 19:07 Try

It took me some time but I managed to start it from command-line. Even Archolos worked! Unfortunately it's still pretty buggy, e.g. you can't save at all (except for F5), you can't open the chest on the ship with the scroll, and many others. Compared to the stable Source Port Build, the Nightly Build shows other bugs, like too low resolution (the start menu is way too big, can't even navigate), some NPCs pants are gone, some animations are laggy... But thank you anyways for supporting me in trying it out ! :) Why is it, that Archolos kinda works with the Nightly Build, and others, like Legend Of Ahssun, won't?

crash.log

Attilar576 avatar Jul 25 '25 17:07 Attilar576

like too low resolution (the start menu is way too big, can't even navigate)

I think resolution is not relevant here. What you probably experiencing is that not game-ui respects system-wide scaling factor in windows and macos. So on retina UI should become about 2x big - what is good for cleanly installed game. However, if you already have a INTERFACE/scale flag from systempack, set to non-zero or oversized menu in mod itself - then menu can get too large.

I would recommend to check systempack.ini file (or create one) and adjust INTERFACE/scale value there.

Try avatar Jul 26 '25 18:07 Try

like Legend Of Ahssun, won't?

By looking at the crash-log can say, that it's a regular null-pointer crash (bug in my code).

Can you please provide download like and installation instructions for that mod? Thanks!

Try avatar Jul 26 '25 19:07 Try

like too low resolution (the start menu is way too big, can't even navigate)

I think resolution is not relevant here. What you probably experiencing is that not game-ui respects system-wide scaling factor in windows and macos. So on retina UI should become about 2x big - what is good for cleanly installed game. However, if you already have a INTERFACE/scale flag from systempack, set to non-zero or oversized menu in mod itself - then menu can get too large.

I would recommend to check systempack.ini file (or create one) and adjust INTERFACE/scale value there.

Awesome, changing it from "scale=1" to "scale=0.5" solved the issue, thanks a lot!

Attilar576 avatar Jul 26 '25 22:07 Attilar576

like Legend Of Ahssun, won't?

By looking at the crash-log can say, that it's a regular null-pointer crash (bug in my code).

Can you please provide download like and installation instructions for that mod? Thanks!

Its Legend Of Ahssun

With today's Nightly Build I could even start the game, yet am I in Xardas' Tower and not beneath the walls of Ahssun

Also, Gothic 2 Plus would crash upon arrival in Xardas' Tower - Is there any simple solution?

crash.log

Attilar576 avatar Jul 26 '25 22:07 Attilar576

[from worldofplayers.de] Auch ein paar Rüstungen glitchen etwas

Should be mitigated already by 8d8d11d

Fight.dat

Since this is very common bug in almost all mods - I'm considering now to have engine-level workaround for it with something like GothicKit/ZenKit#107

This is amazing, you're absolutely right: All the bushes and clothings glitching in the Daily Build from 12/24 work fine in the current Nightly Build, which leads to my patches offered being obsolete. The only thing left I have to work around in many mods is the Fight.dat

Attilar576 avatar Jul 26 '25 23:07 Attilar576

Also, Gothic 2 Plus would crash upon arrival in Xardas' Tower - Is there any simple solution?

Looking in the crash - seem to be a null-pointer deep in bullet physics. Not sure, if it worth to chaise - mod seem to be deep into Union/Spine and other hacks

Try avatar Jul 27 '25 23:07 Try

Also, Gothic 2 Plus would crash upon arrival in Xardas' Tower - Is there any simple solution?

Looking in the crash - seem to be a null-pointer deep in bullet physics. Not sure, if it worth to chaise - mod seem to be deep into Union/Spine and other hacks

Thanks so much for your replies! For Gothic Plus, I was just wondering, why it would work with the 0.83 Version and no longer with the current Nightly Build

Attilar576 avatar Jul 31 '25 17:07 Attilar576

Hey Try, FYI: Im in the process of programming a Prebuilt macOS .app bundle for OpenGothic myself. This is my current script code and my ToDoList. If you want to, tell me your thoughts about it.

Current Script.txt ToDoList.txt

Attilar576 avatar Aug 03 '25 16:08 Attilar576

If you want to, tell me your thoughts about it

Sorry, I don't understand, what am I looking at. Current_Script.txt - all in German. Is it suppose to be some sort of installer?

Try avatar Aug 04 '25 18:08 Try

I am building a Mac-App with an auto-installer of the current nightly build, debugger and many more. the document "ToDoList" shows all the features (planned vs. already completed)

Attilar576 avatar Aug 04 '25 18:08 Attilar576

Hey Try,

here's my current version of the prebuilt App. It downloads, "installs" and dequarantines the latest Nightly build automatically and opens mods if installed. there's a couple more features planned.

For the next steps I have a question: I have created a workaround for mods displaying UI badly, so that the Scale is set to 0.5; yet have I seen, that there is already a setting utility built in the menu (full/ 75%/ 50%). But for me it wont change anything. Do I do something wrong or is an improvement planned? If not so, I will integrate a feature in the app, that sets Scale=0.5 automatically for problematic mods

OpenGothic App for Mac.zip

Attilar576 avatar Aug 18 '25 15:08 Attilar576

I have created a workaround for mods displaying UI badly, so that the Scale is set to 0.5; yet have I seen, that there is already a setting utility built in the menu (full/ 75%/ 50%)

Rendering resolution setting (full/ 75%/ 50%) cannot affect UI - it affects only 3D rendering, before upscale.

About UI: The way OpenGothic renders UI in it's pixel resolution, multiplied by Scale, multiplied by system-level scale for UI (2x on Mac, with retina display). Meanwhile MOD's are use to original engine to be ignorant of system-level scaling and doing oversized UI on purpose. At the moment I don't see a good consistent way, to make standard UI work well and to accommodate for mods in the same time

Try avatar Aug 19 '25 13:08 Try

Alright, so I will include it in my App in future

Attilar576 avatar Aug 20 '25 17:08 Attilar576

I have created a workaround for mods displaying UI badly, so that the Scale is set to 0.5; yet have I seen, that there is already a setting utility built in the menu (full/ 75%/ 50%)

Rendering resolution setting (full/ 75%/ 50%) cannot affect UI - it affects only 3D rendering, before upscale.

About UI: The way OpenGothic renders UI in it's pixel resolution, multiplied by Scale, multiplied by system-level scale for UI (2x on Mac, with retina display). Meanwhile MOD's are use to original engine to be ignorant of system-level scaling and doing oversized UI on purpose. At the moment I don't see a good consistent way, to make standard UI work well and to accommodate for mods in the same time

Dear @Try, is there a way to get the last build compiled? Based on the changes, you have implemented ray tracing ? Thank you

r4shpro avatar Oct 05 '25 10:10 r4shpro

With this prebuilt Mac-App you can play the latest build. The opengothic.osx folder simply needs to be in your downloads folder

OpenGothic.zip

Attilar576 avatar Oct 05 '25 11:10 Attilar576

@r4shpro api-based RT, such as MetalRT or DXR, been around for several years at this point. Recent commit is to evaluate software alternatives.

Try avatar Oct 05 '25 12:10 Try

Its Legend Of Ahssun

Will there be a solution for big mods like Legend of Ahssun?

Is there a list of mods already working?

Attilar576 avatar Oct 11 '25 19:10 Attilar576

Here is the latest version of my App, now finally with automatic installation implemented.

OpenGothic.zip

Attilar576 avatar Oct 22 '25 14:10 Attilar576

Hey Try, I have a question concerning resolution: You talked about your new resolution feature. I see, that in the video settings I can now change resolution with a visible effect. Yet the issue with problematic UI still remains: For LHiver for example I still need to use the workaround with setting the system's resolution to the lowest and changing Scale = 0.5 in the systempack.ini

Are you planning on a solution in the near future or is it worth programming a workaround into my App?

Attilar576 avatar Oct 24 '25 12:10 Attilar576

HI,

Are you planning on a solution in the near future

Current one should be good out of box, for vanilla and mod. The way it works right now:

  • if UI element is tagged with DONT_SCALE_DIMENSION, it will be scaled of scale multiplier. Those elements assumed to be fixed size and tuned for old non HDI setups, and can get too small otherwise.
  • If UI element has no such flag - it stretched against current rendering area.
  • scale multiplier here calculated as multiple of system-level multiplier and INTERFACE/Scale from .ini file

Here are examples on LHvier, out of box (windows11, 150% scale in OS settings):

Image Image Image

Try avatar Oct 25 '25 17:10 Try

And here is MacM1, retina (backing scaling factor = 2), default settings:

Image Image Image

Try avatar Oct 25 '25 18:10 Try

Current one should be good out of box, for vanilla and mod. The way it works right now:

Wow, that is absolutely splendid! Great job, so good! Thank you!

Attilar576 avatar Oct 25 '25 22:10 Attilar576

Is there a list of mods already working?

As there seems to be no such list, I would start creating such a list within my WOG Posting.

Talking about lists: Do you have an overview, which entries von Gothic.ini and Systempack.ini still influence OpenGothic? Other wise I would try to find out via Trial and Error.

Attilar576 avatar Oct 27 '25 12:10 Attilar576

In principle code, that read SystemPack.ini is here: https://github.com/Try/OpenGothic/blob/4c9f902b7c1aea89736195206c8410bd36c8b148/game/gothic.cpp#L50

And gothic.ini: https://github.com/Try/OpenGothic/blob/4c9f902b7c1aea89736195206c8410bd36c8b148/game/gothic.cpp#L108

So you don't have to test all the things.

There is also an issue to track interface-related settings of SystemPack: https://github.com/Try/OpenGothic/issues/535

Try avatar Oct 27 '25 20:10 Try