Puppet States Mod (BTS 3.19)

stolenrays

Deity
Joined
Aug 2, 2009
Messages
2,061
Puppet States Mod v1.6 (BTS 3.19)

This mod was created by isolating the source code of Puppet States from Dom Pedro II's Conquerer's Delight Mod. This mod only includes Puppet States and none of the other features in that mod. People were requesting it so I got it to work since the Delight code actually had an error in it that prevented it from working.

I have updated the code so it is now compatible with BTS 3.19 and altered all of the vassal text from vassal to puppet state and master to leader. The changed Source Code is included. The changes were just a few source code and .xml files. Since it works only with the vassal option turned on, it can be turned off via the custom game menu.

From old thread:
You can now create puppet states after conquering enemy cities. This creates a new instant vassal player. You cannot create multiple puppet states from the same enemy and you cannot form puppet states in cities that can be returned to an ally.

When you conquer another city from an enemy that you have previosuly carved out a puppet state from one of their cities, you are then granted the option to add the city to your puppet state. The puppet state is picked from the list of civilizations in the .xml file and is a brand new one. If you create a puppet state before founding your first city, the puppet state may become you and you will be instantly defeated.

----Gameplay----
-Create a Puppet State upon conquering an enemy city
-Puppet State is a new Vassal State
-Cannot be created from a potentially liberating city
-Choose the Leader/Civ of the Puppet State
-Give cities from the conquered Civ to the newly derived Puppet State
-Enbled by Nationalist Tech
-Vassal text modified to Client State
-AI is more likely to create a Puppet State than Raze a city

---Version History---
Spoiler :
Version 1.6
-Choose leader/civ from lfgr2-inspiration from choose colony mod

Version 1.5
-Added AI to make it more likely to Puppet than Raze from ExtraModMod from MoreNavalAI
-Previous Civ that is Puppeted gets -2 attitude

Version 1.4
-Reverted eReceivingPlayer to eHighestCulture in CvPlayerAI.cpp
-Puppet States Enabled by Tech Nationalism
-Puppet States Enabled Tech values added to AI
-Reverted Vassal text to Client States
-Added missing Puppet Attitude Modifiers
-Fixed Puppet Event Message
-Changed Leaderhead Puppet text

Version 1.3
-Added Changelog & Readme Texts
-Added Concept Entry

Version 1.2
-Custom Game Option
-Vassal Text all Modded
-Option if liberating a city added
-Remove Conquerer's Bonus Code
-Added many Tholal's More Naval AI additions
-Added missing PUPPET_CULTURE_MULTIPLIER GlobalDefines
-Incorporated Smealgol's additions (memory, etc.)

Version 1.1
Updated to BTS 3.19 as a standalone

Version 1.0
-Original DPII Version


Conquerer's Delight Original Thread

Download Puppet States Mod
 

Attachments

  • Civ4ScreenShot0037.JPG
    Civ4ScreenShot0037.JPG
    173.1 KB · Views: 1,665
  • Civ4ScreenShot0038.JPG
    Civ4ScreenShot0038.JPG
    161.1 KB · Views: 1,644
  • Civ4ScreenShot0039.JPG
    Civ4ScreenShot0039.JPG
    156.1 KB · Views: 1,424
  • Civ4ScreenShot0040.JPG
    Civ4ScreenShot0040.JPG
    163.1 KB · Views: 1,328
  • Civ4ScreenShot0041.JPG
    Civ4ScreenShot0041.JPG
    152.8 KB · Views: 1,222
Looks good :goodjob:
Is there however any option that you can make this an own option in the gamemenu?
 
@vebear There is no option to turn it off as of yet besides turning off Vassals/puppet states in the custom game menu. I've asked how to add new options in the modding tutorial thread for creating options how to do just what you asked. If I figure it out I will update it with a new Game Option.

@CaptainMidnight I'm not sure if the AI can create puppet states and that is a good question. I'm pretty sure after integrating the source code that the game picks a civ at random as long as the maximum number of civs are not present. I'm sure that could be changed somehow to force certain options, but I don't know how to do that.

BTW, I removed the discover tech conquest message to make it compatible with the tech conquest mod, which I think is better since it is removable via python.
 
Downloaded but a few questions:

1. Can the AI create puppet states?
2. How is the new puppet civ selected? At random or the same as creating a colony (other words favourite civ colony)?

IMHO, it would make more sense for the Puppet State to be a DerivativeCiv of the Civ it is being carved out of rather than the Civ that is doing the carving.....
 
Probably a good idea.

@Arian A puppet state is the same as a vassal state. The puppet state is just a more modern term since not every civ uses a feudal system. Everything else is the same except that puppet states can be instantly created on conquest and you can donate cities to them when conquering other cities.
 
in alpha centauri, the vassal state will always be in favor for the master state.
 
I really like this idea a lot and I'd love to see it integrated into some larger mods down the road.

Gotta keep Civ 4 modding alive, and this is one of those gems.
 
Hi, I wanted to merge this nice modpack, put the CvCity.cpp is missing. :(
Or did I just missed it somehow? :confused:
If I'm right, could you please upload the CvCity.cpp somewhere, thanks. :goodjob:
 
In CvPopupInfo.cpp, why do you have all of the Data4 code commented out?



Actually, I don't think that that C++ file is needed. I was just hesitant to take things out while I was testing and updating it.

Dom Pedro II Commented it out initially. I believe he did that because he was continuously adding new components to Conquerer's Delight.
 
Top Bottom