Wayforward *.TS4/*.TS8 (NDS?)

Textures, recreate headers, conversions, algorithms and parsing of image files
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Wayforward *.TS4/*.TS8 (NDS?)

Post by LolHacksRule »

I'm trying to datamine a game from Wayforward, being Looney Tunes: Duck Amuck for the Nintendo DS, most of the textures aren't in archives, but and I suspect they are raw in the following files. I think the header has information about the height and width but I'm not too sure or even know the compression format. Any advice on these files?
grandshot
Posts: 42
Joined: Mon Jun 07, 2021 8:20 pm

Re: Wayforward *.TS4/*.TS8 (NDS?)

Post by grandshot »

Seems like paletized format, but simple substitution of values from tables (which looks like rgba data) by their IDs from Info structs cannot give any result approximate to textures.
Template below:

Code: Select all

struct HEADER {
    int16 flag; // 1 for ts8 and 0 for ts4
    uint16 numInfo; //palette ids??
    uint32 numTables; //palettes?
};

struct INFO {
    uint16 tableId[4]; // sometimes can be biggest then numTables. Some bits interprets as flags?
};

struct TABLE {
    if( header.flag ) ubyte value[64]; //64 bytes table for ts8
    else ubyte value[32]; //and 32 for ts4
};

HEADER header;
INFO info[header.numInfo];
TABLE table[header.numTables];
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Wayforward *.TS4/*.TS8 (NDS?)

Post by LolHacksRule »

Thank you so much, I tried TileMolester but I still cannot read the images.