trying to use a minimalist mod to do big things

and now, because I'm a masochist, I've decided I really don't like the smaller map...I'm redoing all the coords for the final release which will use the same map I used for RFC Irish...
And now it would have payed off to have all these specific settings in data structures instead...
 
well, you can console yourself with the knowledge that, if that lesson wasn't learned before, it certainly will be by the time I'm done... :crazyeye:
 
I can appreciate that you needed to keep things simple in order to finish the project in reasonable time. And I'd encourage you to take the time to play and test things once you're done.

But if you feel like making a second attempt at this, you should probably take the time to do it properly. (You already proved that you can do the simple way.) Simply because it makes sense to adopt any program design other than copy-paste. You'd also learn how to make other, greater things by going the extra mile on this project.

I guess its a question of whether you wanna learn programming as such, or if you're content with only getting by for this purpose only. You probably couldn't take in all the programming stuff anyway, unless you're interested in the subject. And time is of course a factor... Maybe some other time?

But you know enough to fix some of the issues with the Ireland RFC mod-mod, for example. Or you would be able to figure it out since you have some understanding of how stuff like indentation works and how to use the API. (Although indexing data structures is very useful also, especially for mod-modding.)
 
All that you say is true. I thank you (and the others) for all your help so far. I should have just enough time to implement the fancy map before the semester kicks into high gear and puts my project on the back burner until after Christmas.
 
hmmmm...I can't seem to get the colony spawns to happen. I don't get an error, they just don't pop up. I've looked and looked but can't seem to figure out why. Any thoughts?

Code:
[SPOILER]#the AI automatically satisfies the condition
def aiColonySpawn():
		pNewYork = cyMap.plot(30, 48)
		pPhiladelphia = cyMap.plot(28, 47)
		pBoston = cyMap.plot(31, 49)
		if isDate(1500):
#Arabs
				if not gc.getTeam(11).isHuman:
						if gc.getPlayer(11).isAlive():
										PyPlayer(11).initUnit(4, 99, 27, 1)
										PyPlayer(11).initUnit(5, 99, 27, 2)
										PyPlayer(11).initUnit(42, 99, 27, 5)
										PyPlayer(11).initUnit(4, 104, 27, 1)
										PyPlayer(11).initUnit(5, 104, 27, 2)
										PyPlayer(11).initUnit(42, 104, 27, 5)
										PyPlayer(11).initUnit(4, 71, 25, 1)
										PyPlayer(11).initUnit(5, 71, 25, 2)
										PyPlayer(11).initUnit(42, 71, 25, 5)
										if gc.getPlayer(11).getStateReligion() == 0:
												PyPlayer(11).initUnit(17, 99, 27, 1)
												PyPlayer(11).initUnit(17, 104, 27, 1)
												PyPlayer(11).initUnit(17, 71, 25, 1)
										if gc.getPlayer(11).getStateReligion() == 1:
												PyPlayer(11).initUnit(18, 99, 27, 1)
												PyPlayer(11).initUnit(18, 104, 27, 1)
												PyPlayer(11).initUnit(18, 71, 25, 1)
										if gc.getPlayer(11).getStateReligion() == 2:
												PyPlayer(11).initUnit(19, 99, 27, 1)
												PyPlayer(11).initUnit(19, 104, 27, 1)
												PyPlayer(11).initUnit(19, 71, 25, 1)
										if gc.getPlayer(11).getStateReligion() == 3:
												PyPlayer(11).initUnit(20, 99, 27, 1)
												PyPlayer(11).initUnit(20, 104, 27, 1)
												PyPlayer(11).initUnit(20, 71, 25, 1)
										if gc.getPlayer(11).getStateReligion() == 4:
												PyPlayer(11).initUnit(21, 99, 27, 1)
												PyPlayer(11).initUnit(21, 104, 27, 1)
												PyPlayer(11).initUnit(21, 71, 25, 1)
										if gc.getPlayer(11).getStateReligion() == 5:
												PyPlayer(11).initUnit(22, 99, 27, 1)
												PyPlayer(11).initUnit(22, 104, 27, 1)
												PyPlayer(11).initUnit(22, 71, 25, 1)
										if gc.getPlayer(11).getStateReligion() == 6:
												PyPlayer(11).initUnit(23, 99, 27, 1)
												PyPlayer(11).initUnit(23, 104, 27, 1)
												PyPlayer(11).initUnit(23, 71, 25, 1)
#English
				if not gc.getTeam(12).isHuman:
						if PyPlayer(12).isAlive():
								for tCoords in getAdjacentList((30, 48)):
										x, y = tCoords
										pCurrentPlot = cyMap.plot(x, y)
										if pCurrentPlot.isCity():
												pCity = pCurrentPlot.getPlotCity()
												pCity.kill()
								for tCoords in getAdjacentList((28, 47)):
										x, y = tCoords
										pCurrentPlot = cyMap.plot(x, y)
										if pCurrentPlot.isCity():
												pCity = pCurrentPlot.getPlotCity()
												pCity.kill()
								for tCoords in getAdjacentList((31, 49)):
										x, y = tCoords
										pCurrentPlot = cyMap.plot(x, y)
										if pCurrentPlot.isCity():
												pCity = pCurrentPlot.getPlotCity()
												pCity.kill()
								PyPlayer(12).initCity(30, 48)
								pNewYork.getPlotCity().setName("New York", 1)
								PyPlayer(12).initUnit(5, 30, 48, 2)
								PyPlayer(12).initUnit(47, 30, 48, 5)
								PyPlayer(12).initCity(28, 47)
								pPhiladelphia.getPlotCity().setName("Philadelphia", 1)
								PyPlayer(12).initUnit(5, 28, 47, 2)
								PyPlayer(12).initUnit(47, 28, 47, 5)
								PyPlayer(12).initCity(31, 49)
								pBoston.getPlotCity().setName("Boston", 1)
								PyPlayer(12).initUnit(5, 31, 49, 2)
								PyPlayer(12).initUnit(47, 31, 49, 5)
								PyPlayer(12).initUnit(4, 25, 52, 1)
								PyPlayer(12).initUnit(5, 25, 52, 2)
								PyPlayer(12).initUnit(47, 25, 52, 5)
								PyPlayer(12).initUnit(4, 64, 12, 1)
								PyPlayer(12).initUnit(5, 64, 12, 2)
								PyPlayer(12).initUnit(47, 64, 12, 5)
								PyPlayer(12).initUnit(4, 118, 13, 1)
								PyPlayer(12).initUnit(5, 118, 13, 2)
								PyPlayer(12).initUnit(47, 118, 13, 5)
								if gc.getPlayer(12).getStateReligion() == 0:
										PyPlayer(12).initUnit(17, 30, 48, 1)
										PyPlayer(12).initUnit(17, 28, 47, 1)
										PyPlayer(12).initUnit(17, 31, 49, 1)
										PyPlayer(12).initUnit(17, 28, 51, 1)
										PyPlayer(12).initUnit(17, 64, 12, 1)
										PyPlayer(12).initUnit(17, 118, 13, 1)
								if gc.getPlayer(12).getStateReligion() == 1:
										PyPlayer(12).initUnit(18, 30, 48, 1)
										PyPlayer(12).initUnit(18, 28, 47, 1)
										PyPlayer(12).initUnit(18, 31, 49, 1)
										PyPlayer(12).initUnit(18, 28, 51, 1)
										PyPlayer(12).initUnit(18, 64, 12, 1)
										PyPlayer(12).initUnit(18, 118, 13, 1)
								if gc.getPlayer(12).getStateReligion() == 2:
										PyPlayer(12).initUnit(19, 30, 48, 1)
										PyPlayer(12).initUnit(19, 28, 47, 1)
										PyPlayer(12).initUnit(19, 31, 49, 1)
										PyPlayer(12).initUnit(19, 28, 51, 1)
										PyPlayer(12).initUnit(19, 64, 12, 1)
										PyPlayer(12).initUnit(19, 118, 13, 1)
								if gc.getPlayer(12).getStateReligion() == 3:
										PyPlayer(12).initUnit(20, 30, 48, 1)
										PyPlayer(12).initUnit(20, 28, 47, 1)
										PyPlayer(12).initUnit(20, 31, 49, 1)
										PyPlayer(12).initUnit(20, 28, 51, 1)
										PyPlayer(12).initUnit(20, 64, 12, 1)
										PyPlayer(12).initUnit(20, 118, 13, 1)
								if gc.getPlayer(12).getStateReligion() == 4:
										PyPlayer(12).initUnit(21, 30, 48, 1)
										PyPlayer(12).initUnit(21, 28, 47, 1)
										PyPlayer(12).initUnit(21, 31, 49, 1)
										PyPlayer(12).initUnit(21, 28, 51, 1)
										PyPlayer(12).initUnit(21, 64, 12, 1)
										PyPlayer(12).initUnit(21, 118, 13, 1)
								if gc.getPlayer(12).getStateReligion() == 5:
										PyPlayer(12).initUnit(22, 30, 48, 1)
										PyPlayer(12).initUnit(22, 28, 47, 1)
										PyPlayer(12).initUnit(22, 31, 49, 1)
										PyPlayer(12).initUnit(22, 28, 51, 1)
										PyPlayer(12).initUnit(22, 64, 12, 1)
										PyPlayer(12).initUnit(22, 118, 13, 1)
								if gc.getPlayer(12).getStateReligion() == 6:
										PyPlayer(12).initUnit(23, 30, 48, 1)
										PyPlayer(12).initUnit(23, 28, 47, 1)
										PyPlayer(12).initUnit(23, 31, 49, 1)
										PyPlayer(12).initUnit(23, 28, 51, 1)
										PyPlayer(12).initUnit(23, 64, 12, 1)
										PyPlayer(12).initUnit(23, 118, 13, 1)
#Celts get the colonies if they meet the requirements and England is dead
						if not gc.getTeam(0).isHuman:
								if PyPlayer(0).isAlive():
										if not PyPlayer(12).isAlive():
												for tCoords in getAdjacentList((30, 48)):
														x, y = tCoords
														pCurrentPlot = cyMap.plot(x, y)
														if pCurrentPlot.isCity():
																pCity = pCurrentPlot.getPlotCity()
																pCity.kill()
												for tCoords in getAdjacentList((28, 47)):
														x, y = tCoords
														pCurrentPlot = cyMap.plot(x, y)
														if pCurrentPlot.isCity():
																pCity = pCurrentPlot.getPlotCity()
																pCity.kill()
												for tCoords in getAdjacentList((31, 49)):
														x, y = tCoords
														pCurrentPlot = cyMap.plot(x, y)
														if pCurrentPlot.isCity():
																pCity = pCurrentPlot.getPlotCity()
																pCity.kill()
												PyPlayer(0).initCity(30, 48)
												pNewYork.getPlotCity().setName("New York", 1)
												PyPlayer(0).initUnit(5, 30, 48, 2)
												PyPlayer(0).initunit(42, 30, 48, 5)
												PyPlayer(0).initCity(28, 47)
												pPhiladelphia.getPlotCity().setName("Philadelphia", 1)
												PyPlayer(0).initUnit(5, 28, 47, 2)
												PyPlayer(0).initunit(42, 28, 47, 5)
												PyPlayer(0).initCity(31, 49)
												pBoston.getPlotCity().setName("Boston", 1)
												PyPlayer(0).initUnit(5, 31, 49, 2)
												PyPlayer(0).initunit(42, 31, 49, 5)
												PyPlayer(0).initUnit(4, 25, 52, 1)
												PyPlayer(0).initUnit(5, 25, 52, 2)
												PyPlayer(0).initunit(42, 25, 52, 5)
												PyPlayer(0).initUnit(4, 64, 12, 1)
												PyPlayer(0).initUnit(5, 64, 12, 2)
												PyPlayer(0).initunit(42, 64, 12, 5)
												PyPlayer(0).initUnit(4, 118, 13, 1)
												PyPlayer(0).initUnit(5, 118, 13, 2)
												PyPlayer(0).initunit(42, 118, 13, 5)
												if gc.getPlayer(0).getStateReligion() == 0:
														PyPlayer(0).initUnit(17, 30, 48, 1)
														PyPlayer(0).initUnit(17, 28, 47, 1)
														PyPlayer(0).initUnit(17, 31, 49, 1)
														PyPlayer(0).initUnit(17, 28, 51, 1)
														PyPlayer(0).initUnit(17, 64, 12, 1)
														PyPlayer(0).initUnit(17, 118, 13, 1)
												if gc.getPlayer(0).getStateReligion() == 1:
														PyPlayer(0).initUnit(18, 30, 48, 1)
														PyPlayer(0).initUnit(18, 28, 47, 1)
														PyPlayer(0).initUnit(18, 31, 49, 1)
														PyPlayer(0).initUnit(18, 28, 51, 1)
														PyPlayer(0).initUnit(18, 64, 12, 1)
														PyPlayer(0).initUnit(18, 118, 13, 1)
												if gc.getPlayer(0).getStateReligion() == 2:
														PyPlayer(0).initUnit(19, 30, 48, 1)
														PyPlayer(0).initUnit(19, 28, 47, 1)
														PyPlayer(0).initUnit(19, 31, 49, 1)
														PyPlayer(0).initUnit(19, 28, 51, 1)
														PyPlayer(0).initUnit(19, 64, 12, 1)
														PyPlayer(0).initUnit(19, 118, 13, 1)
												if gc.getPlayer(0).getStateReligion() == 3:
														PyPlayer(0).initUnit(20, 30, 48, 1)
														PyPlayer(0).initUnit(20, 28, 47, 1)
														PyPlayer(0).initUnit(20, 31, 49, 1)
														PyPlayer(0).initUnit(20, 28, 51, 1)
														PyPlayer(0).initUnit(20, 64, 12, 1)
														PyPlayer(0).initUnit(20, 118, 13, 1)
												if gc.getPlayer(0).getStateReligion() == 4:
														PyPlayer(0).initUnit(21, 30, 48, 1)
														PyPlayer(0).initUnit(21, 28, 47, 1)
														PyPlayer(0).initUnit(21, 31, 49, 1)
														PyPlayer(0).initUnit(21, 28, 51, 1)
														PyPlayer(0).initUnit(21, 64, 12, 1)
														PyPlayer(0).initUnit(21, 118, 13, 1)
												if gc.getPlayer(0).getStateReligion() == 5:
														PyPlayer(0).initUnit(22, 30, 48, 1)
														PyPlayer(0).initUnit(22, 28, 47, 1)
														PyPlayer(0).initUnit(22, 31, 49, 1)
														PyPlayer(0).initUnit(22, 28, 51, 1)
														PyPlayer(0).initUnit(22, 64, 12, 1)
														PyPlayer(0).initUnit(22, 118, 13, 1)
												if gc.getPlayer(0).getStateReligion() == 6:
														PyPlayer(0).initUnit(23, 30, 48, 1)
														PyPlayer(0).initUnit(23, 28, 47, 1)
														PyPlayer(0).initUnit(23, 31, 49, 1)
														PyPlayer(0).initUnit(23, 28, 51, 1)
														PyPlayer(0).initUnit(23, 64, 12, 1)
														PyPlayer(0).initUnit(23, 118, 13, 1)
#French
				if not gc.getTeam(13).isHuman:
						if gc.getPlayer(13).isAlive():
								PyPlayer(13).initUnit(4, 30, 37, 1)
								PyPlayer(13).initUnit(5, 30, 37, 2)
								PyPlayer(13).initUnit(43, 30, 37, 5)
								PyPlayer(13).initUnit(4, 31, 53, 1)
								PyPlayer(13).initUnit(5, 31, 53, 2)
								PyPlayer(13).initUnit(43, 31, 53, 5)
								PyPlayer(13).initUnit(4, 33, 32, 1)
								PyPlayer(13).initUnit(5, 33, 32, 2)
								PyPlayer(13).initUnit(43, 33, 32, 5)
								PyPlayer(13).initUnit(4, 57, 27, 1)
								PyPlayer(13).initUnit(5, 57, 27, 2)
								PyPlayer(13).initUnit(43, 57, 27, 5)
								if gc.getPlayer(13).getStateReligion() == 0:
										PyPlayer(13).initUnit(17, 30, 37, 1)
										PyPlayer(13).initUnit(17, 31, 53, 1)
										PyPlayer(13).initUnit(17, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								if gc.getPlayer(13).getStateReligion() == 1:
										PyPlayer(13).initUnit(18, 30, 37, 1)
										PyPlayer(13).initUnit(18, 31, 53, 1)
										PyPlayer(13).initUnit(18, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								if gc.getPlayer(13).getStateReligion() == 2:
										PyPlayer(13).initUnit(19, 30, 37, 1)
										PyPlayer(13).initUnit(19, 31, 53, 1)
										PyPlayer(13).initUnit(19, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								if gc.getPlayer(13).getStateReligion() == 3:
										PyPlayer(13).initUnit(20, 30, 37, 1)
										PyPlayer(13).initUnit(20, 31, 53, 1)
										PyPlayer(13).initUnit(20, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								if gc.getPlayer(13).getStateReligion() == 4:
										PyPlayer(13).initUnit(21, 30, 37, 1)
										PyPlayer(13).initUnit(21, 31, 53, 1)
										PyPlayer(13).initUnit(21, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								if gc.getPlayer(13).getStateReligion() == 5:
										PyPlayer(13).initUnit(22, 30, 37, 1)
										PyPlayer(13).initUnit(22, 31, 53, 1)
										PyPlayer(13).initUnit(22, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								if gc.getPlayer(13).getStateReligion() == 6:
										PyPlayer(13).initUnit(23, 30, 37, 1)
										PyPlayer(13).initUnit(23, 31, 53, 1)
										PyPlayer(13).initUnit(23, 33, 32, 1)
										PyPlayer(13).initUnit(17, 57, 27, 1)
								for tCoords in getPlotList((48, 25), (61, 39)):
										x, y = tCoords
										pCurrentPlot = cyMap.plot(x,y)
										pPotentialCity = pCurrentPlot.getPlotCity()
										iUnhappy = pPotentialCity.unhappyLevel(0)
										if pPotentialCity != None:
												iHappy = pPotentialCity.happyLevel()
												if iUnhappy * 4 >= iHappy:
														pCurrentPlot.setOwner(13)
	
#Spanish
				if not gc.getTeam(14).isHuman:
						if gc.getPlayer(14).isAlive():
								PyPlayer(14).initUnit(4, 27, 38, 1)
								PyPlayer(14).initUnit(5, 27, 38, 2)
								PyPlayer(14).initUnit(42, 27, 38, 5)
								PyPlayer(14).initUnit(4, 17, 38, 1)
								PyPlayer(14).initUnit(5, 17, 38, 2)
								PyPlayer(14).initUnit(42, 17, 38, 5)
								PyPlayer(14).initUnit(4, 41, 18, 1)
								PyPlayer(14).initUnit(5, 41, 18, 2)
								PyPlayer(14).initUnit(42, 41, 18, 5)
								PyPlayer(14).initUnit(4, 35, 12, 1)
								PyPlayer(14).initUnit(5, 35, 12, 2)
								PyPlayer(14).initUnit(42, 35, 12, 5)
								if gc.getPlayer(14).getStateReligion() == 0:
										PyPlayer(14).initUnit(17, 27, 38, 1)
										PyPlayer(14).initUnit(17, 17, 38, 1)
										PyPlayer(14).initUnit(17, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
								if gc.getPlayer(14).getStateReligion() == 1:
										PyPlayer(14).initUnit(18, 27, 38, 1)
										PyPlayer(14).initUnit(18, 17, 38, 1)
										PyPlayer(14).initUnit(18, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
								if gc.getPlayer(14).getStateReligion() == 2:
										PyPlayer(14).initUnit(19, 27, 38, 1)
										PyPlayer(14).initUnit(19, 17, 38, 1)
										PyPlayer(14).initUnit(19, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
								if gc.getPlayer(14).getStateReligion() == 3:
										PyPlayer(14).initUnit(20, 27, 38, 1)
										PyPlayer(14).initUnit(20, 17, 38, 1)
										PyPlayer(14).initUnit(20, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
								if gc.getPlayer(14).getStateReligion() == 4:
										PyPlayer(14).initUnit(21, 27, 38, 1)
										PyPlayer(14).initUnit(21, 17, 38, 1)
										PyPlayer(14).initUnit(21, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
								if gc.getPlayer(14).getStateReligion() == 5:
										PyPlayer(14).initUnit(22, 27, 38, 1)
										PyPlayer(14).initUnit(22, 17, 38, 1)
										PyPlayer(14).initUnit(22, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
								if gc.getPlayer(14).getStateReligion() == 6:
										PyPlayer(14).initUnit(23, 27, 38, 1)
										PyPlayer(14).initUnit(23, 17, 38, 1)
										PyPlayer(14).initUnit(23, 41, 18, 1)
										PyPlayer(14).initUnit(17, 35, 12, 1)
#Russia
				if not gc.getTeam(16).isHuman:
						for tCoords in getPlotList((66, 48), (1, 64)):
								x, y = tCoords
								pCurrentPlot = cyMap.plot(x,y)
								pPotentialCity = pCurrentPlot.getPlotCity()
								iUnhappy = pPotentialCity.unhappyLevel(0)
								if pPotentialCity != None:
										iHappy = pPotentialCity.happyLevel()
										if iUnhappy * 4 >= iHappy:
												pCurrentPlot.setOwner(16)
						PyPlayer(16).initUnit(4, 110, 52, 1)
						PyPlayer(16).initUnit(5, 110, 52, 2)
						PyPlayer(16).initUnit(42, 110, 52, 5)
						PyPlayer(16).initUnit(4, 80, 53, 1)
						PyPlayer(16).initUnit(5, 80, 53, 2)
						PyPlayer(16).initUnit(42, 80, 53, 5)
						PyPlayer(16).initUnit(4, 96, 58, 1)
						PyPlayer(16).initUnit(5, 96, 58, 2)
						PyPlayer(16).initUnit(42, 96, 58, 5)
						if gc.getPlayer(16).getStateReligion() == 0:
								PyPlayer(16).initUnit(17, 110, 52, 1)
								PyPlayer(16).initUnit(17, 80, 53, 1)
								PyPlayer(16).initUnit(17, 96, 58, 1)
						if gc.getPlayer(16).getStateReligion() == 1:
								PyPlayer(16).initUnit(18, 110, 52, 1)
								PyPlayer(16).initUnit(18, 80, 53, 1)
								PyPlayer(16).initUnit(18, 96, 58, 1)
						if gc.getPlayer(16).getStateReligion() == 2:
								PyPlayer(16).initUnit(19, 110, 52, 1)
								PyPlayer(16).initUnit(19, 80, 53, 1)
								PyPlayer(16).initUnit(19, 96, 58, 1)
						if gc.getPlayer(16).getStateReligion() == 3:
								PyPlayer(16).initUnit(20, 110, 52, 1)
								PyPlayer(16).initUnit(20, 80, 53, 1)
								PyPlayer(16).initUnit(20, 96, 58, 1)
						if gc.getPlayer(16).getStateReligion() == 4:
								PyPlayer(16).initUnit(21, 110, 52, 1)
								PyPlayer(16).initUnit(21, 80, 53, 1)
								PyPlayer(16).initUnit(21, 96, 58, 1)
						if gc.getPlayer(16).getStateReligion() == 5:
								PyPlayer(16).initUnit(22, 110, 52, 1)
								PyPlayer(16).initUnit(22, 80, 53, 1)
								PyPlayer(16).initUnit(22, 96, 58, 1)
						if gc.getPlayer(16).getStateReligion() == 6:
								PyPlayer(16).initUnit(23, 110, 52, 1)
								PyPlayer(16).initUnit(23, 80, 53, 1)
								PyPlayer(16).initUnit(23, 96, 58, 1)[/SPOILER]
 
Evil brackets: You have: if not gc.getTeam(11).isHuman: but it should be: if not gc.getTeam(11).isHuman(): (same for all other isHuman statements in the code, as far as i can see).

And i guess you are sure that every team has only one player, right?
Else the check:
PHP:
                if not gc.getTeam(11).isHuman():
                        if gc.getPlayer(11).isAlive():

would be extremly prone to mistakes.
 
That's because "gc.getTeam(11).isHuman" is the CyTeam.isHuman function which when tested for "truthiness" evaluates to True. So it's not invalid syntax; it's just not what you meant. You must always add ()s when calling a function, even when it doesn't take any parameters.
 
Oh, this is interesting. But when I try my own class and my own method i get the "methods instance" returned - not True:
Code:
>>> class x:
	def y(self):
		return False	
>>> x().y()
False
>>> x().y
<bound method x.y of <__main__.x instance at 0x017E38C8>>
 
You're not using it in a boolean context as antaine was.

Code:
if x().y:
    print "hi!"

This should print.
 
Yeah, that makes perfect sense.
 
so...I've tested the stuff on Quick (playing America and watching everything else happen until 1776). The spawns and stuff seem to all work.

So, I'm ready to call a final release UNLESS this next idea turns out to be possible to do with Python.

Know how you can release a continent of cities to become independent? The problem is, it just picks a civ at random. Can I script a python popup to allow the human player to choose the new civ's civ? How about a popup allowing for a human player to enter a custom name for the civ (like when cities are built)? That way, a human can put in "Australia/Australia/Australian" or "Mexico/Mexico/Mexican" when a new civ is born...
 
I don't think its doable with Python, but someone else would have to confirm this...

It would however be possible to add new Civs and map which origin they have with the DerivativeCiv XML tag in Civ4CivilizationInfos. So you add say Mexico and map it to Spain, or whatever.
 
Well, I think you're right about civ choice. When I release a new civ, one of the dead ones that was originally in the scenario comes back. That's fine. I know you can change the name of your own civ, and you get to name cities in the first place. Isn't that kind of naming a python-affecting-xml thing? I would be completely satisfied with a popup that allows you to choose the name/shortname/adjective when spinning off a new civ. That way, even though the game considers them "Ethiopians" (or whatever), you could custom name it something that makes more sense.

If, in the end, that's truly not python, I'll live with it.
 
I believe that what you describe is available - with Python - in RFC but not in regular BtS. Its a DLL change enabling dynamic civ names with Python - otherwise its a C++ thing. According to this.
 
hm...well, Rhye actually swapped out civs and did the renaming automatically. I'm just looking to change the xml info you can change about your own civ using "options." For instance, if I can do what I'm looking to do, the civ will still BE the ethiopians, it'll just be called the australians/martians/x-men/whatever the human chooses.

I'll go in and read that whole thread, though, but just reading the post the link points to seems as though it's DLL there because you were trying to do something more involved.
 
I'm going to post this question in a separate thread (as this thread seems to have lost its casual audience). Through this, I've found that doing things in an RFC mod frequently bears little resemblance to doing things in a straight mod (not coding-wise, just fundamentals) because Rhye changed so many of the game mechanics and has a custom DLL.
 
Since you probably can't change the name(s) of a Civilization with Python you could instead add colonial Civs to your mod. Like Mexico, Australia and so on. Then, build your own "grant independence" code that automatically picks the right one depending on where on the map the cities are located. It could even be a scripted "event" that lets the player choose if the cities on some landmass will become an "independent" vassal.

I'm not saying that its easy, but it might at least be doable. Ready-to-use Civs could actually be available for download, so the artwork and UBs and UUs and LHs would already been taken care of, as well as the XML. Someone might even be able to make a independence mod component in Python for you to use?
 
It can't do that, because there are already 18 civs in the scenario...

That's alright. I'll just live with it the way it is.

Actually, I'd kinda like to prohibit the game from choosing a dead civ that's designed to come back later (like the Romans).
 
What is the limit on the number of players in BtS (default DLL)? Personally I'd build my mod around a DLL that allows for some 50-100 players.
 
Back
Top Bottom