Dies ist eine alte Version des Dokuments!
Inhaltsverzeichnis
Protokolle
Muds benutzen ein Protokoll Namens ' telnet' für die Hauptverbindung. Das entsprechende Programm für solch eine Verbindung heißt oft auch einfach 'telnet'. Diese telnet Programme sind zwar generell geeignet, um Avalon zu spielen, aber oft sehr spartanisch. Wir empfehlen deswegen die Benutzung eines speziellen Mud-Clients. Neben Bequemlichkeiten wie einer gesonderten Eingabezeile unterstützen viele dieser Clients auch Erweiterungen des telnet Protokolls. Besonders hervorzuheben sind Kompression (MCCP) und Verschlüsselung (TSL/SSL).
Weiterhin kann Avalon sogenannte out-of-band Informationen an den Client schicken, der diese dann aus dem normalen Spielgeschehen ausfiltert (nicht darstellt: deswegen out-of-band) und dem Nutzer bereitstellt um sie zum Beispiel in einem abgetrennten Bereich darzustellen. Diese Informationen sind meist sehr kurz und werden im Folgenden 'tags' genannt. Diese haben einen Namen, der angibt worum es geht, und einen Wert. Ein Beispiel ist „Avalon.TP“ mit einer Zahl als Wert, was angibt, wieviel Trefferpunkte ein Spieler im Moment hat. Meist werden diese Werte nur gesendet, wenn sie sich ändern. Dafür ist jedoch keine Eingabe notwendig.
Verschiedene Protokolle können sich in den Tagnamen unterscheiden, oder manche Tags gar nicht implementieren. Deswegen gibt es hier eine Übersicht über die Tags, die Avalon im Moment senden kann. Da diese Erweiterung recht neu ist, wird es aber hier öfter zu Änderungen kommen.
ATCP
| Beschreibung | Tag | ||
| Raumkurzbeschreibung | Room.Brief | ||
| Raumgegend | Avalon.Area | ||
| Bez. bei besonderen Orten | Avalon.Site | ||
| Raumausgänge | Avalon.Exits | ||
| Dunkelheit | Avalon.Dunkel | ||
| aktuelle Trefferpunkte | Avalon.TP | ||
| aktuelle Zauberpunkte | Avalon.SP | ||
| aktuelle Aktionspunkte | Avalon.AP | ||
| aktuelle Manapunkte | Avalon.MP | ||
| maximale Trefferpunkte | Avalon.MAXTP | ||
| maximale Zauberpunkte | Avalon.MAXSP | ||
| maximale Aktionspunkte | Avalon.MAXAP | ||
| maximale Manapunkte | Avalon.MAXMP | ||
| Erfahrungspunkte | Avalon.EP | ||
| Spieleralter | Avalon.Alter | ||
| Spielername | Avalon.Name | ||
| kurze Spielerbeschreibung | Avalon.VollName | ||
| Spielergilde | Avalon.Gilde | ||
| Spielerzünfte | Avalon.Zuenfte | ||
| Gruppenname | Avalon.Gruppe | ||
| Spielerlevel | Avalon.Level | ||
| Portfolio | Avalon.Portfolio | ||
| Hunger | Avalon.Hunger | ||
| Durst | Avalon.Durst | ||
| Hoehe | Avalon.Hoehe | ||
| Kanalmeldungen | Avalon.Channel | ||
| Sagemeldungen | Avalon.Comm | ||
| Redemeldungen | Avalon.RComm | ||
| Eindeutige Raum-ID | Avalon.RoomID | ||
| Grafikstatus | Avalon.GrafikVermeiden | ||
| Inventar Rein | Avalon.InventarRein | ||
| Inventar Raus | Avalon.InventarRaus | ||
| Behälter Rein | Avalon.BehaelterRein | ||
| Behälter Raus | Avalon.BehaelterRaus | ||
| gefuehrte Waffe | Avalon.Gefuehrt | ||
| gesenkte Waffe | Avalon.Gesenkt | ||
| angezogene Ruestung/Kleidung | Avalon.Angezogen | ||
| ausgezogene Ruestung/Kleidung | Avalon.Ausgezogen | ||
| Kampf | Avalon.Kampf | ||
| zeigt an, wen man selbst(!) | Avalon.Angegriffen | ||
| zeigt an, wen man selbst(!) getötet hat | Avalon.Getoetet | ||
| zeigt dies für Gruppenmitglieer an | Avalon.GruppeGetoetet |
Zuschaltbare Funktionen
ava_set_channel 1 schaltet Avalon.Channel ein welches die Kanalmeldungen über ATCP ausgibt.
ava_set_comm 1 schaltet Avalon.Comm ein, womit man die Sagemeldungen über ATCP bekommt.
ava_set_rcomm 1 schaltet Avalon.RComm ein, womit man die Redemeldungen über ATCP bekommt.
ava_set_rsoul 1 schaltet Avalon.RSoul ein und gibt die Ferngefühle über ATCP aus.
ava_set_mapper 1 schaltet Avalon.Exits ein und gibt die Ausgänge des aktuellen Raums über ATCP aus.
Anfragen über ATCP ans Mud:
ava_req_iid WAS
Dies parsed <WAS> wie im Spiel (zb "mich") und schickt zurueck:
Avalon.Instance WAS IID
IID ist die Instance-ID und ist einmalig fuer dieses Objekt und
bleibt ueber Logouts hinweg erhalten.
WAS kann mehrere Woerter enthalten.
Wenn <WAS> == "hier" (ohne die Hochkommata) wird der aktuelle Raum
verwendet.
ava_req_dbid WAS
Aehnlich zur Instance-ID wird hier die Datenbank-ID angefragt.
Die Antwort des Servers ist:
Avalon.Database WAS DBID
Die Database-ID ist nicht fuer jedes Objekt unterschiedlich, sondern
nur fuer aehnliche Objekte. Sie ist ebenfalls persistent, also
ueber Logouts erhalten.
Wenn <WAS> == "hier" (ohne die Hochkommata) wird der aktuelle Raum
verwendet.
ava_req_inv WAS
Gibt eine Liste von IIDs zurück aller Gegenstände in WAS
Die Antwort des Servers ist:
Avalon.Inv WAS LISTE
wobei LISTE aus den Einträge:
IID "Name"
besteht. Beachte as Leerzeichen
ava_req_container WAS
Gibt eine Liste von IIDs zurueck aller Container in WAS
(Container haben wiederum Inhalt)
Die Antwort des Servers ist:
Avalon.Container WAS LISTE
ava_req_update
Veranlasst das (erneute) Senden der aktuellen ATCP Werte durch den Server.
ATCP2 / GMCP
ATCP2/GMCP ist in Avalon noch nicht implementiert. Die nachfolgende Tabelle ist nichts weiter als der Vorschlag eines einzelnen Adeligen (Knarf).
| Beschreibung | Tag | ||
| Raumkurzbeschreibung | Room.Info[„name“] | ||
| Raumgegend | Room.Info[„area“] | ||
| Raumausgaenge | Room.Info[„exits“] | ||
| Spielername | Char.Base[„name“] | ||
| kurze Spielerbeschreibung | Char.Base[„fullname“] | ||
| Spielerrasse | Char.Base[„rasse“] | ||
| Spielergilde | Char.Base[„gilde“] | ||
| Spielerzünfte | Char.Base[„zuenfte“] | ||
| Grafikstatus | Char.Base[„Avalon.GrafikVermeiden“] | ||
| Spieleralter | Char.Age | ||
| aktuelle Trefferpunkte | Char.Vitals[„tp“] | ||
| aktuelle Zauberpunkte | Char.Vitals[„zp“] | ||
| aktuelle Aktionspunkte | Char.Vitals[„ap“] | ||
| aktuelle Manapunkte | Char.Vitals[„mp“] | ||
| maximale Trefferpunkte | Char.MaxVitals[„tp“] | ||
| maximale Zauberpunkte | Char.MaxVitals[„zp“] | ||
| maximale Aktionspunkte | Char.MaxVitals[„ap“] | ||
| maximale Manapunkte | Char.MaxVitals[„mp“] | ||
| Erfahrungspunkte | Char.Status[„ep“] | ||
| Spielerlevel | Char.Status[„level“] | ||
| Gruppenname | Char.Gruppe[„name“] | ||
| Gruppenname | Char.Gruppe[„members“] |