Linux setup . . .

Buffalo Solider

Chieftain
Joined
Aug 11, 2016
Messages
50
I am trying to run this mod on Linux but with no luck. I installed some initial stuff, I got civ IV BtS working, then I got civ4col working.

To speed up : I installed (in my wine enviroment) msxml3 and 4 . I installed a BUNCH of dx9 versions for programs to choose from. I installed all fonts. I installed oleaut32. I installed bunch of random libraries that maybe possibly could be used... and actually I still had problem with civ IV BtS even after these steps. Only after I installed lib32-nvidia-utils base game started working, together with Civ4Col

But back to WtP - I basically executed setup.bat file manually, reading it carefully I decided I only need to move these 2 dlls where's their place 2 directories up, next to "Colonization.exe", after re-trying launching I got mod information about re-configuration of .ini file... And I'm stuck at loading xmls. . . I for the love of god can not make it load all xmls. The game is always turning off while loading those and now no matter what I tweak/change it always end up on :

[38276.853] Load XML file xml\Buildings/CIV4BuildingInfos.xml SUCCEEDED
[38276.853] SetGlobalClassInfo (Civ4BuildingInfos/BuildingInfos/BuildingInfo)
*game turns off without any "failed" information, or whatever* logs are full of "success" and mention no errors...

I removed CIV4BuildingInfos.xml and then log ended at CIV4UnitInfos.xml again with no errors or problems (didn't even looked for missing "BuildingInfos"?)

Logs don't say about any error, console that I'm running Steam from also has no errors, game just stops... I don't know what to do anymore...

Maybe it would be better to run it through windows x_X but I'm afraid about performance problems (running WtP "normally" already had problems with performence) and less convinience in using would cause me to avoid it
 

Attachments

  • Logs.zip
    10.2 KB · Views: 7
Last edited:
I tried 3.0.1 and the xml.log also cuts at "BuildingInfos". That's interesting clue, because I had 3.* working in past. That's interesting, this bug is for sure beatable, but I must have forgot about something that I did on the other system to get 3.0.1 running.

I would be willing to blame graphic card, but it has nothing to do with xmls... I do have msxml3 and 4 installed.. Don't know what else can cause problems.
 
What Linux distro/version are you using?
What Proton version are you using?

I'm perhaps fortunate enough to have the old standalone DVD version of CivCol4 so I don't have any experience with the Steam variant, I run CivCol4 directly with Wine. However you should only make sure to have msxml3 and oleaut32 installed in the same wine/proton prefix, no need for msxml4 (or anything else). Also skip all the dx9... stuff to start with, you usually only need to look at the dx stuff if you have really slow graphics (i.e. non accelerated gfx).

I did have various problems with the 3.0.1 version of WtP, but got it to run fairly well in the end. I find the latest 4.1 release be very stable compared to 3.x so I would recommend to go for 4.1.

Also I would recommend to first try to get the base game to run, even play a few turns to make sure it actually run. In case of success then add the WtP mod.

Last time I messed around with Nvidia graphics was when I tried to get WtP to use accelerated graphics on a laptop with hybrid graphics (Intel/Nvidia GPU). The problems I had was never really with the graphics itself, it was more to get CivCol4 to use the Nvidia GPU. That said I really doubt your problem have anything to do with the graphics. I suspect it was all that dx9 stuff added that required the lib32-nvidia-utils package.

Regarding graphics. Another thing that comes to mind is if you have something like a 4k desktop, then you should force WtP to run in a 1920x1200 window (or similar lower resolution...). Although I got WtP to run in high resolutions like 4k, my experience is that the crash is not far away ...it's a quite old game after all.
 
I'm perhaps fortunate enough to have the old standalone DVD version of CivCol4 so I don't have any experience with the Steam variant, I run CivCol4 directly with Wine.
Just for the record, steam has added some DRM to the exe file while GOG uses precisely the same exe as the disc versions (both DVD and patched CD). Usually it makes no difference, but the steam version prevents debugging the mod while the other versions allows it just fine. No idea about linux support in general, but it wouldn't surprise me that it will be easier to get it working with the GOG version.
 
Thanks for an answer!

Hmm, I'm using Arch, pretty fresh install (I had 3rd version of this WtP running on Ubuntu, it's pretty likely it worked on Ubuntu, because I had *something else* already installed), on Arch I was unable to run 3rd or 4th version.

I do also remember that I had problems making it work on Ubuntu and used this forum quite heavily back then, too x_x (it was 1 or few years ago)

As for proton - I tried various versions, started with my favorite "6.3-8" then "5.13", then I tried 4 8 9 version too - nothing changes outcome at all.

I have pretty weak graphics (GTX 1050 Ti) and I use just full HD resolution, but it runs Civ IV graphics well and I played some heavier BtS mods on it, too.

I should also mention I have 32GB RAM - so it shouldn't be a problem (If I think about it - that could come as one reasonable way to explain sudden stoping during loading process)

I played like 10 turns on unmoded civ IV col, I also played few turns on "the authentic colonization 2.03_final", but I lacked courage to play on as I only ran those for testing. I might start one of these and keep pressing enter for 50 or so turns just to see.

I also tried some "proton GE" fork, that people mentioned on protondb

In attachment - libs that I installed on wine prefix (through winetricks) that runs the game. It's really just a lot of unneccesary stuff that I thought might just help it to work... ...Actually I don't know how to be absolutely sure if this is the wine prefix that runs this game and when I do "run arbitrary program on this prefix" and select Colonization.exe it won't work because of steam DRM... :/ So I can only trust it works as it should work.
 

Attachments

  • aaaa.png
    aaaa.png
    71 KB · Views: 11
Last edited:
I got some more interesting bug report when running GOG version of game through wine. I installed simmilar libraries (just oleaut32, all msxml versions)



Still base game runs fine, TaC works, WtP doesn't.
 
Last edited:
[38276.853] Load XML file xml\Buildings/CIV4BuildingInfos.xml SUCCEEDED
[38276.853] SetGlobalClassInfo (Civ4BuildingInfos/BuildingInfos/BuildingInfo)
*game turns off without any "failed" information, or whatever* logs are full of "success" and mention no errors...
I just looked at both the xml reading code and the building xml file itself. Nothing strikes me as "windows only" so whatever you have encountered is indeed a mystery. Have you tried starting from terminal? The game will print to stdout, so maybe that will bring some information, which can hint at what is wrong.
 
I tried today with GoG version and pasted terminal output and error output into pastebin - last mesage. GoG version actually produced useful (perhaps?) information
 
You run an up to date system so your system looks good in my books. It's even slightly newer than mine which is Fedora 39, 6.7.7 kernel and Wine 9.1.

I was about to say that you should use a newer Proton version, like the current 8.x or even the 9.xbeta, but since you have the standalone version I would focus on that.

A few other things worth considering.
Are you using Xorg or Wayland? I'm using Xorg.
SELinux? is it in enforcing mode? ('sestatus')

Just to refresh my memory I did a new from scratch install of CivCol4 + WtP-4.1 with Wine 9.1. I did a step by step install to see what fails and what works, but in the end I had no problems getting to run. As usual even worked fine with the gigantic Americas map which I always play, naturally :D

Below are the steps I took for installing CivCol4 + WtP-4.1 with Wine 9.1. First I create a dedicated new Wine prefix, this just for avoiding to mess up existing working installations. Needless to say, still works fine for me.

...in a dedicated shell (otherwise you have to set the WINEPREFIX all the time)

mkdir /what/ever/prefix/wine-col4
export WINEPREFIX=/what/ever/prefix/wine-col4

...initiate the new prefix as well as setting the environment to Windows 7 (may be unnecessary, but I usually set it for CivCol4)

winecfg

...pick Windows 7, apply and OK (exit)
...now install the base game

cd /path/to/CivCol4-media
wine setup.exe

...for me it actually looks like the install fails or just crash at the very end, but I just ignore it.
...install the patch

cd /path/to/patch
wine ColonizationPatch1.01f.exe

...test start the base game (yes it actually works as-is) and force it to run in window mode at 1920x1200 (my desktop is a 4k one).

cd $WINEPREFIX/drive_c/Program\ Files\ \(x86\)/2K\ Games/Firaxis\ Games/Sid\ Meier\'s\ Civilization\ IV\ Colonization/
wine Colonization.exe

...after setting the options I exit the game.
...now add WtP-4.1

mkdir Mods

...unpack WtP-4.1 into the Mods directory and copy the tbb.dll and tbmalloc.dll as the instructions say
...here I test started the game again, as expected it now failed with XML errors
...with 'winetricks' I added the msxml3 _only_, nothing else!
...I started the game again and it worked as expected. One interesting thing here is that oleaut32 doesn't seem to be needed in Wine 9.x?

wine Colonization.exe


Hope any of this helps
 
Thanks for commitment and patience! Sooo, I will try doing setup with only msxml3. Maybe in some places msxml4 functions are bieng preffered (by system) over msxml3 functions? Maybe exactly that is cuasing problems? That COULD be interesting explaination that doesn't sound absurdal... So let's try only xml3..



AND
IT WORKED
!!!!



Wow.. So the lesson for me is - some aditional dlls might actually cause the game to NOT work. (I always though if something is added unnecessary it couldn't possibly hurt other than taking space on disk)

Your description could be made into official guide to Linux instalation :D

I made similar steps through winetricks (because I'm not feeling confident setting PATH variables and writing commands by myself. I prefer some GUI doing that)

I will write steps to reproduce "my way", just so there's more approaches available (I BET I will be reading and running these steps myself in year or 2 from now, because I have very bad memory :D ) :

* I opened terminal, typed in "winetricks" (install it first if you don't have it)
# at least on my system operating winetricks is spilling A LOT of errors left and right. I am ignoring all errors that it produces, becase many of them (in this case all of them) have no impact on things working.

* In winetricks GUI I selected : "Create new wineprefix".

* I created wineprefix with 32-bit system and named it Col4WTP.

* Now in winetricks menu I have option "Select Col4WTP" - press it.

* "Install a Windows DLL or component" -> Installed !!ONLY!! msxml3

# I ignored bunch of winetricks errors that I mentioned before. It even says "installed msxml3, but couldn't find msxml3.dll in [some folder]". It also doesn't matter.
* In winetricks select "run an arbitary executable (.exe/.msi/.msu)"

* In your filesystem find and select instalation medium for the game.

* Go through Instalator.
# Game installs really long in my case (GOG complete edition). About 20 minutes despite having everything on SSD disk..

* If it's unpatched version of game "run arbitrary executable"->select path
# GOG version is 1.01f already. If you use GOG version, Skip this step.

* After installing patching game I did "Browse files" to open wineprefix in file explorer (in my case Thunar).

* Locate game instalation directory (the directory created/selected during Instalation process)

* Create "Mods" folder, put WtP mod into directory (unzipped), copy or move contents of "Copy to Colonization.exe" folder to right folder (3 dirs up? "the folder"->WtP->mods->col4 folder)

* Then I moved 1 directory UP and added "Civilization IV Complete" to side tabs for quick access in next step.

* Still using wineprefix I used "run arbitrary executable", selected side tab containing "Civilization IV Complete" and ran "Colonization.exe"

Game should work! Now finding out way to use this prefix and to start game through this prefix is secondary issue for me. For now I'm just going to run it through winetricks because 1) it works 2) it's simple enough for me
 
Last edited:
Top Bottom