Diplomacy Zine -- Chapter Eight EP #256 From: Eric_S_Klien@cup.portal.com Date: Sat, 09 Nov 1991 21:08:44 +0000 Issue #256 of ELECTRONIC PROTOCOL: ************************************************************************* Defenseless, adj. Unable to attack. ************************************************************************* Chapter One contains: BAGHDAD, BLITZKRIEG II, KING'S GAMBIT, PASSCHENDAELE, DRAGONS, BLACK OCTOBER, OPERATION DESERT STORM, THE SOMME And is published by uunet!cti1!rlister or rlister@cti.com/Russ Lister Chapter Two contains: BEREZINA, PORTNOY, JUTLAND, TIBERIUS, MARENGO, PARIS, SPARROW, SNORRI AJAX, DIEN, FONTENOY, AGINCOURT And is published by loeb@geocub.greco-prog.fr/Daniel E. Loeb Chapter Three contains: SQUALANE, BRUSILOV OFFENSIVE II, CULLODEN, GANDALF'S REVENGE, GOODBYE BLUE SKY, MASTERS OF DECEIT, PANDORA, NOW AND ZEN And is published by mad-2@kub.nl/Constantijn Wekx Chapter Four contains: DEADLY DAGGERS, MONTREUIL-SUR-MER, FIRE WHEN READY, THUNDERDOME, BEREZINA, FONTENOY And needs a publisher. Chapter Five contains: YALTA, AJAX And needs a publisher. Chapter Six contains: BERLIN WALL, HIROSHIMA, GENGHIS KHAN, SEA LION, VIOLENT PEACE, GIBRALTAR And is published by barry@brahms.udel.edu/Barry Fausnaugh. Chapter Seven contains: TIBERIUS, BETELGEUSE, IRON CROSS, TEUNISGEK, RIYADH'S RECKONING And needs a publisher. Chapter Eight contains: TIBERIUS, BETELGEUSE, IRON CROSS, GUERNICA, TEUNISGEK, WOLF BLITZER, THE COMMANDERS, THE SUTHERLAND CONFLICT ------------- Chapter Eight ------------- Table of Contents: Messsage from Me Principles of Endgame Play Does Random Drug Testing Pay? Diplomacy Programming Project ---- Message from Me: I am having problems mass mailing a message to multiple people. If anyone knows of a way that I can send a message to their system and then have it mass mailed to lots of people, let me know. I need a backup to the Portal mailing system. Issues 255 and 256 will be mass mailed to my mailing list as soon as technical problems on my side are resolved. (Some people will get issue 255 multiple times as I try to get my mailer to work correctly. Luckily that is my smallest issue in months.) The following was scribed by cmmjr@flight-sim.gatech.edu/Cliff McKeitham From Diplomacy World #61: Principles of Endgame Play by Mark Nelson Over the years there have been numerous articles written on Diplomacy. The most popular areas have been Opening theory and Ratings theory. This is not too surprising, since if you want a good result then you'll need a good start, and once you have achieved a good result you'll want to know how well you compare to other players! Many articles have been written on how to play the first few seasons. This is an easy part of the game to write about since the setup postion is always the same. Articles on the Midgame are less common; the position is more fluid and articles must concentrate on the general strategy that powers must pursue. These articles are usually less specific in their outlook. Finally, there is the Endgame, an area that has been overlooked by the majority of writers. There are very few articles on this aspect of the game and those few are predominantly concerned with stalemate lines. But allow me to digress for a moment. When the World Chess Champion Anatoly Karpov visited the United Kingdom in the 1970s he was asked how British players could improve their game. He asked them what they studied, and they answered "Openings, we all study Openings." His response was along the lines that Openings were good, but if you wanted to win, you must study Endgames. Just as in Diplomacy there are many Chess books on Openings, a few on the Midgame, but very few on the Endgame (only one or two.) You may be able to blitzkrieg to a win in the Opening or Midgame, but the Endgame requires careful play if you are to convert winning positions into wins or inferior positions into draws. Similarly, in Diplomacy many games are won by powers that blitzkrieg their way to an early win. But in Endgame positions things can get more difficult, and carful play is needed. Endgame positions fall into two types: 1. Static Positions. Here alliances are formed into blocs and objectives are clear. One bloc is moving forward while the other bloc must prevent this movement. This kind of position requires a thorough consideration of stalemate lines. These are the most common Endgame positions. 2. Fluid Positions. These positions arise when either there are no blocs and the Endgame is a glorious free-for-all, or when there are blocs but no stalemate positions are possible due to the fluidity of the game. Whilst these positions are rarer they are more enjoyable to play in and watch because there is commonly no bright line answer, no clear-cut objectives. Of course, such positions can also be hell to play. The only way to improve your play in the fluid position is to, well, play in fluid positions. Since it is desireable to play such a position before getting into on in real-life, I offer an example of this type of Endgame situation. The following position arose in a gunboat game that I am currently running. We have just played Fall 1912 and placed the builds/disbands on the board. 1988Nrb32("Frigate")Zine:Silverthorn Pre-Spring 1913 Germany Units (7) F's Nat, Nth, Den; A's Nwy, Yor, Bre, Bel. Owns (9) Bel,Den,Swe,Par,Bre,Lon,Lpl,Nwy,Bel Italy Units (15) F's Mid, Spa(sc), Lyo, Tun, Ion, Nap; A's Ven Tyl, Vie, Bud, Mun, Ber, Kie, Ruh, Mos Owns (15) Home, Vie, Bud, Tun, Mar, Spa, Germany, Rum, Mos, Por, Hol. Russia Units (2) A's Stp, War. Owns (2) Stp, War. Turkey Units (8) F's Adr, Gre, Aeg, Eas; A's Tri, Gal, Ukr, Sev. Owns (8) Home, Gre, Bl, Ser, Sev, Tri. This game is relatively fluid, and the objectives are simple. Italy is playing to win whilst the remaining powers are playing to prevent such a win. The question is, can they prevent the win and how do they do it? For you see, there are no stalemate positions which can readily be set up! In the West the position is fairly clear. Italy hopes to break through the straits which the fleets are queing up. Once these can break through they should be able to pick up stray German centers, and eventually the German must prevent to hang on to his existing centers. In the East there is a tactical melee. Sure, Italy can take centers, but so can Turkey and Russia! The issue here is who can take centers at a faster rate and who can position their units to best effort? This is a gunboat game, with press, so the defending powers are hampered by lack of negotiation. I therefore post two questions: 1. What is the outcome of the best play in the Gunboat game; and 2. What would be the outcome with best play in a regular Diplomacy game? Please submit your answers in duplicate to David Hood at the DW address by February 20, 1991. The winner will be the one with best discussion of this position as decided by David and myself. The prize will be a four-issue subscription to my own zine The Mouth of Sauron and merchandise certificates for mail-order purchase of products from the U.S. distributor of Diplomacy, the Avalon Hill Game Company. A future issue of Diplomacy World will contain the winner's analysis, the result of the game, and my own comments. Mark Nelson (21 Cecil Mount, Armley, Leeds, West Riding, LS12 2AP England) publishes the zine The Mouth of Sauron. The following was posted by John Sula/sulak@ge-dab.GE.COM: From Investor's Business Daily, November 1, 1991, page 8. ~ DOES RANDOM DRUG TESTING PAY? DON'T COUNT ON IT ~ ~ Some employers say they do better finding users on their own, that mandated ~ testing costs too much. ~ ~ By Alexa Bell ~ Investor's Business Daily ~ ~ Next year, R. F. White Co. will begin randomly testing its 30 truck drivers ~ for illegal drug use, as federal law requires. ~ ~ Despite the company's strong concerns about driver impairment, it considers ~ the tests a waste of money. ~ ~ The Upland, Calif., petroleum distributor already tests drivers daily for ~ impairment with a coordination test. It considers this test far superior to ~ random urine analysis, which it views as an invasion of privacy and ~ ineffective in detecting dangerous drivers. ~ ~ "We could test the same honest person two times but miss the bulk of the ~ work force," said Vice President Darry White. "I believe the money would be ~ better spent on day-to-day employee (performance) testing." ~ ~ White is one of many employers who must soon implement random drug testing ~ as a result of federal regulations. This week, President Bush signed into ~ law a bill that requires random testing of all transportation and ~ mass-transit employees involved in safety-sensitive jobs. The law extends ~ ~and codifies existing regulations, some of which until recently had been ~ tied up in the courts. ~ ~ Under the law, approximately six million transportation workers will be ~ subject to random testing, a requirement that may cost transportation ~ employers as much as $ 1 billion annually, according to Todd Spencer, ~ communications director of the Owner-Operator Independent Drivers ~ Association in Grain Valley, Mo. ~ ~ Federal regulations already require drug testing of federal employees and ~ employees of companies with government contracts. As a result of this ~ regulation and growing national concern about drug abuse, 50% of Fortune ~ 500 companies now test at least some of their employees, according to the ~ National Institute of Drug Abuse, a federal agency. ~ ~ Despite the widespread acceptance of drug testing, and despite reams of ~ anti-drug data supplied by non-profit organizations and government bureaus ~ enlisted in the war against drugs, employers like White have little ~ expectation that drug tests will boost worker safety and performance. ~ ~ "Random testing doesn't tell us day-to-day if he is impaired or if he is ~ under the influence of a substance," White said. ~ ~ Many of those who criticize random drug testing - which costs between $20 ~ and $95 per employee - cite low positive rates as evidence that such testing ~ is not effective. ~ ~ The aviation industry - required by federal regulation to give random, ~ pre-employment, reasonable cause, post accident, and periodic drug tests in ~ safety-sensitive jobs - found an overall positive rate of 0.4% among tested ~ employees in 1990, according to Department of Transportation data. No data ~ on cost or accident rates have been collected by the department. ~ ~ Some outside the transportation industry are also starting to question the ~ wisdom of random drug testing. ~ ~ The House Subcommittee on the Civil Service, for instance, recently ~ published a study showing that out of 28,872 federal employees, only 153 ~ employees, or 0.5%, tested positive for illegal drugs. ~ ~ The testing cost the government $11.7 million for the year under study. ~ This translated to $77,000 per positive result. Because of the low hit ~ rate, the study concludes, "Drug testing is an expensive proposition which ~ yields few drug users." ~ ~ The National Institute on Drug Abuse, which provides assistance to ~ employers trying to create anti-drug policies, acknowledges that that (sic) ~ there isn't a lot of evidence that mandatory testing is cost effective for ~ businesses either. ~ ~ "There is not a low of data there," said Dennis Crouch, a toxicologist at ~ the institute. "The rationale is not cost but the intangibles of safety and ~ maintaining an environment that everyone is comfortable with." ~ ~ Critics of drug testing argue the current federal emphasis on drug testing ~ is based more on philosophical opposition to drugs stemming from the Reagan ~ White House than on sound data that drug use is hurting business. ~ ~ In particular, critics attack a widely quoted report by the Research ~ Triangle Institute that in 1980 estimated economic cost of drug abuse to be ~ about $35 billion. ~ ~ This statistic - an estimate of the difference in earnings between chronic ~ marijuana users and the general population - has been frequently used by the ~ National Institute on Drug Abuse and others to illustrate the damage drug ~ abuse is causing business. ~ ~ But that is misreading the data, says their author, Henrick Harwood, now a ~ policy analyst with the U.S. Office of National Drug Control Policy. ~ ~ ~ "It definitely did not estimate the cost to business," Harwood said. "It ~ has been misused by a number of people who fail to understand that. Most of ~ the costs would primarily accrue to the drug users and to their family ~ members." ~ ~ Studies showing drug users have higher rates of absenteeism, accidents and ~ health-related expense have come under attack as well. ~ ~ Dr. John P. Morgan, professor of medicine and acting chair of pharmacology ~ at City University of New York, accuses many researchers of taking data ~ from highly impaired groups, such as workers involved with employee ~ assistance programs or those tested for drugs due to poor work performance, ~ and generalizing out to all positive-testing employees. ~ ~ He also claims that studies which show little difference between positive ~ testers and negative testers are ignored. ~ ~ The drug-test sellers base their statistics on people in treatment ~ programs," he said. "They don't want to deal with the fact that most users ~ are occasional users." ~ ~ In the trucking industry, employers have already been successful in weeding ~ out drug abusers from their ranks through careful hiring procedures and ~ observation of drivers, claims Spencer. ~ ~ "In reality, there are very few instances of truckers who abuse drugs," he ~ said. "Truckers have the most to lose from any vehicle run by drug users on ~ the road." ~ ~ But don't expect many to buck the current political climate and go public ~ with their opinions of drug testing. ~ ~ "If you say it's not cost-effective, you run the risk of saying you support ~ drug users on the road," he added. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Here is lots of info on the Diplomacy Programming Project by loeb@organon.greco-prog.fr (Daniel LOEB): Diplomacy Programming Project table.of.contents Updated: 21 October 1991 Thanks for your interest in the Diplomacy Programming Project. The best way I can tell you more about it, is to send you a sample of some of the files relating to the project.... (The files I didn't send, you can request directly from me). The Diplomacy Programming Project hopes to design programs that play diplomacy and actually negotiate with each other. We have already written an interface to be used by the programs (Diplomats) and determined a protocol to be followed. A group of Israelis have written a diplomat based mostly on negotiation. I and Michael Hall have written a plan for a diplomat based mostly on strategy. We hope to implement a strategy this year in Bordeaux. Other groups in Holland, France, and the US might also write diplomats. In August 1992, we could then include diplomacy as a competition in the 4th Computer Olympiad. Please tell me if you want me to put you on the mailing list for future reports. I hope you decide to join us, and possibly write a program for use with the project. LIST OF FILES ------------- name topic sent art.tex A better version of "hall.article" (in publication) conversations An appendix to "protocol" giving examples of syntax course How to get credit for your participation dea.tex A proposal (in French, latex format) for a Master's thesis regarding this project dipl.sml The Diplomat Interface progress written in LCS Program is in many parts including: datatypes.sml declarations dipl.bugs list of bugs to fix dipl.comments general comments about the program draw.sml handling of the DRW command endofturn.sml production and distribution of results general.sml a package of general purpose functions init.sml initialisation routines map the standard diplomacy map map.sml the parts of init.sml which depend on the map process.sml the "front-end" of the program rules AH rulebook with commentary regarding DPP strings.sml string "beautification" package submit.sml handling of the SUB command how.to.get.lcs Ad for LCS (the language dipl.sml is written in) impartial Article on multiplayer impartial game sent intro First proposal for DPP maas1 Report on Diplomacy Talk in Maastricht (w/bibliography) poker Poker Programming Project version of article.tex sent protocol The language in which Diplomats communicate snake Rules for a simple multiplayer game strategy A VERY simple diplomacy strategy sent table.of.con... This letter update.... progress reports SELECTED BIBLIOGRAPHY --------------------- The following, is a selected bibliography. I can send photocopies to people who want to make "fair use" of certain of these articles which they can not otherwise obtain, and if marked with a *. Au: Sarit Kraus, Daniel Lehmann, Eithan Ephrati (*) Ti: An Automated Diplomacy Player Jo: Heuristic Programming in Artificial Intelligence Ed: D N L Levy, D F Beal Pu: Ellis Horwood 1989 Pa: 136-153 Au: Michael Hall and Daniel Loeb (*) Ti: Thoughts on Programming a Diplomat Jo: Heuristic Programming in Artificial Intelligence, 1991, To Appear Au: Davis and Smith Ti: Negotiation as a metaphore for distributed problem solving Jo: Artificial Intelligence 20, 63-109, 1983 Au: Kraus Ephrati and Lehmann Ti: Evaluation of Suggestions during Automated Negotiations Jo: Proc of the 11th Cognitive Science Conference, 1989 Au: Kraus Ephrati and Lehmann Ti: Using Interaction Goal-processes for automated negotiation Jo: Proc of the 4th International Symposium for Intelligent Systems 1989 Au: Kraus and Lehmann Ti: Automated Negotiator Jo: Technical Report 88-7, Leibniz Center for CS, Hebrew University, 1988 Au: Kraus and Lehmann Ti: Diplomat, an agent in a multi-agent environment: an overview Jo: Proc of the 7th annual IEEE Phoenix Conf on Computers and Communication 434-438, 1988 Au: Rosenschein and Genesereth Ti: Deals among Rational Agents Jo: Proc of the 9th International Joint Conference on AI, pp. 91-99 Au: Sarit Kraus and Daniel Lehmann (*) Ti: Designing and Building an Automated Negociator Jo: SUBMITTED TO Computational Intelligence Au: Sarit Kraus and Daniel Lehmann (*) Ti: Knowledge Acquisition in Negotiation Games Jo: Proc of 8th Congress of Cybertenics and Systems, TO APPEAR Ed: F Geyer Au: Sarit Kraus and Daniel Lehmann (*) Ti: Negotiation in a Non-Cooperative Environment Jo: TO APPEAR in J.E.T.A.I. Yours, Daniel Loeb The First Law of Optics: If you can see them, then they can see you. E-MAIL loeb@geocub.greco-prog.fr ///=============NOTE NEW APARTMENT HOME 150, cours Victor-Hugo; Appt D45; 33000 Bordeaux France WORK Departement de Mathematiques et d'Informatique, Univ. de Bordeaux I, 351 cours de la Liberation, 33405 Talence Cedex France PHONE(H)+(33) 56 31 48 26, (W)+(33) 56 84 69 05, (FAX) +(33) 56 04 35 13 Introduction The Diplomacy Programming Project --------------------------------- There are already several programs on the net which adjudicate the game diplomacy; however, very few programs can actually play it. As opposed to two player games such as chess or othello which lend themselves easily to computer implementations. Diplomacy as its very name suggests involves negotiations and agreements with the other players. This is a task which is not so easily accomplished. But I do not feel it is impossible. As soon as I have at least seven volunteers, I suggest to start a Diplomacy Programming Project. That is to say, each participant would write a computer program to play one of the seven countries. I would run the programs in parallel, and send the results of the game to the participants. Then some of the participants might rewrite their program and so on. Obviously, the first thing we must do is agree on the protocol the programs will be using. I suggest that the programs be written in LCS which is an extension of the language Standard ML (see Ake Wikstrom's book "Functional Programming Using Standard ML). LCS included all of the commands from SML (almost) plus some commands to operate processes in Parallel. Two ports will be provided between every pair countries allowing communication of arbitrary character strings in both directions. (Except during retreat and build phases when no communication is allowed.) Messages between countries should conform to an agreed syntax. Each process will have access to the following data according to some agreed syntax: (1) the move number (2) the orders for all previous turns (3) the results of those orders (4) supply center control listed by supply center by year (5) number of supply centers, number of armies, and number of fleets for each player by year (6) list of all units for each player requiring orders for this phase (7) list of all supply centers (8) list of all spaces (9) list of the neighbors for each space by land and by sea (for each coast). Moreover, each process will have read access to the port "TIME_LIMIT". When a message is sent through that port, then each process must submit a set of orders "immediately" or be in civil disorder. Each process may output in addition to his orders, a set of "notes" which will be used as input for that countries process next turn. These "notes" could consist of the moves your ally process promised to make, for example. Any process which generates an error condition is also considered to be in civil disorder. MESSAGE PROTOCOL UPDATE Diplomacy Programming Project November 8, 1990 Daniel Loeb Copyright 1990 Loeb Recent Changes: DOC, NOW, SCD I have written a program called the Diplomacy Interface. This program is written in LCS, and takes as input a list containing for each country in the game Diplomacy either: WINDOW in which case, a "suntools" window is opened and input and output for this country is directed to the window. (Only available on SUN workstations) LCS p in which case, p must be an LCS parallel process, and its ports "in" and "out" are used for communication. UNIX code n in which case, code must be the name of a UNIX executable written in any computer language (for example C). Input and output for the country correspond to std_in and std_out for the program. (Not available on SUN4 ... yet). The program will be invoked by its "name" followed by a space and the name of its country. n is the maximum line length allowed for input to this diplomat. Longer lines will be treated by the LNG command. UNPLAYED for an unplayed country (The term "diplomat" will refer to any program or LCS process which plays a country using this protocol below.) I will send a copy of this program (and even a copy of LCS to run it in) to anyone who is interested. The program is finished, but it may still have a few bugs. Please send me your comments, and more importantly your programs. These programs can be as stupid as you want. (For example, a program that conducts no diplomacy and follows the civil disorder rules, or moves randomly would be helpful in testing my Diplomat Interface.) Competitions between diplomats will be scored on the following basis. Any loss scores zero points, whereas a win or draw scores for each winner a number of points equal to the ratio of the number of losers (not counting unplayed countries) to winners. For example, winning a 7 player game is worth 6 points, and acheiving a 2-way draw in a 6 player game is worth 2 points each. The following is a revision of the earlier protocol description based on what I actually programmed. The meanings of the messages destined for the GM are defined here. The meanings of messages destined for other players are listed here only for advisorary purposes. Programmers may devise any such messages they chose, and may interpret such messages as they see fit. However, the message "TRY" should be most useful in communication between program with differing vocabularies. It should be noted that all messages are terminated by the end-of-line character. Below I use the following notations: {arg} optional arguments [arg] repeated arguments ( ) actual parenthesis a/b either a or b <equivalently a or b> < > comment A certain amount of slop is cleaned up my program. But try to stick as closely as possible to this syntax. Lower case letters are used below to describe arguments as indicated below: int = integer msg = message (or the key word of a message), or a label label = any arbitary code made up to refer to a message or phrase unit = AMY/FLT prov nation = ENG / FRA / GER / ITA / AUS / RUS / TUR / REF natunit = ( nation unit ) prov = name-of-province-or-sea or ( STP/SPA/BUL NCS/SCS/ECS ) short-prov = name-of-province-or-sea order = HLD / <hold> MTO prov / <movement> SUP natunit {MTO short-prov} / <support> CTO prov VIA [natunit] / <be convoyed to ... via fleets> CNV [natunit] CTO/MTO prov / <convoy unit to destination> RTO prov / <retreat> BLD / <build> REM / <remove = antibuild> DSB <disband = nonretreat> note = FLD / <move failed eg: eng-nth vss hol s nwy-nth> BNC / <move bounced eg: eng-nth vss nwy-nth> CUT / <support cut> (RET prov)/ <must retreat due to attack from> (MBE {[provs]})/<retreat is no good, it must be to one> <of the following provinces> NSO / <no such order> NSU / <no such unit> DSR / <convoy disrupted> MBV / <might be valid (NSO excluded)> HUH / <order is illegal> FAR / <violation of adjacency rule> CST / <bad build in st pete> YSC / <not your supply center> HSC / <not home supply center> NSC / <not a supply center> NMR / <no more removals needed> NMB / <no more builds allowed> NRN / <no retreat needed for this unit> NAS / <not at sea> NSF / <no such fleet> NST / <no such type, neither army nor fleet> NSP / <no such province> NRS / <not right season> SUC <succeeds> annorder = natunit order note results = [ (annorder) ] rule = rule_number_according_to_Avalon_Hill_rulebook syntax = DPP or another_standard year = int <to comply with our 3 letter rule,> <the first game turn is Spring 101> turn = (SPR/SUM/FAL/AUT/WIN year) <SPR and FAL are movement phases> <SUM and AUT are retreat phases> <WIN is a build phase> 1) Talking to the GM. Message Syntax: SUB {order / (WVE) } Meaning: I submit the following orders. In the winter, orders can not be changed once submitted correctly. In all other seasons, orders can be changed by repeated SUB commands until orders are processed. The argument waive can be used in winter phases once for each build you would like to waive. Note that this is the sole "order" which is not preceeded by a unit designation. Note also that all builds not used (or unusuable) must be explicitly WaiVEd in order to avoid falling into a civil disorder situation. Example: SUB (AMY WAR BLD) (WVE) (WVE) : build army war, and waive two other builds Example: SUB (FLT FIN SUP (RUS FLT BAR) MTO STP) (FLT BAR MTO (STP NCS)) (MOS HLD) : moves barent sea to st pete with support from finland while moscow holds Example: SUB (FLT NWY RTO (STP NCS)) (FLT (BUL ECS) DSB) : retreat norway to stpete and disband bulgaria Replies from GM: "YES prov" for each correct move. THK for each incorrect move. Message Syntax 1: DRW ([nation]) Message Syntax 2: DRW YES/NOP Syntax 1 is used by default. Syntax 2 is used when playing under "Draws Include all Survivors" rules. Meaning: (1) Propose draw among the nations listed. (A one player draw is a victory.) The draw will be accepted if proposed before the next deadline by all players with at least one unit on the board (except possibly the winner in the case of a solo-win). Programs should assume draw was not accepted, since when a draw is accepted all programs are terminated without warning. Suggestions for draws can be sent to other players via the DRW command or (SND (REF) (DRW ...)) combination. Each country may only propose one victory at a time. When a player no longer wishes to propose any draw, he should insist on a solo victory with "DRW [himself]". (2) DRW YES means to agree to a draw including all survivors. DRW NOP means to not agree to such a draw. Example: DRW (ENG TUR) Message Syntax: SND ([nation]) [(msg)] Meaning: The only way to send a message to another player is via the GM by use of this command. This command can also be sent to other players as a sort of suggestion. The GM does not allow this command during seasons other than SPRING and FALL. However, some messages sent in one season may occasionally arrive during the next. When the SND command is given to the referee, none of the recipients of the message can be "REF". Other players may except "REF" as a valid player. Example: SND (RUS) (UNO ((FLT (STP NCS)) BLD)) Example: SND (RUS FRA) (ALY VSS (ENG)) GM Replies: SNT, CDD, OUT, NRS (during no diplomacy phases) Message Syntax: SLP Meaning: I do not intend to send any more output until I receive input. (Not currently implemented, but might be useful for detecting and resolving deadlocks.) Message Syntax: YGO / NGO Meaning: Used to raise and lower a "GO" flag which if lowered inhibits the processing of SPRING and FALL moves even if all the moves are in. (This is the equivalent of SET WAIT and SET NOWAIT on the adjudicator.) Each country has its own personal flag. The flag starts each spring and fall season in the up position. Not currently implemented. Message Syntax: YES [(msg)] Meaning: Yes Message Syntax: NOP [(msg)] Meaning: No Message Syntax: OFF Meaning: Your program is being asked to terminate. Perhaps the game is over (because of a draw), perhaps your program has gone CD, or perhaps the game has been saved and will be resumed later, or perhaps the game is being aborted. Don't reply Message Syntax: LOG (msg) Meaning: The message is included in any possible game-record. Programs should use the LOG command frequently for later debugging. The message should indicate the status of the program. 2) Messages from the GM. Message Syntax: HLO country Meaning: The game has just begun and you are playing "country". Example: HLO ENG Don't Reply. Message Syntax: DIS Meaning: This game is being played with "Draws include all survivors" rules. Otherwise, game is by default played with draws possibly excluding certain survivors. Don't Reply. Message Syntax: LOD file Meaning: The game is being resumed. You have saved the results in the specified file. Note: All programs should expect to receive either HLO or LOD as one of their first inputs. However, in theory, another program could receive its HLO and then send you a message before you have received yours. Example: LOD GAME1.ENG.DUMP Reply with: YES or NOP depending on if you are ready to resume the game. Message Syntax: SVE file Meaning: Please save the current position in the specified file for use later with the LOD command. Note: 1) Unless followed by an OFF, the game will continue. 2) Your program should also keep track of all messages that were sent recently but not confirmed. Such messages may have to be resent when the game is resumed. Example: SVE GAME1.ENG.DUMP Reply with: YES if save was successful and NOP otherwise. Message Syntax: CDD/OUT/NSC (country) Meaning: The country in question has achieved a fatal error and is in civil disorder, or has been eliminated from the game. (Such countries may continue to send messages, but may not receive messages.) This reply is sent once in response to each SND command. Example: CDD ENG England is CD Example: OUT FRA France is out Example: NSC XYZ XYZ is not a country Don't Reply. Message Syntax: TME int Meaning: You must submit moves soon. This command is current generated manually at need. Example: TME 3 : you may send 3 more message Example: TME 0 : no more messages may be sent. Send moves immediately. Reply With: SUB to give your remaining orders if any. Message Syntax: THK annorder Meaning: The following move was illegal. Or when used by a player: I predict the following results. Example: THK (ENG AMY LON) MTO NWY FAR Example: THK (ENG FLT HOL) CNV (ENG FLT LON) CTO NWY NAS Reply with: SUB with corrected order Message Syntax: ORD turn results Meaning: These are the results of the previous turn. If the coming move is a movement phase, then begin diplomacizing. Otherwise, submit moves soon, since "TME 0" will be your only warning. "Turn" refers to the previous turn. The message ORD is sent at the end of every turn (even turns in which nothing happened). Message Syntax: NOW turn [natunits] Meaning: These are the current locations of all units. "Turn" refers to the current or upcoming turn. The message NOW is sent after every turn, and at the beginning of the game. Message Syntax: SCD [(nation [prov])] Meaning: The message SCD is sent after every AUTUMN turn and at the beginning of the game. It indicates who is the current owner of each supply center. Unowned supply centers are simply not listed. Message Syntax: FRM nation1 {nation2} {CCD [nation3]} [(msg)] Basic Meaning: The following message(s) were sent to me from the indicated nation. First Argument: (Not used by GM) Message was sent by nation1 to nation2 instead of to me. Second Argument: Duplicate copies of the message were received by the nations indicated. Other Arguments: Each message is sent separately by the GM. Other players may include a list of messages wrapped in parenthesis. Example: (FRM RUS (WAR)) Example: (FRM RUS ENG (WAR)) Reply as indicated in explation of msg. Message Syntax: (SNT nation {(msg)}) Meaning: I have sent following messages to the indicated nation. (Equivalent constructions are available using FRM, but may be less believable.) The GM uses the command "after" successful delivery of a message as a return receipt. Thus, this command can be used to carefully regulate the order in which messages arrive somewhere. Example: (SNT RUSSIA (UNO ((FLT (STP NCS)) BLD))) Don't reply. Message Syntax: HUH (msg) Meaning: I understood the general command sent, but not the specific syntax. Here is the misunderstood message with an asterisk inserted at the point up to which I understand. (The code (ERR) can be inserted instead of an asterisk by a player.) Since the GM tries to clean up the messages it receives, the message it sends back to you might not exactly correspond to the one you sent. Example: (HUH (DMZ BUR *ENG RUH)) indicated the nonacceptance of a nation in a list of provinces in the demilitarized zone command. Reply With: A better version of the same command. Message Syntax: DOC [([nation])] Meaning: This message is sent at the beginning of a game with less than the full number of players. It means that the various countries are to play together in teams. The final result for any member of a team is the average of the final results of all the members of the team. Each parenthesised group of nations is a single team. This message is not sent when every nation is playing by itself. Message Syntax: LNG int Message Syntax: EOM Meaning: Diplomats which request a maximum line length will receive messages using this syntax when otherwise this maximum would be violated. First the message (LNG int) is sent where the integer indicates the number of lines of messages. Then the message is sent broken into that many lines, but always broken between words. Finally, the message EOM is sent signalling the end of the message. Example: LNG 6 NOW SUM 101 (AUS AMY BUD) (AUS AMY GAL) (AUS FLT ALB) (ENG AMY WAL) (ENG FLT NTH) (ENG FLT LON) (FRE AMY MAR) (FRE AMY BUR) (FRE FLT BRE) (GER AMY KIE) (GER AMY RUH) (GER FLT DEN) (ITA AMY APU) (ITA AMY VEN) (ITA FLT ION) (RUS AMY UKR) (RUS AMY WAR) (RUS FLT BOT) (TUR AMY BUL) (TUR FLT CON) (TUR AMY SMY) EOM 3) Making contact with the other countries. Message Syntax: TRY [{msg}] Meaning: I do not understand the message you sent, following is a list of messages I can undestand. There is no point sending this message to the GM, but the GM can use this message in response to players. Example: TRY DWR PCE UNO UDO Example: TRY used by a program which can't communicate Reply with: Equivalent command from message list. Message Syntax: PSV [{msg}] Meaning: Following is a list of messages I can understand although I don't use them. Message Syntax: ACT [{msg}] Meaning: Following is a list of messages I use but don't understand. Message Syntax: ALT {syntax} Meaning: Please use (one of) the alternate syntax/protocol indicated. (This is for use if people create alternate conflicting protocols.) Example: ALT DPP Reply With: Given more than one choice of protocol reply positively with ALT or the protocol. Given one choice reply positively with YES or the protocol. Respond negatively with NOP or TRY or ACT or PSV. Message Syntax: RPT {(msg)} Meaning: Please repeat or replace message. Reply With: Message, or NOP is you are unable to do so. Message Syntax: BWX {(msg)} Meaning: No comment. None of your bee's wax. Message Syntax: END Meaning: Offer to disconnect. Have presumably submited orders to the GM, and unset the GO flag. Assuming a reply of YES, you intend to set the GO flag. Message Syntax: MSG label (msg) Meaning: Please consider the indicated message, and identify it for later reference by the indicated label. A unique label should be generated for each such occurance of the message. Reply as per the indicated message. Message Syntax: LAB label (string) Meaning: Please in the future accept the label as being synonymous with the following string. Reply: YES or NOP 4) Basic terminology Message Syntax: DWR Meaning: I declare war on you. Message Syntax: PCE Meaning: I propose a general cease fire between our forces. Reply With: Negatively NOP or DWR. Positively with YEP or DMZ. Possibly to be followed by ALY. Message Syntax: DMZ [{prov}] Meaning: Let's declare a demilitarized zone (as follows): Example: (DMZ BUR RUH NTH) Reply With: YEP, NOP, or DMZ. Message Syntax: ALY {WTH ([nation])} {VSS ([nation])} Meaning:I propose an alliance between me and you (and the indicated country(ies)) (versus the indicated country(ies)) Example: ALY WTH (FRA) VSS (GER RUS) Message Syntax: UNO/UDO/INO/IDO [(order)] Message Syntax: XNO/XDO nation [(order)] Meaning: I/you/he will/won't/should/shouldn't make the following order(s). (Specify a time with FOR. Otherwise, default is the earliest time such an order might be appropriate.) Example: (UNO ((FLT (STP NCS)) BLD)) Example: (UDO ((AMY WAR) MTO PRU) ((AMY SEV) MTO ARM) Example: (INO ((AMY MAR) SUP (AMY VEN) MTO PIE)) Example: (IDO ((FLT ECH) MTO MAO)) Example: (XDO ENG ((FLT ECH) CNV (AMY EDI) MTO WAL)) Example: (XNO FRA ((AMY PAR) HLD)) Reply With: YES or SNT or ... Message Syntax: EXP {turn} {[(msg)]} Meaning: You broke you promise(s) (indicated) (before the turn indicated.) Example: EXP 12 (UNO ((FLT (STP NCS)) BLD)) Reply with: SRY, NOP=DNY, DWR, or YEP (to indicate accusation is true without being sorry or declaring war). Message Syntax: SRY Meaning: I am sorry. Message Syntax: DNY Meaning: I deny your accusation. 5) Complex messages Message Syntax: DST {(nation [{prov}]/int )} Meaning: We will divide the spoils as follows. (Avoid listing nations who won't be getting spoils.) Temporary distributions of spoils to eliminate inequities can be assigned using FOR command. Example: DST (ENG BRE SPA POR) (GER BEL PAR) (ITA MAR) Example: DST (ENG 3) (GER 2) (ITA 1) Reply With: DST with provinces in order to reply positively to DST with integers. Message Syntax: IOU/UOM {int} Message Syntax: XOY nation nation {int} Meaning: I owe you, or you own me, they owe each other a favor. If the integer is specified, then that indicates the size of the favor. The default is a favor of size 100 which can be interpretted as the "value" of a supply center. (Negative values indicate favors going in the other direction.) Message Syntax: FOR turn {(msg)} Message Syntax: FOR [turn]-[turn] {(msg)} Meaning: The following messages refer to the turn(s) indicated. Example: FOR 15 (UDO ((FLT SEV) BLD) : good for Winter 1903 Example: FOR 15- (UDO ((FLT SEV) BLD) : good starting Winter 1903 Example: FOR -15 (UDO ((FLT SEV) BLD) : good until Winter 1903 Example: FOR 15-20 (UDO ((FLT SEV) BLD)) : good Winter 1903 - Winter 1904. Message Syntax: IFF (m1) THN (m2) {ELS (m3)} Meaning: If you m1 [either UNO or UDO probably] then I will m2 or else I will m3. (For really funky commands, you can include the arguments AND ORR and NOT in m1.) Example: IFF (FOR 15 (UNO ((FLT (STP NCS)) BLD))) THN (DWR) ELS (FOR 16 (IDO ((AMY SWE) SUP (FLT (STP NCS)) MTO NWY))) : If you don't build F Stp(nc) in winter 1903 then I will declare war, otherwise I will support you in Spring 1904 to Norway. Message Syntax: WHT {[(unit)]}) Meaning: Suggest a(nother) move for the indicated unit (or all my units). In the case of his units, then this is a demand to know what these units will be ordered to do. Example: WHT (FLT NTH) Reply with: Negatively with BWX. Positively with IDO or UDO, and use WHT for the remaining units. (Try to make forward progress with these suggestions in order to avoid infinite loops.) Message Syntax: HOW unit/prov/country Meaning: Suggest a plan of attack Example: (HOW MOS) Reply with: IDO or UNO, or NOP if you don't think it is a good idea and THK, WIN, LUZ to give the reason. Message Syntax: CTE rule Meaning: I cite rule (by rulenumber) which you may have overlooked. Example: CTE IX.3 (you can't dislodge your own unit) Reply with: NOP if your program takes this rule into account, and YES if it doesn't. BWX if you can't determine the answer or if you don't care to give one. Message Syntax: DFM [int] Meaning: Discard the next (so many) message(s). Be carefully, when using this message that the messages you send will really arrive in the order you indicated. Example: DFM 2 Message Syntax: PPT {[ IDO/SND/FRM/DST ]} Meaning: I offer to become your pupppet (and I will: make the move you tell me to, send the messages you tell me to, forward all messages to you, and accept any distribution of supply centers that you think of. Any conditions on the Puppetship should be placed in a FRM or IFF. Example: IFF (DST (AUSTRIA VIE BUD TRI)) THN (FOR -80 (PPT IDO SND FRM)) : If you let me (Austria) keep my home supply centers then I will do whatever you say until the end of 1908 Example: PPT Conventions: The following behavior is expected in a puppet relationship. (1) The puppet may ask WHT for his missing orders, (2) the master supplies orders with UDO (and messages to send with SND), (3) the puppet obediantly submits the orders with SUB (and messages with SND), (4) any resulting error messages are reported to the master using THK followed possibly by another WHT command, (5) if the TME signal is sent and no orders have yet been received or if the master is eliminated or becomes CD, then the puppet choses orders as best he can. (The puppet may flag NGO in order to wait as long as possible.) Alphabetical Index [Removed to save space, available from Danny] Publisher comments: Quote is from The Devil's Dictionary by Ambrose Bierce. ****************************************************************************** To join in the fun, send your name, home address, home and work phone numbers, and country preferences to Eric_S_Klien@cup.portal.com. ****************************************************************************** Referenced By Up