I'm now noticing this same error message in my server log, around line 40 just after "Initializing PredefinedShipDesignManager", and the AI executable is not finding the content directories at all (the AI log files list all kinds of content problems and the AIs do nothing ingame). I guess all my testing for a while had been just with the human client and my own empire, is the only reason I can figure out that I hadn't noticed this yet. Though at the time I first posted above, the AI was just getting the stringtable error but not the content errors and was still functioning ok.
I have found that if I comment-out the couple of "safeguard" python directory changes done in PythonServerFramework.cpp PythonInit(), then the AI no longer has these error messages in the log and works fine (at least seems to in brief testing so far), but I am still getting the server error about the stringtable. The lines I commented out for this were at lines 147-148:
Code: Select all
// if (!PythonSetCurrentDir(GetPythonUniverseGeneratorDir()))
// return false;
and at lines 165-166
Code: Select all
// if (!PythonSetCurrentDir(GetPythonTurnEventsDir()))
// return false;
could someone else who compiles please double check if they are getting these problems with the current repository code, and if the above stopgap fix/hack solves the problem for the AI for you as well? A better fix would probably be to save the current directory before these changes and then restore it, or possibly just check the validity of the directories in some other way than chdir'ing to them. But I don't want to sink more time into fiddling with this without a confirmation that someone else is seeing the same problem and that this initial hack also fixes at least the main AI problem for them. Please be sure to mention your platform also (I'm on linux).
If I provided any code, scripts or other content here, it's released under GPL 2.0 and CC-BY-SA 3.0