The idea is to make vassal states less of a dead weight on your civilization.
An Empire of Vassals always seemed to be ... more real ... than the standard monolithic Empire in Civ4. But as it stands, Vassals are quite often sub-optimal.
Planned changes:
CvPlayer:: calculateResearchModifier
Grant a +30% bonus to the master of a Vassal State whose Vassal has a technology that they don't have.
CvPlayer:: calculateResearchModifier
-20% modifier to Vassal states in general.
CvPlayer:: doResearch
Vassal states move that 20% modifier's worth of "raw" Research to their masters.
int CvCity:: getProductionModifier() const
Vassal states are charged a 50% premium on the cost of producing units. This is a multiplicative charge.
void CvCity:: popOrder(int iNum, bool bFinish, bool bChoose)
When a Vassal state produces a unit, there is a 50% chance that it also produces an extra unit, of the same type, for it's master. This unit appears in the city in question.
void CvCity:: doPlotCulture(bool bUpdate, PlayerTypes ePlayer, int iCultureRate)
A "share" of culture produced and deposited by a Vassal is converted to Master culture. A much smaller share of Master culture is also converted to Vassal culture. This just effects ownership of tiles on the map (and mix of population in the city, which is just based off of the mix of culture on the tile under the city on the map after all).
...
The effects of this? Having a Vassal state with a strong economy can grant you free units (produced by them) and bonus research. Their cities will become somewhat influenced by your culture (and to a lesser extent, the other way around), and you will find holding on to territory near their cultural zones easier against 3rd parties.
If the Vassal does break out from under you, some of their cities will have a significant population base of your people, which makes conquest of the rebel Vassal easier.
...
I haven't implemented this, but I have found the DLL functions that have to be modified, and a rough sketch how. I'm asking for feedback -- do these things look reasonable? Can you think of other things that should Suck to be a Vassal? (and encourage people to take Vassals under their wing)
I was thinking of actual direct movement of culture points, but that's tricky. Ie: 10% of culture produced by your vassal is removed. Another 20% is turned into your culture "on the plots". The 10% removed is then spread over your cities by weight of their culture totals, and applied "on the plots" as their culture.
An Empire of Vassals always seemed to be ... more real ... than the standard monolithic Empire in Civ4. But as it stands, Vassals are quite often sub-optimal.
Planned changes:
CvPlayer:: calculateResearchModifier
Grant a +30% bonus to the master of a Vassal State whose Vassal has a technology that they don't have.
CvPlayer:: calculateResearchModifier
-20% modifier to Vassal states in general.
CvPlayer:: doResearch
Vassal states move that 20% modifier's worth of "raw" Research to their masters.
int CvCity:: getProductionModifier() const
Vassal states are charged a 50% premium on the cost of producing units. This is a multiplicative charge.
void CvCity:: popOrder(int iNum, bool bFinish, bool bChoose)
When a Vassal state produces a unit, there is a 50% chance that it also produces an extra unit, of the same type, for it's master. This unit appears in the city in question.
void CvCity:: doPlotCulture(bool bUpdate, PlayerTypes ePlayer, int iCultureRate)
A "share" of culture produced and deposited by a Vassal is converted to Master culture. A much smaller share of Master culture is also converted to Vassal culture. This just effects ownership of tiles on the map (and mix of population in the city, which is just based off of the mix of culture on the tile under the city on the map after all).
...
The effects of this? Having a Vassal state with a strong economy can grant you free units (produced by them) and bonus research. Their cities will become somewhat influenced by your culture (and to a lesser extent, the other way around), and you will find holding on to territory near their cultural zones easier against 3rd parties.
If the Vassal does break out from under you, some of their cities will have a significant population base of your people, which makes conquest of the rebel Vassal easier.
...
I haven't implemented this, but I have found the DLL functions that have to be modified, and a rough sketch how. I'm asking for feedback -- do these things look reasonable? Can you think of other things that should Suck to be a Vassal? (and encourage people to take Vassals under their wing)
I was thinking of actual direct movement of culture points, but that's tricky. Ie: 10% of culture produced by your vassal is removed. Another 20% is turned into your culture "on the plots". The 10% removed is then spread over your cities by weight of their culture totals, and applied "on the plots" as their culture.