Requesting help decompressing .ash files

VirVal

New Member
OP
Newbie
Joined
Mar 31, 2023
Messages
2
Trophies
0
XP
30
Country
United States
Currently attempting to translate My Pokemon Ranch's japanese update and/or extend support over to other versions of platinum or HGSS.
however, after decompiling the wad as far as I can, I noticed that its files are compressed using .ash format, which is usually only used by the system menu and ACCF.

1680226676825.png


very cool.
it also seems like no one has really ever properly broken through this compression either, with the raregamingdump wiki even noting that most of the game's data has been dumped via dolphin's memory viewer

does anyone have any expertise in this? could be pretty big for preservation's sake considering this is one of the few pokemon games without an official translation
 
  • Like
Reactions: Soulo

FAST6191

Techromancer
Editorial Team
Joined
Nov 21, 2005
Messages
36,798
Trophies
3
XP
28,405
Country
United Kingdom
Have you tried anything? Assuming none of the tools made to handle the other uses are working (or this is a different format with the same name/extension).

Most compression is fairly similar in general nature until you hit compression contests (at which point compression = AI appears).

https://ece.uwaterloo.ca/~ece611/LempelZiv.pdf is my usual choice for a primer on compression (and despite the name/title gives a decent overview of Huffman as well).

Grab a copy of the decompressed file from memory and compare the two.

LZ family compression tends to be a matter of [data][flag to say if compressed or not for the next section][compression split indicator* if compressed][more data][repeat until file end], and maybe something at the start to indicate it is compressed and what the final file size might be.

*so many bytes back (or maybe forward if it is a fancy one that does both directions) and how many to read (usually with a bit of maths as there is no point in telling it to read fewer bytes than the compression split indicator thing takes up). Custom changes to this break existing tools in a hurry, but are trivial to recompile with adjustments.
https://www.romhacking.net/utilities/826/ is for the GBA and DS BIOS compressions but should be a reasonable jumping off point if whatever is out there for this system are not so hot.
 
  • Like
Reactions: VirVal

VirVal

New Member
OP
Newbie
Joined
Mar 31, 2023
Messages
2
Trophies
0
XP
30
Country
United States
Have you tried anything? Assuming none of the tools made to handle the other uses are working (or this is a different format with the same name/extension).

Most compression is fairly similar in general nature until you hit compression contests (at which point compression = AI appears).
thank you for your guidance! for clarification, I've tried every tool I could find for .ash files, crediar's ASH.exe in particular was the closest to giving a result but it usually crashes or decompresses improperly for my pokemon ranch exclusively

1680292969317.png


notably a number of special stages in the game are stored as plain .txt files but are also just as compressed as everything else, I'd assume they'd be the easiest to compare given that they're much smaller and simpler than most other file types but pulling ANY decompressed files from memory seems nigh impossible (or at least beyond my own skillset)

further exploration into previous asset rips of the game reveals that most things have been dumped via dolphin's texture dumping or ripping the models while dolphin is running with a third party program, such as the vg resource's incomplete model archive
 

The12thGripper

New Member
Newbie
Joined
Apr 14, 2014
Messages
4
Trophies
0
XP
132
Country
United States
Sorry to bump a very old topic, hoping to get some more interest on the topic. It's well known the ASH decompressor by crediar does not work properly with My Pokemon Ranch but I think I might have stumbled upon a uncompiled decompressor specifically for My Pokemon Ranch? (

Sorry, spam filter really doesn't like me pasting the link to the GitHub page so i've had to butcher the link lol

shorturl . at / mvwxH

I will admit I have no idea what I'm looking at though, any additional eyes would be greatly appreciated.
 

Site & Scene News

Popular threads in this forum

General chit-chat
Help Users
  • S @ salazarcosplay:
    or have it that you don't know you are a cyborg, robot, and you find out and have a existential crisis
  • S @ salazarcosplay:
    or have it start in the virtual world and you are an ai that gained sentience
  • Xdqwerty @ Xdqwerty:
    btw gonna wash my face in a bit, my eyes feel tired
  • S @ salazarcosplay:
    and you convince your owner to help you break out of the virtual world to real world
  • BigOnYa @ BigOnYa:
    Eyes - "yawn"
    +1
  • S @ salazarcosplay:
    you bleack in to goverment computer systems to get cyborg schematics so you can get a robot body constructed
  • Xdqwerty @ Xdqwerty:
    btw @BigOnYa the health bar doesnt decrease when i take damage (and yes i put the "at the beggining of the scene change value of greenflatbar: set to Protagonistcopmode.Health::Health())
  • S @ salazarcosplay:
    i the protagonist
  • S @ salazarcosplay:
    human, robot, cyborg
  • S @ salazarcosplay:
    human with cyborg enhancements
  • S @ salazarcosplay:
    or like terminatior
  • S @ salazarcosplay:
    with living tissue
  • BigOnYa @ BigOnYa:
    @Xdqwerty there is health behaviour you can add to your character, then to use a health bar is lil more complicated, google n watch a few tutorial video on it, be too hard to explain here.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, the character has the health behavior
  • BigOnYa @ BigOnYa:
    I know you have to create a health and health max variable. Then there is a calculation you use in code to subtract width size of the health bar. Google few vids.
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, the "greenflatbar" is one of the preset health bars btw
  • BigOnYa @ BigOnYa:
    Yea you can use any bar/sprite. It will just change the width. Ok good luck and have fun. I'm off to go shoot some pool at the bar. Talk to you later.
    +1
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, why does the health behavior exist if you can just use a variable?
  • Xdqwerty @ Xdqwerty:
    and nope the number still doesnt change
  • Xdqwerty @ Xdqwerty:
    ok im gonna make my own asset
  • Xdqwerty @ Xdqwerty:
    nvm i think i fixed it
  • Xdqwerty @ Xdqwerty:
    @BigOnYa, I fixed it
    Xdqwerty @ Xdqwerty: https://www.youtube.com/watch?v=EkjpCNa6vlY