Platy's Peculiar Pleasant Posh Python

The traditional colonists code in those big mods are all trying to give different benefits for different types of settlers like what you meant.
Yet none of them realized the code is simply bugged without hope for repair and only works in the most general situation.

The settler promotions mod I have is the closest I can get to differentiated settlers but even that will failuunder certain conditions.

Dang! I was just starting to fix this in C2C (with feed back to RoM:AND2) now I will need to look at what you have done and redesign my fix.:mischief::rolleyes:

edit Excellent idea on the culture:goodjob:. The rest was fairly close to what I was going for so "great minds think alike":mischief:
 
Add one more icing to the cake.

Civ4ScreenShot0006_zps6214283b.jpg


There is a value which determines the maximum list of buildings to be displayed.
Above that level, it will simply state "More Buildings"

@DH
Some others you can add:
1) Free Units
2) State Religion
 
I always forget, is this Advance Settler function multi-player safe? The old RoM code I am working from uses onModNetMessage to make it safe.
 
Not necessary when there is no interface involved.
No python buttons nor pop ups
 
Looking at the Civil War Event by The_J, there is actually a fundamanetal flaw in the design.

The event adds a new player when it occurs.
However, the player ID is picked from one which is not currently alive, rather than one which is never alive.

The effect is that when you pick ID of a once alive player, the newly spawned civ is given all stats of the player, including war status, techs, relationships, events occured etc.
And worse of all, team status.

In other words, it is possible that the civ spawned is a dead member of another team which is still alive.

Thus, the obvious solution is to choose ID of only players which are never alive.
The downside however, is that since it is pretty to kill off this newly spawned civ, it becomes a waste of ID as once all IDs are used up, you can no longer spawn this event or liberate colonies.

Last solution is to spawn these new civs as barbarians then...
 
That is kind of how the revolution mod works actually. If you are the Romans for example, and you conquered the Celts in the past, there is a chance the Celts could return(revolting against their Roman masters) in the future.

Of coarse, Revolution also spawns new civilizations as well.
 
The thing is that it can choose from any dead player.
It is possible that the dead player can still be part of an existing team.
When you do that, the whole team become at war with you.
 
I need this to include ALL civilizations in an event i am doing:

Spoiler :
Code:
######## WORKBOAT ###########

def canTriggerWorkboat(argsList):
	kTriggeredData = argsList[0]
	iPlayer = kTriggeredData.ePlayer
	pPlayer = gc.getPlayer(iPlayer)
	[COLOR="Red"][B]if pPlayer.getCivilizationType() != gc.getInfoTypeForString():[/B][/COLOR]
		return False
	return True
	
	
def canTriggerCityWorkboat(argsList):
	eTrigger = argsList[0]
	ePlayer = argsList[1]
	iCity = argsList[2]
	pPlayer = gc.getPlayer(ePlayer)
	pCity = pPlayer.getCity(iCity)
	if not pCity.isSettlement():
		return False
	return True
 
A python event trigger is necessary ONLY when there are special conditions you want to set which cannot be done via pure XML tags.

Obviously the original codes want to check for a particular civ.

If you want to let it apply to any civ, then... there is no condition at all, why is there a need to add a python event trigger?
 
Barbarian Civs

Features:
Allows Barbies to merge into a real civ.
Original mod by jdog5000

Well, I don't understand why there is a need to kill off some civs initially in the original codes, so I do it my way as usual.

Barbs have a chance to form into a civ which is based on number of cities and population. Higher chance for raging barbies.

When formed, it tries to take a new ID if possible, if not a dead civ.
But, never a dead civ of an existing team which is still alive.

New Cities gain population boost, free buildings, defenders and workers.
Unlike the original codes where many things are hard coded like library, granary and units, the only thing hard coded is workers.

All are configurable:
Code:
self.iRagingMultiplier	= 2	## Increased Chance for Raging Barbs
self.iTechPercent	= 25	## 25% Progress Per Team with Tech
self.iExtraBuildings	= 2	## Extra Buildings Per City, increased with Era
self.iNumDefender	= 2	## Number of Free Defenders per City
self.iNumWorker		= 1	## Number of Free Workers per City
self.iPopulationBoost	= 0	## Number of Extra Population per City
self.iCapitalBonus	= 1	## Number of Extra XXX in Capital
self.iWorker		= gc.getInfoTypeForString("UNITCLASS_WORKER")
 
Platyping the great :king:

- Barbarians always can create new civilization or we can shut down this option?
- If Barbs take new ID, Barbs create minor civilization?
- If Barbs, can't take new idea, and what happen then?
 
New game options only possible with SDK.
Nope they spawn directly as civs.
No new id, takes existing dead one
 
Influence Driven War

Features:
1) Winning a Combat influences Culture in BFC of both winner and loser plots.
2) Last Defender killed in City has a Chance to draft a new defender automatically.
Original SDK Mod by moctezuma

Actually, coding this is pretty easy, since both effects have been done previously in my wonders and promotions.
Thus, it is just balancing numbers and rules.

Culture Change Rules
1) Affected by GameSpeed
2) Affected by Unit Level rather than Unit XP (New)
3) Affected by Led by Warlord
4) Affected by Current Era (New)
5) Affected by Plot Distance
6) No longer affected by "No Defender" (Old)
7) Interception, Capturing of Workers, Planes, Ships, Withdrawals do not trigger this

Auto Conscript Rules
1) Conscript gains conscript XP (New)
2) Population Needed based on unit type rather than always one (New)
3) Takes into account Min Conscript Population (New)
4) Conscript Anger still kept at 50%
5) Conscript Chance is based on Culture Level and Nationality % rather than old formula (New)
(Legendary Culture with 100% Nationality ==> 100%)
6) No longer possible when City in Disorder (New)
7) Conscripts Start at Full Health but get a Promotion (-10% Combat)
8) Promotion disappears after 1 Combat


Pillage Portion, I didn't bother to add it.

Code:
self.iBase		= 4	## Base Value directly on Winner Plot and Loser Plot
self.iLevelBonus	= 10	## X% Bonus for every level increase
self.iEraBonus		= 25	## X% Bonus for every era advance
self.iLeaderBonus	= 30	## X% Bonus for led by warlords
self.iAngerPercent	= 50	## X% Auto Conscript Anger Length
 
Back
Top Bottom