Civic Policies (SMAC-style social engineering)

phunny_pharmer

Chieftain
Joined
Jul 10, 2002
Messages
31
I want to quickly update you on a mod I started recently.

Many of you remember SMAC's social engineering policy system, a feature that allowed for interaction among policies. In that game, for instance, policies had bonuses that could synergize with others. This is something I've long wanted to see in Civ4. As this game is now almost a decade old, I've decided to take matters into my own hands.

What were these social engineering policies? I think the best example of this was the "wealth" policy on the economy. For most factions (civs), a simple +1 economy from that policy would give an extra energy (commerce) per city. However, one could start the game as one of the factions, Morgan, that got an extra +1 economy. This would mean that Morgan running wealth would get +2 economy and get an extra energy (commerce) PER SQUARE. Super fun!

The social engineering system allowed for some awesome interactions. One could build up a policy system to have as few negatives as possible, or one could build up a policy system that had a few big strengths and a lot of weaknesses. Certain factions had starting bonuses, which made the game even more interesting.

(Interested in more SMAC history? See http://sidmeiersalphacentauri.wikia.com/wiki/Sid_Meier's_Alpha_Centauri/Social_Engineering, which describes it pretty well)

While Civ4 improved on many things, I feel that Civ3/Civ4's civics system were a step backwards. I have thus begun an implementation of a similar system in Civ4.

First, to clarify terminology:
- a CIVIC CATEGORY is a set of possible user choices in a given domain. For instance, the "government" category is one that is included in the base game.
- a CIVIC is a user choice from a civic category. A civic can now affect one or many policy categories by adding positive or negative numbers. Civics only manifest effects by helping to select policies.
- a POLICY CATEGORY is a set of possible outcomes in a given domain. These categories can be much broader, but usually have a coherent theme. For instance, a category like "centralization" may have a federation at one extreme and centralized power on another extreme.
- a POLICY is a specific value from a policy category. They can range from high to low. Different policies within a category may have different effects; highly centralized societies (positive numbers in the centralization category) may have benefits to the capital only, while federations (negative numbers in the centralization category) may have benefits that help large empires.

And to clarify a couple of conceptual questions:
- Different levels within the same policy can do different things. Having +1 to a policy may have one effect, having +2 to a policy may have a greater effect
- A single policy can be affected by multiple civics. These civics can be in different branches, allowing for massive interaction.
- A single civic can affect multiple policies at the same time.

I have most of the front-end implemented. The attached screenshot shows an example policy, leadership, and how it is affected by switching from one civic to another. Under despotism, one gets a +1 to leadership, which gives minimal bonuses. Switching to police state will give one a -1 to leadership (meaning the change from switching is a net -2, since one loses the +1 bonus and gains a -1 modifier). The net effect of this policy is that the user goes from having certain faction bonuses (here, ability to pillage) to other faction bonuses (here, military production but a war weariness penalty).

While the screenshot example is trivial, other things could get more interesting. For instance, leadership could be further affected by religious civic choices, legal choices, etc.

The system is fully customizable and read from XML files. Users can specify as many policies as they wish (I've shown three policies, but the true number is unlimited). Each policy can have as many levels as the user wishes (again, unlimited). Each civic can affect as many policies as they wish (so some civics can give bonuses to one policies, bonuses to a second policies, and negatives to a third and fourth policy). You can give the civics / policies / policy levels whatever names you wish.

There is, of course, a catch. Not surprisingly, the back-end of this is horribly complicated. AI Civilizations have no idea how to value civics now, and I'm probably going to have to rewrite a fair bit of code to get the AI a basic understanding of this. I may not have much more time before the new year to do this, but we'll see. Nevertheless, I want to throw this out there so that some of you can start dreaming about including this feature in more comprehensive mods.

Future mod integrators: I started modding from Kmod++, but should have relatively clearly marked modified code sections.

Merry Christmas!

- phunny_pharmer
 

Attachments

  • policies.JPG
    policies.JPG
    111.4 KB · Views: 494
Great job.
Good to see fresh idea in modcomp area.
 
hi!

1. looks amazing.
2. bright ideas.
3. look highly complicated.
4. i really hope you get the ai to use it right
5. you worked out from my kmod++, that makes me very very happy - cause :
a. someone uses my kmod++
b. i wont have to trouble my self with hard merges in the future.

i am already a fan and i w8 for this released.
 
You would not have to wrap your head around it if you ever played SMAC. :)

In SMAC I really liked how they created negative and positive values which you could juggle around with civics. You are right, while Civ4 civics have interesting unique effects, tying them to overall civilisation alignment would be much more interesting management-wise. I.e., allow hurrying with population with negative Human Rights, or let hurry with gold with very positive Economy.

I am really happy you developed a system for this. I want to see it in some cool mods now :D.
 
Is there a way to disable adapting certain civics? For example, let's say we have a Theonomy civic in the Legal category, and a State Atheism civic in the Religion category. Can I make it impossible to adapt State Atheism or Free Religion with Theonomy, or Theonomy as Free Religion or State Atheism?
 
Top Bottom