• 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] Battle Engine Upgrade (On Halt, Will undergo reboot!)

Status
Not open for further replies.
794
Posts
10
Years
  • Great work you guys! Awesome project.
    I wanted to ask a dumb question. In the config.h file in the form indexes, you mean that i have to create a pokemon like any other for every form, and placce the index over there right?

    And also. I found a little error in the asm_defines.s file. You have two moves macros with the same id. Both HOLD_HANDS and THOUSAND_WAVES are 0x267, but HOLD_HANDS should acctually be 0x25f. I suppose it overwrites something at some point.

    1. No, you don't have to create a pokemon for every form. As you can see they have values 1000 and above by default. If you don't have the pokemon in your game, simply give it a not existing index(just make sure they're all different).

    2. Thanks for pointing that out. I fixed it.
     
    148
    Posts
    17
    Years
    • Seen Aug 2, 2023
    I'm not sure if this fits into the project's goals, or whether it's even possible for that matter, but what are the chances of having a few extra key items coded into Emerald? The ones I'm thinking of specifically are the VS Seeker and the gen 4 version of the Pokeradar (complete with the ability to have increased shiny odds). I have wanted to see those items in Emerald for the longest time, and I figured that if anybody could do it, it'd be you guys.

    If these aren't a part of the project goals for feature requests, then I apologise. I will try to think of something more appropriate for my next suggestion.
     
    132
    Posts
    9
    Years
    • Age 23
    • Seen Apr 21, 2024
    downloaded the latest version, and despite having no problems with any previous version and the pokemon and item expansion ones working perfectly fine, i can't manage to install it. says "devkit does not exist in your path variable." considering the last update says that it automatically seeks out devkit, i'm assuming that has something to do with it? probably something worth looking into
     

    Deokishisu

    Mr. Magius
    990
    Posts
    18
    Years
  • downloaded the latest version, and despite having no problems with any previous version and the pokemon and item expansion ones working perfectly fine, i can't manage to install it. says "devkit does not exist in your path variable." considering the last update says that it automatically seeks out devkit, i'm assuming that has something to do with it? probably something worth looking into

    You need to add it to your PATH manually. You missed the box when installing devkit that allowed it to put itself in your PATH variable.

    How to add something to the PATH system variable.

    At this point, Dizzy, you should probably put how to do this in the first post.
     
    794
    Posts
    10
    Years
  • Where does free space start in Emerald? It would like to apply every routine after another one to make it clean.

    Free space starts at 0x08E3CF64.

    downloaded the latest version, and despite having no problems with any previous version and the pokemon and item expansion ones working perfectly fine, i can't manage to install it. says "devkit does not exist in your path variable." considering the last update says that it automatically seeks out devkit, i'm assuming that has something to do with it? probably something worth looking into

    Yes, the new script assumes the user has the devkit arm in its path which was not the case earlier. I updated the script, so it will (try to) use a default location for the devkit if it's not present in the path variable.

    I'm not sure if this fits into the project's goals, or whether it's even possible for that matter, but what are the chances of having a few extra key items coded into Emerald? The ones I'm thinking of specifically are the VS Seeker and the gen 4 version of the Pokeradar (complete with the ability to have increased shiny odds). I have wanted to see those items in Emerald for the longest time, and I figured that if anybody could do it, it'd be you guys.

    If these aren't a part of the project goals for feature requests, then I apologise. I will try to think of something more appropriate for my next suggestion.

    This is exclusively a battle-related project, so we won't be adding the features you listed.
    Now, we may (or may not) consider doing those things in the future. Though VS Seeker got replaced by Pokenav's Match Calling function, so I don't think having both is necessary.
    As for the Pokeradar, who knows, maybe when I'm bored I'll try to come up with something. :P

    You need to add it to your PATH manually. You missed the box when installing devkit that allowed it to put itself in your PATH variable.

    How to add something to the PATH system variable.

    At this point, Dizzy, you should probably put how to do this in the first post.

    Nah, not going to complicate the process more. {XD}
    I just edited the script, so even if it's not in the path, it should still get the job done.
     
    17
    Posts
    9
    Years
    • Seen Sep 3, 2023
    Sorry if this has been answered, but is there a way to JUST add in the updated/new abilities? Almost everything else is stuff I've either done myself through other methods, or stuff I don't want. I'd like to keep unnecessary data estate in my ROM to a minimum :V
     
    794
    Posts
    10
    Years
  • Sorry if this has been answered, but is there a way to JUST add in the updated/new abilities? Almost everything else is stuff I've either done myself through other methods, or stuff I don't want. I'd like to keep unnecessary data estate in my ROM to a minimum :V

    No. We rewrote too much of the engine.
     
    132
    Posts
    9
    Years
    • Age 23
    • Seen Apr 21, 2024
    i'd advise either making the move_table.c a lot more user-friendly or putting a tutorial on how to change it for people who don't want to constantly go back and redo every move alteration they've made when they update the base. as it is right now, it's practically illegible. take

    SCRATCH
    {0x00, 0x37, 0x00, 0x64, 0x1E, 0x00, 0x00, 0x00, {0x33}, 0x00, 0x00, 0x09}, //

    as an example- none of these bytes mean anything to the average person, and as it is right now, there's no way of finding out other than irritating trial and error. i realize that these are hex bytes matching up to different parts of the move (type, accuracy, PP, etc), but... none of these bytes translate to 40 (for the BP) in hex.

    could you at least list what each byte corresponds to data-wise somewhere? the only option for move editing right now is PGE or G3T, and while there's nothing wrong with those programs, again, it's annoying to redo all of them every time the base gets updated (which is extremely frequently).

    on a different note, zen headbutt is currently incorrectly named "zen heabutt", origin pulse is named originepulse even though the original still fits within the character limits, and skill link's description is missing a period at the end.
     

    Gamer2020

    Accept no Imitations!
    1,062
    Posts
    15
    Years
  • i'd advise either making the move_table.c a lot more user-friendly or putting a tutorial on how to change it for people who don't want to constantly go back and redo every move alteration they've made when they update the base. as it is right now, it's practically illegible. take

    SCRATCH
    {0x00, 0x37, 0x00, 0x64, 0x1E, 0x00, 0x00, 0x00, {0x33}, 0x00, 0x00, 0x09}, //

    as an example- none of these bytes mean anything to the average person, and as it is right now, there's no way of finding out other than irritating trial and error. i realize that these are hex bytes matching up to different parts of the move (type, accuracy, PP, etc), but... none of these bytes translate to 40 (for the BP) in hex.

    could you at least list what each byte corresponds to data-wise somewhere? the only option for move editing right now is PGE or G3T, and while there's nothing wrong with those programs, again, it's annoying to redo all of them every time the base gets updated (which is extremely frequently).

    on a different note, zen headbutt is currently incorrectly named "zen heabutt", origin pulse is named originepulse even though the original still fits within the character limits, and skill link's description is missing a period at the end.

    35cduKa.png

    Au9UG
     
    794
    Posts
    10
    Years
  • i'd advise either making the move_table.c a lot more user-friendly or putting a tutorial on how to change it for people who don't want to constantly go back and redo every move alteration they've made when they update the base. as it is right now, it's practically illegible. take

    SCRATCH
    {0x00, 0x37, 0x00, 0x64, 0x1E, 0x00, 0x00, 0x00, {0x33}, 0x00, 0x00, 0x09}, //

    as an example- none of these bytes mean anything to the average person, and as it is right now, there's no way of finding out other than irritating trial and error. i realize that these are hex bytes matching up to different parts of the move (type, accuracy, PP, etc), but... none of these bytes translate to 40 (for the BP) in hex.

    could you at least list what each byte corresponds to data-wise somewhere? the only option for move editing right now is PGE or G3T, and while there's nothing wrong with those programs, again, it's annoying to redo all of them every time the base gets updated (which is extremely frequently).

    You're wrong here pal. The struct is explained in the battle_structs.h file here.
    Spoiler:

    You also copied ViceGrip's line instead of Scratch's which is
    Code:
    {0x00, 0x28, 0x00, 0x64, 0x23, 0x00, 0x00, 0x00, {0x33}, 0x00, 0x00, 0x09}, //SCRATCH
    0x28 is 40 in hex and it's the move's BP.
    If you made changes to the move_table.c just copy the file, download the update and replace it.

    on a different note, zen headbutt is currently incorrectly named "zen heabutt", origin pulse is named originepulse even though the original still fits within the character limits, and skill link's description is missing a period at the end.
    Will fix them soon.
     
    132
    Posts
    9
    Years
    • Age 23
    • Seen Apr 21, 2024
    ah, alright, i see. apologies for the inconvenience, i missed that file completely.

    another question, would this base be compatible with doesnt's routine to give trainer pokemon EVs? or would that be something that would be rendered ineffective due to the updated engine?
     
    9
    Posts
    12
    Years
    • Seen Apr 27, 2023
    Can you help me change coil to have a similar effect of the charge move, but instead of powering a eletric type it increase the damage of the next poison attack?

    Also, it's possible to change max EV value total and max EV per stat?
     
    91
    Posts
    14
    Years
    • Seen Feb 22, 2023
    Can you help me change coil to have a similar effect of the charge move, but instead of powering a eletric type it increase the damage of the next poison attack?

    Also, it's possible to change max EV value total and max EV per stat?

    It should be managable to increase the EV total, hence you could have 255 in each stat. As for increasing the individual EV value of each stat: Not so much - Those values have to be saved somewhere, taking up precious space. There are two extra bytes in the Pokémon structure you could use, but you would have to rewrite some routines to do some more complicated reads from those to essentially get a max value of 1023 for each EV stat and 2047 for 4 stats (leaving 0 bit of extra space in the structure)

    I don't think anyone has ever done something like that so it would be on you to implement.
     
    Status
    Not open for further replies.
    Back
    Top