Tech upkeep based on population (Settled Area)

What would you like to see in Freeciv? Do you have a good idea what should be improved or how?
Post Reply
User avatar
Corbeau
Elite
Posts: 1291
Joined: Mon Jan 13, 2014 11:13 pm

Tech upkeep based on population (Settled Area)

Post by Corbeau »

Among others, one of the options for tech upkeep is "multiplied with the number of cities".

How difficult would it be to tweak the code so that there are more ruleset options to set this up?

Namely: after calculating base upkeep (based on number of tech and pre-set values), instead of multiplying it with the number of cities, multiply it with:

A * pop + B * city

pop - "Settled Area" from Demographics, a real effective representation of the population size
city - number of cities
A, B - values to be chosen in the ruleset

(With A=0 and B=1 this is the already existing option that uses the number of cities)

Reasoning:
1. Realism
A nation needs to expend resources to maintain the literacy and expertise level of its population. Simply put, it needs to educate plumbers, carpenters, technicians, medics. teachers etc. or else all the knowledge it has gathered throughout history will be lost. And obviously, the more people there are, the more doctors and teachers you need. But also, the more cities there are, the more needs to be invested into infrastructure: maintaining roads, pipelines, communication, post office...

2. Gameplay
This gives enormous flexibility to setting limits to the size of the empire and ways of crossing those limits. Adjusting A can make smallpoxing impossible, while adjusting B can make it possible to have effectively very different games regarding the technological gap between big and small empires.
--
* Freeciv LongTurn, a community of one-turn-per-day players and developers
* LongTurn Blog - information nexus with stuff and stuff and stuff
* Longturn Discord server; real-time chatting, discussing, quarrelling, trolling, gaslighting...
nef
Elite
Posts: 324
Joined: Mon Jun 25, 2018 5:01 pm

Re: Tech upkeep based on population (Settled Area)

Post by nef »

A simple solution to this is to make tech upkeep a basic commodity (like F/P/T, G/L/S) so that it can be selected with an output type predicate. One could then make it dependent on almost any city parameter (e.g. per city, per tile worker, per specialist), and could be modified by techs, buildings, era, gov etc.. The big question I would have is the consequences to AI support for ANY changes in areas like this. No issue for MP games, of course which probably makes it fine for Corbeau but not so fine for SP players like me.

Currently the engine does not support a per player rule (that I know of) that would accommodate a base rate so that would have to remain (for now) as server or game.ruleset options.
Lexxie
Veteran
Posts: 127
Joined: Fri Jun 23, 2017 4:18 pm

Re: Tech upkeep based on population (Settled Area)

Post by Lexxie »

The setting is really more relevant for MP games anyway. (Upkeep is used to moderate the dynamics for excessive tech proliferation.)

It would be easy to do and I hope someone does it.

I can argue that basing it on "total city size" is better than settled area. Settled area has some weird non-relevant things factored in. Like a worker counts differently for settled area based on what tile it's on. But I suppose it's not a big deal and either way would be a huge improvement.
Ignatus
Elite
Posts: 644
Joined: Mon Nov 06, 2017 12:05 pm
Location: St.Petersburg, Russia
Contact:

Re: Tech upkeep based on population (Settled Area)

Post by Ignatus »

It's much how Civ4 civics are upkept, just with some free/penalty pop and cities and with separate count for each civic (~government) in use.
Post Reply