Complete.Org: Mailing Lists: Archives: freeciv-dev: June 2004:
[Freeciv-Dev] (PR#9064) Expulsion of enemy units from territory
Home

[Freeciv-Dev] (PR#9064) Expulsion of enemy units from territory

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: undisclosed-recipients: ;
Subject: [Freeciv-Dev] (PR#9064) Expulsion of enemy units from territory
From: "James Canete" <use_less@xxxxxxxxxxx>
Date: Tue, 22 Jun 2004 01:42:37 -0700
Reply-to: rt@xxxxxxxxxxx

<URL: http://rt.freeciv.org/Ticket/Display.html?id=9064 >

This patch implements forced expulsion of enemy units from a player's
territory.  This patch depends on PR#9006, player_in_territory().

There is now an "expel" button in the player dialog.  You can only expel
units from your territory if you have contact with that civ and are not
allied with them.

Once an expel command is sent, the player is given one turn to remove or
disband all their units in the other player's territory.  If this time
elapses, that player autodeclares war.  If the expel command was sent
when the player has already ended his turn, the autodeclaration is made
at the end of the next turn.

If war is prevented by a player's senate, all units in the other
player's territory are automatically disbanded.  I think this
functionality is not working at present, though.

Currently only the win32 client has a button for expelling, but
implementing it in the other clients shouldn't be too difficult.

Issues:
- You can still force an expel even if you're at cease fire.  This
should probably have an exception.
- Should the expulsion always be on the next turn, or should a timeout
be involved?
- Think up a way to prevent expel spamming, perhaps only one expel
demand per turn?
- If a player's intruding unit has already spent their move points and
he hasn't hit end turn, an expulsion demand can force him to disband
that unit.
- Forcing someone to disband all their units if they can't exit the
territory in time is a bit harsh.  Perhaps a "withdraw" command to
automatically teleport your units to the nearest city/cities?  Though
this can be easily abused to "recall" your units.

TODO:
- AI has no idea it can do this.
- Right of Passage treaties.

-James Canete

Attachment: expel_enemy.diff
Description: Binary data


[Prev in Thread] Current Thread [Next in Thread]
  • [Freeciv-Dev] (PR#9064) Expulsion of enemy units from territory, James Canete <=