culture expansion immediately after capture

primordial stew

Emperor
Joined
Sep 1, 2005
Messages
1,219
Location
a puddle
Normally the expansion happens the next turn after a city is captured, but I really need it to happen right away.

I tried this:
pAssimPlayer.acquireCity( pCity.GetCy(), False, True )
pCity.setCulture( self.iGaulID, 100)
pCity.GetCy().cultureDistance(2,2)

but it didn't help. How can this be done?
 
you have to redefine pCity after acquireCity. acquireCity create a new city instance, so all your changes are applied to the old city instance.

Tcho !
 
What is GetCy()?

pCity should have been define with pyHelpers and getCy() return the CyCity instance for the city.

Tcho !

Edit : pCity is usually noted pyCity in this case.
 
pCity should have been define with pyHelpers and getCy() return the CyCity instance for the city.

Tcho !

Edit : pCity is usually noted pyCity in this case.

Ahh, pyHelpers, I never really use them other then to look in the file and see how they did some of there things. Thanx for explaning. :)
 
I still don't have it. I tried to go from the plot to the city, but no expansion. The city is getting the defensive bonus from setting the culture.

Code:
                    pAssimPlayer.acquireCity( pCity.GetCy(), False, False )
                    pPlot = pCity.plot()
		    CyCity = pPlot.getPlotCity()
		    ## VOID setCulture(PlayerType eIndex, INT iNewValue, BOOL bPlots)
                    CyCity.setCulture( self.iGaulID, 100, True )
		    ## pCity.GetCy().cultureDistance(2,2)
		    CyCity.cultureDistance(2,2)
 
You should perhaps try this :

Code:
                    pPlot = pCity.plot()
                    pAssimPlayer.acquireCity( pCity.GetCy(), False, False )
		    newCity = pPlot.getPlotCity()
                    newCity.changeCulture( newCity.getOwner(), 100, True )

I've tested something like that the last week. It's better to define the plot before acquireCity (the old city may becomes invalid after and don't return the plot). changeCulture should update the city rings (can't check setCulture).

Tcho !
 
It appears to be a difference between BtS and Warlords. Looking over the JFortZoC mod, this is the magic that gives forts cultural borders:

pPlotLoop.setOwner(iPlayer)

But the same function in Warlords only pushes non-ROP units out of that plot :( The problem I'm trying to solve is that the cities of the revolting tribe are too accessible on the first turn of the revolt. So if the player has troops ready for the event (RFRE is historical, so events can be expected), then significant progress can be made before the new civ forms up.

I suppose they can just get a homeland fortress (+700% defense) for 1 turn. Kludgy.. but maybe that is all that can be done in Warlords without a SDK change.
 
Top Bottom