TC01
Deity
PsiCorps, I've posted an update in the development thread that handles unique units via the mapscripts rather than here and uses <FreeUnitClasses> (I could have also deleted this code- didn't think to do that). So if you want, you could do the following:
-Fill out <FreeUnitClasses> again in CIV4CivilizationInfos.xml (assuming you haven't deleted it- I just want to make sure you haven't...)
-Download that update, called "FFMapscriptCore".
-In that update, delete the CIV4CivilizationInfos.xml file (I just wanted to be sure that <FreeUnitClasses> was filled out so I provided it)
-Copy over the other files (should be one new Python file and versions of all the FF+ mapscripts- if you modified the mapscripts, back them up).
-In that chunk of code you posted before, comment out the block under the comment. In short, make it look like this:
Then try running a game.
You should probably back things up before trying that, though.
-Fill out <FreeUnitClasses> again in CIV4CivilizationInfos.xml (assuming you haven't deleted it- I just want to make sure you haven't...)
-Download that update, called "FFMapscriptCore".
-In that update, delete the CIV4CivilizationInfos.xml file (I just wanted to be sure that <FreeUnitClasses> was filled out so I provided it)
-Copy over the other files (should be one new Python file and versions of all the FF+ mapscripts- if you modified the mapscripts, back them up).
-In that chunk of code you posted before, comment out the block under the comment. In short, make it look like this:
Code:
# Check the player for unique units, swapping out the starting ship(s) for the player's UU if appropriate
# pCivilization = gc.getCivilizationInfo(pPlayer.getCivilizationType())
# pyPlayer = PyPlayer(iPlayerLoop)
# apUnitList = pyPlayer.getUnitList()
# for pUnitLoop in apUnitList :
# iUnitType = pUnitLoop.getUnitType() # this unit's unit type
# iUnitClass = pUnitLoop.getUnitClassType() # this unit's unit class
# iCivUnitType = pCivilization.getCivilizationUnits(iUnitClass) # this civ's unit type of this class
# if (iUnitType != iCivUnitType ):
# existing unit's type does not match this civ's unit for the unit's class
# printd("Found unit to swap: id = %d, from type = %d to type = %d" %(pUnitLoop.getID(), iUnitType, iCivUnitType))
# add new unit
# pNewUnit = pPlayer.initUnit(iCivUnitType, pCity.getX(), pCity.getY(), UnitAITypes.NO_UNITAI, DirectionTypes.NO_DIRECTION)
# remove old unit
# pUnitLoop.kill(false, -1)
# Set up Player stuff: Star Systems & Gold
self.doBeginTurnAI(iPlayerLoop, false)
Then try running a game.
You should probably back things up before trying that, though.