![]() |
1 Attachment(s)
[FR] EV-reducing BerriesFind 0x49C bytes of free space at a word-aligned address, and take note of it. Set the EV-reducing berries' Type to Type 1 ("Out of battle"). Set the items' Field script pointers to the address you noted, plus 1. Set the items' Battle script pointer to 0xA2239. Assemble the following routine, changing 0xXXXXXX to the address you noted (not plus 1). Open the generated .bin file, navigate to the location address, and select 0x49C bytes. Copy the bytes and paste them in your ROM, at the same address. Code:
This will introduce the Pomeg Glitch; see tkim's post here on how to fix it. |
Quote:
I have two questions though. Can I assume that the luxury ball mentioned in the routine affects the happiness the berries give out? Does the routine also check if the player is at the same location as the berry user's met location and if the berry user is holding a soothe bell at the time (unless Emerald's behaves otherwise)? Here's where my questions are based from: https://bulbapedia.bulbagarden.net/wiki/Friendship#Boosting_friendship Sorry if I'm overwhelming you. |
Quote:
|
Quote:
edit: here's what I did: is this okay, or do I have to change registers too? Code:
|
Quote:
|
Quote:
You could probably use r6 for the add_ten/five/two_happiness and also 'add r6, #1' for met location bonus/luxury ball bonus. edit: here's a fix for ease! Code:
|
Quote:
|
Spherical Ice' [FR] EV-reducing Berries does in fact bring back the Pomeg Glitch. If you want to fix this, go to offset 0x3E742 and make the following change:
00 29 04 D1 -> 02 29 04 DC Credits to HackMew: https://www.pokecommunity.com/showthread.php?t=207217 Note: Despite what Wichu said about Pomeg no longer being usable on Shedinja in that thread- I've tested it and it works. I'm also not aware if this change affects anything else during gameplay, so if anybody else could chime in... |
I wonder if it was possible to make pc accessible from start menu in fire
|
Toggle Oak Text in Trainerbattle 0x9 [FR]
Building off of another post in the Quick Research and Development thread about trainerbattle 0x9, turns out that changing the reserved byte from 0x3 to 0x0 in trainerbattle 0x9 removes the text, but also causes you to white out instead of continue with the script if you lose. This routine hijacks the trainerbattle command to use variable 0x8000 to toggle Oak's text on or off, while keeping the same functionality of continuing the script even if you lose the battle. I mentioned this in my linked post, but 0x1 is also written to variable 0x800D if you lose, allowing you to branch the script based on your battle result. Here is the code/insertion instructions: Code:
Code:
|
I fixed the issue of Squeetz's Synchronize routine and FBI's Shiny Generator routine conflicting.
Squeetz's routine works by taking the Synchronize Pokemon's nature and setting that BEFORE the PID is generated. Turns out, FBI's Shiny Generator routine is activated afterwards, and completely redoes the PID generation, essentially making Squeetz's routine never actually come into effect. To use both, you can use this combination of both their routines in one. I tested it in my game and it works for all four of these scenarios 1. Not Shiny and no Synchronize Pokemon 2. Not Shiny with a Synchronize Pokemon 3. Shiny and no Synchronize Pokemon 4. Shiny with a Synchronize Pokemon It might not be super efficient, because it loops a lot, but I couldn't find a better way to do it and still get the desired result. Spoiler:
This replaces the Shiny Generator routine, so branch to it at 0x3DB00. You can get rid of the branch at the old Synchronize location since that's not being used. If you use this, be sure to credit both FBI and Squeetz for their original routines. I don't want to take any credit for their hard work. I just merged the two preexisting codes. A note, this particular routine makes Synchronize activate 100% of the time. Squeetz's routine had a 50% chance. If you want that still, you can add some sort of RNG/compare thing. There's already an RNG in the routine, so this shouldn't be too hard to do (I hope. I've never tried it). This also makes Synchronize work with Eggs (I also think, because it did for me, but I hatched the egg immediately after getting it, and I forget when natures are determined.) |
Quote:
What should I do? |
Quote:
|
Quote:
Code:
Code:
|
Quote:
|
I don't know if anyone here has already posted this one,
But i'm sure someone researched this and used it in their hack. (BTW It's Glazed if you don't know) Credits to: TheCreatorofGlazed for the wonderful Idea, BluRose for the Initialization and Touched Sensei for everything else. Here it is: [FR] Text Display Input Routine Basically what this do is get an input from user via naming_function and stores it somewhere in the ram then compare it to some string you can define. Note: I'm not GOOD at ASM so don't judge me if i said something wrong or explained something wrong. Please point it out instead . It's just that those ones who I asked to help me are very GOOOOOOOOOOOOD at ASM. Routine: Spoiler:
Instruction: Spoiler:
That's it . and another one , You can also change the "Rival's Name" text or "PKMN name" if you found out how to do that . It'll be really helpful :) This Routine can be used for many things not just for Password System. You can use it to name People in your game , It's up to you. and also feel free to ask what is what :D |
final edit:
if you want to implement this, stay with this post, i babble a lot. good luck EDIT2: reeeeeee that's hacky af but ok that should work lol. unspoilered post and spoilered previous edit Spoiler:
Quote:
quick correction Spoiler:
and now, adding on to it note: i've not actually gotten the following to work satisfactorily, even when just copying a previous entry directly onto the new one, so i'm considering this incomplete but usable okay so basically we're going to repoint the table at x3E248C which has 5 pointers. there's exactly one pointer to this table, should be at x9DB58 add a new pointer to at least 12 bytes of free space (not hexadecimal). in these bytes, you're going to put some data. now, the sequence goes like this: 1 byte - ida lists this as "pre-filled," meaning you could fill in things automatically? neat, no idea how that would work, though 1 byte - length of entry. max is 13 (0D) 1 byte - image index 1 byte - gender icon shown - 00 no, 01 yes 1 byte - this one seems to change what it looks like when the naming screen is accessed, but it always looks like this anyways http://i.imgur.com/5fbftyO.png 3 unknown bytes 4 bytes - pointer to what the text for the prompt should be (i.e. "YOUR NAME?" "RIVAL's NAME?") * image index can be one of the following values 00 - nothing shows on the shadow thing 01 - player character, probably changes depending on gender 02 - the pc icon, used for renaming boxes (what i use for the password purpose) 03 - pokémon icon (because no pokémon is loaded in r2, we get the question mark) 04 - gary overworld 05 and above reset the game and so we go for what i put to simulate the password 00 0A 02 00 01 00 00 00 XX XX XX 08 which means it is not pre-filled, the password is ten characters long, the icon used is the one for the pc, there is no gender icon, the "access screen" is 01, and the text for the prompt is located at 08XXXXXX. and now for the problem which you all may have caught earlier http://i.imgur.com/5fbftyO.png there's no text, leaving this large blank white space. the pointer i mentioned earlier doesn't seem to affect anything. i even took the rival's entry and pasted it over exactly, and... well, here's the results: http://i.imgur.com/5OBNUPh.png however, editing earlier entries works just finely http://i.imgur.com/HobldVU.png so, um, yeah. happy hacking~ EDIT3: when 0xFB (celebi index) is in r2, we get this when image is set to 03 http://i.imgur.com/KFsrZ78.png can't figure out other two registers though so uh ahaha HOPEFULLY final edit: okay! so now we're going to do this rather hackily but it should work (has worked for my testing). change the bytes at x47614, x9FD1A, xCC038, and xCC112 from 03 to 02. this makes it so that we can use 03 for our purposes. hatching eggs uses 03, but i'm able to nickname hatched pokémon just finely with 02. so, x3E248C, the table. repoint x3E2498 to some freespace. at this freespace, fill out your entry: 00 for unfilled, length of entry up to 0D, 03 for loading the pokémon icon, 00 for no gender icon, 01 00 00 00, and then a pointer to ANY byte that is JUST FF. my entry looks like this: Code:
so, i put BF C8 CE BF CC 00 CA BB CD CD D1 C9 CC BE AD FF (ENTER PASSWORD.) at x2469B4, which is the start of the name of the pokémon index 0xFC, or the empty one right after celebi. and so we edit the beginning of the routine: Code:
and now the product: http://i.imgur.com/tT7q6FD.png i changed the icon to a blue ralts to show customizability. but there you have it i guess, certainly a subpar solution but it does the job. a better way would probably have been to point the prompt of a vanilla routine to somewhere in the ram, but that doesn't permit the custom icons. |
Quote:
Just wanna add something ,if you wan't to modify the icon and change it to something custom. Actually you can, How? Change the type to 03, (Pokemon encounter) now rememeber that it Writes there the Species name and Icon? well , you just need to add your Custom icon and put it somewhere (You add new pokemon actually, Let's you change the icon and Title) . But to be able to choose Pokemon number you need to put a MOV r2, #thePokemonIndexHere. That means that argument3 actually becomes the Pokemon Specie number. You can check out the other Arguments to the funcetion here's what i know: r0 - type () r1 - Pointer to the address you want store the inputted string. in the routine. r2 - the PokemonIndexNumber Edit: Not yet complete actually, By choosing 0x3 as type (Pokemon) you can customize the Icon but the Title will Show + nickname at the end of the Custom Title (Pokemon Name) |
I have a request:
Can someone help me make wild Pokemon jump at the start of a battle just like how they do on the status screen (Fire Red)? Like how when you view a Pokemon on the status screen in Fire Red they shift/jump slightly up and down. Thanks. |
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Quote:
|
Quote:
|
| All times are GMT -8. The time now is 8:46 AM. |
![]()
© 2002 - 2018 The PokéCommunity™, pokecommunity.com.
Pokémon characters and images belong to The Pokémon Company International and Nintendo. This website is in no way affiliated with or endorsed by Nintendo, Creatures, GAMEFREAK, The Pokémon Company or The Pokémon Company International. We just love Pokémon.
All forum styles, their images (unless noted otherwise) and site designs are © 2002 - 2016 The PokéCommunity / PokéCommunity.com.
PokéCommunity™ is a trademark of The PokéCommunity. All rights reserved. Sponsor advertisements do not imply our endorsement of that product or service. User generated content remains the property of its creator.
Acknowledgements
Use of PokéCommunity Assets
vB Optimise by DragonByte Technologies Ltd © 2023.