• Do not use Discord to host any images you post, these links expire quickly! You can learn how to add images to your posts here.
  • The Eevee Expo Game Jam has concluded! 🎉 Head on over to the game jam forum to play through the games.
    Don't forget to come back September 21st to vote for your favorites!
  • Reminder: AI-generated content is not allowed on the forums per the Rules and Regulations. Please contact us if you have any questions!
Type match-up summary

Resource Type match-up summary 1.1.0

ThatWelshOne_

Champion
Member
ThatWelshOne_ submitted a new resource:

Type Match-up UI - Study type match-ups any time you want!

This one started out as a bit of fun, but ended up evolving into its own resource.

There are two scripts bundled with this resource. The first shows type match-ups for single types, whereas the second shows type match-ups for specific species of Pokémon! This information might be useful for beginner players or if you are reworking the type chart/adding new types to your game.

Features
  • Scroll through the UI to see type match-ups for each type/species. Even...

Read more about this resource...
 
Is there any way you could downgrade this to 18.1? My computer isn't compatible with MKXP, so I can't really use V19 scripts.
 
I wouldn't mind seeing v18 support as well, I think v19 came out just a bit too soon, and I didn't have time to prepare. RIP my demo, and wherever I take it from here
 
I've updated the main post with a link to a v18 compatible version of this resource. The instructions for using the script are exactly the same. A bit of fun v18 knowledge I learned while downgrading, Mamoswine is considered part of the Kanto Pokédex. Anyway, let me know if there are any issues.
@Kamkam10302005
@drawntoast
 
I think maybe it's a bit over-powered. The fun thing is for the player to get to know the Pokédex little by little.
Wouldn't it be better to show the effectiveness of the Pokémon seen? or just the types, without showing a Pokémon that the player never saw?
 
I think maybe it's a bit over-powered. The fun thing is for the player to get to know the Pokédex little by little.
Wouldn't it be better to show the effectiveness of the Pokémon seen? or just the types, without showing a Pokémon that the player never saw?
Hi there! Thanks for your feedback. This resource was mostly developed for fun, so I accept that it might not be perfect, or "over-powered" as you say, and since it's pretty niche, I didn't go to town on implementing every detail. If you are using this resource in your own project, by all means edit it to your liking. If you share your edits with me and I like them enough, I'd be happy to incorporate them into this resource and add you to the list of credits.
 
I had a question on how to configure this script into the PokeGear but I figured it out. I left the post in though so other novice scripters can see what I did to configure the Pokegear to pull up the specific species type matchup. If a person needs the general type, that is not covered in this script.

Pokegear revisions:
Expand Collapse Copy
  def pbStartScreen
    commands = []
    cmdMap     = -1
# Added by Jos 2021-08-12
    cmdTypeLookup = -1
    cmdPhone   = -1
    cmdJukebox = -1
    commands[cmdMap = commands.length]     = ["map",_INTL("Map")]
# Added by Jos 2021-08-12
    commands[cmdTypeLookup = commands.length] = ["type lookup",_INTL("Type Lookup")]
    if $PokemonGlobal.phoneNumbers && $PokemonGlobal.phoneNumbers.length>0
      commands[cmdPhone = commands.length] = ["phone",_INTL("Phone")]
    end
    commands[cmdJukebox = commands.length] = ["jukebox",_INTL("Jukebox")]
    @scene.pbStartScene(commands)
    loop do
      cmd = @scene.pbScene
      if cmd<0
        break
      elsif cmdMap>=0 && cmd==cmdMap
        pbShowMap(-1,false)
# Added by Jos 2021-08-12
      elsif cmdTypeLookup>=0 && cmd==cmdTypeLookup
        pbFadeOutIn {
          pbSpeciesTypeMatchUI
        }
      elsif cmdPhone>=0 && cmd==cmdPhone
        pbFadeOutIn {
          PokemonPhoneScene.new.start
        }
      elsif cmdJukebox>=0 && cmd==cmdJukebox
        pbFadeOutIn {
          scene = PokemonJukebox_Scene.new
          screen = PokemonJukeboxScreen.new(scene)
          screen.pbStartScreen
        }
      end
    end
    @scene.pbEndScene
  end

Thanks!
Jos
 
Last edited:
I had a question on how to configure this script into the PokeGear but I figured it out. I left the post in though so other novice scripters can see what I did to configure the Pokegear to pull up this type matchup.

Pokegear revisions:
Expand Collapse Copy
  def pbStartScreen
    commands = []
    cmdMap     = -1
# Added by Jos 2021-08-12
    cmdTypeLookup = -1
    cmdPhone   = -1
    cmdJukebox = -1
    commands[cmdMap = commands.length]     = ["map",_INTL("Map")]
# Added by Jos 2021-08-12
    commands[cmdTypeLookup = commands.length] = ["type lookup",_INTL("Type Lookup")]
    if $PokemonGlobal.phoneNumbers && $PokemonGlobal.phoneNumbers.length>0
      commands[cmdPhone = commands.length] = ["phone",_INTL("Phone")]
    end
    commands[cmdJukebox = commands.length] = ["jukebox",_INTL("Jukebox")]
    @scene.pbStartScene(commands)
    loop do
      cmd = @scene.pbScene
      if cmd<0
        break
      elsif cmdMap>=0 && cmd==cmdMap
        pbShowMap(-1,false)
# Added by Jos 2021-08-12
      elsif cmdTypeLookup>=0 && cmd==cmdTypeLookup
        pbFadeOutIn {
          pbSpeciesTypeMatchUI
        }
      elsif cmdPhone>=0 && cmd==cmdPhone
        pbFadeOutIn {
          PokemonPhoneScene.new.start
        }
      elsif cmdJukebox>=0 && cmd==cmdJukebox
        pbFadeOutIn {
          scene = PokemonJukebox_Scene.new
          screen = PokemonJukeboxScreen.new(scene)
          screen.pbStartScreen
        }
      end
    end
    @scene.pbEndScene
  end

Thanks!
Jos
Very nice! Thanks for sharing. ☺️
 
Question:
I added the species specific script to be added to the summary screen (same menu to take/give item and view Dex) and when opening it, it defaults to Bulbasaur. Is there a way to default it to the species that one is currently viewing? (For example, if I opened Meganium's summary, it would default to Meganium's type matchups)
 
Is it possible to exclude a single type from the summary?
Try going to line 51 of 001_SingleTypeMatch_UI.rb and changing it to something like:
Ruby:
Expand Collapse Copy
GameData::Type.each { |s| @types.push(s.id) if !s.pseudo_type && s.id != :GHOST }
I think you'll need to do the same thing on line 173:
Ruby:
Expand Collapse Copy
GameData::Type.each { |t| commands.push([commands.length + 1, t.name, t.id]) if !t.pseudo_type && t.id != :GHOST }

Question:
I added the species specific script to be added to the summary screen (same menu to take/give item and view Dex) and when opening it, it defaults to Bulbasaur. Is there a way to default it to the species that one is currently viewing? (For example, if I opened Meganium's summary, it would default to Meganium's type matchups)
I imagine it depends on where you added the code.
 
I had a question on how to configure this script into the PokeGear but I figured it out. I left the post in though so other novice scripters can see what I did to configure the Pokegear to pull up the specific species type matchup. If a person needs the general type, that is not covered in this script.

Pokegear revisions:
Expand Collapse Copy
  def pbStartScreen
    commands = []
    cmdMap     = -1
# Added by Jos 2021-08-12
    cmdTypeLookup = -1
    cmdPhone   = -1
    cmdJukebox = -1
    commands[cmdMap = commands.length]     = ["map",_INTL("Map")]
# Added by Jos 2021-08-12
    commands[cmdTypeLookup = commands.length] = ["type lookup",_INTL("Type Lookup")]
    if $PokemonGlobal.phoneNumbers && $PokemonGlobal.phoneNumbers.length>0
      commands[cmdPhone = commands.length] = ["phone",_INTL("Phone")]
    end
    commands[cmdJukebox = commands.length] = ["jukebox",_INTL("Jukebox")]
    @scene.pbStartScene(commands)
    loop do
      cmd = @scene.pbScene
      if cmd<0
        break
      elsif cmdMap>=0 && cmd==cmdMap
        pbShowMap(-1,false)
# Added by Jos 2021-08-12
      elsif cmdTypeLookup>=0 && cmd==cmdTypeLookup
        pbFadeOutIn {
          pbSpeciesTypeMatchUI
        }
      elsif cmdPhone>=0 && cmd==cmdPhone
        pbFadeOutIn {
          PokemonPhoneScene.new.start
        }
      elsif cmdJukebox>=0 && cmd==cmdJukebox
        pbFadeOutIn {
          scene = PokemonJukebox_Scene.new
          screen = PokemonJukeboxScreen.new(scene)
          screen.pbStartScreen
        }
      end
    end
    @scene.pbEndScene
  end

Thanks!
Jos
For any other novice scripters like myself, this is how you edit the script to allow you to open this UI from your Pokegear in v20.1

1. Go to your UI_Pokegear in your scripts
2. Add this section at the very bottom of that code block. It seems to work for me and doesn't give me any errors.

Type Lookup in Pokegear:
Expand Collapse Copy
MenuHandlers.add(:pokegear_menu, :type, {
  "name"      => _INTL("Type Lookup"),
  "icon_name" => "type lookup",
  "order"     => 40,
  "effect"    => proc { |menu|
    pbFadeOutIn {
      pbSpeciesTypeMatchUI
    }
    next false
  }
})

Note that I used the line
Ruby:
Expand Collapse Copy
  "icon_name" => "type lookup",
In your Graphics\Pictures\Pokegear, you will need an icon named "icon_type lookup.png"
I do have my own icon which is why I changed it but if you don't have your own icon, rename the type lookup to one of the pre-existing ones like "icon_jukebox". This will make it so that when you navigate to your Pokegear, the icon in the Pokegear will be the same as the jukebox.
 
I had a question on how to configure this script into the PokeGear but I figured it out. I left the post in though so other novice scripters can see what I did to configure the Pokegear to pull up the specific species type matchup. If a person needs the general type, that is not covered in this script.

Pokegear revisions:
Expand Collapse Copy
  def pbStartScreen
    commands = []
    cmdMap     = -1
# Added by Jos 2021-08-12
    cmdTypeLookup = -1
    cmdPhone   = -1
    cmdJukebox = -1
    commands[cmdMap = commands.length]     = ["map",_INTL("Map")]
# Added by Jos 2021-08-12
    commands[cmdTypeLookup = commands.length] = ["type lookup",_INTL("Type Lookup")]
    if $PokemonGlobal.phoneNumbers && $PokemonGlobal.phoneNumbers.length>0
      commands[cmdPhone = commands.length] = ["phone",_INTL("Phone")]
    end
    commands[cmdJukebox = commands.length] = ["jukebox",_INTL("Jukebox")]
    @scene.pbStartScene(commands)
    loop do
      cmd = @scene.pbScene
      if cmd<0
        break
      elsif cmdMap>=0 && cmd==cmdMap
        pbShowMap(-1,false)
# Added by Jos 2021-08-12
      elsif cmdTypeLookup>=0 && cmd==cmdTypeLookup
        pbFadeOutIn {
          pbSpeciesTypeMatchUI
        }
      elsif cmdPhone>=0 && cmd==cmdPhone
        pbFadeOutIn {
          PokemonPhoneScene.new.start
        }
      elsif cmdJukebox>=0 && cmd==cmdJukebox
        pbFadeOutIn {
          scene = PokemonJukebox_Scene.new
          screen = PokemonJukeboxScreen.new(scene)
          screen.pbStartScreen
        }
      end
    end
    @scene.pbEndScene
  end

Thanks!
Jos
Hello sorry I'm reposting this over a year later, but I can't seem to get button to show up after following instructions on adding this plug-in and adding the graphics. I also even added a icon_type lookup picture to the pokenav file and nothing. Any help be appreciate.
 
I'm not sure what might be the problem here, but not sure if your use of the term "PokeNav" is intentional or not. I don't know if this script is compatible with the PokeNav script as that's something different from the Pokegear.
 
Hello sorry I'm reposting this over a year later, but I can't seem to get button to show up after following instructions on adding this plug-in and adding the graphics. I also even added a icon_type lookup picture to the pokenav file and nothing. Any help be appreciate.
Hi! What version of Essentials are you using? I tried your code in v19.1 and it worked just fine for me.
 
Whoops I'm sorry I meant Pokegear, and I'm using v19.1, I copied and pasted the text into UI_Pokegear script in the same section. Also recompiled everything and started new save, just really weird. 🤔
 
I do have one question, how would I delete the pokemon animated sprite icons from appearing in the single type lookup menu? Thank you TheWelshOne_ for this resource and to Jos_Louis for the guide to put it in the script!
 
Back
Top