Client States Mod (BTS 3.19)

stolenrays

Deity
Joined
Aug 2, 2009
Messages
2,061
Client States Mod v 1.3 (BTS 3.19)

This mod was created by isolating the source code from Jojoweb's Total War Mod. This mod only includes the Vassal States and none of the other features in that mod.

I have updated the code and altered all of the vassal text from vassal to client state and master to leader. Since it works only with the vassal option turned on, it can be turned off via the custom game menu.

-----Gameplay-----
-New VassalTypes include: Dominion, Protectorate, Colony, Annexed Territory, and Puppet State
-Free Passive Espionage against a Client State
-Certain Client States give International Votes
-Techs enable different Client States
-Project eliminates Vassal Costs
-Civics alter International Votes and Passive Espionage
-All vassal text modified as Client State
-Some Client states can be converted into other types of Client States

-----Vassal Types-----
-A protectorate is a negotiated status of vassalage, signed by two nations at peace, that feel close and have a common military interest. This client state can trade its cities.
-The Puppet State is a defeated nation that transfers a part of its sovereignty and is constrained by a very unbalanced peace treaty. It is negtiated while at war and this Client State can trade its cities. It is the Surrendered vassal from BTS.
-A colony is a status of vassalage which result from the secession (organized by the master) of some cities far away from the capital of the state. You can trade the bonuses of this client state
-Annexed territory is a status of vassalage that includes high interdependence with the master, but more emancipation opportunities. This Client State and the leader state have fixed borders, but with continuted cultural transmission.
-A Dominion is a status of vassalage, which allows some independance to the colonized people, preventing in some contexts, a paralysis of the country while remaining an ally. This is the only Client State that can declare war and make peace as a soverign nation.

-----For Modmakers-----
-C++ included
-Commenting in C++ as Client States Mod
-Tech, Civic, and Project xml tags
-New VassalInfos.xml XML file

-----Version History-----
Spoiler :
Version 1.3
-Added Customer Gameoption for new Vassals

Version 1.1
-Obsolete w/Techs
-Added Tributary and Vassal States
-Fix enabled with tech buttons to be listed separately
-Replace vassalage text in .xml entries with Client State
-Corrected Behistun Inscription button
-Corrected texts
-Correct obsolete buttons.

Version 1.0
-Standalone isolated from Total War Mod


-----Credits-----
-Jojoweb for TotalWar

DOWNLOAD
 

Attachments

  • Civ4ScreenShot0052.JPG
    Civ4ScreenShot0052.JPG
    154.9 KB · Views: 455
  • Civ4ScreenShot0051.JPG
    Civ4ScreenShot0051.JPG
    154 KB · Views: 472
It is in beta phase right now. It works and is playable. I'm making sure all the texts/options work. I got a CTD upon city conquest, so I'm debugging that right now. I might add some more vassal types such as tributary and associated state.
 
I think I found the reason for the error, but not the source yet. While debugging there were more voters than countries. 18 to be exact. There were no names/civs next to these UN voters and they were just labeled abstains. Consequently, no gen secretary could be chosen.
 
OK, got it working now. There is a project which eliminates vassal costs, several vassal types, civic modifiers for for vassal providing free espionage, international votes, and free units per cities. In addition, techs enable the different vassaltypes.

I'll release it as soon as I get a chance to.:eek:
 
Hey there, two questions:
1. I don't possess the skills otherwise I would do it, but would you be able to take the RevDCM CvGameCoreDLL.dll and merge in this mod to it?

2. Could you explain what each of the client status's actually are? I have no idea what these new states do.
 
I'll try and give you a description shortly. I believe the descriptions are in the text.xml file. I'm really short on time to assist with any other merges, sorry. It is really not that hard with the beyond compare program.
 
I'm trying to add the decolonisation code to the mod, but get a xml playeroption, gameoption error that happens whenever I add anything after bdecolonisation to the GameInfoSchema.xml file.

Maybe someone knows how to fix it?

Code:
	<ElementType name="iPopulationThreshold" content="textOnly" dt:type="int"/>
	<ElementType name="bCityVoting" content="textOnly" dt:type="boolean"/>
	<ElementType name="bCivVoting" content="textOnly" dt:type="boolean"/>
	<ElementType name="iMinVoters" content="textOnly" dt:type="int"/>
	<ElementType name="iStateReligionVotePercent" content="textOnly" dt:type="int"/>
	<ElementType name="iTradeRoutes" content="textOnly" dt:type="int"/>
	<ElementType name="bSecretaryGeneral" content="textOnly" dt:type="boolean"/>
	<ElementType name="bVictory" content="textOnly" dt:type="boolean"/>
	<ElementType name="bFreeTrade" content="textOnly" dt:type="boolean"/>
	<ElementType name="bNoNukes" content="textOnly" dt:type="boolean"/>
	<ElementType name="bDefensivePact" content="textOnly" dt:type="boolean"/>
	<ElementType name="bOpenBorders" content="textOnly" dt:type="boolean"/>
	<ElementType name="bForcePeace" content="textOnly" dt:type="boolean"/>
	<ElementType name="bForceNoTrade" content="textOnly" dt:type="boolean"/>
	<ElementType name="bForceWar" content="textOnly" dt:type="boolean"/>
	<ElementType name="bAssignCity" content="textOnly" dt:type="boolean"/>
	<!-- Client States START -->
	<ElementType name="bDecolonisation" content="textOnly" dt:type="boolean"/>
[COLOR="Blue"]	<ElementType name="VassalType" content="textOnly"/>
	<ElementType name="bEndOf" content="textOnly" dt:type="boolean"/>
	<ElementType name="EndVassalType" content="eltOnly">
		<element type="VassalType"/>
		<element type="bEndOf"/>
	</ElementType>
	<ElementType name="EndVassalTypes" content="eltOnly">
		<element type="EndVassalType" minOccurs="0" maxOccurs="*"/>
	</ElementType>[/COLOR]
	<!-- Client States END -->
	<ElementType name="CivicType" content="textOnly"/>
	<ElementType name="bForce" content="textOnly" dt:type="boolean"/>
	<ElementType name="ForceCivic" content="eltOnly">
		<element type="CivicType"/>
		<element type="bForce"/>
	</ElementType>
	<ElementType name="ForceCivics" content="eltOnly">
		<element type="ForceCivic" minOccurs="0" maxOccurs="*"/>
	</ElementType>
	<ElementType name="DiploVoteType" content="textOnly"/>
	<ElementType name="DiploVote" content="eltOnly">
		<element type="DiploVoteType"/>
		<element type="bValid"/>
	</ElementType>
	<ElementType name="DiploVotes" content="eltOnly">
		<element type="DiploVote" minOccurs="0" maxOccurs="*"/>
	</ElementType>
	<ElementType name="VoteInfo" content="eltOnly">
		<element type="Type"/>
		<element type="Description"/>
		<element type="iPopulationThreshold"/>
		<element type="bCityVoting"/>
		<element type="bCivVoting"/>
		<element type="iMinVoters"/>
		<element type="iStateReligionVotePercent"/>
		<element type="iTradeRoutes"/>
		<element type="bSecretaryGeneral"/>
		<element type="bVictory"/>
		<element type="bFreeTrade"/>
		<element type="bNoNukes"/>
		<element type="bDefensivePact"/>
		<element type="bOpenBorders"/>
		<element type="bForcePeace"/>
		<element type="bForceNoTrade"/>
		<element type="bForceWar"/>
		<element type="bAssignCity"/>
		<!-- Client States START -->		
		<element type="bDecolonisation" minOccurs="0"/>
[COLOR="blue"]		<element type="EndVassalTypes" minOccurs="0"/>[/COLOR]	
		<!-- Client States END -->			
		<element type="ForceCivics"/>
		<element type="DiploVotes"/>
	</ElementType>
 
I'm having one last error that I can't fix. I can't exit out of any python screens without pressing the escape button. Any suggestions? Haven't found any python errors yet.
 

Attachments

  • Client States Mod v1.3.7z
    1.5 MB · Views: 227
Top Bottom