Unsolved [Game bug] Custom fonts/flora/races, and more generally Data folder overrides, are broken in the macOS version of Warband

Currently viewing this thread:

Swyter

Grandmaster Knight
M&BWBWF&S
Best answers
0
This is a bug that has been causing trouble for multiple mods with custom fonts, like e.g. The Last Days of the Third Age, for a while.

While TaleWorlds has improved the macOS port along the years, and added 64-bit support, we still need to have a manual install guide with extra steps only for people playing on macOS. This doesn't seem to apply to Linux.

From now on I will use The Last Days (TLD) as example, but this applies to every other Warband mod with custom fonts, flora or races.

The reason why custom mod fonts are broken in the macOS version of Warband: They append ../../.. every time they concatenate a file path, they do this because on macOS the game assets are in a different folder (the game root) and the game executable is inside the app bundle (Mount and Blade.app/Contents/MacOS/Mount and Blade). So yeah, if you actually copy (or symlink) TLD's Data folder to Steam/steamapps/common everything works normally because that is also three folders up in the hierarchy when you start from the mod folder. That's the current manual workaround, but that only works for one mod at a time and requires fiddling with the Terminal.



Code:
SteamApps
└───common
    ├───Data <- ends up looking for mod files here
    └───MountBlade Warband
        └───Modules
            └───TLD
                └───Data <- it should be searching here
Here is a small snippet of the files that the game tries to open, in order, as logged by opensnoop:
Code:
  501   1470 Mount and Blade  12 ../../../Modules/TLD/languages/es/parties.csv
  501   1470 Mount and Blade  12 ../../../Modules/TLD/languages/es/factions.csv
  501   1470 Mount and Blade  12 ../../../Modules/TLD/languages/es/quick_strings.csv
  501   1470 Mount and Blade  12 ../../../Modules/TLD/languages/es/item_modifiers.csv
  501   1470 Mount and Blade  -1 ../../../Modules/TLD/../../../Data/languages/es/font_data.xml
  501   1470 Mount and Blade  -1 ../../../Modules/TLD/../../../Data/font_data.xml
  501   1470 Mount and Blade  -1 ../../../Data/languages/es/font_data.xml
  501   1470 Mount and Blade  12 ../../../Data/font_data.xml
  501   1470 Mount and Blade  12 ../../../Modules/TLD/module.ini
  501   1470 Mount and Blade  12 ../../../Modules/TLD/game_variables.txt
  501   1470 Mount and Blade  12 ../../../Modules/Native/game_variables.txt
This ../../../Modules/TLD/../../../Data/font_data.xml should be ../../../Modules/TLD/Data/font_data.xml. What they are doing is using the ../../../Data/font_data.xml from the main game (which works) and then putting ../../../Modules/TLD at the beginning. Keep in mind that this also affects every other mod.

The SDL2 documentation tells you that you don't need to use any ../../.. at all. They just have to set SDL_FILESYSTEM_BASE_DIR_TYPE to parent.

So, what's the current workaround for The Last Days? This install guide, and replying to people asking us why their game appears with "broken Korean letters". ¯\_(ツ)_/¯


PS: This is not the only bug with fonts. A more general issue is that textures with language overrides (like the special Chinese fonts that get used when switching the language) can't be overridden by mods either; they can only be retrieved from the main game folder. And this one is a problem on all versions of the game, Windows included. So it would be nice if language-dependent fonts can be made modular.

If anyone from TaleWorlds reads this, if would be great to find and make a list of all these small annoyances and push a fix in a single patch. Most of these are relatively trivial. Hope that this thread helps a bit, it's not the first time I have reported these issues, so they may already be part of the internal bugtracker.
 
Last edited:

Mr.Milker

Sergeant Knight at Arms
WBNWVC
Best answers
0
I've been answering people asking about these things for literally years at this point.
If the solution is this trivial, why not do it?
I get it, it's the old game now, but so many players still evidently play it for the mods. And more and more Mac players all the time.
 

Dejan

Community Manager
WBNWVCM&B
Best answers
0
Just a note that this was forwarded to the devs and will be looked into but it's not a priority due to obvious reasons. Thanks for the detailed report @Swyter !