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

2v1 Bosses and Totem Battles in Essentials [v17.2]

658
Posts
7
Years
  • 2v1 Boss and Totem Battles

    Important Update

    Overview:
    The original aim of this resource was to recreate Totem Battles from Pokémon Sun/Moon. However I decided to make it more customizable and personalized so that this script can be used to create a custom 1v1 or 2v1 Boss Battle. This can also override regular wild encounters in Grass, Caves, Fishing or even other event encounters. So, the boss battles should work almost exactly as the do in the official games, but with more personalization.

    Th main principle of this script is to create a Boss/Totem Battle by overriding what normally happens in a battle. These are what I call Battle Overrides ie. Extra rules that apply to a Boss Battle. I've got a big list of the ones I could think of, and I want to implement a decent way (they are all mentioned in my List of Future Ideas). My plan is that you'd queue up Battle Overrides (in the same way as you queue up what BGM you want to use for the next battle) and then the next battle makes use of them all.


    Features:
    1. Controlling the Following aspects of a Boss/Totem Pokemon right from the event you have used to start the Boss Battle
      • Customization of Battle Music and Victory Jingle
      • Customization of Each Individual part of the Battle Background
      • Customization of Message on Entry in Battle, and on Fainting
      • Customization of the "What will X do?" Message
      • Customization of the Title of the Boss from "wild X" to anything you want.
      • Customization of Stat Stages, Animation and Messages when Pokemon recieves Totem Stat Boost
      • Customization of Catch Rate and Catching Style (Explained in Detail in the Instructions section)
      • Setting up Species, Form, Level, EVs, IVs, Moves, Item, Ability, Shiny Rate, Pokerus Rate and more.
    2. SOS Chaining
    3. Mid Battle Dialogue and More (Details in Instructions)
    4. Compatibility with Dynamax and most new Battle Scripts except Elite Battle System/Elite Battle DX


    Example Battles made using this Script (Outdated):
    Spoiler:



    List of Future Ideas:
    Spoiler:


    Download Linkhttp://www.mediafire.com/file/yn0qocs5w8wj8hn/2v1+Boss+and+Totem+Battles.txt/file
    Please Credit the following people if you use this script.
    Credits:
    Spoiler:



    This script has not been tested with Luka SJ's Elite Battle System/Elite Battle DX. Do use it with it at your own risk


    Instructions
    Spoiler:



    Minor Issues:
    Spoiler:



    Changelog:
    Spoiler:
     
    Last edited:
    32
    Posts
    5
    Years
    • Seen Apr 30, 2024
    This looks incredible! This will work great for the boss battles in my game. Thank you! Testing with EBS btw so I'll update if there are any problems!
     
    1,682
    Posts
    8
    Years
    • Seen today
    Adding a Title for Bosses. Currently only calls the Boss by their name. It should call them "Totem X" or "Rampaging X" or something.
    Eg. Instead of "X used Slash" it should be"Totem X used Slash"
    This one is just a matter of overridding pbThis.
    on phone but
    Code:
    alias totem_pbThis pbThis
    def pbThis(lowercase=false)
      ret=totem_pbThis(lowercase)
      if @battle.isOpposing?(self.index) && BossBattleData::BossTitle
        ret=BossBattleData::BossTitle[(lowercase)? 1:0)]
      end
      return ret
    end
    I think, based off what I read of your code, this should work or at least the gist of it?
    Adding a chance to change the "What will X do?" when in battle.
    The message is set in def pbCommandMenu in the scene.
    You should have no issue changing it once you find the spot.
     
    658
    Posts
    7
    Years
  • Adding a Title for Bosses. Currently only calls the Boss by their name. It should call them "Totem X" or "Rampaging X" or something.
    Eg. Instead of "X used Slash" it should be"Totem X used Slash"
    This one is just a matter of overridding pbThis.
    on phone but
    Code:
    alias totem_pbThis pbThis
    def pbThis(lowercase=false)
      ret=totem_pbThis(lowercase)
      if @battle.isOpposing?(self.index) && BossBattleData::BossTitle
        ret=BossBattleData::BossTitle[(lowercase)? 1:0)]
      end
      return ret
    end
    I think, based off what I read of your code, this should work or at least the gist of it?
    Adding a chance to change the "What will X do?" when in battle.
    The message is set in def pbCommandMenu in the scene.
    You should have no issue changing it once you find the spot.

    Thank you. I added this already. I'm currently trying to implement SOS Chaining and the Battle Effects changing. After that I'll release a new update.
     
    50
    Posts
    4
    Years
    • Seen Oct 17, 2023
    It works for version 16, if not, do you have any future plans to adapt it?
     
    658
    Posts
    7
    Years
  • Update v1.5
    The Script has been updated to v1.5 and the Example Boss Battles should be updated soon.

    The Biggest Change is Mid Battle Scripting, which allows you to Display Dialogue(and do much more) on certain turn numbers or at random. Please read the Instructions for further details.

    Another Big Change is SOS Chaining in Battle which is fully customisable. Please read the Instructions for further details.

    Please update your script and go through the change log.
     
    Last edited:
    21
    Posts
    4
    Years
    • Seen Nov 23, 2023
    Hello, this script is amazing. I tried the test Battle and the game crashes when using imposter Ditto.

    [Pokémon Essentials version 17]
    Exception: NoMethodError
    Message: undefined method `species' for nil:NilClass
    PSystem_FileUtilities:23:in `pbLoadPokemonBitmap'
    Pokemon_Sprites:148:in `setPokemonBitmap'
    Boss Battle:607:in `pbChangePokemon'
    PokeBattle_Scene:3080:in `pbAnimation'
    PokeBattle_Battle:2399:in `pbAnimation'
    PokeBattle_Battler:1793:in `pbAbilitiesOnSwitchIn'
    SOS Battles:237:in `pbSwitch'
    SOS Battles:236:in `each'
    SOS Battles:236:in `pbSwitch'
    PokeBattle_Battle:4066:in `__clauses__pbEndOfRoundPhase'
     
    21
    Posts
    4
    Years
    • Seen Nov 23, 2023
    Oh and a little syntax error line 1102, els has to be replaced by else
     
    658
    Posts
    7
    Years
  • Hello, this script is amazing. I tried the test Battle and the game crashes when using imposter Ditto.

    <Error with Imposter>

    I think your Imposter code maybe broken. I can't replicate this error in my game or in a fresh copy of Essentials. That's why Transform works but Imposter doesn't.
     
    21
    Posts
    4
    Years
    • Seen Nov 23, 2023
    Maybe it's a stupid question, but how can I get the result of the boss battle? I don't want my event to go crazy if the player loses.
     
    21
    Posts
    4
    Years
    • Seen Nov 23, 2023
    Ok, i found a simple way, I just edited line 430 of pfieldBattle to store the result of every battle in a variable, and calling it after boss battles.
     
    658
    Posts
    7
    Years
  • Ok, i found a simple way, I just edited line 430 of pfieldBattle to store the result of every battle in a variable, and calling it after boss battles.

    That's great. I did implement a way to save outcome in a variable but I never got around to posting it. Real life is pretty hard ngl.
     
    62
    Posts
    6
    Years
    • Seen Aug 11, 2022
    I think it is possible. We just need to change the battle scene.
    If there is no distributed EBS version, then I will try to do it myself.
    But it's complicated.
    I looked a can and you have to know about script writing.
     
    658
    Posts
    7
    Years
  • I think it is possible. We just need to change the battle scene.
    If there is no distributed EBS version, then I will try to do it myself.
    But it's complicated.
    I looked a can and you have to know about script writing.
    Ofc its possible, but yeah its complicated. And I don't use EBS in my own game so making an EBS version isn't a priority for me. But if you think you can adapt my script for EBS then go ahead, I'll try to help you as much as I possibly can.
     
    Last edited:
    Back
    Top