Difference between revisions of "Land Data file"
From Worms Knowledge Base
(Object Placement Coordinates example image) |
|||
(18 intermediate revisions by 6 users not shown) | |||
Line 1: | Line 1: | ||
+ | {{ParentArticle|[[File formats]]}} | ||
+ | The Land Data File (located at Data\land.dat) contains an uncompressed version of the map, as generated by the land generator (formerly landgen.exe). Aside the map colour data and collision mask, it contains some parameters such as water height and object placement coordinates. Some 3rd-party software such as [[CutWorm]] allow customizing the game map by creating/editing this file directly. | ||
+ | |||
== File Format == | == File Format == | ||
− | + | The format differs slightly between Worms 2, versions of Worms Armaggedon, and Worms World Party. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | = | + | {| border="1" cellspacing="0" class="wikitable" |
+ | !Game | ||
+ | !Type | ||
+ | !Length | ||
+ | !Description | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW}} || int || 4 || Signature reading "LND\x1A". | ||
+ | |- | ||
+ | | {{SoftwareEx|WWPA}} || int || 4 || Signature reading "LND\x1B". | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || int || 4 || Complete file length in bytes. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || int || 4 || Width of map in pixels. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || int || 4 || Height of map in pixels. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || bool || 4 || Indestructible cavern border | ||
+ | * 0 = no border | ||
+ | * non-zero = top border | ||
+ | |- | ||
+ | | {{SoftwareEx|WA|WWP|WWPA}} || int || 4 || Water height in pixels. | ||
+ | |- | ||
+ | | {{SoftwareEx|WA|WWPA}} || int || 4 || Unknown. For WA, mostly equals the following object placement count, sometimes 255, not present in WA 3.0 and possibly other earlier versions. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || int || 4 || Number of object placement structures following, each: | ||
+ | * X position (int, 4 bytes) | ||
+ | * Y position (int, 4 bytes) | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|OW}} || int || 4 || Unknown number, often (always?) 0. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || [[Image file|IMG]] || - || Uncompressed color (8 bpp) image, being the visual foreground land. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || [[Image file|IMG]] || - || Uncompressed monochrome (1 bpp) image, being the collision mask (black determines collidable pixels). | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || [[Image file|IMG]] || - || Uncompressed monochrome (1 bpp) image, being the visual background land. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|OW}} || [[Image file|IMG]] || - || Uncompressed monochrome (1 bpp) image, small size, often (always?) empty, with unknown meaning. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || string || - || 1 byte length-prefixed string, being the absolute path to the land texture. | ||
+ | |- | ||
+ | | {{SoftwareEx|W2|WA|WWP|OW|WWPA}} || string || - || 1 byte length-prefixed string, being the absolute path to the water.dir file. | ||
+ | |} | ||
− | + | == Object Placement Coordinates == | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | [[File:Plac.png|600px|thumb|right|Map with blue dots where object placement coordinates are.]] | |
− | + | Each worm, mine, and oil barrel are randomly placed at one of these coordinates at the beginning of the game. The more excess coordinate points there are, the more possibilities there are for each object placement. Not all mines or oil barrels will be placed if there are fewer object placement coordinates than there are objects. Worms will be placed outside of the map if there are fewer object placement coordinates than there are worms or if object placement coordinates overlap each other. The game can crash if worms are placed outside of the map. | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | == | + | == Embedded Images == |
− | + | The images embedded in land.dat files are read like typical [[Image file]] data, with the following exceptions: | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | * | + | * W2 and OW have a fourth blank, monochrome image of smaller sizes than the map. |
− | * | + | * WWP and WWPA align the image data following the image size by 4 bytes (but only for the embedded images in land.dat), all other games do not. |
− | + | ||
− | + | ||
− | + | == Land.dat use for custom color maps in WormNet2 == | |
− | + | [[User:Etho|Etho]] planned on developing a new map file format for Worms World Party that players would have been able to use with the program CutWorm. The format allowed WWP players to play customized color maps with each other on WormNet2. Map makers had the option to customize all three layers that land.dat uses, the border & water setting, object placement coordinates, and water type/color settings. | |
Online and offline tests where these parameters were properly adjusted have worked successfully with no desync errors. So far, tests to increase the size of a map beyond the size 1920 x 696 have failed. | Online and offline tests where these parameters were properly adjusted have worked successfully with no desync errors. So far, tests to increase the size of a map beyond the size 1920 x 696 have failed. |
Latest revision as of 15:17, 24 December 2022
The Land Data File (located at Data\land.dat) contains an uncompressed version of the map, as generated by the land generator (formerly landgen.exe). Aside the map colour data and collision mask, it contains some parameters such as water height and object placement coordinates. Some 3rd-party software such as CutWorm allow customizing the game map by creating/editing this file directly.
Contents
File Format
The format differs slightly between Worms 2, versions of Worms Armaggedon, and Worms World Party.
Game | Type | Length | Description |
---|---|---|---|
int | 4 | Signature reading "LND\x1A". | |
int | 4 | Signature reading "LND\x1B". | |
int | 4 | Complete file length in bytes. | |
int | 4 | Width of map in pixels. | |
int | 4 | Height of map in pixels. | |
bool | 4 | Indestructible cavern border
| |
int | 4 | Water height in pixels. | |
int | 4 | Unknown. For WA, mostly equals the following object placement count, sometimes 255, not present in WA 3.0 and possibly other earlier versions. | |
int | 4 | Number of object placement structures following, each:
| |
int | 4 | Unknown number, often (always?) 0. | |
IMG | - | Uncompressed color (8 bpp) image, being the visual foreground land. | |
IMG | - | Uncompressed monochrome (1 bpp) image, being the collision mask (black determines collidable pixels). | |
IMG | - | Uncompressed monochrome (1 bpp) image, being the visual background land. | |
IMG | - | Uncompressed monochrome (1 bpp) image, small size, often (always?) empty, with unknown meaning. | |
string | - | 1 byte length-prefixed string, being the absolute path to the land texture. | |
string | - | 1 byte length-prefixed string, being the absolute path to the water.dir file. |
Object Placement Coordinates
Each worm, mine, and oil barrel are randomly placed at one of these coordinates at the beginning of the game. The more excess coordinate points there are, the more possibilities there are for each object placement. Not all mines or oil barrels will be placed if there are fewer object placement coordinates than there are objects. Worms will be placed outside of the map if there are fewer object placement coordinates than there are worms or if object placement coordinates overlap each other. The game can crash if worms are placed outside of the map.
Embedded Images
The images embedded in land.dat files are read like typical Image file data, with the following exceptions:
- W2 and OW have a fourth blank, monochrome image of smaller sizes than the map.
- WWP and WWPA align the image data following the image size by 4 bytes (but only for the embedded images in land.dat), all other games do not.
Land.dat use for custom color maps in WormNet2
Etho planned on developing a new map file format for Worms World Party that players would have been able to use with the program CutWorm. The format allowed WWP players to play customized color maps with each other on WormNet2. Map makers had the option to customize all three layers that land.dat uses, the border & water setting, object placement coordinates, and water type/color settings.
Online and offline tests where these parameters were properly adjusted have worked successfully with no desync errors. So far, tests to increase the size of a map beyond the size 1920 x 696 have failed.