<URL: http://bugs.freeciv.org/Ticket/Display.html?id=39895 >
> [wsimpson - Fri Nov 23 18:37:57 2007]:
> After a fair amount of testing, here's my initial re-design of the border
> code. I left much of the old code in place (#ifdef OWNER_SOURCE) for
> comparison. As you can see (or I can supply screen shots), for a game in
> progress the code yields *exactly* the same borders.
> For new games, the most immediately visible difference is that borders
> spring into place around cities as soon as they are built. This is easier
This is cleaner indeed, though I personally always liked the feeling of
your borders slowly expanding around your city - you would race against
nearby foreign cities for who would grab that valuable tile first. =)
What I don't like, still, is how a settler can very easily "steal" tiles
from another player just by founding a city. Freeciv borders - IMO - is
an abstraction of military and administrational control and bringing
along a bunch of peasants shouldn't automatically grant you control of
foreign soil. It's bad because the nominally peaceful settler becomes a
feared offensive unit and it's bad because it encourages smallpox as a
single large city can't retain its borders effectively.
An idea for a solution is to require you to bring military units along
to be able to steal territory. With this model, for example pillaging or
fortifying for a set number of turns on a tile within the city radius of
one of your cities would grant you the tile.
> to explain, and matches civ3-like border expectations. It will allow
> re-enabling (in the future) limits for city workers on border tiles (there
> were some old discussions). The existing behavior, starting with no
> until the next turn, doesn't work -- starving the cities.
I saw this as a feature. You would expect people to starve as their city
is conquered by a foreign power. On the other hand, the new behavior is
certainly more player friendly.
> I've some more ideas ready to go. The player has a list of sites (not yet
> implemented) for future civ3-like radar installations. The vision code is
> partly finished, to enable civ3-like vision along the borders.
> Note the extensive use of access functions. This allowed complete removal
> and reorganization of various city and tile pointers. (That's why access
> functions are important!)
> As a result, the border source information is now kept only in the player
> map tiles, instead of the main client/server tiles. Neatly and cleanly.
> I've kept the same network code, so it could be ported back to 2.1 -- but
> that would be a lot of extra effort, as 2.1 doesn't have all my access
> function cleanup patches.
As a matter of principal, I wouldn't like to change the behavior of a
central game concept in a stable branch. As a player I would expect my
borders to behave the same when I load up my 2.1.0 game in 2.1.1, for
Freeciv-dev mailing list