Where's My Water? 2 & Where's My Perry? .waltex file formats

Extraction and unpacking of game archives and compression, encryption, obfuscation, decoding of unknown files
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Hey!

I'm wanting help with Disney's .waltex file format in the Where's My __ mobile puzzle game series.
From my experience, I've been able to get images easy enough through converting an apk to a zip for the original Where's My Water?. All images there are in readable formats, such as .webp, .png and .jpg.
The other games (which includes Where's My Water? 2 and Where's My Perry?) have some assests in .webp, but many are in .waltex file format. I really have no idea how this format works.
I have done some research and some messing around with the apks. I've found one site which has some information on it, but information about this format is fairly scarce. Here is the site with some info --> https://forum.starling-framework.org/d/14854-assetmanager-and-encrypted-graphics/3. The Where's My Perry? apk I used also has a file called waltex.bin, and when unzipped this file has files that are also in .waltex format.
These files (whether in .waltex or .webp) also have duplicates of themselves in different qualities. For example, in Where's My Water? 2 the objects file has "objects.waltex", "objects-HD.waltex" and "objects-TabHD.waltex". TabHD is the best quality, though is not there for every game, and when not available HD is the best.
If anyone could help with decrypting these graphics I would greatly appreciate it! (Example file https://drive.google.com/file/d/1D1h8O529Zknt1zFwErNHc_Extypm2qU0/view?usp=sharing)

Edit: There are also .imagelist files. I converted these to .txt files and it contains information about the sprites inside the .waltex file. Interestingly the sprite information ends in .png
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats (Walt [Disney] TEXture)

Post by LolHacksRule »

I was also looking into cracking these proprietary Walt Disney TEXture formats. These aren't encrypted in any way and they appear to be raw RGBA8888 compressed textures, NOT pre multiplied (outputs complete black), with a raw texture viewer like PVRTexTool, you can open these files as raw image data and have to do some guesswork to get the image sizes. This sample file appears to be 2048x2048 (or 1024x4096). Please send me a smaller file so I can verify if the white background is supposed to exist.

UPDATE: 1024x4096

Sample of this file in 2048x2048:
Image
Last edited by LolHacksRule on Mon Sep 28, 2020 7:42 pm, edited 2 times in total.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Wow! Thanks for that. Here is the link for object-HD.waltex

https://drive.google.com/file/d/1191deA ... sp=sharing
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

Looks like the exact same texture but in 1024x1024 or (1024x2048?).

UPDATE: 512x2048

Texture types:
-: Low end Android
-HD: HD phone (Modern Android/iOS?)?
-TabHD: HD tablet (iPad?)?
Last edited by LolHacksRule on Mon Sep 28, 2020 7:41 pm, edited 1 time in total.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

With your info I've used this site (https://rawpixels.net/) and with the write fields filled out and boxes ticked and unticked you can get a transparent atlas of the sprites. As you say, the size has to be tweaked.
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

Wait a site like that exits? I thought you needed PC software...
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

From my testing so far, on Objects-HD and Objects-TabHD the height seems to be about 1.95 times bigger than the width, though I'm still yet to test that with other files.
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: New Where's My Water entries *.waltex (WALaber TEXture)

Post by LolHacksRule »

I found a repo "somewhere" from most likely a dev, having part of the game (Walaber) engine and the code that loads AND creates these files and turns its not a WALT (Disney) Texture (my guess), it's a WALaber TEXture. Other "Where's my" entries also use this format.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

The program online I used only seems to work some of the time. For example, on objects-HD for Where's My Perry?, the colours don't come out quite right and when made transparent the sprites also become partially transparent. Here's the file: https://drive.google.com/file/d/1c6mAH8 ... sp=sharing
Do you know why this may be happening and how it could be fixed?
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

Hmm, this texture's kinda different, it's using RGBA4444 with a definite size of 2048x2048, I'm not sure about transparency problems but the improper coloring can be fixed by changing the texture format, one more thing is that it is also little endian.

Image

Code: Select all

Header:
   4bytes: WALT (Magic)
   1byte: 01 (Version, only seen 01)
   Texture format: 00 = RGBA8888, 03 = RGBA4444
   2bytes: Texture width (endian dependent)
   2bytes: Texture height (endian dependent)
   6bytes: PADING (spelled incorrectly)
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Thank you so much for your help!
What did you change the Pixel Format and Predefined format to (if you used the same site)?
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

Code: Select all

Predefined format: RGB32
Pixel Format: 4444, Little Endian ticked


Jelly Car's another game apparently using this engine and most likely it's raw texture format. UPDATE: No it doesn't
Last edited by LolHacksRule on Mon Sep 28, 2020 7:28 pm, edited 1 time in total.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Huh, 4444 isn't under the Pixel format on my screen, it only has RGBA, BGRA, GBRA, GRBA, RGBA, BRGA, YUV, YVU & Grayscale.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Ahh I see change bbp instead

Edit: Instead I used RGB32, RGBA, and all bpp set at 4, Litle Endian ticked.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Okay, after much playing around with files and the site, I have made this judgement.

Some files need Predefined format:RGB32, Pixel Format:RGBA, and all bpp set at 4, Litle Endian ticked.
Some files need Predefined format:RGB32, Pixel Format:RGBA, and all bpp set at 8.
If you have unzipped an apk, you can take the .imagelist file equivalents of the .waltex files. I personally change my .imagelist files to .txt. Once done, you can open it and find the size of the atlas, and information about the sprites.
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

If anyone has the guts to make a Noesis script, please do so, the hex information I mentioned should help.
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

Actually, I attempted to make a Noesis script, there's no value in the header to tell the endian, but it DOES work on Little Endian textures too as Noesis can detect the endian automatically! It works fine so far on your samples provided.

*MOVED TO GITHUB*
Last edited by LolHacksRule on Thu Jan 12, 2023 11:38 pm, edited 1 time in total.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Nice!
I used python to open the script, but it comes up the ModuleNotFoundError: No module named 'inc_noesis'. Does it work on Python or do I have to use Noesis?
LolHacksRule
Posts: 865
Joined: Fri Apr 20, 2018 12:41 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by LolHacksRule »

You have to use Noesis, copy the script to Noesis/plugins/python then it should detect these files.
SwampyGames
Posts: 13
Joined: Sun Sep 27, 2020 3:21 am

Re: Where's My Water? 2 & Where's My Perry? .waltex file formats

Post by SwampyGames »

Still haven't gotten there yet (could you pass on the place where to download Noesis)

Also, this could be an ask, but with the use of the .imagelist files, you can cut out sprites out of the sheet, as it contains coordinates and sizes of the sprites. I think I also mentioned earlier that it contains the size of the atlas. I linked a .imagelist file (though it is converted to .txt here).