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

ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]

StCooler

Mayst thou thy peace discover.
  • 9,304
    Posts
    4
    Years
    • Seen yesterday
    The ZUD plugin

    Z-moves, Ultra-Burst and Dynamax together in one plugin!

    By Lucidious89 and StCooler, for the Gen 8 project.




    Essentials v18 is deprecated, so is this version of the ZUD plugin.
    For the newest release of ZUD, please check ZUD for Essentials19.1




    ZUD is the result of the joint work by Lucidious89 and StCooler, merging the former's Dynamax/Max Raid plugin, and the latter's Z-move add-on update.


    Contents

    As the name suggest, the ZUD plugin contains all the scripting for:
    • Z-moves (from SM and USUM)
    • Necrozma's Ultra-Burst
    • Dynamax
    • Max Raid battles
    • Dynamax Adventures (NEW Release 2021-04-13)

    Detailed contents:
    Spoiler:




    >> Download <<



    Credits:
    Spoiler:


    About the version of Essentials

    Spoiler:


    Installation

    Spoiler:



    What to do if you already installed the previous Dynamax plugin or the Z-move addon

    Spoiler:



    F.A.Q.

    Spoiler:


    Spoiler:
     
    Last edited:

    StCooler

    Mayst thou thy peace discover.
  • 9,304
    Posts
    4
    Years
    • Seen yesterday
    The ZUD plugin - Z-move tutorial

    This post contains tutorials on:
    • How to allow the use of Z-moves in game
    • How to make a new Z-move for damaging moves
    • How to make a new Z-move for status moves
    • Mid Battle Dialogue addition

    How to use Z-moves in game

    Spoiler:



    How to make a new Z-move for damaging moves

    Spoiler:



    How to make a new Z-move for a status move

    Spoiler:



    Mid Battle Dialogue addition

    Spoiler:
     
    Last edited:
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    The ZUD Plugin - Dynamax Tutorial

    This post contains tutorials on:
    • A detailed overview on all Dynamax mechanics.
    • How to allow the use of Dynamax in game.
    • How to make a new G-Max Pokemon.
    • How to make a new G-Max Move.

    Dynamax Overview

    Spoiler:


    How to Use Dynamax in game.

    Spoiler:


    How to make a new G-Max Pokemon.

    Spoiler:


    How to make a new G-Max Move.
    Spoiler:
     
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    The ZUD plugin - Max Raid Tutorial

    This post contains tutorials on:
    • A detailed overview on all Max Raid mechanics.
    • How to set up Max Raid Dens in your game.
    • How to access and use the Max Raid Database.

    Max Raid Overview

    Spoiler:

    How to set up a Max Raid.

    Spoiler:

    Max Raid Database Tutorial.

    Spoiler:
     
    Last edited:
  • 18
    Posts
    3
    Years
    • Seen Nov 22, 2023
    Woah this is awesome! Do the ZUD_ files in the Data folder need to have the XXX_(script name) before it? (ex: 999_Main)
     
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    Woah this is awesome! Do the ZUD_ files in the Data folder need to have the XXX_(script name) before it? (ex: 999_Main)

    No, you can name them whatever you want. Theyre merely named to break up all the code in a clear and concise way. The order of the scripts shouldnt matter too much either, though I wouldnt play with it just to be safe.
     
  • 125
    Posts
    4
    Years
    • Seen Nov 20, 2023
    I really like the new processing method for max raid database.
    The only problem is that in my game, some Pokemon's form numbers are not continuous.
    In this case, the generation will cause problems.
    Would you be kind to help me about how to deal it?
     
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    I really like the new processing method for max raid database.
    The only problem is that in my game, some Pokemon's form numbers are not continuous.
    In this case, the generation will cause problems.
    Would you be kind to help me about how to deal it?

    Sure, can you give me an example?
     
  • 125
    Posts
    4
    Years
    • Seen Nov 20, 2023
    For example,I have Charizard_1(Mega)/Charzard_3(Another form)/Charzard_100(Another).And I dont define Charzard_2 and 4 to 99.And now I cant find any Charizard in the database.
    And I have Ralts_3 but no 1 or 2.Now there is only ralt_3 in database,I cant find ralts_0(base form).
    I wonder if its because my form numbers are not continuous,and if yes,how can I deal that.
     
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    For example,I have Charizard_1(Mega)/Charzard_3(Another form)/Charzard_100(Another).And I dont define Charzard_2 and 4 to 99.And now I cant find any Charizard in the database.
    And I have Ralts_3 but no 1 or 2.Now there is only ralt_3 in database,I cant find ralts_0(base form).
    I wonder if its because my form numbers are not continuous,and if yes,how can I deal that.

    Yeah, there are ways to handle this, although it might be messy to have to account for each individual case because they're not in any logical order.

    In the ZUD_MaxRaid_02_Events script, find the method def pbInitRaidBanlist. This is where the lists for all eligible species/forms are handled for raids and the database.

    There are 3 arrays found within.
    • "raid_banlist" is the hard-coded banlist of specific species. These Pokemon do not appear in any Max Raid-related events, period. Add a species to this list if you want it be completely banned from both raids and the database.
    • "random_forms" is a list of species that spawn in a randomized form when encountered in a Max Raid Den.
    • "base_forms" is a list of species that will only display the base form of a species in the Max Raid Database. This is used for species like Unown, so that only its first form is displayed in the database, rather than having 28 different entries for the same Pokemon.

    Below these three arrays, you'll find this section:
    Code:
    for i in 1..PBSpecies.maxValue
        for f in 0...formdata[i].length
          next if f==0
          fSpecies = pbGetFSpeciesFromForm(i,f)
          formname = pbGetMessage(MessageTypes::FormNames,fSpecies)
          raid_banlist.push(fSpecies) if i==PBSpecies::FLOETTE && f==5
          next if formname=="Alolan" || formname=="Galarian"
          next if i==PBSpecies::PIKACHU && f < 3
          next if i==PBSpecies::BURMY
          next if i==PBSpecies::WORMADAM
          next if i==PBSpecies::SHAYMIN
          next if i==PBSpecies::VIVILLON
          next if i==PBSpecies::FURFROU
          next if i==PBSpecies::MEOWSTIC
          next if i==PBSpecies::ZYGARDE && f < 2
          next if i==PBSpecies::ROCKRUFF
          next if i==PBSpecies::LYCANROC
          next if i==PBSpecies::MINIOR && f < 7
          next if i==PBSpecies::SINISTEA
          next if i==PBSpecies::POLTEAGEIST
          next if i==PBSpecies::TOXTRICITY
          next if i==PBSpecies::INDEEDEE
          next if random_forms.include?(i)
          raid_banlist.push(fSpecies)
        end
      end
    What this does is add EVERY FORM in the game to the "raid_banlist" array EXCEPT for the listed species. So for example, all 3 Lycanroc forms are allowed to appear in raids, because Lycanroc's entire species is listed here as an exception. However, only Zygarde 50% and Zygarde 10% forms are allowed to appear in raids, with Zygarde Complete being banned, because the list only makes an exception for Zygarde's first two forms (f < 2).


    This might be trickier for you to have to deal with each individual case due to your form numbers not following any logical pattern, but you should be able to adjust this to take your custom forms into account.

    The first thing you'd have to decide on though is this: Do you WANT these custom forms to appear in raids? Or no? I'm assuming you only want the base species to appear, with the custom forms being special things that you aren't supposed to have normal access to, or appear in the wild naturally. If so, all you need to do is add Charizard and Ralts to the "base_forms" array. This will make it so that only their base forms will appear, with any other forms being ignored. Simple.

    However, if you WANT these custom forms to appear in raids, but as separate entries, then you have to fiddle with adding those forms to the exceptions list. For example, if you want BOTH Ralts and Ralts_3 to appear in raids (and the Database), but not Ralts_2 (since it doesn't exist), you'd have to add something like this to the exceptions list:
    Code:
    next if i==PBSpecies::RALTS && f != 2


    Play around with that, and let me know how it goes. I haven't explicitly tested any of these suggestions myself, I'm just outlining how it should work.
     
    Last edited:
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    Minor Update:
    Fixed an issue with raids where an error might occur when the Raid Pokemon tries to attack multiple times in certain situations. The Download link will be updated shortly. In the meantime, just replace your ZUD_04_Battle_Effects and ZUD_MaxRaid_01_Battle scripts with those found in the links provided.
     
  • 19
    Posts
    3
    Years
    Hey Lucidious89, it's DashBoy10. I don't know if its just me but there's are some errors that I don't know how to fix, I'll explain them.

    1. The gimmicks works perfectly, but as I use a Z-Move or Dynamax move, the game says there's a problem with "Gorilla Tactics." I used a Pokemon that doesn't have the ability "Gorilla Tactics" and the game stops me from using the Z-Move or D-Max move. This also applies to Ultra Burst and Raid Battles. To Ultra Burst, it still allows Necrozma to attack, but not use its Z-Move.

    In more simpler terms, here is where every error of mine occured.

    The Gorilla Tactics one appears when the opponent attacks of inflicts a status on me or lower my stats.

    The Obstruct one appears when I attack or just use a move in general.

    The yamaskhp one appears when me or the opponents Pokemon faint

    And the undefined arguments one appear when I send out a Pokemon after it fainted during its turn.

    Am I missing something, or did I mess something up, it may be just me, but this is something I've encountered while using this script. If you're wondering, I'm using V18.1, I have Gen 8 Project, and I read all of the instructions and put them in the right place, can you help me out on this problem? Thanks!
     

    Attachments

    • ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]
      16123143548198508223828421158429.jpg
      91.1 KB · Views: 26
    • ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]
      16123143814586884889637763116277.jpg
      91.8 KB · Views: 9
    • ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]
      16123144321864391583068489367780.jpg
      91.4 KB · Views: 8
    • ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]
      16123145163892194828294779433787.jpg
      93.4 KB · Views: 11
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    Hey Lucidious89, it's DashBoy10. I don't know if its just me but there's are some errors that I don't know how to fix, I'll explain them.

    1. The gimmicks works perfectly, but as I use a Z-Move or Dynamax move, the game says there's a problem with "Gorilla Tactics." I used a Pokemon that doesn't have the ability "Gorilla Tactics" and the game stops me from using the Z-Move or D-Max move. This also applies to Ultra Burst and Raid Battles. To Ultra Burst, it still allows Necrozma to attack, but not use its Z-Move.

    In more simpler terms, here is where every error of mine occured.

    The Gorilla Tactics one appears when the opponent attacks of inflicts a status on me or lower my stats.

    The Obstruct one appears when I attack or just use a move in general.

    The yamaskhp one appears when me or the opponents Pokemon faint

    And the undefined arguments one appear when I send out a Pokemon after it fainted during its turn.

    Am I missing something, or did I mess something up, it may be just me, but this is something I've encountered while using this script. If you're wondering, I'm using V18.1, I have Gen 8 Project, and I read all of the instructions and put them in the right place, can you help me out on this problem? Thanks!

    I don't think you actually have the Gen 8 Project installed. It seems like you're missing those Gen 8 mechanics (Gorilla Tactics, Obstruct, etc.). You wouldn't be getting those errors otherwise. I think you installed this plugin in a regular copy of Essentials v18.1 (the error even says its v18.1).

    EDIT: You're definitely using v18.1 and not the Gen 8 Project. Your error says pbRecallAndReplace should only have 3 arguments instead of 4. Version 18.1 only uses 3 arguments for that method, but the one in the Gen 8 Project uses 4. So you're using the wrong version of Essentials.

    I guess we know that this plugin definitely doesn't work with v18.1 now, though lol
     
    Last edited:
  • 125
    Posts
    4
    Years
    • Seen Nov 20, 2023
    ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]

    ZUD plugin - Z-moves, Ultra-Burst, Dynamax, Dynamax adventures [v18]

    Err...It seems it didnt work.(I filter with TYPE FIRE)
    Did I get something wrong?
     
  • 1,409
    Posts
    10
    Years
    • Seen yesterday
    Err...It seems it didnt work.(I filter with TYPE FIRE)
    Did I get something wrong?

    Yeah, the script just gets real weird when it comes to unregistered forms. I had this issue with Pikachu (its first 2 forms are unregistered), and I still can't get it to work exactly how I want. Try adding Charizard to the list of exceptions, too. If all you care about is having its base form in the database, that'll probably do the trick. However, if you want one or more of its other forms to appear too, that'll probably be tricky to somehow eliminate all the unregistered forms (otherwise you'll have 100 Charizard entries in the database).

    The simplest long-term solution is to just not have unregistered forms when possible. Or if you do, make sure its for a species who has forms that you dont want in the database anyway.
     
  • 125
    Posts
    4
    Years
    • Seen Nov 20, 2023
    I will try to adapt that.
    By the way,I have found the life orb bug in previous thread and it is fixed.Now I find a similar problem about Curse.
    it seems curse damage should depend on dynamaxBoost.
     
    Back
    Top