Users browsing this thread: 2 Guest(s)
Ducktales Remastered
#46
A true hero to us all.
[Image: b1.php?u=39480955]
Quote:You had wasted MY LIFE... waiting for just a goddamn bunnelby model.
-The prestigious Farlavor
Thanked by:
#47
The new exporter works great, but for some reason it crashes when exporting Gizmo Duck's sprites, whereas the old one works fine (and should be used for those in particular since there are no pieces to worry about).

Anyway, here's a full list of problematic ANB files, which will all have to be ripped manually.
Code:
amazon/statue.anb
amazon/title_card.anb
credits/sf_logo.anb
gallery/misc.anb
gallery/thumbs.anb
gallery*/gallery*.anb
global/blob_shadow.anb
global/buttons.anb
global/chest.anb
global/collectible.anb
global/helicopter.anb
global/hud.anb
global/hud_overlay.anb
global/menupopup.anb
global/rock.anb
global/title.anb
global/tutorialbox.anb
global/wiiu_drc.anb
himalayas/glomgolds_biplane.anb
himalayas/launchpads_biplane.anb
himalayas/snow_beast.anb
himalayas/snow_beast_cinematic.anb
himalayas/snow_beast_dazed.anb
himalayas/snow_beast_stomp.anb
himalayas/title_card.anb
hubworld/baggy_sign.anb
hubworld/bigtime_sign.anb
hubworld/bouncer_sign.anb
hubworld/burger_sign.anb
hubworld/computer_display.anb
levelicons/*.anb
leveltools/*.anb
menus/*.anb
mines/terra_firmian_king.anb
mines/terra_firmian_king_cinema.anb
moneybin/*.anb
moon/title_card.anb
startup/*.anb
transylvania/magica_blast.anb
transylvania/magica_laugh.anb
transylvania/title_card.anb
transylvania/vortex.anb
vesuvius/glomgold_boulder.anb
vesuvius/title_card.anb

Would it be possible to have an alternative exporter that exports them as the raw DXT/DDS files, or does it auto-convert them to PNG on the fly? Having the raw, decompressed files could possibly be used to fix the buggered images, especially the ones in menus/character_select.anb (do I spy a "Player Select" menu for choosing between Scrooge and Shantae?).

((Oh, and I laughed when I saw the Phooey Duck sprites in the Mines folder.))
Thanked by:
#48
Truly awesome!

If anybody wants it, Daxar could probably tweak it for me to make some sort of management program with a GUI, where you can view files and extract them to a specific directory. If this is sufficient though then that's sweet.
You may have a fresh start any moment you choose, for this thing that we call "failure" is not the falling down, but the staying down. -Mary Pickford
Thanked by: Ton
#49
I was just saving the images as PNG just so I could be sure everything was correct, and I figured you guys were after the images, anyway. Mostly the images are stored as compressed raw pixel data, not in some kind of usable format.

I didn't really look into the ANB format any more than I had to; there's a LOT of data in those files that I just ignore. Some of it may be important for different things. What my program does is search through the file until it encounters a ZLFW header (Which denotes a wflz-compressed image in a set of chunks), and decompresses that. Once that is done, you're left with some raw DXT1-compressed image data (which is actually two images; one for the color map and the other for the multiply map). Parsing back a bit from the original ZLFW header, you can get a header that contains those image's width and height, and I pass the width and height along to libsquish to get raw RGBA data out. From there, I multiplied the alpha and color maps together using the algorithm they used (Different from a standard multiply) and saved the result to PNG.

That's what the first program of mine puggsoy posted here did, anyway. My new one then searches back through the ANB file until it stumbles across data that looks like it might be a piece header, and follows that to find the UV and texture coordinates to figure out what parts of each image go where. This part's kinda hackish, and for all I know doesn't work with some files just because they've got data that'll fool my code into thinking it found a header, but it generally seems to have fairly good results. It's pretty slow, but they're small files and images, anyway.

As far as I know, there isn't any standard sort of DDS or DXT header, though I haven't researched the formats much at all. From what it looked like, however, it's all proprietary stuff that no other format uses, hence the need for specialized tools to get meaningful data out.

I can change the program to stop at any particular point if you think it'd help. The thing is that some of the ANB files may not have actual image data inside them, hence no output/botched output. Some images could even be 24-bit for all I know. Having the raw pixel data may help in that regard; I dunno.
Thanked by: puggsoy, Carpaccio
#50
Hm, any way to add an extra function to export textures as DXT5 instead of DXT1? And if so, could it be done for color/black textures separately (some sprites, like the Terra Firmian King only have broken black maps, the colours are fine)? That may help with fixing the broken textures.
Thanked by:
#51
I assume you mean to parse the images as if they're DXT5 instead of DXT1? (Since I'm exporting as PNG...)

Anyhoo, new version: https://dl.dropboxusercontent.com/u/3181...ssANB2.zip

I added commandline flags to give you more control over the program and how it treats data:

-dxt1
Treat images as if they're DXT1-compressed (default)

-dxt3
Treat images as if they're DXT3-compressed

-dxt5
Treat images as if they're DXT5-compressed

-separate
Output separate images for color and multiply (default is off)

-col-only
Same as above, but only output color images

-mul-only
same as -separate, but only output multiply images

-nopiece
Don't attempt to reconstruct images from image piece data (default: attempt to reconstruct images)



I did notice that the rounding errors on piece reconstruction were quite a good deal worse when just outputting the color map, so be warned of that. I'm not sure if there's an image library that supports fractional image coordinates, though...

Cheers!
-Daxar
Thanked by: Carpaccio, puggsoy
#52
Huh, it seems the magica_laugh.anb and magica_blast.anb don't even contain the majority of her sprites, just two of her head for 'laugh' and just the spell effects in 'blast'. I have no idea where else to look for her sprites...

Also, perhaps the malfunction stems from the fact some of these include 3D objects in them that may interfere with extracting the normal images. For example glomgold_boulder.anb references the scene where he's holding a large rock in the final level for you to bounce off, and the rock is of course a model rather than a sprite. Similarly, glomgold_magica_fight.anb includes the 'Number One Dime' model seen in the final confrontation with them. I assume if there's some way to force it to overlook these models we may have more luck with the sprites.

Now back to scouring for Magica's other sprites...oh wait...found them...they were in the AI files I forgot to extract. Now I feel like an idiot.
Thanked by: puggsoy
#53
Hm, the "-dxt5" (and by extension "-dxt3") command just seems to make the program crash on specific files (namely the ones in the "menus" archive). The other commands work, though.
Thanked by:
#54
@Bush: Yeah, as far as I know, all the images are compressed as DXT1. I was just unsure what exactly you were asking me to do.

@Carpaccio: From what I understand, there's a LOT of different kinds of formats inside .anb files. My code just assumes they're all images, which works fine for some files and totally doesn't work at all for others. If there's any file one of you guys is really interested in extracting, upload it/send me a link and I'll take a stab at seeing if there's any images or something of the sort that can be extracted from there.

EDIT: No response? Ok, I'm calling my work here done. Get puggsoy to ping me if you need anything else.
Thanked by:
#55
Nothing new going on with this?
Tsunami Bomb - The Simple Truth
We could run away
Leave behind anything paper
Not knowing where we're going to stay
When there's no Mondays

You're part of me, it's so easy to see the simple truth
When I'm in your arms, I feel safe from harm and sorrow too
You're part of me, it's so easy to see the simple truth
But most of all, nothing couldn't be solved when I'm with you
Thanked by: Ton
#56
Oh heavens I can't believe I let this get away from me. I apparently lost track of the thread. I've got several things extracted thanks to this miraculous program, and I just need to organize them into a sheet properly. They'll be rather large though and I'm not too sure it'll be acceptable? Which would you prefer? Sheets per character or zips per character? I've got Magica and Glomgold done, as well as Dracula Duck.
Thanked by: Cyrus Annihilator
#57
E V E R Y T H I N G ! ! ! !
lol
You only finish a game when you rip its sprites.
Sprite sheet is a sticker album that depends only on your efforts to be fill.


[email protected] | twitter.com/Cyrus_et_al | facebook.com/cyrus.annihilator | cyrusannihilator.blogspot.com.br
Thanked by:
#58
(11-21-2013, 08:33 AM)Carpaccio Wrote: Oh heavens I can't believe I let this get away from me. I apparently lost track of the thread. I've got several things extracted thanks to this miraculous program, and I just need to organize them into a sheet properly. They'll be rather large though and I'm not too sure it'll be acceptable? Which would you prefer? Sheets per character or zips per character? I've got Magica and Glomgold done, as well as Dracula Duck.
Zips might be better.
Doofenshmirtz: This is a little bit awkward but have you seen my escape jet keys? (Perry nods) What, you have? Well that's great! So where are they? (Perry looks away) You won't tell me? Is this because you don't speak or are you just being a jerk?
~Phineas and Ferb, "One Good Scare Ought to Do It!" (2008)
Thanked by:
#59
If the sheets will be too big, go for a zip. Use your own discretion.
I am super excited.
[Image: b1.php?u=39480955]
Quote:You had wasted MY LIFE... waiting for just a goddamn bunnelby model.
-The prestigious Farlavor
Thanked by:
#60
Zips will be no problem. I'll still stick to sheets for Scrooge and his nephews, though.
Thanked by: Ton, Cyrus Annihilator


Forum Jump: