introducing … ATCP

27. Juli 2010

Letztens habe ich meine alten Blogeinträge nachgelesen und es ist schon komisch, wie ausführlich ich im letzten Jahr über wirkliche Kleinigkeiten berichtet habe (hey, aber sie erschienen mir zu dem Zeitpunkt sooo wichtig!) und, was ich dieses Jahr für grosse Umbauten unterschlagen habe  …

Aber letztendlich ist es auch eine Zeitfrage.

Also.

Eines der Dicken Dinger, die Avalon jetzt kann heisst ATCP.

Das ist ein weiteres von diesen ominösen MUD Protokollen. Es „kaschiert“ zusätzliche Daten, die der Client und das MUD miteinander austauschen so dass der Spieler sie nicht auf dem Bildschirm sieht (*). Ausserdem definiert ATCP gleich einige grundlegende „Signale“, die Client und MUD miteinander austauschen und diese werden praktischerweise von den grossen MUD-Clienten unterstützt und reagieren automatisch darauf. Andere „Signale“ kann man nach belieben definieren. (**)

Das führt dazu, dass zB mit angeschaltetem ATCP Mudlet-Benutzer Zeitungsartikel in einem eigenen (modalem!) Fenster verfassen können. Ausserdem bekommt der Client vom MUD alle Trefferpunkte, Zauberpunkte, etc -Änderungen sofort mitgeteilt. Skripte können das abfangen und verarbeiten und zum Beispiel optisch aufbearbeiten.

Man kann so auch „technische“ IDs von Objekten, mit denen Skripte diese Objekte eindeutig ansprechen können, oder Auflistung von Rucksäcken (oder anderen Behältern) in einem einfach zu parsendem Format abfragen. Diese technischen IDs von Objekten, die einmalig für ein Objekt, aber persistent sind (das heisst für immer, immer, immer gleich bleiben) heissen bei uns „Instance IDs“ oder IIDs. (***)

Im Frühjahr war ich in diesem Bereich recht aktiv und habe die ersten Features rund um ATCP fertiggestellt. Manche Spieler benutzen ATCP auch bereits seitdem fleissig. Allerdings sehe ich unsere Implementierung als noch nicht-ganz-fertig an und inzwischen ist meine ATCP Entwicklung und das Feedback, was ich bekam, etwas eingeschlafen, daher hoffe ich darauf, die Begeisterung darüber mit diesem Artikel wieder zu beleben.

Wer mehr über ATCP in Avalon erfahren möchte, der möge „hilfe ATCP“ tippen, worin ich immer den aktuellen Entwicklungsstand festgehalten habe.

Wer möchte, dass die Entwicklung dazu weitergeht, der könnte doch mir hier dazu etwas kommentieren oder Meldungen im MUD absetzen. Wie schon in einem der anderen Avalon-Blogs geschrieben wurde, ists schön Kommentare auf seine Artikel zu bekommen. Das stimmt einfach. Möchte ich auch mal haben!

Bitte beachtet, dass ihr bis auf weiteres „term atcpstart“ eingeben müsst, um den ATCP handshake zu starten. Wenn ich den Eindruck habe, dass Avalons ATCP Implementation fertig ist, wird das letztendlich automatisch passieren.

xt

(*): wie eigentlich alle MUD-Protokoll-Aufsätze. ATCP hat den Vorteil, dass es von den big playern im MUD business unterstützt wird – daher die Unterstützung in den grossen Clienten.

(**): Die von Avalon definierten Zusätze, haben alle ava im Prefix. Siehe die Hilfsseite.

(***): IIDs heissen sie deshalb, weil alle anderen in der Szene üblichen Namensgebungen – meistens irgendwas mit „unique“ – zu einfach mit anderen Bezeichnungen zu verwechseln waren, die wir intern verwenden. Programmierer mögen da an die UIDs, EUIDs vom Driver oder die unique-id von Objekten denken, die wir bisher kannten. Aber ich finde den Namen „Instanz ID“ wunderbar passend, also bin ich zufrieden.