The Dink Network

The Ultimate Dink File Format FAQ

August 8th, 2014
v1.00
Score : 5.5 fair
peasantmb.gif
yeoldetoast
Peasant They/Them Australia
LOOK UPON MY DEFORMED FACE! 
The reason this file is so highly-rated is because not many people really bothered to check to see if it was accurate or not. Guess what? It isn't.

For a long time before the Dink source was released one had to reverse-engineer the game data by changing a value in DinkEdit then comparing the resulting file with what was there previously if they wanted to have any fun with map.dat/hard.dat/dink.dat. It was only after the source was released that one was able to understand the files properly as there are quite a lot of unused features that happen to be in them. This file attempted to demystify the map settings so that others might be able to make tools of their own. Unfortunately a lot of what WC wrote is either wrong (factually as well as in terms of grammar and spelling) or poorly explained.

First of all is a breakdown of the contents of Hard.dat. The individual tiles are described along with a diagram that appears to illustrate how the tiles are formatted in the file. This is partially correct, as each tile starts from the top left rather than in the bottom-right as is usually the case. However if one tries to follow any further they'll end up with their tiles coming out sideways as each byte changes the Y value and not the X value as is indicated. The row of "junk data" he refers to is not at the end of each tile, it is actually comprised of every fiftieth byte or so.

Afterwards we learn about Dink.dat and the data it contains. The oversights here may not be WC's fault but the "Smallwood" field is actually 20 bytes long, not 24, and the location container actually holds 769 entries because Seth was kind of weird about zeroes for some reason. In fact this is consistent for the rest of the file's description; those four "junk bytes" are actually indices that are never edited. WC repeatedly claims that each field is two bytes long when even a casual glance in a hex editor will immediately show that each value obviously takes up FOUR bytes.

Finally map.dat, the largest of the files is explained in detail with the tiles described first of all. Strangely enough WC claims that he doesn't know what alt_hard is for and that it's never used when any casual modder will be able to explain that alt_hard tiles are those stamped onto map tiles that aren't the default for that particular tile. Next up are the sprites of which there are one hundred plus their attributes which are listed twice with descriptions for each, except for "base hit" which took me a while to figure out as this omission completely ruins the offsets of the attributes after it if you leave it out. The sizes of the unused script fields are also not given which would mean that most would assume them to be consistent with his claim of "one byte per field" (which again is actually four bytes).

Overall, the most bizarre part in all of this is that WC helped write WinDinkEdit which is supposed to edit all of these things accurately. In terms of the document's title, a lot of Dink files are left out such as save files, dink.ini, and dir.ff files which means the title doesn't really fit. Considering the Dink engine source was released not too long after this document was written I don't understand why WC never went back and fixed it up. I do have to give him some points for effort though as this preceded everything else.
August 25th, 2003
v1.00
Score : 9.0 exceptional
custom_simon.gif
SimonK
Peasant He/Him Australia
 
This file has useful information for those that understand programming and want to mess around with accessing the informationi in the dink.dat, hard.dat and map.dat files. As I am not a programmer, I don't fully understand everything mentioned here, heck, probably not half of it, but I can recognise that it is useful to those that do.

Useful for programmers.
December 31st, 2002
v1.00
Score : 9.0 exceptional
fish.gif
Binirit
Peasant She/Her
 
I was just about to post a message because I wanted to know what the dink.dat, hard.dat and map.dat were actually about and why they were all three needed for every D-mod. And then I saw this file – and had all the answers immediately!

This file explains real clearly what the different .dat files are, what there format is, as well as specific information needed to edit or create an utility. Even if you are not planning to do so, and even if you do not know that much about programming, this file is still very interesting and informative.
December 4th, 2002
v1.00
Score : 9.7 exceptional
stonegiant.gif
Wow..

This is a very informative file, and gives the user the required information to edit map.dat, dink.dat and hard.dat from any dink mod.

It also gives enough detail for people to write several utilities, like the sprite replacer, editors, and the like.

WC explains in depth the contents of each file, byte by byte, and points out the rather wierd "features" of this map format.

I found this file very usefull, and i would say that it is an essential item in the inventory of anyone who is thinking of creating an editor or utility which will have to read/write any of the three main .dat files in Dink SMallwood.

Good job WC,