• Just a reminder that providing specifics on, sharing links to, or naming websites where ROMs can be accessed is against the rules. If your post has any of this information it will be removed.
  • Ever thought it'd be cool to have your art, writing, or challenge runs featured on PokéCommunity? Click here for info - we'd love to spotlight your work!
  • Welcome to PokéCommunity! Register now and join one of the best fan communities on the 'net to talk Pokémon and more! We are not affiliated with The Pokémon Company or Nintendo.

How buggy exactly is advance text?

  • 36
    Posts
    3
    Years
    • Seen Jul 26, 2023
    So, I'm making a simple fire red rom hack that I only replace the original kanto pokemon with fakemon of my own.
    Earlier I messed around with advance text, I edited the text of the introduction screen repointed some of it and that's it. after that I began adding more content to the rom with the edited text.
    I playtested the game before I edited the text in advance text, and everything was alright. I didn't playtest the game after the changes though, because at the time I didn't know advance text was buggy. BUT I did playtest the post game after editing the text and everything worked perfectly fine. But I'm still afraid that what I edited with advance text corrupted my game in some way.
    Do you think just editing the title screen could cause big issues? I don't want to repeat making a big portion of my rom hack, and up to this point I didn't see any issues whatsoever.
     
    Honestly? It's more buggy than it's worth, but not so buggy that it would corrupt your entire game the minute it touches it. You should go download hexmaniacadvance, which makes text editing super easy with a handy ctrl+f feature without any of the instability of advance text for future edits. Hexmaniacadvance would also help you check what advance text did to your rom. Search for your new intro text and look at where it got repointed to. If it's a place filled filled with FF bytes, you're probably safe. Since you edited intro text, I would also recommend playtesting the beginning of the game, at least until you get your starter or something, but generally you should be fine. Still, there's no reason to use advance text anymore, hma is both safer and easier.
     
    Honestly? It's more buggy than it's worth, but not so buggy that it would corrupt your entire game the minute it touches it. You should go download hexmaniacadvance, which makes text editing super easy with a handy ctrl+f feature without any of the instability of advance text for future edits. Hexmaniacadvance would also help you check what advance text did to your rom. Search for your new intro text and look at where it got repointed to. If it's a place filled filled with FF bytes, you're probably safe. Since you edited intro text, I would also recommend playtesting the beginning of the game, at least until you get your starter or something, but generally you should be fine. Still, there's no reason to use advance text anymore, hma is both safer and easier.

    First of all, Thanks!
    Yeah and I already tested the beginning of the game, I actually edtied a lot more than the introduction screen, I edited some text up to viridian city. playtested it untill I got the starter and everything was fine, then I realised how buggy is advance text and loaded a backup with the lowest amount of text edits I could find and it was just the introduction screen. So I'm pretty sure the start of the game is fine.
    I have another question tho, what exactly Advance Text does that it's so buggy? and what hexmaniacadvance does that's different?
    Btw I loaded up hexmaniacadvance, how do I search for the introduction screen text I edited?
     
    First of all, Thanks!
    Yeah and I already tested the beginning of the game, I actually edtied a lot more than the introduction screen, I edited some text up to viridian city. playtested it untill I got the starter and everything was fine, then I realised how buggy is advance text and loaded a backup with the lowest amount of text edits I could find and it was just the introduction screen. So I'm pretty sure the start of the game is fine.
    I have another question tho, what exactly Advance Text does that it's so buggy? and what hexmaniacadvance does that's different?
    Btw I loaded up hexmaniacadvance, how do I search for the introduction screen text I edited?

    Use ctrl+f to search for a string. It's not case sensitive. It is sensitive to escape characters like \n so try searching for a line or few words of raw text at a time. It'll give you a list of possible matches. If you get raw byte results, try right-clicking > display as text.

    As for advance text's bugs, they're mainly in its repointing feature. Occasionally it will repoint to bad areas, like areas that aren't free, areas with a string that it already repointed (causing the same string to be used in both events), merging two strings together, etc. If you go and check where text was repointed, you can avoid most of its problems
     
    Use ctrl+f to search for a string. It's not case sensitive. It is sensitive to escape characters like \n so try searching for a line or few words of raw text at a time. It'll give you a list of possible matches. If you get raw byte results, try right-clicking > display as text.

    As for advance text's bugs, they're mainly in its repointing feature. Occasionally it will repoint to bad areas, like areas that aren't free, areas with a string that it already repointed (causing the same string to be used in both events), merging two strings together, etc. If you go and check where text was repointed, you can avoid most of its problems

    Okay Thanks, One last question. so I went and checked about the text and above it there's a row of free space but below it there's only one bite of FF, below that there's some text "the lovely and sweet emm... forgot the name". And below that there's a whole lot of free space. So, I opened up an earlier version of my game without the repointed text, and the "lovely and sweet" line was right below a completely different text that wasn't related to anything I edited or saw. BUT I went and checked where this line is located, and the text I edited in the original rom was in 71A420 (nice) and the text I don't recognize in the earlier version of the game is located at 18DC40. What does this exactly mean? did it overwrite something?
    Btw as you can probably see by now, I don't understand so much about hex editing, so sorry if I'm asking too many questions.

    EDIT:
    Never mind, I just realised something stupid, So apparently I checked the two roms and it's not the same line, in the repointed rom it says the line "the lovely and sweet.... mmm... forgot the name" and in the earlier rom it says "the lovely and sweet clefairy" so it was probably edited by me and I completely forgot about this. I probably didn't want the npc to say clefairy so I changed it to forgot the name. now I don't know if I changed other stuff but nothing else is located at this area so I probably didn't edit anything else, I don't think and remember so at least.
    So to clarify, the repointed text of the introduction screen, plus the repointed clefairy text is located beneath a row of FF and above a big portion of FF's so I think it's completely fine right?
     
    Last edited:
    now I don't know if I changed other stuff but nothing else is located at this area so I probably didn't edit anything else, I don't think and remember so at least.[/B]
    Technically it doesn't have to be about the area: usually tools don't stick to one FF area for repointing. They'd use one, then use a different one, to maximize space in case you reedit your strings. Not entirely sure how advance text works with that though

    So to clarify, the repointed text of the introduction screen, plus the repointed clefairy text is located beneath a row of FF and above a big portion of FF's so I think it's completely fine right?[/B]

    Yes, generally.
    Since you have an unchanged rom, the even better method would be to find the offset of your new repointed text, go to that offset in the unchanged rom, and check whether what was there originally was simply FF bytes. If so, you have nothing to worry about.
     
    Technically it doesn't have to be about the area: usually tools don't stick to one FF area for repointing. They'd use one, then use a different one, to maximize space in case you reedit your strings. Not entirely sure how advance text works with that though

    Well, I don't remember anything else I edited, hope I didn't edit anything.

    Yes, generally.
    Since you have an unchanged rom, the even better method would be to find the offset of your new repointed text, go to that offset in the unchanged rom, and check whether what was there originally was simply FF bytes. If so, you have nothing to worry about.

    Okay I did that and everything's fine, Thanks!
     
    As for advance text's bugs, they're mainly in its repointing feature. Occasionally it will repoint to bad areas, like areas that aren't free, areas with a string that it already repointed (causing the same string to be used in both events), merging two strings together, etc. If you go and check where text was repointed, you can avoid most of its problems

    Hi, remember me? well turns out I had a problem with the advance text edits after all. One of the texts I edited a while back with advance text shows up where it shouldn't be.
    I edited a text that a random NPC says about clefairy. the NPC said: "the lovely and sweet clefairy". and I changed it to "the lovely and sweet... forgot the name" Even tho I did Check and it was repointed to a safe place, the text appeared somewhere it shouldn't appear. When you talk to blue at the pokemon LAB before the whole event of going outside of pallet town to talk with proffesor oak and choosing your starter, Blue says "the lovely and sweet forgot the name".

    The fact that blue says this is not the problem here I can fix it in seconds, what I'm worried about is how did this happen, and if it corrupted other parts of the game. is there a way to check and know? do you know what can I do to check what happened? is the game completely ruined because of this?
    Thanks.
     
    Hi, remember me? well turns out I had a problem with the advance text edits after all. One of the texts I edited a while back with advance text shows up where it shouldn't be.
    I edited a text that a random NPC says about clefairy. the NPC said: "the lovely and sweet clefairy". and I changed it to "the lovely and sweet... forgot the name" Even tho I did Check and it was repointed to a safe place, the text appeared somewhere it shouldn't appear. When you talk to blue at the pokemon LAB before the whole event of going outside of pallet town to talk with proffesor oak and choosing your starter, Blue says "the lovely and sweet forgot the name".

    The fact that blue says this is not the problem here I can fix it in seconds, what I'm worried about is how did this happen, and if it corrupted other parts of the game. is there a way to check and know? do you know what can I do to check what happened? is the game completely ruined because of this?
    Thanks.

    Hmm... seems like blue's text pointer was also updated during the repoint. Find the text in hexmaniacadvance as text, right-click on the first byte which should have little blue arrow, go to anchor, find all sources. That should show you all the places where the text is being used, including the npc, blue, and anything else. It's not perfect, but it works well.
    Your game is definitely not completely ruined because of this. At the very worst, this text may be called in other wrong places, but generally these errors would happen in a single instance and not cascade. The find sources is a good start, but even if that doesn't work, I wouldn't worry about it too much past blue
     
    Hmm... seems like blue's text pointer was also updated during the repoint. Find the text in hexmaniacadvance as text, right-click on the first byte which should have little blue arrow, go to anchor, find all sources. That should show you all the places where the text is being used, including the npc, blue, and anything else. It's not perfect, but it works well.
    Your game is definitely not completely ruined because of this. At the very worst, this text may be called in other wrong places, but generally these errors would happen in a single instance and not cascade. The find sources is a good start, but even if that doesn't work, I wouldn't worry about it too much past blue

    I found the original place for the text with hexmaniacadvance using an old version of the game without the text changes as a reference, the problem is that hexmaniacadvance doesn't recognize those bytes as text and it fails to automatically find text at this location.
    The best scenario is that I would be able to change this and restore this to it's original state. but If I won't be able to do that it's not that big of a problem I could always write some text that matches both of these events.
    Question is if the fact that one text can appear in two different areas can damage the game somehow?
     
    I found the original place for the text with hexmaniacadvance using an old version of the game without the text changes as a reference, the problem is that hexmaniacadvance doesn't recognize those bytes as text and it fails to automatically find text at this location.
    The best scenario is that I would be able to change this and restore this to it's original state. but If I won't be able to do that it's not that big of a problem I could always write some text that matches both of these events.
    Question is if the fact that one text can appear in two different areas can damage the game somehow?

    The same text appearing in two areas will not damage the game - it's actually a trick often used to save space. No point storing the same text twice over after all!

    Hma's automatic text finding only works when there's an FF byte directly before the text, so that's not a problem with your game or anything, it's just how hma auto-finds the start of the text. You could temporaily change that byte before it to FF and do your edit, then change the byte back to what it was, and no harm would be done
     
    Back
    Top