Jump to content

Pako96

New Member
  • Posts

    21
  • Joined

  • Last visited

  • Days Won

    6

Pako96 last won the day on November 15 2023

Pako96 had the most liked content!

Reputation

21 Excellent

About Pako96

  • Birthday 12/14/1996

General

  • Gender
    Male

Recent Profile Visitors

1550 profile views
  1. Here you go. Removed the additional 16 bytes footer and now it loads on both PkHex and emulators. Be sure to fiddle with GBxCart settings in order to not add trash bytes when backing up save files. Pokemon - Emerald Version (USA, Europe).sav
  2. Hi there, as of today, PkHex has been updated with the complete fashion blocks by its other awesome researchers. These include all fashion from the base game and the 2 DLCs, alongside fashion items distributed via PokePortal up til' now. So you can just use the Fashion Unlock button in the Trainer Info Tab in PkHex.
  3. Just inject the mythical pecha berry in your key items pocket via PkHex, then interact with the Pecharunt plushie at Peachy's in Mossui Town. Keep in mind that, if you haven't completed the story of the main campaign and also the one of both DLCs, along with having cleared the Academy tournament at least one time, the event will not trigger.
  4. Sorry, nope. You can effectively switch Koraidon to Miraidon (or any other Pokemon) when putting it in battle form, but the ride mount is hard coded in the game version.
  5. The file you uploaded is half the size of a normal one, so I put up a save file with the correct size, using yours as a base, and the data of a save in my possession for Hall of Fame and Mystery Gift. If you wish to keep playing with this save file, make sure you’re playing on a game that saves properly, and that your emulator also saves the sizes correctly. (Some bad settings/bad games can shrink the save to 64kb, sacrificing the backup portion and the HoF data. Also renders then not readable on PKHeX nor able to transfer to other games) try.sav
  6. Hi Prejie. The problem is that uniforms, unlike other clothing options, have different internal IDs according to your character's gender. Using clothing cheats in recent PkHex should add the missing uniforms for the updated gender, but wouldn't remove the wrong ones, so, according to the swap you made, you should edit the block named KFashionUnlockedClothing and remove the values for the wrong gender and add the correct ones. The following are female ids: Base uniforms: 581B, 591B, 5A1B, 5B1B Preorder uniforms: 601B, 611B, 621B, 631B Kitakami kimonos: 691B, 6B1B, 6D1B, 6F1B Unreleased tracksuit: 711B These are for males: Base uniforms: 5C1B, 5D1B, 5E1B, 5F1B Preorder uniforms: 641B, 651B, 661B, 671B Kitakami kimonos: 681B, 6A1B, 6C1B, 6E1B Unreleased tracksuit: 701B Keep in mind that, while this fix seems to be working (for what I observed), it's always dangerous in recent games to edit sensitive things like player gender, because there could still be a number of undocumented flags in the save structure depending on fundamental and manipulated data. Good luck!
  7. Here you go In the future, try to set manually the save size in DesMume to 512 kb, since the other 512 kb were all garbage data to fill the 1Mb ratio. test.sav
  8. UPDATE 2 IDs 3000 and 4000 seem to not correspond to anything, all the others unlock a clickable option to remove that specific kind of clothing (e.g. no hat, no glasses etc...), which can be done normally by pressing X. The interesting fact is that ID 3001 corresponds to 'no bag', which technically can't be removed by pressing X, but that's probably the hidden way the game lets you move around in the prologue, before Clavel tells you to get dressed for the academy.
  9. UPDATE Here is the Hex for the Ultraball Canvas backpack: E90B (3049 as UInt16). Furthermore, I did some digging in my spare time and created a little script to check the minimum and maximum values of the intervals represented by the various fashion groups in the base game, and annotate in a set() the missing IDs (expressed as UInt16). Here's what I found: Now, doing the conversion in Hex, we see that all the missing bags in the base game have been mapped, since 3075 is the ID of the floral bag and the others from 3047 to 3049 are the IDs of poké/mega/ultraball backpack (all of them are present in special.txt in the previous reply). The interesting thing resides in the headwears, where , if we exclude the values 5037 and 5038, which are the League and Star sporty cap (also present in special.txt), there is still an additional value of 5039 (AF13 in Hex) which corresponds to a 'Terastal Sporty Cap': Which could be the next Portal Event. Keep in mind that injecting this hat could result in unexpected online consequences, if not ban itself, since it hasn't been released yet. Another interesting thing would be reasearching values under the minimum of some categories, given that some of them report as min value x001 (3002 for bags) instead of x000 like some others. I'll make another reply in case of other discoveries.
  10. These are taken from a female save, but I cross referenced with another male save in my possession and didn't find differences in the blocks I linked. The only differences were in the uniform blocks, but I didn't share the base uniform block because it woul be useless, and the one of the preorder DLC are documented in the .txt by gender
  11. Hi everybody. Recently I switched my reasearch on fashion blocks in Scarlet and Violet, even if it can be considered low priority (since trainer personalization in Gen 9 is kinda underwhelming compared to Gen 8-7). Anyway yesterday I dumped the full blocks with all purchasable clothing options and created a .txt file containing the ids of special Items not purchasable in base games (league-team star hats, past gen saves phone cases, all fashion items in the DLCs preorder pack and the PokePortal gifts up till now). I already made some modifications to my fork of PkHex for the data I retrieved and built the injector. When my current pull request regarding Trainer Photo visualization will be (hopefully) merged, I'll make a new one for revamped fashion injection. Up until then I share here the blocks and the .txt in case somebody wants to do further research or just inject them. legwears.bin cases.bin special.txt bags.bin eyewears.bin footwears.bin gloves.bin headwears.bin
  12. Here you go. I also made a pull request on your GitHub with a variation to improve light imgdec(1).py
  13. Probably last update I kept experimenting and I made some acceptable results, even if nothing is to be taken for sure since the true algorithm will never be released to the pubilc. The original image: The new experiment: it was obatained as it follows: save the light image and the dark image, save also the light mask and the dark mask and make a third mask with bitwise pixel by pixel OR of the two original masks (the mask have to be read as grayscale images, normalizing the value of each pixel between 0 - 255). Then for each pixel of the 2 initial images we do alpha blending taking as alpha the corrisponding pixel value of the or mask. So for the 3 channels we'll have the following: #assuming r,g,b as the three channels and the two images expressed as a list of tuples (r,g,b), where each tuple is a pixel, the lists are named lightIM and darkIM; in addition the mask is a list of values between 0-255 named mask. The final image is an empty list named finalIM for px in range(len(lightIM)): alpha = mask[px] newR = int(lightIM[px][0] * (1 - alpha) + darkIM[px][0] * alpha) newG = int(lightIM[px][1] * (1 - alpha) + darkIM[px][1] * alpha) newB = int(lightIM[px][2] * (1 - alpha) + darkIM[px][2] * alpha) finalIM.append((newR,newG,newB)) image = Image.new("RGB", (int(width/4), int(height/4))) image.putdata(finalIM) image.save("final.png") Obtaining these: The old algebrical pixel by pixel average: As you can see they look pretty similar, with the new experiment being a little smoother, but maybe the overworld light isn't completely correct. Anyway I leave this here in order to be reasearched further by whoever wants to give a try or implement it in any form. I'll stop for some time on this topic, but I'll still keep an eye when I'd be able to.
  14. Single blocks display First two bytes constitute the basic low res image Other two bytes for the dark image aren't shown with the first two bytes black, so it's possible that a logic AND is performed between the first two groups of bytes The two masks perfectly overlap in the image I put in the previous reply, furthermore it's very likely they need to be read as greyscale since they are both black and white. Also they are probably there as alpha channel balancing to make the original image look smoother EDIT: I can nearly confirm that light image and dark image have to be alpha blended to make the final image. With this logic is explainable why performing statisthical mean pixel by pixel works, since it represents an alpha blending with alpha fixed at 0.5. Now it needs to be understood how to apply the composite mask for blending. My guess was performing arithmetically the alpha blending pixel by pixel using as alpha the luminance intensity of the corrisponding pixel in the mask. Another way could be computing a fixed alpha as number of white pixels / number ot total pixels in the mask.
×
×
  • Create New...