Skill template format

From Guild Wars Wiki
Jump to navigationJump to search

This page describes the format of the skill template string. The information would be useful for a programmer working on tools that utilize these strings but have no significance for the average player.

Base 64[edit]

The skill template file consists of a single string such as ABJRkncAAAoVAAAAAAAA. This string is Base64 encoded. The following format assumes that the Base64 string has been decoded into a binary array which should be interpreted in the lowest-bit-first order.

Type/version header[edit]

The start of the template is a small header that specifies the template type and version.

For templates generated prior to April 5, 2007, the header contained:

  • 4 Bits - Version Number - 0

For templates generated after April 5, 2007, the header contains:

  • 4 Bits - Template Type - 14 (0xE) for Skill Template
  • 4 Bits - Version Number - 0

Professions[edit]

Next is a section describing the primary and secondary professions that are used in this template.

  • 2 Bits - A code controlling the number of encoded bits per profession id, decoded as follows: bits_per_profession_id = code * 2 + 4 (e.g. 0 = 4 bits per profession, 1 = 6 bits per profession, etc.)
  • n Bits - Primary Profession (see profession index)
  • n Bits - Secondary profession (see profession index)

Attributes[edit]

Next is a section containing the attributes.

  • 4 Bits - Count of attributes
  • 4 Bits - A code controlling the number of encoded bits per attribute id, decoded as follows: bits_per_attribute_id = code + 4

Then, for each attribute:

Skills[edit]

Next the template contains the ids of each of the eight skills.

  • 4 Bits - A code controlling the number of encoded bits per skill id, decoded as follows: bits_per_skill_id = code + 8

Then, for each skill:

Tail[edit]

  • 1 Bit - Always zero, non-optional.

Profession index[edit]

The following list gives an index number corresponding to a character's profession:

Attribute index[edit]

The following list gives an index number corresponding to an attribute:

Skill index[edit]

The list gives an index number corresponding to a skill. Please visit this page for the list of skills by their skill id.

See also[edit]