I downloaded and ran autoplay (if you enable the debuggning features in Civilization.ini you can actually watch the autoplay, not merely wait until the Civ has spawned and then look at the result in the World Builder) until the game crashed at turn #110 or so.
I wouldn't know what causes it but I don't think you can rule out Python either, because the C++ in the DLL communicates with the Python stuff, and if the game engine gets bad results from Python that might well cause a crash. (Rhye has actually commented on C++ exceptions in his Python code.)
One thing I notice going through your files is that the text formatting hasn't carried over all that well from Mac. The paragraph character (usually invisible) is shown as a square in Notepad for instance, revealing exactly where you've copy-pasted in more than one line of code at once... I guess it works nonetheless (depending on whether the game can read it proper) but its hard to see if indentation is right, for instance. (And if the game isn't reading it right, that could be your problem right there.)
So, you could just paste in stuff one line at a time, but you can't use Enter to create a new paragraph... I think you need to use encoding that works on both platforms (Unicode or something like that) but I'm no expert.
This is also prevalent in Barbs.py, where city spawns appear to be all on the same line and the like. If the game isn't reading the code right (as separate lines of code) its no wonder the Carthaginian cities aren't showing up.
Also, I've noticed you refined the first UHV and while I'm somewhat impressed of how simply you pulled it off, you should probably know that the code also allows for the Celtic player to found a city in the specified area. (I'm guessing its the tiles adjacent to Rome's tile.) So if Rome gets raized (by the Celts or by anyone else) the Celtic player could still get the UHV by resettling the area.
There are other ways to do it if you don't like this outcome. Right now you maybe shouldn't try and do any Python of you own, since its a bit hard to debug stuff with all the crashes and all.
About the second UHV being zeroed at the first turn, I believe it has to do with line #681 in Victory.py. Change it to:
This will make the UHV become achieved on turn #154 and not before this (regardless of how many cities the Celts have in the British Isles). Only then will it go 0 (zero) if the condition isn't met.
I'll look further to see if I can spot any irregularities in the Python files.
I wouldn't know what causes it but I don't think you can rule out Python either, because the C++ in the DLL communicates with the Python stuff, and if the game engine gets bad results from Python that might well cause a crash. (Rhye has actually commented on C++ exceptions in his Python code.)
One thing I notice going through your files is that the text formatting hasn't carried over all that well from Mac. The paragraph character (usually invisible) is shown as a square in Notepad for instance, revealing exactly where you've copy-pasted in more than one line of code at once... I guess it works nonetheless (depending on whether the game can read it proper) but its hard to see if indentation is right, for instance. (And if the game isn't reading it right, that could be your problem right there.)
So, you could just paste in stuff one line at a time, but you can't use Enter to create a new paragraph... I think you need to use encoding that works on both platforms (Unicode or something like that) but I'm no expert.
This is also prevalent in Barbs.py, where city spawns appear to be all on the same line and the like. If the game isn't reading the code right (as separate lines of code) its no wonder the Carthaginian cities aren't showing up.
Also, I've noticed you refined the first UHV and while I'm somewhat impressed of how simply you pulled it off, you should probably know that the code also allows for the Celtic player to found a city in the specified area. (I'm guessing its the tiles adjacent to Rome's tile.) So if Rome gets raized (by the Celts or by anyone else) the Celtic player could still get the UHV by resettling the area.
There are other ways to do it if you don't like this outcome. Right now you maybe shouldn't try and do any Python of you own, since its a bit hard to debug stuff with all the crashes and all.
About the second UHV being zeroed at the first turn, I believe it has to do with line #681 in Victory.py. Change it to:
Code:
if (iGameTurn [COLOR="Red"]=[/COLOR]= i200AD):
I'll look further to see if I can spot any irregularities in the Python files.