Changes between Version 1 and Version 2 of SC2ReplayFormat


Ignore:
Timestamp:
Mar 19, 2010, 7:57:09 PM (11 years ago)
Author:
mseifert
Comment:

Added documentation of replay.info

Legend:

Unmodified
Added
Removed
Modified
  • SC2ReplayFormat

    v1 v2  
    88 * Chat log
    99 * Map preview
     10
     11The following is a documentation of SC2Replay files.
     12
     13== File Structure ==
     14SC2Replay files contain an mpq archive with 8 files. The archive starts at an offset of 1024 bytes.
     15The types used in this documentation are:
     16||'''Type'''||'''Description'''||
     17||int8||A single byte.||
     18||int16||Two bytes.||
     19||int32||Four bytes.||
     20||string||One byte that represents the length of the following string. The string has as many characters, as the byte's value||
     21||bytesX||A number of bytes whose functions and grouping are unknown, where X represents the number of bytes.||
     22
     23All types are Big-Endian.
     24
     25=== replay.info ===
     26This file contains information about the players and the game in general. All offsets are relative to the described block, unless specified otherwise.
     27
     28The first part of this file simply stores the player names.
     29
     30||'''Offset'''||'''Type'''||'''Description'''||
     31||0x00||int8 ||Number of player names that are contained in this block. This value usually is 0x10 i.e. 16.||
     32
     33Now, for each player, the entry looks the following:
     34||'''Offset'''||'''Type'''||'''Description'''||
     35||0x00||string||Player name.||
     36||stringLength||bytes5||Unknown.||
     37
     38The unknown values always seem to be 0, except for the last two players. The name of the second last player is always an empty string, the name of the last player is always "Dflt".
     39
     40The player block is followed by:
     41||'''Offset'''||'''Type'''||'''Description'''||
     42||0x00||bytes9||Unknown. Probably something that has to do with the map.||
     43||0x09||string||Some kind of checksum or hash. Usually 76 bytes long (75 without the length indicator of the string).||