dgcor / DGEngine

An implementation of the Diablo 1 game engine
Other
243 stars 30 forks source link

Diablo 2 DT1 image decoder #29

Closed ghost closed 4 years ago

ghost commented 5 years ago

To finish loading all of Diablo 2's game assets (that matter) a DT1 image decoder needs to be written that implements the ImageContainer interface, similar to the CEL, CL2, DC6 and DCC decoders already implemented.

From what I read, DT1 contains sub images that are used to create bigger images, sort of a mix between Diablo's CEL files and MIN files.

This issue is to track progress on such a decoder to add to DGEngine. To load Diablo 2 maps, you need a DS1 decoder too, but we don't really need one, since once DGEngine can load level tiles, we can create maps using Tiled (The Diablo maps currently in the repo were done using Tiled).

I'm not in a hurry to implement this myself, but if someone feels they can write one based on one of the few existing implementations out there (Riiablo, win_ds1edit), please do :)

Writing a decoder without having a clean implemantation available in C++ takes too much time, since it requires reading the various technical documents on the format and testing to verify it's working correctly for all tiles.

Once a working decoder is written, I'll make the necessary changes to have maps loaded.

ghost commented 4 years ago

already merged. Thanks @grantramsay