Closed Tarek-Hasan closed 13 hours ago
I would also like this feature. I looked into the source archive of the color version but could not find any BMP files, and the data is in an unknown DAT format... Do you know how to get the sprites of the color version?
Adding the color version is not a difficult task fortunately. However in-game switching can be a bit difficult, but I will have a look when I have the time.
The data file should be in the standard allegro format, I guess. So can be extracted.
The data file should be in the standard allegro format
You're probably right, the data file names match those in version 1.2.1 which uses Allegro4. According to the online docs, these DAT files can be extracted using the dat tool or the grabber. However I was unable to use either tool to extract the DAT files, even using versions from both Allegro 4.3 and 4.4... I was hoping you could give me some guidance here as I'm planning on doing my own color conversion.
The files can be extracted fine (just tried it), you need to provide the password "no_ripping_please". However, doing an own color conversion is a bit complicated with these files, since the bitmaps use indexed colors to a shared palette. There are likely tools to work with this, but I just decided to apply the palette to every image and thus make it full color when doing the SDL conversion. That being said, easiest is by starting with the files provided here, since the SDL port uses full color everywhere.
you need to provide the password "no_ripping_please"
Great, thank you very much.
Here are the color bitmaps as extracted from data.dat: data_dat.zip
And here's the SDL port data with the color bitmaps added: data.zip
The data.zip file can be used as-is with the current SDL port of Alex 4, however some fonts will retain the old colors. To fix these fonts, re-compile Alex 4 after applying the following patch:
--- a/src/sdl/port.c
+++ b/src/sdl/port.c
@@ -32,10 +32,10 @@
// original colors
SDL_Color _palette[] = {
{0x3C, 0x8E, 0xAA, 0xFF}, // (white)
- {0x0C, 0x45, 0x00, 0xFF}, // (red)
- {0x51, 0x7D, 0x45, 0xFF}, // (lime)
+ {0x2C, 0x2C, 0x2C, 0xFF}, // (red)
+ {0x1C, 0x65, 0x20, 0xFF}, // (lime)
{0x9A, 0xB6, 0x8A, 0xFF}, // (yellow)
- {0xDF, 0xEF, 0xD3, 0xFF}, // (blue)
+ {0xFF, 0xFF, 0xFF, 0xFF}, // (blue)
{0xFF, 0x00, 0x00, 0x99} // red
};
You can press 3 in the main menu to enable color support for now. This will be saved in the config file.
Hi, Sorry to bother you. First, thanks for continuing this classic project. There's a color version of Alex4 available in this website and here's the source code.
Please, add color version of data to the game. An option to switch between color and monochrome view would be nice.