Vehem: CivicClass tag and schema?

apotheoser

Prince
Joined
Apr 15, 2006
Messages
336
Anyone ever notice that lots of new modmod civilizations seem to come with their own specific civic, available only to the new modmod civilziation? (Traditions, Glory, Lost Lands, Tribal Law, Blood and Sacrifice, plus Crusade from vanilla FfH2).

Obviously there's an aesthetic problem there. As people add more civs, the civics screen gets messier. Cultural Values already flows off the default frame size (it could be bigger but that's not the point). There are too many options on the screen that are useless the vast majority of the time (ie, whenever you're not playing that civ).

Giving some civs unique civics has its own balance and playstyle issues. Every civ with its own unique civic is obviously somewhat "more unique" than all the other civs that have no unique civic. Yet we can't give EVERY civ a unique civic because of space issues.

Or can we?

The solution is a new set of tags, mainly CivicClass. Just like UnitClass, CivicClass would allow civilizations to have their own unique modifications to any given civic.

In units, for example, some civilizations build Unique Units instead of default units. Like Bison Riders instead of Knights, or Shadows instead of Assassins, or whatever.

We could do that with civics as well. Thus, the Cuali could have Blood and Sacrifice replace Slavery as a better version, or Chislev could have Tribal Law show up as a better version of Aristocracy. Traditions could replace Despotism for the Jotnar (since they start with Traditions anyway).

In fact, you could tune every civic very closely, by having some civics work better for some civilizations and worse for others. God-King or Theorcracy might work better for Illians than for Grigori. Liberty might work better for Grigori than for Cuali. Et cetera.

However, I still don't really know enough C++ to do this. Someone else would have to do it. It would also add another step of XML to the civic modding process. Not a huge step, but it would be there - there would have to be a Civ4CivicsClassInfos that defined the various classes, just like there is a UnitClassInfos now.

The overall benefits are:
1) Less civic screen clutter
2) More unique civics
3) Can tune balance more closely for each civilization

Downsides:
1) Someone else has to implement this because I don't know how
2) Minor increase in modding complexity and XML overhead

Anything I missed? Is there some reason this won't work?
 
It'd actually be pretty easy, just a TON of gruntwork as you have to make minor changes all over the place in the code. Chances of missing one, or doing one slightly wrong, would be quite high, leading to strange and difficult to catch bugs popping up.
 
I'd settle for just making civics with civ prereqs not show up on other civss civic screens.
 
Top Bottom