Tuesday, January 25, 2011

What to do after you win

I have been doing a lot of CiV modding this week and have run into a real dilemma, both in terms of philosophy and execution.  When you capture a city you have three choices:  Burn it down, puppet or annex.  Burn it down is obvious, of course, but the others have some really fine points.  Puppetting means the city will be stupidly managed.  It will be like a normal city except it will do everything in its power to make gold ahead of any other resource.  This means it will grow slowly, build slowly, and end up being fairly weak.  It also can't be used for any military production and you can't control it.  Annexing a city means that you have to build a courthouse to make the city function and you can completely control it from that point forward.  The trouble with annexation is that the city then counts towards 'cities you control for real'.  This is important because there all your social policy costs scale by 'CYCFR', and to build the powerful National Wonders you have to have a specific building in each CYCFR. This means that annexation is simply not worth the cost in most cases - you are much better of puppeting the vast majority of your conquests.

I don't like this situation much because having a big empire and being a conqueror is fantastic when you puppet everything.  You get lots of social policies, more even than a small, focused empire, and you have drastically more science and gold and can make National Wonders just as easily.  The question is, how much do I want to reward attacking?  In CiV the attacker has many disadvantages.  The defender can see all the attacker's units and positions, heals faster, can use the local roads for mobility, has a city to do damage, and several policies/wonders give defenders huge advantages.  So if attacking and capturing territory is not particularly advantageous then the player would be well advised never to do so; just hold your initial territory and let the computer throw its hordes of dudes against your defenses.  This is also great because the computers get angry at you for destroying other civs, declaring wars and taking out capital cities.  That would mean that militaries were just for defending against dumb AIs who attack and I don't think I like a Civ game where attacking is just pointless.  Question is, where is the line?

The other confounding factor is that it is rather tricky to penalize puppet cities with the tools I have available to me.  I know that it is possible to assign flat penalties to puppet cities using LUA code but I don't know anything about that yet; learning it would be a long process.  Other coders are doing pretty much exactly what I want to do but I don't want to use other people's mods because they aren't *perfect* dammit!  Now that I have invested all this time into building my own system I can't deal with the choices that other people made that aren't quite the same as mine.  I am at a crossroads of challenge - I don't want to spend the hours and hours and hours it would take to learn LUA coding to make this happen, I don't want to just use other people's stuff and I don't want the game to be imperfect.  Something's gotta give, not sure which way it is going to go though.


  1. Look at the plus side... If you put in the time to learn lua you can write WoW add-ons too!

  2. Having edited a few WoW mods to make them do what I want them to do, I can say that I don't think it would take you long to learn enough LUA to do what you want assuming you can find other people who have written mods that do it. I've found that it's pretty easy to scan through code to find sections that look like they modify what I want to modify, and then it was just a little bit of trial and error with syntax to get them to do what I want them to do.

    I'm not sure CiV would have similar looking code, but somewhere in that mass of code there is going to be a line that looks something like "if city_is_puppetted then screw_it_over." So you just need to copy/paste and modify the second part.

  3. http://www.mmo-champion.com/threads/817817-Creating-Your-Own-WoW-Addon