DamExchange - GAMEREQ
GAMEREQ bericht
Dit bericht kan uitsluitend door de Initiator worden verstuurd en geeft aan dat een partij wordt gestart.
1 byte 2 bytes 32 bytes 1 byte 3 bytes 3 bytes 1 byte 1 byte 50 bytes
header versie naam Initiator kleur Volger denktijd aantal zetten beginstand kleur aan zet positie
header type bericht, altijd 'R' (hoofdletter)
versie versie van het DamExchange protocol, altijd '01'
naam Initiator de naam van het programma dat de message stuurt; de naam moet bestaan uit precies 32 posities; indien de naam korter is dan 32 posities dan aan de rechterkant aanvullen met spaties (geen '\0' character gebruiken); de naam mag niet met een spatie beginnen
kleur Volger de kleur (wit of zwart) waarmee de Volger gevraagd wordt deze partij te spelen; moet 'W' of 'Z' zijn (in hoofdletters)
denktijd de tijd in minuten die elke kleur voor de gehele partij heeft, de instelling van de wedstrijdklok dus; moet gespecificeerd worden in 3 posities; met voorloopnullen (character '0') indien het aantal minuten kleiner dan 100 is; indien de denktijd van één der spelers overschreden is mag de partij door de Initiator of Volger beëindigd worden
aantal zetten het aantal zetten voor de gehele partij; moet gespecificeerd worden in 3 posities; met voorloopnullen indien het aantal zetten kleiner dan 100 is; na bereiken van het aantal zetten mag de partij door de Initiator of Volger beëindigd worden ongeacht of er reeds een duidelijke uitslag van de partij is; het aantal zetten kan ook als '000' gespecificeerd worden, in dat geval zit er geen limiet aan het aantal te spelen zetten
beginstand 'A': indicatie dat wordt gestart met de normale aanvangsstand (met wit aan zet), in dit geval worden de velden kleur aan zet en positie niet meegestuurd
'B': indicatie dat kleur aan zet en positie wel worden meegestuurd en dat die de beginstand voor de te spelen partij aangeven
kleur aan zet 'W' als wit aan zet is in positie
'Z' als zwart aan zet is in positie
positie 50 bytes die voor de bordvelden 1 tot en met 50 aangeven welk stuk op het bordveld staat; de mogelijke stukken zijn:
'e': leeg veld
'w': witte schijf
'z': zwarte schijf
'W': witte dam
'Z': zwarte dam
R01Tornado voor Windows 4.0 W060065A
Tornado start een partij vanuit de aanvangsstand waarbij hij zelf met zwart speelt. Er wordt gespeeld met 65 zetten in een uur.
Verwerking bij ontvangst (door de Volger) van een GAMEREQ bericht
Ontvangst (door de Volger) van een GAMEREQ bericht wordt herkend aan de header (hoofdletter 'R').
De versie moet gecontroleerd worden, indien het hoger is dan '01', dan is sprake van een nieuwere versie van DamExchange en moet een GAMEACC bericht worden teruggestuurd met acceptatie code 1. Een lager nummer dan '01' bestaat niet.
De naam Initiator is ter informatie en kan bijvoorbeeld gebruikt worden bij het opslaan van gespeelde partijen.
Als de kleur Volger 'W' resp. 'Z' is, speelt de Volger met wit resp. zwart.
De denktijd en het aantal zetten worden door de Volger gebruikt bij het bepalen van de rekentijd per zet.
De beginstand indicator geeft aan met welke stand op het bord gestart wordt.
Indien deze 'A' is, wordt gestart met de normale aanvangsstand (waarbij wit dus als eerste aan zet is). De velden kleur aan zet en positie komen in dit geval niet in het GAMEREQ bericht voor.
Indien deze 'B' is, wordt gestart met kleur aan zet in de beginstand die wordt aangegeven door positie.
Na verwerking van het GAMEREQ bericht antwoordt de Volger met een GAMEACC bericht.
Van het veld beginstand in samenhang met het veld kleur Volger hangt af of de Initiator of de Volger als eerste een MOVE bericht verstuurt na het GAMEACC bericht.