News (06 Aug 2024): Das Wiki läuft jetzt auf einem neuen Server. Aufgrund eines Upgrades von PHP mussten die Wiki-Software und die DPL-Erweiterung aktualisiert werden. Bitte meldet Fehler auf der Hauptseiten-Diskussion.

Fertigkeitenvorlagencode

Aus GuildWiki
Zur Navigation springenZur Suche springen

allgemeines Format

Die Fertigkeitenvorlage ist ein Bitstream in einer Zeile, der nach der RFC3548 base64 verschlüsselt ist. Es werden + und / als 62. und 63. Zeichen verwendet.

Der Bitstream besteht aus folgender Abfolge von verschieden langen Sequenzen:

Header

Zuerst werden die Header (Typ und Version) beschrieben:

Wenn das Template vor dem Update am 5. April 2007 erstellt wurde:

  • 4 bits - immer 0, Versionsnummer

Wenn die Vorlage nach dem Update erstellt wurde:

  • 4 bits - immer 14, steht für den Vorlagentyp (14 = Fertigkeitenvorlage)
  • 4 bits - immer 0, Versionsnummer

Klassen

Jetzt werden die beiden Klassen beschrieben:

  • 2 bits - Anzahl der bits, die für die Verschlüsselung jeder Klassenid verwendet wurde (zurzeit immer 0; also ist jede Klasse mit 4 bits codiert)
  • n + 4 bits - Primärklasse (siehe unten)
  • n + 4 bits - Sekundärklasse (siehe unten)

Attribute

Nun folgen die Attribute:

  • 4 bits - Anzahl der Attribute, die kodiert werden
  • 4 bits - Anzahl der bits, die für die Verschlüsselung jeder Attributs-ID verwendet wurden

Danach für jedes Attribut:

  • n + 4 bits - Die ID des Attributs (siehe unten)
  • 4 bits - Rang des Attributs

Fertigkeiten

Jetzt die acht Fertigkeiten:

  • 4 bits - Anzahl der bits, mit denen jede Fertigkeitenid verschlüsselt wurde

Danach für jede Fertigkeit (also acht mal):

  • n + 8 bits - ID der Fertigkeit (siehe unten)

Base64 nach Oktal konvertieren

Der Windows-Rechner kann im wissenschaftlichen Modus dezimal zu oktal umrechnen. Paare von oktalen Ziffern können mit dieser Tabelle ver- und entschlüsselt werden.

00 A 10 I 20 Q 30 Y 40 g 50 o 60 w 70 4
01 B 11 J 21 R 31 Z 41 h 51 p 61 x 71 5
02 C 12 K 22 S 32 a 42 i 52 q 62 y 72 6
03 D 13 L 23 T 33 b 43 j 53 r 63 z 73 7
04 E 14 M 24 U 34 c 44 k 54 s 64 0 74 8
05 F 15 N 25 V 35 d 45 l 55 t 65 1 75 9
06 G 16 O 26 W 36 e 46 m 56 u 66 2 76 +
07 H 17 P 27 X 37 f 47 n 57 v 67 3 77 /
Messagebox info.png Hinweis: Der Taschenrechner rechnet mit Little Endian, allerdings nutzt Guild Wars Big Endian. Du musst also die binären Zahlen vorn mit Nullen auf sechs Stellen auffüllen und sie danach umdrehen.

Beispiel

Folgendes Beispiel zeigt, wie man die Vorlage AxNREp8XH/CgJwEBBAAAXmAA (Anmerkung: Dieser Vorlagencode hat den alten Header) entschlüsseln kann. Es handelt sich um ein K/A-Build mit leeren Slots.


Messagebox info.png Hinweis: Guild Wars verwendet das Big Endian-Format, und zwar sowohl zwischen Zahlenwerten und Binärarray als auch zwischen Binärarray und Base64-Wert. Base64 verwendet offiziell das Little Endian-Format. Dadurch ist es nicht möglich, normal verfügbare Methoden zur Arbeit mit Base64 zu verwenden, wenn Guild Wars-Vorlagencodes erstellt werden sollen.
Base64 code A x N R E p etc.
Dezimal 0 49 13 17 4 41 etc.
Binär 1 2 4 8 16 32 1 2 4 8 16 32 1 2 4 8 16 32 1 2 4 8 16 32 1 2 4 8 16 32 1 2 4 8 16 32 etc.
0 0 0 0 0 0 1 0 0 0 1 1 1 0 1 1 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 1 0 1 etc.
Inhalt Vorlagen-
typ
Klassen-
größe
Primäre
Klasse
Sekundäre
Klasse
Attributs
Anzahl
Attributs
Länge
Attribut 1 Attribut 1
Rang
Attribut 2 etc.
Binär 1 2 4 8 16 32 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 1 2 4 8 16 1 2 4 8 1 2 4 8 16 etc.
Dezimal 0 0 1 7 3 1 17 8 20 etc.
Bedeutung Fertigkeiten-
vorlage
0 * 2 + 4 Bits Krieger Assassine 3 Attribute 1 + 4 = 5 Bits Stärke 8 Schwertkunst etc.

Codes

Klassen-Codes

Attribut-Codes

Fertigkeiten-Codes

Achtung:

  • Gesperrte Fertigkeiten sind auf normalem Weg nicht im Spiel zu finden. Man muss dazu eine spezielle Vorlage erstellen.
  • Ungültige Fertigkeiten sind im Spiel zu finden, können aber genau wie die gesperrten Fertigkeiten nicht ausrüsten (meistens handelt es sich um Monsterfertigkeiten oder Fertigkeiten, die noch aus den Prophecies-Alpha/-Beta-Versionen stammen).
Englische Bezeichnung: Skill template format