Hi all,
I'm a long time lurker of CFC, but this is the first time I've been motivated enough to do anything worth posting
I used to enjoy moving around my workers/settlers to improving my land by hand, but after about 15 years of playing civ I/II/III/IV I'm starting to get a little bored of it. In C3C I experimented with automating the settlers and really wasn't too happy with the results. I find it even worse in civ IV because I like to specialise a lot of my cities.
At the moment I am "hand tuning" the cities on my home continent and automating the rest, even this causes problems as sometimes the home continent can be quite large. With the release of the SDK I think this problem should be solvable (I'm fairly sure it's not possible with a python only solution).
Essentially I would like to create a city planning screen similar to the current city management screen. However instead of allocating workers to the plots around the city, I'd like to allocate improvments. Then when an automated worker decides to improve a tile around the city it can take a look at the plan I have created and use that in preference to how it does it now.
My next gripe is over the building cost for new cities. I find the fact that a granary costs as much time to build in the modern era as it does in 4000BC a little strange. It's clear that the modern era cities can grow faster because we can build the tile enhancements faster, but the building speed of the city improvments remains constant.
In the same vein all buildings and units are not created equal, modern power plants are more efficient and safer than older ones, modern infantry are superior to the pre WW2 equivilant. One solution to this is to create a lot of seperate units that do the same job and this has partilly been done (tank --> mod. armor, musketmen-->riflemen-->infantry-->mech infantry) but not to my satisfaction.
I would prefer a simpler solution which would attach some sort of bonus points to units which would increase their abilities. This would be similar to promotions, but they would be automatically available to newly built units. To elaborate slightly, if you were to build a single tank it wouldn't normally have any additional bonuses, but by the time you hve built your 100th tank your tank building should have increased somewhat, resulting in an increase in hitpoints for new tanks. Similarly if you are constanly defending with longbowmen the newly built longbowmen will come with defence bonuses, and if you are constantly attacking with cavalry they will receive attack bonuses. I would think old units could be upgraded (perhaps refitted is a better term) within the same unit type, but these bonuses shouldn't carry across when upgrading to a new unit type.
This can be extended to buildings in several ways. Firstly if you have built 20 granaries, your granary building skill increases resulting in a shorter catch-up time for new cities (this can be extended to all buildings of course). As well as this some buildings may have additional bonuses, such as factories increasing their production bonuses. Like with units, I would expect old buildings could be refitted to newer versions. The final extension could apply to buildings which increase the promotion points of units, such as the barracks. A barracks that creates a lot of units starts to produce units with more promotion points, this is slightly different than the other extensions because it applys to a specific instance of a building rather than that class of building.
Gripe number three concerns micromanaging units before big wars. It's a pretty simple idea, I would like to be able to create "Marshalls" which would be a special unit capable of organizing other units. They would have no ability to attack or defend, nor any cost (I guess they would be like spies). The marshall would be able to be created anyware and configured to collect other units. For example I might deploy 6 marshalls in the north prior to an attack, each collecting 15 tanks, 5 helis, 5 arty and 5 infantry. At the same time I deploy 2 in the south, to defend against an uncertain neighbour, each collecting 15 infantry and 5 tanks. Then I start producing these units in my cities. When a military unit is produced at a city it can be automated and it will then seek out the nearest marshall that requires a unit of this type. The marshalls don't actually do anything themselves except keep battlegroups organised.
My fourth and final (well final for this rant at least) gripe has to do with technology targets. I think it's a little unrealistic to persue technologies with such precision. My solution is to provide fuzzy catagories rather than specific techs, for example you may research 50% growth techs, followed by 30% military techs and 10 each of economics and religious. Every turn you collect research points per catagory and each available tech is randomly tested against a catagory, if the test passes the tech is gained for a cost, and the catagory pool is reduced by that cost.
To give a simplistic example, imagine we only have 2 pools: growth and military. Each of these pools has points acquired from previous turns:
military 450
growth 700
This turn we have 400 new points to allocate and the current split is 75% military, 25% growth, so at the beginning of the turn we have:
military 450 + 300 = 750
growth 700 + 100 = 800
Now at this point we have the chance of discovering some techs. Let us say that a tech has a nominal value and a standard deviation of 10%, there are 4 techs whose prerequisites are satisfied, listed below is the nominal value, and the actual value (random deviation from the nominal value for each game) of the techs. The available techs for the round would be orderered randomly.
Horseback riding (military) 800, 650
Fishing (growth), 600, 700
The wheel (growth), 600, 50
Archery (military), 100, 150
So we would discover Horseback riding because the 650 actual is less than 750 in the pool, this reduces the military pool to 100. we would discover fishing because 700 is less than 800, and we also reduce our growth pool to 100. The we discover the wheel because the dice have favoured us and it is alarmingly cheap (50) reducing our growth pool to 50, we cannot discover archery because the cost is 150 and we only have 100 in the military pool.
This is obviously a highly contrived example, I'm not suggesting it would be normal to discover 3 techs in a turn (!), I only wanted to illustrate how the system could work.
Erm right, I think that's all, just a few tiny changes
I should start working on these in the next week or so, but I wanted to check in here first to see if anyone knows of similar efforts, I'd hate to waste my time working on features that have already been done. Suggestions or critiques are welcome so long as they don't contain the words "ludicrous" or "imbecile".
- nzhavok
I'm a long time lurker of CFC, but this is the first time I've been motivated enough to do anything worth posting

I used to enjoy moving around my workers/settlers to improving my land by hand, but after about 15 years of playing civ I/II/III/IV I'm starting to get a little bored of it. In C3C I experimented with automating the settlers and really wasn't too happy with the results. I find it even worse in civ IV because I like to specialise a lot of my cities.
At the moment I am "hand tuning" the cities on my home continent and automating the rest, even this causes problems as sometimes the home continent can be quite large. With the release of the SDK I think this problem should be solvable (I'm fairly sure it's not possible with a python only solution).
Essentially I would like to create a city planning screen similar to the current city management screen. However instead of allocating workers to the plots around the city, I'd like to allocate improvments. Then when an automated worker decides to improve a tile around the city it can take a look at the plan I have created and use that in preference to how it does it now.
My next gripe is over the building cost for new cities. I find the fact that a granary costs as much time to build in the modern era as it does in 4000BC a little strange. It's clear that the modern era cities can grow faster because we can build the tile enhancements faster, but the building speed of the city improvments remains constant.
In the same vein all buildings and units are not created equal, modern power plants are more efficient and safer than older ones, modern infantry are superior to the pre WW2 equivilant. One solution to this is to create a lot of seperate units that do the same job and this has partilly been done (tank --> mod. armor, musketmen-->riflemen-->infantry-->mech infantry) but not to my satisfaction.
I would prefer a simpler solution which would attach some sort of bonus points to units which would increase their abilities. This would be similar to promotions, but they would be automatically available to newly built units. To elaborate slightly, if you were to build a single tank it wouldn't normally have any additional bonuses, but by the time you hve built your 100th tank your tank building should have increased somewhat, resulting in an increase in hitpoints for new tanks. Similarly if you are constanly defending with longbowmen the newly built longbowmen will come with defence bonuses, and if you are constantly attacking with cavalry they will receive attack bonuses. I would think old units could be upgraded (perhaps refitted is a better term) within the same unit type, but these bonuses shouldn't carry across when upgrading to a new unit type.
This can be extended to buildings in several ways. Firstly if you have built 20 granaries, your granary building skill increases resulting in a shorter catch-up time for new cities (this can be extended to all buildings of course). As well as this some buildings may have additional bonuses, such as factories increasing their production bonuses. Like with units, I would expect old buildings could be refitted to newer versions. The final extension could apply to buildings which increase the promotion points of units, such as the barracks. A barracks that creates a lot of units starts to produce units with more promotion points, this is slightly different than the other extensions because it applys to a specific instance of a building rather than that class of building.
Gripe number three concerns micromanaging units before big wars. It's a pretty simple idea, I would like to be able to create "Marshalls" which would be a special unit capable of organizing other units. They would have no ability to attack or defend, nor any cost (I guess they would be like spies). The marshall would be able to be created anyware and configured to collect other units. For example I might deploy 6 marshalls in the north prior to an attack, each collecting 15 tanks, 5 helis, 5 arty and 5 infantry. At the same time I deploy 2 in the south, to defend against an uncertain neighbour, each collecting 15 infantry and 5 tanks. Then I start producing these units in my cities. When a military unit is produced at a city it can be automated and it will then seek out the nearest marshall that requires a unit of this type. The marshalls don't actually do anything themselves except keep battlegroups organised.
My fourth and final (well final for this rant at least) gripe has to do with technology targets. I think it's a little unrealistic to persue technologies with such precision. My solution is to provide fuzzy catagories rather than specific techs, for example you may research 50% growth techs, followed by 30% military techs and 10 each of economics and religious. Every turn you collect research points per catagory and each available tech is randomly tested against a catagory, if the test passes the tech is gained for a cost, and the catagory pool is reduced by that cost.
To give a simplistic example, imagine we only have 2 pools: growth and military. Each of these pools has points acquired from previous turns:
military 450
growth 700
This turn we have 400 new points to allocate and the current split is 75% military, 25% growth, so at the beginning of the turn we have:
military 450 + 300 = 750
growth 700 + 100 = 800
Now at this point we have the chance of discovering some techs. Let us say that a tech has a nominal value and a standard deviation of 10%, there are 4 techs whose prerequisites are satisfied, listed below is the nominal value, and the actual value (random deviation from the nominal value for each game) of the techs. The available techs for the round would be orderered randomly.
Horseback riding (military) 800, 650
Fishing (growth), 600, 700
The wheel (growth), 600, 50
Archery (military), 100, 150
So we would discover Horseback riding because the 650 actual is less than 750 in the pool, this reduces the military pool to 100. we would discover fishing because 700 is less than 800, and we also reduce our growth pool to 100. The we discover the wheel because the dice have favoured us and it is alarmingly cheap (50) reducing our growth pool to 50, we cannot discover archery because the cost is 150 and we only have 100 in the military pool.
This is obviously a highly contrived example, I'm not suggesting it would be normal to discover 3 techs in a turn (!), I only wanted to illustrate how the system could work.
Erm right, I think that's all, just a few tiny changes

- nzhavok