[Freeciv-Dev] diplomat/spy handling
[Top] [All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index] [Thread Index]
This started out with a simple complaint from a friend who noticed that
Diplomats/Spies need *lots* of movement to do anything. In Civ2, they need
only 1/3 movement point to perform any action. "A quick fix", I thought...
It turns out that this constraint was buried deep in the code, and I found
that much of the Diplomat/Spy handling could stand some fixing.
So, here is a major cleanup/reimplementation of the Diplomat/Spy code, in
an effort to make it more closely compliant with Civ2 rules. Some specific
changes are:
- Changed all Diplomat/Spy actions to more closely conform to Civ2 rules.
(See comments in server/unitfunc.c for diplomat_*() and spy_*() routines.)
- Changed "diplchance" to be %-chance of success. Used in many ways.
(Again, see diplomat_*() and spy_*() routines in server/unitfunc.c.)
- Diplomat/Spy may attempt action with any movement left.
- Added "At Spy's Discretion" selection to steal tech and sabotage dialogs.
(Gtk and Xaw clients changed. Mui client not changed.)
- Allow Spies to steal tech from a city more than once (gets harder).
- May only poison towns of size > 1.
- May only sabotage units that are alone on a square.
- When a city is subverted, only nearby units change sides.
- Veteran status improves Diplomat/Spy defense against other Diplomats/Spies.
- Changed interpretation of kill_outside arg to transfer_city_units()
to be the radius outside which supported units are killed (-1 means none).
dipl-spy-cleanup-2.diff.gz
Description: Binary data
jjm
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Freeciv-Dev] diplomat/spy handling,
Jeff Mallatt <=
|
|