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

Script: Essentials Deluxe [v20.1] [DEPRECATED]

  • 45
    Posts
    1
    Years
    I created a save conversion that should allow this plug-in to be usable without needing to start a new save file. Perfect for anyone who might have already released a version of their game and now wants to add an update with this plug-in. Here's what to do:

    First, increase your game's version number at the top of the settings script, then go to the Game_SaveConversions (note the s) script and add this to the very end:

    Code:
    #===============================================================================
    
    SaveData.register_conversion(:deluxe_compatibility) do
      game_version 'NEW VERSION NUMBER HERE'
      display_title "Adding Essentials Deluxe compatibility"
      to_value :player do |player|
        tempDexes = player.pokedex.accessible_dexes
        player.pokedex.instance_eval do
          @seen_forms.each{ |species, data|
            for gender in 0..1
              for shiny in 0..1
                temp = @seen_forms[species][gender][shiny]
                @seen_forms[species][gender][shiny] = [temp, []]
              end
            end
          }
        end
      end
    end

    Then you should be able to continue off from a save file that didn't have Essentials Deluxe. I should note that I haven't done super extensive QA testing, but the areas where I found the game crashing before are now stable.
     
  • 1
    Posts
    1
    Years
    • Seen Nov 24, 2023
    Hello. I am trying to make a Giovanni boss fight where mid battle he switches to Ultra Necrozma and I keep getting syntax errors and it's difficult for me to fix them. I have a demo scenario in my midbattle config file that says:
    Spoiler:

    I then have copy pasted the compressed battle start from the last part of the tutorial and edited it so it would be:
    Spoiler:

    I then get this error:
    Spoiler:

    Thank you!
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    Hello. I am trying to make a Giovanni boss fight where mid battle he switches to Ultra Necrozma and I keep getting syntax errors and it's difficult for me to fix them. I have a demo scenario in my midbattle config file that says:
    Spoiler:
    Several things are wrong here.

    "ultra" should be "ultra_foe". Otherwise this will trigger when the PLAYER uses Ultra Burst, which doesn't seem like what's intended by you.

    In the stats array, you dont need a comma after the final entry in the array.

    The "loss" key triggers upon the PLAYER losing the battle, which doesn't seem like what's intended by you. If you want the foe to say some dialogue upon being defeated, this can just be handled by setting their endspeech in their respective PBS data like normal. This plugin isnt required for that.

    I then have copy pasted the compressed battle start from the last part of the tutorial and edited it so it would be:
    Spoiler:
    More things to correct:

    Your syntax is all wrong. Look at the examples in the tutorial. The arguments used in a trainer battle code are as follows:

    Code:
    (trainers = [], rules = {}, midbattle = {})
    Your syntax looks like:
    Code:
    (trainers = []) rules => value {})
    Which doesn't make any sense.

    Also note that you can set the next bgm within the "rules" hash. Your method still works too, of course, but it seems cleaner to me to use the rules hash for this sort of thing for consistency.
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    Minor Update (v1.1.2)

    • Fixed an error that would accidentally hide/display the databoxes for fainted Pokemon in the incorrect order during midbattle trainer speech.
    • Cleaned up the order in which the trainer dialogue animation plays.
    • Fixed some minor issues related to the ZUD Plugin.
    • Updated the plugin so that it now requires version 1.0.5 of the Hotfixes plugin.


    Note: When updating, please make a copy of any custom work you've added to Midbattle_Config. Updating the plugin will overwrite any of your additions.
     
  • 1
    Posts
    1
    Years
    • he/him
    • Seen May 20, 2023
    When I load up debug essentials it says that I've only got two plugins in the control panel, but I've added Essentials Deluxe to the plugins folder? Could somebody help?
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    Minor Update (v1.1.3)

    • Fixed a bug that would cause crashes in the Safari Zone when used along side the Focus Meter plugin.
    • Moved some code for handling battle UI into this plugin to allow for smoother plugin compatibility.
    • Added a new script section that allows for the application of outlines around sprites. Used by the Enhanced UI plugin.
    • Added compatibility with the SOS Battles plugin.
    • Added final preparations for the PLA Battle Styles plugin.
    • Added "Mastery" to trainer data. This allows you to master the moves of AI trainer's Pokemon. (PLA Battle Styles)
    • Added "strongStyle" and "agileStyle" as midbattle keys to allow for things to trigger when a Pokemon enters Strong or Agile styles. (PLA Battle Styles)
    • Updated the plugin so that it now requires version 1.0.6 of the Hotfixes plugin.


    Note: When updating, please make a copy of any custom work you've added to Midbattle_Config. Updating the plugin will overwrite any of your additions.
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    Minor Update (v1.1.4)

    • Added placeholder code for custom battle mechanics. Hopefully this will allow other plugin developers to integrate any new battle mechanics they design to be compatible with this plugin, as well as my other plugins such as ZUD.
    • Added the following demo examples in Midbattle_Config: DEMO_ZUD_MECHANICS, DEMO_FOCUS_METER, and DEMO_BATTLE_STYLES. These are to serve as examples of trainer speech that may trigger when activating battle mechanics added by ZUD, Focus Meter System, and the PLA Battle Styles plugins, respectively.
    • Added new midbattle trigger "focusEnd" that activates after a trainer's Pokemon uses their Focus. (Focus Meter System)
    • Added new midbattle trigger "styleEnd" that activates after the effects of a Pokemon's battle style ends. (PLA Battle Styles)
    • Several last minute tweaks so I can finally release the PLA Battle Styles plugin.

    Note: When updating, please make a copy of any custom work you've added to Midbattle_Config. Updating the plugin will overwrite any of your additions.
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    Minor Update (v1.1.5)

    • Fixed yet another Safari Zone bug that would crash the game.
    • Added some additional functionality to the Sprite Outliner script to be used by the Enhanced UI plugin.
    • Fixed an issue with Pokemon icon sprites potentially having Shadow/Dynamax/Celestial properties flagged on by default when they shouldn't be.
    • The :size deluxe battle rule now properly accepts the "double" and "triple" values to set up double or triple battles against a single trainer.
    • This plugin has been updated to now require v1.0.7 of the Hotfixes plugin.

    Note: When updating, please make a copy of any custom work you've added to Midbattle_Config. Updating the plugin will overwrite any of your additions.
     

    Team Embrace

    Team Embrace Boss
  • 30
    Posts
    5
    Years
    • Seen Nov 14, 2022
    I am trying to add the double battle to mid battle config but get this error:

    [2022-11-14 11:16:17 -0600]
    [Pokémon Essentials version 20.1]
    [v20.1 Hotfixes 1.0.4]

    Error in Plugin: [Essentials Deluxe]
    Exception: SyntaxError
    Message: [Essentials Deluxe] Midbattle_Config.rb:209: syntax error, unexpected end-of-input, expecting =>

    Code:
      #-------------------------------------------------------------------------------
    # WILD BATTLE EXAMPLE #2
    #-------------------------------------------------------------------------------
    DEMO_DX_TWO = {
    # Double battle vs. Latias (Lv. 30) & Latios (Lv. 30)
    # Rules:
    #  -Cannot flee from this battle.
    #  -Permanent Hail in play.
    #  -Battle takes place on the "Champion" backdrop.
    #  -Player partners up with May for this battle.
    # Pokemon:
    #  -Latias has its Nature, Item, Ability, and Moves set.
    #  -Latios has its Nature, Item, Ability, and Moves set.
    # Midbattle:
    #  -Sets up a scenario where Latios and Latias will flee from
    #    battle if either one of them faints. The only way to win
    #    is to KO both Pokemon at the same time.
    #  -Whenever one of the wild Pokemon are low on HP, it will
    #    call on its partner for aid, healing back some HP.
    #-------------------------------------------------------------------------------
    WildBattle.dx_start([:LATIAS, 30, :LATIOS, 30], {
      # Rules
      :noflee   => true,
      :weather  => :Hail,
      :backdrop => "champion",
      :partner  => [:POKEMONTRAINER_May, "May"]
    },
    { # Pokemon
      :first => { # Latias
        :nature  => :MODEST,
        :item    => :SOULDEW,
        :ability => :HEALER,
        :moves   => [:LIFEDEW, :REFLECT, :HELPINGHAND, :PSYCHIC]
      },
      :second => { # Latios
        :nature  => :ADAMANT,
        :item    => :SOULDEW,
        :ability => :FRIENDGUARD,
        :moves   => [:DRAGONDANCE, :BREAKINGSWIPE, :ZENHEADBUTT, :DRAGONCLAW]
      }
    },
    { # Midbattle
      "lowhp_foe_repeat" => { # Triggers repeatedly whenever an opponent's HP is low due to an attack.
        :text      => "{1} calls out to its partner with a whimpering cry!",
        :playcry   => true,
        :text_1    => [:Ally, "{1} comes to its partner's aid!"],
        :hp        => [4, "{1} restored a little HP!"],
      },
      #-----------------------------------------------------------------------------
      "fainted_foe" => { # Triggers when an opponent faints.
        :text => [:Ally, "{1} looks devestated by its partner's defeat...",
                         "It seems to have lost the will to fight.",
                         "{1} fled!"],
        :playsound => "Battle flee",
        :endbattle => 3
      }
      }
      )
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    I am trying to add the double battle to mid battle config but get this error:

    [2022-11-14 11:16:17 -0600]
    [Pokémon Essentials version 20.1]
    [v20.1 Hotfixes 1.0.4]

    Error in Plugin: [Essentials Deluxe]
    Exception: SyntaxError
    Message: [Essentials Deluxe] Midbattle_Config.rb:209: syntax error, unexpected end-of-input, expecting =>

    Code:
      #-------------------------------------------------------------------------------
    # WILD BATTLE EXAMPLE #2
    #-------------------------------------------------------------------------------
    DEMO_DX_TWO = {
    # Double battle vs. Latias (Lv. 30) & Latios (Lv. 30)
    # Rules:
    #  -Cannot flee from this battle.
    #  -Permanent Hail in play.
    #  -Battle takes place on the "Champion" backdrop.
    #  -Player partners up with May for this battle.
    # Pokemon:
    #  -Latias has its Nature, Item, Ability, and Moves set.
    #  -Latios has its Nature, Item, Ability, and Moves set.
    # Midbattle:
    #  -Sets up a scenario where Latios and Latias will flee from
    #    battle if either one of them faints. The only way to win
    #    is to KO both Pokemon at the same time.
    #  -Whenever one of the wild Pokemon are low on HP, it will
    #    call on its partner for aid, healing back some HP.
    #-------------------------------------------------------------------------------
    WildBattle.dx_start([:LATIAS, 30, :LATIOS, 30], {
      # Rules
      :noflee   => true,
      :weather  => :Hail,
      :backdrop => "champion",
      :partner  => [:POKEMONTRAINER_May, "May"]
    },
    { # Pokemon
      :first => { # Latias
        :nature  => :MODEST,
        :item    => :SOULDEW,
        :ability => :HEALER,
        :moves   => [:LIFEDEW, :REFLECT, :HELPINGHAND, :PSYCHIC]
      },
      :second => { # Latios
        :nature  => :ADAMANT,
        :item    => :SOULDEW,
        :ability => :FRIENDGUARD,
        :moves   => [:DRAGONDANCE, :BREAKINGSWIPE, :ZENHEADBUTT, :DRAGONCLAW]
      }
    },
    { # Midbattle
      "lowhp_foe_repeat" => { # Triggers repeatedly whenever an opponent's HP is low due to an attack.
        :text      => "{1} calls out to its partner with a whimpering cry!",
        :playcry   => true,
        :text_1    => [:Ally, "{1} comes to its partner's aid!"],
        :hp        => [4, "{1} restored a little HP!"],
      },
      #-----------------------------------------------------------------------------
      "fainted_foe" => { # Triggers when an opponent faints.
        :text => [:Ally, "{1} looks devestated by its partner's defeat...",
                         "It seems to have lost the will to fight.",
                         "{1} fled!"],
        :playsound => "Battle flee",
        :endbattle => 3
      }
      }
      )

    The Midbattle_Config is only for setting up your midbattle settings. The battle call, rules, and Pokemon data don't belong here, you have to set that up yourself in an event.
     

    Team Embrace

    Team Embrace Boss
  • 30
    Posts
    5
    Years
    • Seen Nov 14, 2022
    " Battle Deluxe/Midbattle_Config script. In here, you will find this module. You can create and store specific mid-battle hashes here, and then simply call on them in your events. For example, in this file, there is a defined hash called DEMO_WILD_ROTOM." I'm trying to make the double battle example a quick call option like the Rotom example and I kind of get what I did wrong now but just to be sure I can have something easy to reference could you please upload a version of the mid battle script with the double battle example included as a quick call option? Thanks and thank you for responding to my first post! (Sorry for the lack of formatting i'm on my phone)
     
    Last edited:
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    " Battle Deluxe/Midbattle_Config script. In here, you will find this module. You can create and store specific mid-battle hashes here, and then simply call on them in your events. For example, in this file, there is a defined hash called DEMO_WILD_ROTOM." I'm trying to make the double battle example a quick call option like the Rotom example and I kind of get what I did wrong now but just to be sure I can have something easy to reference could you please upload a version of the mid battle script with the double battle example included as a quick call option? Thanks and thank you for responding to my first post! (Sorry for the lack of formatting i'm on my phone)

    It should be pretty clear what you need to do. The whole purpose of the Rotom example is to serve as a guide on of how to set these up for yourself. If you find it too confusing, then don't use this feature and just copy/paste the whole battle call in an event. The Midbattle_Config set ups arent necessary, its just a tool to make things less cluttered if you care to use it.
     
  • 45
    Posts
    1
    Years
    Couldn't help but notice that the script often causes the Pokedex to incorrectly record forms of species that have multiple forms. I've seen cases where the dex will show forms that haven't been seen by the player yet and cases where it wouldn't show forms the player had seen. Notably, the second case happened when the player had seen a male regular Sneasel and then a female Hisuian Sneasel; the Pokedex wouldn't show Hisuan Sneasel at all. Since the dex doesn't show different genders for alternate forms, I figure this might be a factor.

    I'm on the current version of Deluxe (v1.1.5), Hotfixes (v1.0.7), and Essentials (v20.1).
     
  • 1,408
    Posts
    10
    Years
    • Seen yesterday
    Couldn't help but notice that the script often causes the Pokedex to incorrectly record forms of species that have multiple forms. I've seen cases where the dex will show forms that haven't been seen by the player yet and cases where it wouldn't show forms the player had seen. Notably, the second case happened when the player had seen a male regular Sneasel and then a female Hisuian Sneasel; the Pokedex wouldn't show Hisuan Sneasel at all. Since the dex doesn't show different genders for alternate forms, I figure this might be a factor.

    I'm on the current version of Deluxe (v1.1.5), Hotfixes (v1.0.7), and Essentials (v20.1).

    Yeah, I'm aware of this issue. Its been at the bottom of my priority list for a while, but I think I've got a fix for it. The next update should include it, whenever I get around to it.
     
  • 1
    Posts
    1
    Years
    • Seen Nov 7, 2023
    Mid battle: Hi i was wondering if theres any way to show the player name during a speech or a text, thanks
     
    Back
    Top