Jump to content

Search the Community

Showing results for tags 'ROMHacks'.

  • Search By Tags

    Type tags separated by commas.
  • Search By Author

Content Type


Categories

  • Pokémon
    • Pokémon (Ultra Sun/Ultra Moon)
    • Pokémon (Sun/Moon)
    • Pokémon (PSMD)
    • Pokémon (EoS)
  • Egg Groups
    • Egg Groups (Ultra Sun/Ultra Moon)
    • Egg Groups (Sun/Moon)
  • Moves
    • Moves (Ultra Sun/Ultra Moon)
    • Moves (Sun/Moon)
    • Moves (PSMD)
    • Moves (EoS)
  • Abilities
    • Abilities (Ultra Sun/Ultra Moon)
    • Abilities (Sun/Moon)
    • Abilities (PSMD)
  • Types
    • Types (Ultra Sun/Ultra Moon)
    • Types (SM)
    • Types (PSMD)
    • Types (EoS)

Categories

  • Pokémon HOME
  • Generation 9
  • Generation 8
  • Generation 7
  • Generation 6
  • Generation 5
  • Generation 4
  • Mystery Dungeon 3DS
  • Mystery Dungeon NDS
  • Sprite Index
  • Other

Categories

  • Project Pokémon
  • Games
    • Pokémon Ultra Sun and Ultra Moon
    • Pokémon Sun and Moon
    • Pokémon Super Mystery Dungeon

Categories

  • Save Editing
    • Managing GB/GBC Saves
    • Managing GBA Saves
    • Managing NDS Saves
    • Managing 3DS Saves
    • Managing Gamecube Saves
    • Managing Wii Saves
    • Managing Switch Saves
    • Using PKHeX
    • Gen 3 Specific Edits
    • Gen 4 Specific Edits
    • Gen 5 Specific Edits
    • Gen 6 Specific Edits
    • Gen 7 Specific Edits
    • Gen 8 Specific Edits
    • Gen 9 Specific Edits
  • ROM Editing
    • Stars' Pokémon Colosseum and XD Hacking Tutorial
    • Editing ROMs with Sky Editor
    • NDS Pokémon Games Hacking Tutorials
    • 3DS Pokémon Games Hacking Tutorials
    • Switch Pokémon Games Hacking Tutorials
  • RAM Editing
    • GS ACE: Coin Case
    • GS ACE: TM17
  • Gameplay related support
    • Transfer Pokewalker gift across different languages
    • e-reader support
    • Max Raid RNG Manipulation
    • How to play Rescue Team DX ROM hacks

Forums

  • ProjectPokemon.org
    • Announcements
    • News Discussion
    • Project Pokémon Feedback
    • Introductions
  • Event Pokémon
    • Event Pokémon News
    • Event Contributions
    • Events Help and Questions
  • Technical Discussions
    • ROM
    • Saves
    • RAM and Live Edits
    • Hardware
    • General Development
  • Pokémon Discussions
    • Pokémon Games Discussion
    • Pokémon Online Play
    • Pokémon Franchise
  • Other
    • Creative Discussion
    • General Gaming
    • Off Topic
  • Mystery Dungeon Hacking's Discussions
  • The "I Love Cats" Club's Discussions
  • The Cool Kids Corner's Discussions
  • Team Valor's General Discussion
  • Pokemon USUM Breeder's Club's Rules
  • Pokemon USUM Breeder's Club's Post breeding stories & pictures here
  • Pokemon USUM Breeder's Club's Competitive Breeding Requests
  • Pokemon USUM Breeder's Club's Non-Competitive Breeding Requests
  • Pokemon USUM Breeder's Club's Introduce self
  • The PBOE, (Pokémon Brotherhood of Evil)'s Topics
  • Sky Editor's Topics
  • Sky Editor's Questions
  • Hoopa's Café's Topics
  • Super pokemon POWER's Topics
  • Steel Of Time Club's Topics

Calendars

  • Pokémon Event Calendar
  • The "I Love Cats" Club's Events
  • Hoopa's Café's Important Dates
  • Super pokemon POWER's Events
  • Steel Of Time Club's Events

Categories

  • Event Gallery
    • Pokémon HOME
    • Generation 9
    • Generation 8
    • Generation 7 (Switch)
    • Generation 7 (3DS)
    • Generation 6
    • Generation 5
    • Dream World
    • C-Gear Skins
    • Pokédex Skins
    • Pokémon Musicals
    • Pokémon World Tournaments
    • Generation 4
    • Generation 3
    • Generation 2
    • Generation 1
  • In-Game Series
    • Pokémon GO -> HOME Transfers
    • Generation 9
    • Generation 8
    • Generation 7
    • Generation 6
    • Generation 5
    • Generation 4
    • Generation 3
    • Generation 2
    • Generation 1
  • Unreleased/Beta PKM Gallery
  • Tools
    • Save Editing
    • ROM Editing
    • RAM Editing
    • Files compatible w/ Saves
  • Saves and RAM edits
    • User Contributed Saves
    • User Contributed RAM edits and cheat files
    • User Contributed Super Secret Bases
  • PKM Files
    • User Contributed PKM files
  • ROM related entries
    • ROM hacks
    • Image Assets
    • Custom Resources
  • Misc
    • Images
    • Tools
  • Mystery Dungeon Hacking's Files
  • Hoopa's Café's Files
  • Super pokemon POWER's Files
  • Steel Of Time Club's Files

Blogs

  • Project Pokémon
  • Evan's Dev Blog
  • Diary
  • Pokémon Mystery Dungeon: Gate of the Shooting Star
  • theSLAYER's thoughts and ramblings
  • Alack Alay!
  • Mario and Lugi
  • Diary of Borjitasstoi
  • Bigjon357
  • Benjamen
  • Céliana || Cecillia || TheRealProcyon's Fun Blog
  • the manufacturing of steel structural parts
  • The Best in Career Guidance
  • How I Get My FREE ROBUX In One Easy Lesson
  • hello kitty has a day :3
  • Dairy, perharps pokemon
  • Trainer Sagas; An original series premiering on Cupencil!
  • Pokemon and their trainer bond in Pokémon GO
  • Pokemon distribution
  • Pknx error
  • Upgrated PPRE2 Editing Gen IV Pokemon Stats/Moves Beta Release!
  • Pokémon cards in Canada
  • UTI Relief Starts Here at Prime Health
  • Ensuring Continuity of Care: ABA Therapy in Schools and Beyond
  • Benefits of Medical Coding
  • Togel China
  • 1fillmy4wap
  • Personal
  • Quran Recitation Classes and Courses for All Ages
  • Why Choose London to Manchester Taxi with Albion Airport Cars?
  • Why Choose a Taxi from Heathrow Airport to Gatwick Airport with Xpress Airport Transfer?
  • Taxi From Heathrow Airport to Manchester – Travel Comfortably with Pro Cab Transport
  • How to get taxi from London to Southampton
  • congtylalicotech
  • Cara mengatasi octo mobile banking terblokir
  • Cara mengatasi octo mobile banking terblokir
  • Cara mengatasi octo mobile banking terblokir
  • Staff Discussions's Blog
  • Mystery Dungeon Hacking's Blog
  • The Cool Kids Corner's Blog
  • Project Pokemon Fun Club!'s Blog: Random Stuff
  • Project Pokemon Fun Club!'s Blog.. So fun..So wow...SHARE YOUR NEWS!
  • Create your own Pokemon Region's Storyline
  • Create your own Pokemon Region's Team Rocket of the Region
  • Create your own Pokemon Region's Pokemon Region base off of.....
  • Create your own Pokemon Region's Pokemon Region main Character
  • Sky Editor's Sky Editor
  • Sky Editor's Blog
  • Hoopa's Café's Blog
  • Steel Of Time Club's Blog
  • SkyTemple Documentation's Documentation & Tutorial Drafts

Find results in...

Find results that contain...


Date Created

  • Start

    End


Last Updated

  • Start

    End


Filter by number of...

Joined

  • Start

    End


Group


Gender


About Me


Friend Code (Nintendo Switch)


Friend Code (3DS)


NNID (Wii U)

Found 8 results

  1. Hello again! Ok so I've been working on a Pokemon SoulSilver Romhack and I've now reached the scripting stage. In a small amount of time I figured out how to change the game corner prizes and gift pokémon through SDSME. Feeling motivated with my progress I tried moving onto more complex things. I wanted to make the spiky eared pichu event avaliable without the need of action replay. However then I realised that you need a mystery gift shiny pichu to trigger the aforementioned event. Apparently the game will trigger the event if the shiny pichu in your party has the description 'met through a fateful encounter'. With my very limited knowledge I went through every script function for Ilex Forest trying to figure out what I had to do to trigger the spiky eared pichu event using a normal shiny pichu. However with my limited knowledge I don't really know what I'm supposed to change and the number of functions in the Ilex Forest map are overwhelming. I'm guessing there is a 'checkflag' line somewhere that if I remove should produce the desired effect. If I figured out how to do this then I could also trigger other events that normally require event pokémon such as the giovanni and sinjoh ruins events. If anyone knows how to help then please reply, it would be a big help! TLDR: does anyone know which flag checks for the fateful encounter description on a Pokémon? Or does anyone just have a list of flags that the game uses?
  2. Hello, I'm a Pokemon Rom hacker from China. I hope to share with you a Pokemon Rom hack I'm making. First of all, there is no complete version or release for the time being. This post is only for the publicity and communication of a game. (The game language is all Chinese, and the English translation will be considered after the game is completed.) Title Logo Post from Reddit Post from Gbatemp Pokémon Dream Ruby has been produced for more than two years since the beginning (I admit I have been lazy in the production process,hahaha ). During this period, the production speed of the game has become slower and slower due to the continuous increase of revision technology and interesting ideas. At first, I didn't want to make the Rom hack. I just unpacked, modified, packaged the game and achieved success. With the production of the game, I began to strive for excellence. With the continuous planning of the game, the time required for production is also increasing. (The models in the Rom Hack will not be publicly shared until I complete the production of the game, so it may not be good news for some people. Of course, if it's about the game or simple information related to the Rom hack I am happy to discuss the problem. My experience comes from the research and summary of various materials shared by Rom hackers on the Internet and their production process. I can't write tools. I just flexibly combine the advantages of various tools, so I thank all tool editors.) ① The difficulty of the game will increase greatly, and it is not suitable for novices or players who like to play with Nuzlocke rules. At the same time, players who use Pkhex or cheat excessively are not welcome. ② Replace some pokemon with self-made pokemon, and because the ability value of some pokemon is too high, players can't get them normally in the game, so players can not achieve the achievement of full map capture. (for example, the Shadow pokemon are the pokemon that players cannot obtain, while the leader pokemon are the pokemon that players can obtain, but the evolution method will not directly tell players that they need to obtain information in the conversation of NPCs in the game). ③ New NPCs, such as the new Shitenno, the new Gym Leaders, the new champion and other characters that do not exist in ORAS or even in Pokemon.(The text of the dialog and name class is adjusted accordingly) ④ Double heroine setting (Yeah, there is no hero, only two lovely heroines). This setting is only out of my personal preference. I can only say sorry for friends who want to use the hero. ⑥ Modification of BGM in game.(Most from YGO) ⑤ Starter pokemon, move, Personal stats, Shiny rate and most of the contents that Pk3ds can modify. ⑦New game save location Some of the models in ② and ③ are the RE modification and made of the models shared by Rom hackers on the network. The list will be sorted out and thanked when the game is officially released.( But in part, it may be difficult to find the source because the material sharers have been publishing for a long time.) New Starter pokemon,I'm going to add another self-made evolutionary form to them. Part of the custom model The new Shitenno, the new Gym Leaders, the new special NPCs RE modification model Double heroine The general process of the game is not much different from that of ORAS, but it will become different due to the addition of various elements. We can simply think that this is a different ORAS world. Sometimes I share some test videos and new character model pictures in the process of revision and production. My YouTube video① MY YouTube video② My Twitter My BiliBili The custom pokemon in the Rom hack are mainly divided into normal, shadow and leader pokemon. Normal pokemon Shadow pokemon Leader pokemon The Rom hack is still working in progress and incomplete. This post just hope more people have expectations for this game, at least it makes me feel that what I do is meaningful. Your support and encouragement is my motivation to update! Welcome your valuable comments. O(∩_∩)O冲冲冲! The game is still making, and I hope to get more people's support. 游戏还在制作当中,也希望得到更多的人的支持。(^_^) Finally, thank you for reading. I hope you like this growing Rom hack, I will be really happy if you could post to me.( The speed of game making is very slwo. because I'm lazy, hahaha)
  3. PRESENTATION Hello everyone! Here is the presentation of my rom hack: Pokemon Mystery Dungeon: Explorers of Heaven. I've always loved Pokemon Mystery Dungeon, but I was always frustrated by the lack of difficulty, and the fact that the game was finishable without using all the QoL offered by the game, like IQ, linked moves and other mechanics. After discovering SkyTemple, I tried to create my own rom hack, and finally get the game I always wanted to play. With Pokemon Mystery Dungeon: Explorers of Heaven, you can expect : - Choose your difficulty - New starters and new Pokemon from generations 5 to 8. - New dungeons, boss battles and items. - The fairy type added. - Mega Evolution - Shiny Hunting - And other features. A secondary version "Explorers of Hell" also exists, and is available by joining the discord. This one has all the dialogues modified with dark humor, so if you are sensitive, I don't recommend you to play it. In this thread, I will present you some new features, you will also have some screenshots of the game, and you will have some data related to the game, like the list of legendary Pokémon that can be found with the mystery part/secret slab or the list of new attacks. First of all, I want to thank the whole SkyTemple team, this would not have been possible without their engine and hard work. I also want to thank the spriters without whom the new Pokémon could not have appeared in my game. Finally, I would like to thank Mond who generally helped me a lot in the creation of my rom hack. He also created his rom hack: Pokemon Mystery Dungeon : Explorers of Alpha, I invite you all to go and see his project. Remember to talk to the Porygon2 in the game crossroad for a detailed list of spécial thanks. FEATURES AND NEW MECHANICS Random features : New gameplay mechanics : New Pokémon : New moves : MASTER PLAYER USEFUL DATA Pokemon shiny location : Location of Pokemon found with the Mystery Part / Secret Slab : All IQ Groups in Heaven and Hell (Thanks to Picalex) : Pokemon Locations (Thanks to Migo) : Général Guide (Thanks to Smash) : SCREENSHOTS : New title screen : New starters / partners : Examples of new boss battles : New shiny Pokémon : Master Player & Difficulties : Old PMD Games ref : Other Screens : SPECIAL THANKS Thanks to the spriters for making the portraits of the old and new Pokémon, as well as for the sprites of the Pokémon from generation 5 to 8 : Thanks to all the SkyTemple team and its community for their help, especially : Thanks to the beta testers for spotting the problems of the game, as well as for helping me with the dialogues : Thanks to Fke for designing the text box and the teams stats. Thanks also to all those I didn't mention. Thanks also to all those who followed the progress of the game and who supported the project since the beginning. It's thanks to your messages and your support that I had the motivation to work for several months on this game, so a huge thank you to you, and I hope you will like the result. DOWNLOAD & DISCORD You will need to patch a Pokemon Mystery Dungeon: Sky Explorer US rom. Avoid using savestates to apply future patches. In the file, you will have a tutorial to patch your rom. Joining the discord will be essential for your adventure. Indeed, you will find there the rom for Explorers of Hell, an active community, guides, information, news about the next updates, and especially: You can try the Master Player challenge! So think about joining us if you want to try the adventure! Here is the link : https://discord.gg/6QbPHYZDtg f
  4. Hey, as seen in the title, i want to try translating the pokemon rom hack called "Renegade Platinum", the thing is i dont really know where to start, i have a programm to edit text (DSPRE) and i've seen text archives, but the thing is renegade platinum changes a lot, so i dont really know where to start, i obviously cant just copy and paste the text archives. (i tried that and it makes sense that it doesnt work), so my question is, for translating this, would i need to play the game and speak with every npc to get the info i need? that i know what text has changed? there needs to be a more efficient way to do that right? i hope at least. sadly Drayano60 the creator of this hack, does not kept any info what text he changed, that would have made my life easier, is there some efficient way to see exactly what i need to change?, i mean the xdelta patch is patching these things so it knows what it needs to change the info is there but, i never heard of anyone opening/editing/viewing a xdelta file. Any suggestions?. Thanks in advance.
  5. Hello Everyone! I'm currently have an idea in mind. I want to make a Pokemon Sun Rom Hack. However, I don't have all the necessary skills to do so. So, I've decided to make this post in order to recruit a Dev Team. I need people who can the following things without making making the game unstable: Making & Importing Models into the game Replacing Music Replacing Dialogue If you want to join in the development of this project, please contact me on my discord server( Link is discord.me/pokesunhack ), so we can talk about what you can do to make this rom hack become a reality. Thank you for viewing this post.
  6. Hello! I have finished making my first pokemon rom. Its just a rom that changes the encounters of some pokemon and make the gym leaders WAY more difficult. Its supposed to be a little like pokemon emerald kaizo but for the people who want it ALOT easier but still a challenge. Let me know if there are any bugs or anything you want me to add. Heres the download: https://www.mediafire.com/file/571j4upz521jxk1/Pokemon_Crystal_Emerald.ips/file V1.1 is here! https://www.mediafire.com/file/qia2ceslmatypmy/Pokemon_Crystal_Emerald_v1.1.ips/file Just fixed a few bugs an put in a 100% not important house in ever grande city
  7. In recent years, I became interested the Gen 1 Mew event distributions, and I've tried to recreate the Mew Machine software as a hobby project. While I'm not a developer, I checked the code, experimented, and got help to make it work. My goal was to authentically recreate the experience based on messages around the internet from people who attended the original events, since the actual distribution machines are likely lost to time. I created a rom hack that allows players to receive Mew, as if they had attended the official event distributions. However, I don't have the skills to maintain or update it further for now. So don't expect next releases. This is intended for use on PC or mobile with emulation mostly. To patch the ROM, Beat Patcher is recommended. https://www.romhacking.net/utilities/893/ How to use: 1. Copy any save file from Pokémon Red, Blue or Yellow, this save file should have at least 1 slot in the party available. (Make sure to do backups first just in case). 2. Paste the save file wherever you have the Mew Machine ROM. Make sure to rename the save file to have the same name as the Mew Machine ROM. 3. Load the Mew Machine ROM on your emulator. 4. Write a name for the OT for the Mew you want. (I.e: YOSHIRA, HAMBURG, FINLAND, etc) 5. Once selected, press A to send any amount of Mews (Max. 5). 6. Copy the updated save. Load it back to the original game (Red, Blue, Yellow), now you have Mew(s) in your party. If you don't load a save file the game will display that is empty and will reset as a loop. Screenshots: Special thanks to: chatot4444, dannye33 for their help with the Trainer ID Ajxpk for their guidance Ax461 for assistance and helping me fixing some bugs Pokered disassembly, for making this possible mewmachine.zip
  8. TLDR; Scroll all the way down to the bottom of this post to see the GitHub where I provide a simple solution to how you can accomplish this. See next message for Permanent Megas & Hoopa-Unbound persistence through save restarts. THIS message applies directly to USUM, but the Permanent Mega persistence and Hoopa-Unbound/Primal Reversion/etc applies to BOTH USUM AND ORAS! Hello everyone! This post is meant to document ALL the progress I made in improving/editing the Gen 7 USUM. As of 6/2/26, you will learn how to remove the nerfs to Prankster, Gale Wings, Parental Bond, and Soul Dew in Pokemon Ultra Sun and Ultra Moon after reading this post (and if I discover anything more, I'll just reply to this thread or edit the post if need be). So full disclosure - I've spent many years trying to figure out how to crack the Gen 7 code, and with our current age of technology it was made possible. I was able to reverse engineer a lot of the USUM battle engine with heavy use of an AI assistant for some of the grunt work, including decompiling, scanning the save-state RAM, and cross-checking. I drove the project, supplied the save states, and verified every step in-game myself. What I've outlined here is reproducible, so you don't have to take my word for any of it. This post is for research purposes. Chapter 1: How to remove Dark's immunity to Prankster So my goal was to Gen 6 Prankster behavior in Ultra Sun / Ultra Moon - status moves from a Prankster user can once again affect Dark-types (no more "It doesn't affect…"). Tested and working. --- The fix (if you just want it) In Battle.cro (from the RomFS), change one byte: Offset: 0x24B14 Before: D1 FF FF 0A After: D1 FF FF EA (Only the last byte changes: 0x24B17, 0A -> EA.) That's it. This flips a conditional branch to an unconditional one so the engine stops failing Prankster-boosted status moves against Dark-types. It does not touch any other immunity (powder/Grass, trapping/Ghost, type-chart immunities all still work). Installing it - two options: LayeredFS (easy, no repacking): put the patched Battle.cro at %APPDATA%\Azahar\load\mods\00040000001B5100\romfs\Battle.cro, fully quit and relaunch Azahar. Repack the CIA: splice the patched Battle.cro back in and rebuild the RomFS IVFC hash tree + the NCCH romfs hash (signatures can stay broken; Azahar/Citra accept that). Big gotcha: test on a fresh battle after a clean boot, NOT by loading a save state. A save state is a snapshot of RAM that still contains the old unpatched code, so it'll always show the old behavior no matter how you patch the files. --- How it was found (short version) Gen 7 added: a Prankster-boosted status move that hits a Dark-type fails. I wanted that gone on the actual game, not just on a Showdown server. The hard part: the check isn't a simple if (ability == Prankster). USUM's battle engine (Battle.cro) is a Showdown-style event-dispatch system, and its handler tables are filled in by the loader at runtime meaning they're blank in the file on disk. So static analysis in Ghidra just saw zeros where the logic should be. That blocked progress for a long time (and produced several "patches" that did nothing - including one that accidentally targeted the text formatter, because `158`/Prankster also shows up as a text token). What cracked it: a Citra/Azahar save state. A .cst is a zstd-compressed snapshot of console RAM - decompress it and you get ~302 MB with all the runtime relocations already applied. From a save state of Prankster Shuckle vs. Dark Tyranitar, I could: - read the real, populated dispatch tables for the first time; - find the actual battlers in memory and diff their type fields - that pinned the type cache at battler+0x1E4/5/6, with Dark = 0x10 (Tyranitar showed 05 10 12 = Rock/Dark/none; Shuckle showed 06 05 12 = Bug/Rock/none); - locate the engine's hasType() function and find the single place in the whole binary that calls hasType(target, Dark) - that's FUN_05024868, the per-target immunity filter. Its Dark branch is basically the Showdown rule: target is Dark AND move was Prankster-boosted AND it's an opponent → "It doesn't affect…" + the move fails on that target Patching the first branch of that check to always "keep" the target removes the immunity. Confirmed in a fresh battle: Thunder Wave / Will-O-Wisp / etc. from a Prankster user now land on Dark-types. --- Notes / credits - This is one piece of a broader "restore Gen 6 abilities" project (Gale Wings, Parental Bond, Soul Dew are next). - Prankster's +1 priority is separate (it lives in `code.bin`); this patch only removes the Dark immunity, leaving the priority boost intact — i.e. true Gen 6 Prankster. - Method that made it possible, in one line: when a binary's tables are loader-relocated, stop fighting the static image and read a save state instead. If you're interested in learning more here's a thread I made on hackmons.com that details more information. --- Chapter 2: How to remove Gale Wing's HP restriction What this does: restores Gen 6 Gale Wings in Ultra Sun / Ultra Moon - its +1 priority on Flying-type moves applies at any HP, not just at full HP. Tested and working in Azahar. --- The fix (if you just want it) In Battle.cro (from the RomFS), change one instruction (4 bytes): Offset: 0xDA514 Before: 09 00 00 0A (`BEQ`) After: 00 F0 20 E3 (`NOP`) Install it exactly like the Prankster patch (LayeredFS drop, or repack the CIA + rebuild the IVFC hash tree). Same save-state gotcha: test on a fresh battle after a clean boot, not a loaded save state. The two patches are independent and can both live in the same Battle.cro. --- How it was found (short version) Showdown's Gen-7 Gale Wings is literally: if (move.type === 'Flying' && pokemon.hp === pokemon.maxhp) return priority + 1; The job was to find that "hp === maxhp" gate in the ROM and delete it. Same wall as before - the logic is event-dispatched, not a hardcoded if (ability == GaleWings), so the on-disk binary is unhelpful. This time the breakthrough came from two save states + a live hardware watchpoint: 1. Save-state static pass narrowed it down: there's no cmp #0xB1 (Gale Wings' ability ID) anywhere in the battle module, confirming it's dispatched. The priority logic turned out to live in the core executable (code.bin), reachable via a mapping I derived from the save state (blob = vaddr − 0x100000 + 0x1266A). 2. Live watchpoint (a small Python GDB-stub script) on the Gale Wings Pokémon's HP, run in a fresh battle at full HP vs. below full HP, caught every function that reads HP during the turn. Cross-referencing those against a static scan found a clean IsFullHP(mon) helper (curHP == maxHP -> bool) at 0x7663BC. 3. Of the 13 registered event-handlers that call IsFullHP, exactly one - the handler for the priority event 0x11 at 0x7B74E4 - also checks move type == Flying and adds 1 to priority. That's Gale Wings, byte-for-byte matching Showdown: bl IsFullHP ; curHP == maxHP ? cmp r0, #0 ; beq skip ; <-- the Gen-7 nerf (this branch becomes NOP) ... GetMoveType == 2 (Flying) ? ... GetPriority -> +1 -> SetPriority NOP the one branch and the +1 applies regardless of HP, while the Flying-type check stays intact. Here's a detailed breakdown of Gale Wings in the Battle Engine for more information. I will be sharing the expanded details of each of these modifications in these separate links so as not to "clog" up these forums lol --- Chapter 3: How to make Parental Bond's second hit do 50% damage instead of 25% What this does: restores Gen 6 Parental Bond in Ultra Sun / Ultra Moon - the second hit deals half damage instead of the Gen 7 quarter. Tested and working in Azahar. --- The fix (if you just want it) In `attle.cro (from the RomFS), change one byte: Offset: 0x24EAC Before: 01 0B A0 13 (`movne r0,#0x400` = 0.25×) After: 02 0B A0 13 (`movne r0,#0x800` = 0.5×) Same save-state gotcha: test in a fresh battle after a clean boot, not a loaded save state. All of these patches are independent and coexist in one Battle.cro. --- How it was found (short version) Showdown's Gen-7 Parental Bond applies chainModify(0.25) to the second hit; Gen 6 was 0.5. So the task was to find the per-hit damage multiplier and double the nerfed value. The trick was not to chase the ability ID (185 / 0xB9) - event-dispatched engines don't keep tidy "if (ability == ParentalBond)" branches, and my first attempt keyed off the wrong ability byte and did nothing in-game. Instead I chased the damage math: - The engine uses Q12 fixed-point multipliers (0x1000 = 1.0x, 0x800 = 0.5x, 0x400 = 0.25x). - In the move-execution function (@vaddr 0x701D68), on the live 2nd-hit call chain, the 2nd+ strike of a reduced multi-strike move loads 0x400 (the Gen 7 quarter) and feeds it to the damage builder (0x75BCE4); the first hit uses 0x1000. - That 0x400 is an instruction immediate at @vaddr 0x701EAC. Changing the encoded value 0x01 -> 0x02 makes it 0x800 (0.5x). The first hit (1.0x path) and ordinary multi-hit moves (Bullet Seed, etc., which take the 1.0x path) are untouched - only the reduced second strike changes. Live-confirmed: with a Parental Bond user vs a fixed target, hit 1 = 50, hit 2 = 24 (ratio ~ 0.48, i.e. half), where Gen 7 had it at a quarter. Numbers read off-screen and cross-checked against the Smogon calc. Here's a link to further documentation on how this was made possible. --- Chapter 4: How to buff Soul Dew back to Gen 3-6 mechanics This is the big one, and it's not a byte flip - Gen 7 deleted the stat logic and replaced it with a +20% Psychic/Dragon move-power effect. I disassembled the Gen-6 handler out of ORAS's DllBattle.cro, rewrote it for USUM's engine, and injected it as a new handler into a code cave in Battle.cro, then repointed Soul Dew's existing handler at it. - Mechanism: event 0x47 (damage modifier), arg 0x35 (Q12 multiplier). Offense sets 0x1800 (1.5x), defense sets 0xAAB (0.667x incoming = +50% Sp. Def). Special-category gate GetEventArg(0x1e)==2; species 0x17C/0x17D (covers Mega formes too). - Code cave: the alignment padding between .text and .rodata (file 0xFC974/vaddr 0x7D9974) - genuinely free at runtime and inside .text's executable page. (The obvious-looking interior "zero gaps" are relocated pointer tables - zero on disk, overwritten at load. That trap cost me three crashes; validate caves against the loaded RAM image, not the file.) - Verified in-game: Psychic (resisted) dealt 12 to a Lv50 Latios - below the 15-damage floor any unboosted Slowbro could deal -> Sp. Def boost proven; Oblivion Wing (non-STAB) chunked a bulky Slowbro ~50%/hit -> Sp. Atk boost proven. Here's the complete walkthrough and documentation of how Soul Dew's un-nerf was made possible. --- Last Remarks Because two of these change behavior, I also edit the matching ability/item descriptions in the message archive (a/0/3/2, English: ability descriptions = bank 102, item descriptions = bank 39) so the in-game text isn't misleading. Done with a small Gen-7 text encoder that rebuilds the archive so every other string stays byte-identical, then re-fixes IVFC. - **Gale Wings** -> "Gives priority to the Pokémon's Flying-type moves." (drops "when HP is full") - **Soul Dew** -> "…It raises its Sp. Atk and Sp. Def stats." - **Prankster / Parental Bond** -> no text change (their descriptions never stated the nerfed numbers). Here is the link to some patches I created to make life easier for people (EXPERIMENTAL): https://github.com/isleep2late/Un-Nerf-Compendium (I will be actively maintaining this repository.) Let me know if you have any questions or need help with anything! -IS2L
×
×
  • Create New...