• 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.

LCCoolJ95

Limited Capacity
638
Posts
14
Years
  • I like the fainting system, but there's a glitch. If you battle a Pokémon during a sandstorm, that will be damaged by the sandstorm, and you knock it out, it will apparently still be affected by the sandstorm...even though it's knocked out haha
     
    794
    Posts
    10
    Years
  • I like the fainting system, but there's a glitch. If you battle a Pokémon during a sandstorm, that will be damaged by the sandstorm, and you knock it out, it will apparently still be affected by the sandstorm...even though it's knocked out haha

    Should be fixed
     

    LCCoolJ95

    Limited Capacity
    638
    Posts
    14
    Years
  • Cool. Also, I saw that Power Items were included, and I saw the extras required for each. But, will it check if the item isn't a Macho Brace and make sure it is a Power Weight? (extras are the same)
     
    11
    Posts
    8
    Years
    • Seen Feb 28, 2021
    Flame burst's splash damage always hits the left opponent (if you target the left opponent they take initial damage, then take the flame burst splash)
     
    11
    Posts
    8
    Years
    • Seen Feb 28, 2021
    Is there any documentation on how your AI behaves? Or should I just go through the scripts?
     

    Trainer 781

    Guest
    0
    Posts
    Cool. Also, I saw that Power Items were included, and I saw the extras required for each. But, will it check if the item isn't a Macho Brace and make sure it is a Power Weight? (extras are the same)
    Yes.

    I know you're re-writing the AI to be able to use new moves, but are you also going to make them legitimately smart? Like being able to use strategies?
    It's part of the future plan. If I were to start it, I would do after finishing GEN7.

    Flame burst's splash damage always hits the left opponent (if you target the left opponent they take initial damage, then take the flame burst splash)
    Fixed! Derped there.

    Is there any documentation on how your AI behaves? Or should I just go through the scripts?
    Well you can look at the tai_scripts.s file to get the idea of the flow of AI move rating system. Trainer_al.c for some concrete implementations of the AI scripting commands.
     
    11
    Posts
    8
    Years
    • Seen Feb 28, 2021
    I noticed there's more than one AI, how do I switch between them or implement my own scripts?

    Using gen3tools there's an AI value here:
    [EM] Battle Engine Upgrade (On Halt, Will undergo reboot!)


    Is this what I'm looking for?
    I notice there's only 5 AI scripts actually written, is that all that's used by default?

    EDIT: And wild pokemon, do you implement AI for them, or are they simply randomly choosing moves?
     
    Last edited:

    MrDollSteak

    Formerly known as 11bayerf1
    858
    Posts
    15
    Years
  • Some crazy good progress has been made! As I think I mentioned to KDS before, it could be a good idea to have slightly different builds for Gen 6 vs Gen 7 effects, or to have that customisable in some way. I'm personally not a fan of some of the nerfs to abilities like Gale Wings and having some way to toggle that could be good!
     
    11
    Posts
    8
    Years
    • Seen Feb 28, 2021
    Rollout's animation seems glitchy when in a double battle and an NPC uses it. The wrong pokemon move around. If you level up after rollout is used, the game freezes.

    Doesn't occur in 1v1.

    EDIT: I'm going to add these as issues on the repo, and anything else I find I'll make issues there instead of posting here.
     
    Last edited:

    Blah

    Free supporter
    1,924
    Posts
    11
    Years
  • Some crazy good progress has been made! As I think I mentioned to KDS before, it could be a good idea to have slightly different builds for Gen 6 vs Gen 7 effects, or to have that customisable in some way. I'm personally not a fan of some of the nerfs to abilities like Gale Wings and having some way to toggle that could be good!

    You guys should utilize github branches to realize this rather than making separate repos.

    I wanted to ask if you guys had any plans to convert the hex for the animations into actual scripting commands, as animations are scripts, or use ASM macros for them. It's quite unreadable in it's hex state, and sort of defeats the purpose of having it open source if the data is still in an obfuscated form.

    I'd also like to see this extend a little beyond what it is now and encompass the entire battle engine. The need to reference and reverse engineer the main ROM hasn't been eliminated and imo that's normally the largest advantage to these sorts of open source projects. Nonetheless, great work so far and I'm looking forward to see how things progress. I had the opportunity to speak with Dizzy about a few readability/macro introductions to the code and I'm happy to see that's being working on daily.
    :thumbsup:
     
    35
    Posts
    8
    Years
  • Checked the animation script for scald on Github, so cool! Is it working right now? Or are you making some command line program to compile it? Really cool concept and would make animations so much easier if it works out
     
    59
    Posts
    7
    Years
    • Seen Sep 1, 2017
    When building the ROM I get "'python' is not recognized as an internal or external command, operable program or batch file." when typing "python scripts//build". Should I reinstall Python 3.5?
     
    794
    Posts
    10
    Years
  • When building the ROM I get "'python' is not recognized as an internal or external command, operable program or batch file." when typing "python scripts//build". Should I reinstall Python 3.5?

    Yes, it happens when it's not added to PATH. While installing make sure to tick where it says "add to path" or something similar.
     

    Trainer 781

    Guest
    0
    Posts
    I noticed there's more than one AI, how do I switch between them or implement my own scripts?

    Using gen3tools there's an AI value here:
    [EM] Battle Engine Upgrade (On Halt, Will undergo reboot!)


    Is this what I'm looking for?
    I notice there's only 5 AI scripts actually written, is that all that's used by default?

    EDIT: And wild pokemon, do you implement AI for them, or are they simply randomly choosing moves?
    There are only 4 AI scripts. The AI value is the correct one pointed in the tool.
    Wild pokes don't have AI, they randomly chose moves. It doesn't make any sense to do so IMO.
    For info about battle AI, search for Knizz's battle AI research thread in the R&D section or contact Dizzy.



    Some crazy good progress has been made! As I think I mentioned to KDS before, it could be a good idea to have slightly different builds for Gen 6 vs Gen 7 effects, or to have that customisable in some way. I'm personally not a fan of some of the nerfs to abilities like Gale Wings and having some way to toggle that could be good!
    The Gen 7 toggle will be implemented using #if defines. There will be no need for a separate build at all.

    You guys should utilize github branches to realize this rather than making separate repos.

    I wanted to ask if you guys had any plans to convert the hex for the animations into actual scripting commands, as animations are scripts, or use ASM macros for them. It's quite unreadable in it's hex state, and sort of defeats the purpose of having it open source if the data is still in an obfuscated form.

    I'd also like to see this extend a little beyond what it is now and encompass the entire battle engine. The need to reference and reverse engineer the main ROM hasn't been eliminated and imo that's normally the largest advantage to these sorts of open source projects. Nonetheless, great work so far and I'm looking forward to see how things progress. I had the opportunity to speak with Dizzy about a few readability/macro introductions to the code and I'm happy to see that's being working on daily.
    :thumbsup:
    For the time being, the most of the existing animations will stay hex. A new move
    animation by me or Dizzy for the remaining moves will be definitely be in script form.
    Move animations are important, but me and Dizzy are focusing on completing the main engine part first till Gen 7. Then we'll move to animations too and after all animations are completed we'll start converting every animation to scripts.
    After that I plan to put out research into the real Battle
    Engine and hope to get it fully disassembled and translated in C. Currently, we have all bases covered to implement Gen 7 abilities, moves, items and Z moves without any further Gen 3 research work I believe.

    Checked the animation script for scald on Github, so cool! Is it working right now? Or are you making some command line program to compile it? Really cool concept and would make animations so much easier if it works out
    Yes the animation works. No need for any external program. They are already handled by ASM macros just like battle scripts, trainer AI scripts etc. are part of the build code. See the battlescriptformoves.s file to get an idea of how move effects are handled. Future animations will be handled in a similar fashion.

    When building the ROM I get "'python' is not recognized as an internal or external command, operable program or batch file." when typing "python scripts//build". Should I reinstall Python 3.5?
    This must be the case of python directory path not being added to your path variable. Before proceeding to install, check the Add to Path option in the installer.
     

    Diverien

    I believe in you
    5
    Posts
    7
    Years
  • Is there some config setting I'm missing? I've gotten the engine running, but Fairy type wasn't implemented and no new abilities seem to be present in the rom either. The experience system and other such minor changes appear to have been applied, but I can't seem to find out what I did wrong to not get the new shiny things.
     

    Trainer 781

    Guest
    0
    Posts
    Is there some config setting I'm missing? I've gotten the engine running, but Fairy type wasn't implemented and no new abilities seem to be present in the rom either. The experience system and other such minor changes appear to have been applied, but I can't seem to find out what I did wrong to not get the new shiny things.

    Use a Pokemon Editor like PGE to see the changes.
     

    Diverien

    I believe in you
    5
    Posts
    7
    Years
  • Use a Pokemon Editor like PGE to see the changes.
    I actually used PGE to double check and verify that the changes didn't occur. My primary points for testing were to catch a Ralts, which didn't have the Fairy typing, and then I checked in PGE, to find that the Fairy typing wasn't put into the game. I also checked the abilities to see if those had been updated, checking for Super Luck on Absol, which wasn't present. I can find the names in the files, so I presume it's something silly on my end, but I cannot seem to get it to work.
     
    Last edited:

    Trainer 781

    Guest
    0
    Posts
    I actually used PGE to double check and verify that the changes didn't occur. My primary points for testing were to catch a Ralts, which didn't have the Fairy typing, and then I checked in PGE, to find that the Fairy typing wasn't put into the game. I also checked the abilities to see if those had been updated, checking for Super Luck on Absol, which wasn't present. I can find the names in the files, so I presume it's something silly on my end, but I cannot seem to get it to work.

    Well, you aren't able to see the changes because the engine does not update the base data of pokemon.

    For example, The fairy type is there, but the installing the engine does not automatically change Clefairy to a Fairy type.

    It is the job of the hacker to change Clefairy to a Fairy type using a move editor.

    Similarly, you'll have to set Absol's ability to Super Luck in PGE. (Make sure you run the PGEinidump script to generate the proper ini)
     
    Status
    Not open for further replies.
    Back
    Top