Jump to content

Cata zones to WOTLK Azeroth _env terrain shaders crashing

By Salt
in Retro-Porting

Recommended Posts

So I attached some cata zones to the original 3.3.5a Azeroth, but the textures are really funkyWoWScrnShot_051016_010046.thumb.jpg.ed8c

It's because the WDT flag 0x4 _env terrain shaders is not enabled, but enabling it causes my other zones to crash probably because it's not supported. Any way around this maybe?

Link to comment
Share on other sites

6 hours ago, Skarn said:

I see big alpha read as small alpha.

How can I do that? I'm not knowledgeable on ADT's or texturing. Maybe some tools like FuTa or would I have to hex edit?

uint32_t do_not_fix_alpha_map : 1; // "fix" alpha maps in MCAL (4 bit alpha maps are 63*63 instead of 64*64). Note that this also means that it *has* to be 4 bit alpha maps, otherwise UnpackAlphaShadowBits will assert.

That's the error I'm getting btw, I can't make much sense of the explanation though. Are alpha maps actual files or are they defined within an ADT?

Link to comment
Share on other sites

They are a part of ADT. Basically, it is 1-3 grayscale images (per every paintable texture layer) stored in the ADT to define where you have the texture and where you do not (roughly speaking). There are quite many ways it can be presented in the client. I will tell you 3 types now. In some old zones sometimes you have unflagged alphamaps that are 63*63 image per every chunk. Last row and column of pixels is filled with shit. Usually just copied last line. It looks like nothing related to the screenshots that were provided. Usual (small) alpha is 32*64 (it has less columns and one pixel of 64x64 map used in Noggit kinda gets sretched to the second one, so the image looses the quality). The do not fix thing we talked about before is also usually presented based on the same small alpha principle but also crippled by not having one row and column of pixels at all. Big alpha is one true 64x64 map. I do not claim this 100% correct, I could have forgotten something since the last time I had a look into it.

Okay, enough of theory. You image seems to be either small alpha that was saved as big alpha or big alpha saved as small alpha. Try exporting alphamaps with FuTa and show them here, so we can tell you more.

Link to comment
Share on other sites

I see, that gives me a rough idea how it works. Just need some hands-on experience to clarify completely :D

Anyway here are some of the alpha maps, though I'm not 100% sure if it's part of the Twilight Highlands or a small portion Wetlands/Loch Modan etc. If that even matters.

My guess would be that they're big alpha read as small, because the newer zones use big right? And my other zones are just the untouched 3.3.5a original Azeroth which are small alpha I suppose.

Here's one ADT alphamap (3 layers)

Azeroth_41_38_layer_2.thumb.png.3285483c

 

 

 

 

Azeroth_41_38_layer_1.thumb.png.ed848f2bAzeroth_41_38_layer_3.thumb.png.2c1a9572

 

 

 

 

 

Pardon the placement of these pics, they're not cooperating. I didn't know if you meant inject in the post or ADT, but I'll do both lol to save the time asking, though it's pretty obvious you meant the ADT.

And here are some more alphamaps

Alphamaps.zip

Link to comment
Share on other sites

Switch you FuTa to grayscale mode and reinject those images. See what happens. If it does not work from the first time, try fresh adts - FuTa for transfering alphamaps and heightmaps, fileinfo/loadinfo for models. All the software should be in WoWDevKit.

Link to comment
Share on other sites

The re-import didn't appear to have changed much, and even causes a crash in one of the ADT's. I've been away this weekend so today I started on the fresh ADT's. I don't know which tools are the best for creating these kinds of ADT's, but Taliis seemed okay.

I suppose the format must be WOTLK.

I can inject the heightmaps, greyscale alphamaps and doodads/objects. There's also something with area ID's, but there doesn't seem to be an import in any of the tools for that. I looked it up and it's apparently something you can paint in Noggit. How can I export/import those, with perhaps a tool? I'd rather not use Noggit since it is intended for creating rather than copying. And is there anything else I'm missing like water or shadows? Just naming things you can edit with Talliis.

Link to comment
Share on other sites

I'm a dumbass.. should've checked for tutorials here instead of googling. 

Fileinfo created files with all the models and coordinates but how do I apply that to the ADT? Not sure what loadinfo does, but appears to be the same thing.

I created some blank ADT's with AdtAdder WOTLK format using the Template_0_0.adt. I tested it out with 3 ADT's, imported greyscale alphamaps and the heightmaps and skipped the models for now. I'm not sure if that matters. One of the ADT had a weird alphamaps bug. If I imported all 3 layers, layer 1 or 2 would have a black rectangle pattern horizontally all over it. If I fixed layer 1, layer 2 got the rectangles and visa versa. Not sure what that's all about.

There's also the Layer Settings option in FuTa, and looks to list all the tilesets required and the texture for each layer. It has layer 0-3 instead of alphamaps layer 1-3, why? I tried with both manually editing it to be the same as the original ADT and leaving it unchanged (duskwood stuff). The result is invisible ADT's in-game.

Also tried mashing it together with the rest of the continent using Riu's Zone Masher. Still invisible. Am I missing something crucial here? For the sake of testing I'm only trying to get the ground working.

 

Link to comment
Share on other sites

It's because of the heightmap. When I export them  ALL 100+ heightmaps are 148 KB, and when I import them they all look the same. heightmap.thumb.png.df7001c99b7c4de620f6

A different shade of green and no shape pretty much. Is FuTa really the only way to re-create ADT's? There's no other heightmap tool that I know of besides Taliis which is a no no.

Link to comment
Share on other sites

  • 2 weeks later...

Tried to remove offsets before converting to 3.3.5 but the fixing makes some of the ADT's about 1.3 gig just Gilneas is already 50 gigs at the end o.O I know that the Azeroth_25_32 has an empty plane heightmap and no alphamaps or models so nothing special about them it seems

I'll just make the new ADT's now to see if the initial removing worked for the ones that converted normally.

Link to comment
Share on other sites

Alpha maps are not being properly read neither extracted/imported with FuTa. I thought those black squares were normal as it was also displayed when reading the ADT's, but no those are probably offsets. I don't exactly know what these offsets are anyway, probably positional data that has to be corrected. FuTa is the only tool who can do this, but sadly it's not made for this kind of thing.

The FuTa that's included in the WoWDevKit is different from another one I downloaded. The one I download displays a black background with heightmaps instead of blue, the alphamaps also appear different (some chunks are moved around kinda like a messed up puzzle, both have that but in different order) and yes it's the exact same file that I open then.The downloaded is able to open most converted files, but cannot open some fresh ADT's from ADTAdder and vice versa the WoWDevKit one cannot open some of the converted files but can open all from ADTAdder. Lastly the downloaded supports exporting water while the other one opens the window for saving the file, but doesn't actually create it. Is the one I downloaded an unstable version but more functional?

You mentioned that the ADT's initially have offsets. In Cata+ the ADT's are split in 4-5 files (tex, obj stuff) and the converter puts it in one ADT. Initially would mean preconverted right? When I fix offsets with the .bat for those split files for about 10% of the ADT's it removes most of the data and inflates the file with a bunch of zeros to around 800MB-1.9G. The tool is probably not intended for that type of ADT.

So yeah, either I'm doing something really wrong or I should not be using tools for this.

I've worked alot with M2/DBC files and learned from PhillipTNG's tutorials. Made quite a lot of scripts in python. For M2's or DBC's it was pretty easy to do whatever I wanted because of the PyModelEditor libraries and I was only working with simple numbers and strings. I don't know how complicated it is to transfer alphamaps or heightmaps when I read the FuTa source I can't make much sense of it yet because it's C++ (can read most of it though) and about texturing/ADT the terminology confuses me since I just started.

TL;DR

Are there any python libraries for ADT's with alphamap or heightmap? If not, could the 010 ADT template be used for that? Which I think resides in the MCAL sub-chunk correct me if I'm wrong didn't see that in the template.

I'll just study the wiki for now which I hadn't really done in detail. Maybe then I can make more sense of the FuTa source and create my own library in a simpler language or perhaps use the 010 Template to make script. Any tips are welcome for learning more about downporting, learning about ADT's (besides wiki) or anything related though not many people appear to specialize in downporting.

Link to comment
Share on other sites

  • 3 years later...
×
×
  • Create New...