Complete.Org: Mailing Lists: Archives: freeciv: August 2005:
[Freeciv] Re: siege
Home

[Freeciv] Re: siege

[Top] [All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
To: freeciv@xxxxxxxxxxx
Subject: [Freeciv] Re: siege
From: Sam Steingold <sds@xxxxxxx>
Date: Tue, 09 Aug 2005 15:08:06 -0400
Reply-to: sds@xxxxxxx

> * Sam Steingold <fqf-zKKw517/mfD@xxxxxxxxxxxxxxxx> [2005-08-07 13:33:01 
> -0400]:
>
> Placing an enemy city under siege should be easier:
> a city should not be able to work a square that is reachable by an enemy
> unit in 1 turn.
> this means that entering the area around the city so as to be able to
> displace another player's city work should require a declaration of war.
> alternatively, displacing worked squares requires declaration of war.
> (squares covered by friendly units can be worked)

for each tile and player, define "tile availability" to be a number from
0 to 1, and use it to determine the actual benefit derived from working
the tile by multiplying it by the nominal benefit (food, trade &c) and
rounding appropriately.

tile availability is defined as follows:

1. if there is an enemy[*] unit on the tile, tile availability is 0.

2. if there is no enemy units on the tile, tile availability is defined
   to be the probability that the player will win an all-out war for the
   tile.
   specifically,

   A. if no enemy unit can attack the tile in 1 move, tile availability
      is 1.

   B. if some enemy units can attack the tile in 1 move, but no unit
      belonging to the player can reach it in 1 turn,
      the tile availability is 0.

  C1. if some enemy units can attack the tile in 1 move,
      and some player's units can reach the tile in 1 turn too,
      the probability is computed by applying the standard "Probability
      101" formulas by playing out battles between the best units one by
      one.
      E.g.: suppose a coastal tile can be reached by one player's
      "warrior" unit, and the enemy has a battleship and a cruiser at
      distance 3 from the tile.
      Suppose the probability of battleship winning against the warrior
      is 0.9 and the probability of the cruiser is 0.8. Then tile
      availability is 0.1*0.2 = 0.02 [not taking damage into account].
  C2. if the player has units more suitable for attack than for defense
      (e.g., a submarine in the above case), we play out the battles
      like this: the enemy places his attack units on a square adjacent
      to the tile in question, and then the player attacks it.  E.g.,
      the submarine attacks battleship and cruiser as if they were
      standing on the square from which they attack the tile.
   C. The higher of the two numbers computed in C1 and C2 is the tile
      availability.

      To recap: the enemy prepares to attack the tile with his best
      attack units, then the player either defends the tile or attacks
      the enemy unit.
      this imaginary battles determine tile availability.

3. Embellishments: SAMs, walls, SDI, coastal defense &c should all have
   beneficial effects on tile availability.

4. Of course, one has to be at war to have all these effects.
   Crossing national boundary with a combat unit should require a war.
   Building a city on someone else's territory should require a war too.


[*] enemy unit is defined to be the unit belonging to a party in a state
    of "war" with the player.

-- 
Sam Steingold (http://www.podval.org/~sds) running w2k
<http://www.iris.org.il> <http://www.jihadwatch.org/>
<http://www.memri.org/> <http://www.palestinefacts.org/>
char*a="char*a=%c%s%c;main(){printf(a,34,a,34);}";main(){printf(a,34,a,34);}




[Prev in Thread] Current Thread [Next in Thread]