TREATIES has issues: * Treaties can cover attack, assault, paradrop, board, lboard, fire, build (s|p|l|n) and enlist, but not bomb, launch, torpedo and enlistment centers. * Usability is very poor. While a treaty is in effect, every player action that violates a treaty condition triggers a prompt like this: This action is in contravention of treaty #0 (with Curmudgeon) Do you wish to go ahead anyway? [yn] If you decline, the action is not executed. If you accept, it is. In both cases, your decision is reported in the news. You cannot get rid of these prompts until the treaty expires. * Virtually nobody uses them. * Virtually unused code is buggy code. There is at least one race condition: multifire() reads the firing sector, ship or land unit before the treaty prompt, and writes it back after, triggering a generation oops. Any updates made by other threads while trechk() waits for input are wiped out, triggering a seqno mismatch oops. * The treaty prompts could confuse smart clients that aren't prepared for them. WinACE isn't, but is reported to work anyway at least common usage. Ron Koenderink (the WinACE maintainer) suspects there could be a few situations where it will fail. This feature is not earning its keep. Remove it. Drop command treaty, consider treaty, offer treaty, xdump treaty, reject treaties. Output of accept changed, obviously. Signed-off-by: Markus Armbruster <armbru@pond.sub.org> |
||
---|---|---|
.. | ||
backups | ||
bug-reports | ||
CHANGES | ||
CHANGES2.3 | ||
CHANGES3.0 | ||
CHANGES4.X | ||
clients-howto | ||
coding | ||
configuration | ||
contributing | ||
debugging | ||
econfig | ||
files | ||
pthreads | ||
README | ||
schedule | ||
threads | ||
unicode | ||
WACKY_IDEAS | ||
WISH_LIST | ||
xdump |
Documentation is like sex: when it is good, it is very, very good; and when it is bad, it is better than nothing. --- Dick Brandon These files should be better than nothing: files What's where. backups Recommendations for how to do backups when running a game. clients-howto Material useful for client writers. troubleshooting Some common problems and solutions. configuration How to turn options on and off, change game parameters, etc... debugging Hints on debugging. econfig Details about the syntax of data/econfig. bug-reports What to do if you find a bug. threads Dave Pare explains how lwp threads work. pthreads Sasha Mikheev's notes on Empire's threading abstraction, and its LWP and POSIX threads implementation. coding Guidelines for writing Empire code contributing How to contribute to Empire unicode Design and implementation of Empire's Unicode support. CHANGES Revision history for all the changes that were coded in the Empire2 project. A much more readable version of this may be found in "info History" (brief) or "info Empire2" (detailed). CHANGES2.3 All changes since revision 2.3 CHANGES3.0 All changes since revision 3.0 CHANGES4.X All changes since revision 4.0 WISH_LIST things which maybe should be coded sometime. WACKY_IDEAS things which shouldn't be coded except possibly as an option.