War3map.w3iFrom Source Peek WikiThis page needs work yet! Please edit it and remove the NeedsWork template tag. You may find more pages which need work here
It contains some of the info displayed when you start a game.
Reign of Chaos Format
note 1:
Flags
Forces Flags
Ground Types
Player Data
Forces Data
Frozen Throne Formatint: file format version = 19 (and 25 thx PitzerMike) int: number of saves (map version) int: editor version (little endian) String: map name String: map author String: map description String: players recommended float[8]: "Camera Bounds" as defined in the JASS file int[4]: camera bounds complements* (see note 1) (ints A, B, C and D) int: map playable area width E* (see note 1) int: map playable area height F* (see note 1) *note 1: map width = A + E + B map height = C + F + D int: flags 0x0001: 1=hide minimap in preview screens 0x0002: 1=modify ally priorities 0x0004: 1=melee map 0x0008: 1=playable map size was large and has never been reduced to medium (?) 0x0010: 1=masked area are partially visible 0x0020: 1=fixed player setting for custom forces 0x0040: 1=use custom forces 0x0080: 1=use custom techtree 0x0100: 1=use custom abilities 0x0200: 1=use custom upgrades 0x0400: 1=map properties menu opened at least once since map creation (?) 0x0800: 1=show water waves on cliff shores 0x1000: 1=show water waves on rolling shores 0x2000: 1=unknown 0x4000: 1=unknown 0x8000: 1=unknown char: map main ground type Example: 'A'= Ashenvale, 'X' = City Dalaran int: Campaign background number (-1 = none) String: Map loading screen text String: Map loading screen title String: Map loading screen subtitle String: unknown int: Map loading screen number (-1 = none) (v25): String: (? need some investigations, should be the path of the custom loading screen) String: Prologue screen text String: Prologue screen title String: Prologue screen subtitle String: unknown float: unknown (fog z start?) float: unknown (fog z end?) float: unknown (fog intensity?) byte[10]: ? (maybe some strings?) int: unknown (-1) int: max number "MAXPL" of players array of structures: then, there is MAXPL times a player data like described below. int: max number "MAXFC" of forces int: Foces Flags 0x00000001: allied (force 1) 0x00000002: allied victory 0x00000004: share vision 0x00000010: share unit control 0x00000020: share advanced unit control int: unknown (usually -1) array of structures: then, there is MAXFC times a force data like described below. int: if 0 it means that we reach the end of the w3i if it's non-zero, the following bytes define special settings for the map (techtree, upgrades,...) Players data format: int: unknown int: player type 1=Human, 2=Computer, 3=Neutral, 4=Rescuable int: player race 1=Human, 2=Orc, 3=Undead, 4=Night Elf int: 00000001 = fixed start position String: Player name float: Starting coordinate X float: Starting coordinate Y int: ally low priorities flags (bit "x"=1 --> set for player "x") int: ally high priorities flags (bit "x"=1 --> set for player "x") Forces data format: String: Force name int: unknown int: unknown int: unknown |