Follow-up Comment #7, bug #24724 (project freeciv):
Indeed.
There's a check in transfer_unit() (called by transfer_city()) that ought to
have caught this. However, the upstart's Leader is created (by
give_midgame_initial_units()) after the transfer_city() stage in civil_war();
and give_midgame_initial_units() does no checks (it could usefully assert).
We can't really move give_midgame_initial_units() earlier, because they appear
in the capital, which can't be placed until the cities have been transferred.
If we make a city containing a Gameloss unit immune to civil war, we'll have
to be careful not to create a civil war player who gets no cities. Currently
we just count cities because only the capital is immune. Probably for
robustness we should make a list of eligible cities before we create the
player, and bail out if there are none (an empire formerly consisting of
conquered city, Leader city, new capital city cannot be split).
* This rule creates an incentive to always keep your Gameloss unit outside
your capital, probably in your second-best city. Probably such incentives
already existed -- I think the SuperSpy flag preventing incitement to revolt
is one.
I also notice that the surplus Leader also has Emerald City as a home city,
whereas Leaders are normally homeless. I think that homeless units become
homed if transferred with a city (maybe even ignoring the NoHome flag?).
That's probably another bug.
_______________________________________________________
Reply to this item at:
<http://gna.org/bugs/?24724>
_______________________________________________
Message sent via/by Gna!
http://gna.org/
_______________________________________________
Freeciv-dev mailing list
[email protected]
https://mail.gna.org/listinfo/freeciv-dev