• Our software update is now concluded. You will need to reset your password to log in. In order to do this, you will have to click "Log in" in the top right corner and then "Forgot your password?".
  • 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.

[EM][FR] Pokemon Overworld Form(e) change.

Trainer 781

Guest
0
Posts
    Pokemon Overworld Form(e) Change Project

    The Battle Engine Upgrade code only handles the form(e) changes that happen in Battle.
    So, here is a separate project made by me in C and python which contains the code for different types of form(e) changes that not happen in the Battle but the Overworld.

    So why there is an another form(e) change resource thread when one already exists?
    1. Some of the routines here are specially coded to be used in conjunction with the Battle Engine Upgrade. The existing form(e) change routines in PC might not work without modifying them.
    2. It also provides the complex Rotom form change special move handling with mechanism to automatically generate scripts that are hardwired to the Rotom form handling routines.
    3. C is better than ASM.

    What is Implemented?
    Spoiler:


    What is Left?
    Spoiler:


    Source Code:-

    Installation instructions:-
    Spoiler:


    Setting up different form(e)s:-
    Spoiler:


    BUGS/Oddities:-
    Spoiler:


    Major Changes:-
    Spoiler:


    Credits:-
    Spoiler:
     
    Last edited:

    LCCoolJ95

    Limited Capacity
    638
    Posts
    14
    Years
  • For the dynamic offsets, I would recommend using this:

    #freespace 0xFF
    #dynamic 0x9C0B20

    This only overwrites FF bytes, and not 00 and FF, because overwriting 00 could lead to possible graphical and sound errors.

    Also, the Rotom and Deoxys scripts are not working...
     
    Last edited:

    Trainer 781

    Guest
    0
    Posts
    For the dynamic offsets, I would recommend using this:

    #freespace 0xFF
    #dynamic 0x9C0B20

    This only overwrites FF bytes, and not 00 and FF, because overwriting 00 could lead to possible graphical and sound errors.

    Also, the Rotom and Deoxys scripts are not working...
    I see.
    In what ways the scripts aren't working? Care to elaborate?
     

    LCCoolJ95

    Limited Capacity
    638
    Posts
    14
    Years
  • Here's Rotom's script:
    Spoiler:


    Here's Deoxys' script:
    Spoiler:


    It seems that even if Rotom/Deoxys is in the party, the first piece of text reads, and the script ends. It doesn't freeze, the game works after the first string of text. Maybe missing a check for them?
     

    Trainer 781

    Guest
    0
    Posts
    Here's Rotom's script:
    Spoiler:


    Here's Deoxys' script:
    Spoiler:


    It seems that even if Rotom/Deoxys is in the party, the first piece of text reads, and the script ends. It doesn't freeze, the game works after the first string of text. Maybe missing a check for them?

    I fixed an issue where it doesn't support expanded roms. Try doing this again.

    EDIT: Also make sure that you specify a offset in the dynamic such that all of the components of the scripts are placed together (i.e enough free space to insert the whole script).
     

    LCCoolJ95

    Limited Capacity
    638
    Posts
    14
    Years
  • Just tried it today, same thing happened.

    Rotom Script:
    Spoiler:


    Deoxys Script:
    Spoiler:


    Here's my config if that helps any:
    Spoiler:
     

    Trainer 781

    Guest
    0
    Posts
    Just tried it today, same thing happened.

    Rotom Script:
    Spoiler:


    Deoxys Script:
    Spoiler:


    Here's my config if that helps any:
    Spoiler:

    Can you give your test rom patch and save? I'm bit busy in office so directly testing your rom will speed up the process.
     

    LCCoolJ95

    Limited Capacity
    638
    Posts
    14
    Years
  • I sent the ROM and save. Also, when trying to get the offsets.txt, using 'python scripts//insert --debug>offsets.txt', I get this error:
    Spoiler:
     

    Trainer 781

    Guest
    0
    Posts
    I sent the ROM and save. Also, when trying to get the offsets.txt, using 'python scripts//insert --debug>offsets.txt', I get this error:
    Spoiler:

    There was some issue in the script compilation. So I have added goto statements to avoid that issue.

    Download the latest build for updated XSE scripts. This should fix the issue.

    Regarding the debug error, i have disabled the debug parameter for the insert script and instead, it outputs the offsets.txt file for generate_offsets.py by default.
     

    LCCoolJ95

    Limited Capacity
    638
    Posts
    14
    Years
  • Fixed now, but now there's this:
    Have this glitch when leveling up...empty spots in party level up:
    57c37d4f0f2410bdcc3f0cceb19c902f_500.png
     

    Trainer 781

    Guest
    0
    Posts
    UPDATE

    So this project was progressing at a snail's ace (despite not being relatively large) and was likely to go this way. But then The_Learner approached me for learning Rom hacking with C.
    After teaching some basics of rom hacking. I decided to take him in a live project which helped both me and him as the pace of project sped up rapidly and The_Learner became more potent in writing code in C. He is also responsible for porting this repo to Fire Red side by side.

    Anyways, the update consists of forme changes for Shamyin, Hoopa, Genie Trio, & Kyurem as well as the process of inserting Rotom and Deoxys form(e)s have been simplified as they are now built within the code itself (no need for XSE).

    An entire Fire Red port done by The_Learner!

    See the first port for more details and instructions to set them up!
     
    16
    Posts
    7
    Years
    • Seen Aug 7, 2017
    I have met some problems about Kyurem.When I use the dna_splicers to relieve the black or white ,it hints there is no enough place in the party. But it still returns.After I want to fusion again, it hints mulitype fusions are not allowed.
    Another thing is that if I fusion 2 Kyurem black or white, and then I relieve them, the first fusion can not return, just the second. Maybe it is my fault, I didn't understand the saveblock about SAVE_FUSEE, I just write the 0x0203CF64 in Dynamic Pokemon Expansion for EM.
    Sorry about that I don't know how to send a picture, could you understand what I said, it's really sorry about that.THANKS for your great work.
     

    Froosty

    The_Learner
    535
    Posts
    9
    Years
  • I have met some problems about Kyurem.When I use the dna_splicers to relieve the black or white ,it hints there is no enough place in the party. But it still returns.After I want to fusion again, it hints mulitype fusions are not allowed.
    Another thing is that if I fusion 2 Kyurem black or white, and then I relieve them, the first fusion can not return, just the second. Maybe it is my fault, I didn't understand the saveblock about SAVE_FUSEE, I just write the 0x0203CF64 in Dynamic Pokemon Expansion for EM.
    Sorry about that I don't know how to send a picture, could you understand what I said, it's really sorry about that.THANKS for your great work.

    That problem with the 6 poke but reverting..
    That was a silly coding mistake ;-;
    I fixed it actually... get the latest code now.. it should be working.

    The multiple fusion thing will be executed when you have done the fusion or if the saveblock area is not so free (usable)

    and yeah the codes are managed such that only one fusion is possible in the game..
    (Means NO hacking with multiply kyurems) :P
     
    16
    Posts
    7
    Years
    • Seen Aug 7, 2017
    That problem with the 6 poke but reverting..
    That was a silly coding mistake ;-;
    I fixed it actually... get the latest code now.. it should be working.

    The multiple fusion thing will be executed when you have done the fusion or if the saveblock area is not so free (usable)

    and yeah the codes are managed such that only one fusion is possible in the game..
    (Means NO hacking with multiply kyurems) :P

    And how to solve the problem that the saveblock is not free, now if I revert the black or white, the dex information will all be cleared, after fusion again it comes back.
    It is so sorry that I really know noting about the RAM and the saveblock,but I don't want to give up the kyurem. ;-;
    I have used the saveblock hack in the Dynamic Pokemon Expansion for EM and also use the item expasion,so will it cause that the free space is not enough?:(
     

    Froosty

    The_Learner
    535
    Posts
    9
    Years
  • And how to solve the problem that the saveblock is not free, now if I revert the black or white, the dex information will all be cleared, after fusion again it comes back.
    It is so sorry that I really know noting about the RAM and the saveblock,but I don't want to give up the kyurem. ;-;
    I have used the saveblock hack in the Dynamic Pokemon Expansion for EM and also use the item expasion,so will it cause that the free space is not enough?:(

    The dex-information...
    I think we hadnt check that.. if it clears after revert or not ~_~

    and yeah about the saveblock thing ... I too dont know much about it but KDS once told that there is something related to it in Egg's battle engine upgrade..
    and he might be able to tell you.

    Sorry but I too dunno about this saveblock free ram area...
     
    16
    Posts
    7
    Years
    • Seen Aug 7, 2017
    The dex-information...
    I think we hadnt check that.. if it clears after revert or not ~_~

    and yeah about the saveblock thing ... I too dont know much about it but KDS once told that there is something related to it in Egg's battle engine upgrade..
    and he might be able to tell you.

    Sorry but I too dunno about this saveblock free ram area...

    Thanks for your help and reply. Maybe I can try to look for other ways to solve the problem.
     
    Back
    Top