Gotta Catch Em Small - A tier based progression system for catching, leveling, and trading Pokemon for Pixelmon

A new version has been released for Gotta Catch Em Small, it is available for download here.


  • Rewrote the config files for player accounts, catching, leveling, evolving, and trading (left Generation’s version’s Z-Moves file and Reforged’s version’s Dynamaxing file alone)

  • Rewrote the getters and listeners for those modules

  • Fixed a rather weird bug where the first-time generation of the player account config file (which is based on certain settings set in modules’ config files) not taking updated values in the config into account (would generate with default values regardless of what the values were set to I think)

  • Fixed the battle restriction code being broken on first join, but fixing itself after a server restart

  • Removed the GUIs (I just didn’t see them as necessary)

  • Changed the “/gces list” command to “/gces check” that will tell the players their current level in Catching and Leveling

  • Changed the default settings for Catching and Leveling:

    – They will automatically set players to level 1 on first join

    – They will not give the restriction permission automatically

    – This change makes it to where the plugin requires less configuration to be usable after first install

  • Changed the Tier structure for both Leveling and Catching from using Lists to using Maps (looks nicer, code is more logical for pulling values)

    – Both modules now generate with a basic example of Tier-1 to use

  • Fixed the battle listener only checking 1 battle participant

  • Attempted to readd the code that will help prevent players from receiving legendaries (from things like GTS, WonderTrade) if that module is enabled

    – Side note: I honestly don’t expect this to work out very well, but there’s not much else I can do with this at the moment. :stuck_out_tongue:

  • A fair bit of code cleanup

  • Fixed code not pulling correct values for some default settings causing the plugin to be naturally broken in some areas

  • Fixed another bug caused by old code still present (I honestly don’t even remember what it was - I fixed it last night)

  • Changed the leveling message to auto replace “Pokemon” with the Pokemon’s name when running the experience gain code, so you can see exactly which Pokemon is refusing to level up more

  • Fixed player account files not getting saved when using the commands to modify them (the setlvl, lvlup, addperm, removeperm commands)

    – This was causing the leveling and catching tiers to get broken across server restarts/player relogging

Regen your config files for this update! (sorry)

A new version has been released for Gotta Catch Em Small, it is available for download here.


  • Rewrote the config files for player accounts, catching, leveling, evolving, and trading (left Generation’s version’s Z-Moves file and Reforged’s version’s Dynamaxing file alone)

  • Rewrote the getters and listeners for those modules

  • Fixed a rather weird bug where the first-time generation of the player account config file (which is based on certain settings set in modules’ config files) not taking updated values in the config into account (would generate with default values regardless of what the values were set to I think)

  • Fixed the battle restriction code being broken on first join, but fixing itself after a server restart

  • Removed the GUIs (I just didn’t see them as necessary)

  • Changed the “/gces list” command to “/gces check” that will tell the players their current level in Catching and Leveling

  • Changed the default settings for Catching and Leveling:

    – They will automatically set players to level 1 on first join

    – They will not give the restriction permission automatically

    – This change makes it to where the plugin requires less configuration to be usable after first install

  • Changed the Tier structure for both Leveling and Catching from using Lists to using Maps (looks nicer, code is more logical for pulling values)

    – Both modules now generate with a basic example of Tier-1 to use

  • Fixed the battle listener only checking 1 battle participant

  • Attempted to readd the code that will help prevent players from receiving legendaries (from things like GTS, WonderTrade) if that module is enabled

    – Side note: I honestly don’t expect this to work out very well, but there’s not much else I can do with this at the moment. :stuck_out_tongue:

  • A fair bit of code cleanup

  • Fixed code not pulling correct values for some default settings causing the plugin to be naturally broken in some areas

  • Fixed another bug caused by old code still present (I honestly don’t even remember what it was - I fixed it last night)

  • Changed the leveling message to auto replace “Pokemon” with the Pokemon’s name when running the experience gain code, so you can see exactly which Pokemon is refusing to level up more

  • Fixed player account files not getting saved when using the commands to modify them (the setlvl, lvlup, addperm, removeperm commands)

    – This was causing the leveling and catching tiers to get broken across server restarts/player relogging

Regen your config files for this update! (sorry)

A new version has been released for Gotta Catch Em Small, it is available for download here.


- Fixed players able to catch legendaries regardless if they are meant to be restricted or not

This was caused by a node I removed from the config. To fix this, all you need to do is make this section in your catching.conf file look like this:

Legendary-Pokemon {
    Restrict-Catching-Legendary-Pokemon=true
    Restriction-Default-Message="You have not unlocked the ability to catch this Pokemon yet!"
    # Set to "none" to disable requiring a permission
    Unlock-Legendary-Pokemon="gces.catching.legendary"
}

A new version has been released for Gotta Catch Em Small, it is available for download here.


- Fixed players able to catch legendaries regardless if they are meant to be restricted or not

This was caused by a node I removed from the config. To fix this, all you need to do is make this section in your catching.conf file look like this:

Legendary-Pokemon {
    Restrict-Catching-Legendary-Pokemon=true
    Restriction-Default-Message="You have not unlocked the ability to catch this Pokemon yet!"
    # Set to "none" to disable requiring a permission
    Unlock-Legendary-Pokemon="gces.catching.legendary"
}

A new version has been released for Gotta Catch Em Small, it is available for download here.


  • Fixed Evolution tiers not being applied

    – Requires a regen of the evolving.conf

  • Fixed plugin throwing endless errors catching legendary Pokemon due to a mismatching path to the configuration node for the “you can’t catch legendaries” message

  • Removed a node from the catching.conf that didn’t belong (it was the Enable-Progression-Based-Leveling-System=false node, this node does nothing in this config file, so it can be removed)

  • Fixed the comments on some nodes in the catching.conf file saying “leveling” (this doesn’t break anything, just makes reading the comments confusing)

A new version has been released for Gotta Catch Em Small, it is available for download here.


  • Fixed Evolution tiers not being applied

    – Requires a regen of the evolving.conf

  • Fixed plugin throwing endless errors catching legendary Pokemon due to a mismatching path to the configuration node for the “you can’t catch legendaries” message

  • Removed a node from the catching.conf that didn’t belong (it was the Enable-Progression-Based-Leveling-System=false node, this node does nothing in this config file, so it can be removed)

  • Fixed the comments on some nodes in the catching.conf file saying “leveling” (this doesn’t break anything, just makes reading the comments confusing)

A new version has been released for Gotta Catch Em Small, it is available for download here.


Version 6.0.0:

- Added Skill tier restrictions:

    -- GCES now supports PixelSkills! You can restrict player's ability to level up PixelSkills skills just like with catching Pokemon and such.

    -- A new skills.conf should generate and that's where you'll put your Tiers. I left a Tier-1 example in there for all skills.

- Rewrote a lot of the account handler system, optimizing, improving

- Added support of LuckPerms permissions:

    -- In a new misc.conf file, you can tell GCES whether you want to use LuckPerms permissions or GCES' built-in permission system for your tiers, as well as set the permissions for those tiers.
Version 6.0.1:

- Fixed the tier restriction module not taking the setting to disable restricting tiers into account

A new version has been released for Gotta Catch Em Small, it is available for download here.


Version 6.0.0:

- Added Skill tier restrictions:

    -- GCES now supports PixelSkills! You can restrict player's ability to level up PixelSkills skills just like with catching Pokemon and such.

    -- A new skills.conf should generate and that's where you'll put your Tiers. I left a Tier-1 example in there for all skills.

- Rewrote a lot of the account handler system, optimizing, improving

- Added support of LuckPerms permissions:

    -- In a new misc.conf file, you can tell GCES whether you want to use LuckPerms permissions or GCES' built-in permission system for your tiers, as well as set the permissions for those tiers.
Version 6.0.1:

- Fixed the tier restriction module not taking the setting to disable restricting tiers into account

A new version has been released for Gotta Catch Em Small, it is available for download here.


6.2.0:

- Added a world blacklist setting to tell GCES to not activate its restrictions in those worlds (it should auto generate in the misc.conf file)

- Fixed Kubfu and Urshifu not being restricted by the legendary catching restriction

- Fixed an error on the Reforged version during the battle start listener

7.0.0:

- Added difficulty settings:

	-- 3 difficulties (Easy, Medium, and Hard) are now supported and will generate with this update. Can choose to use them or not.

	-- A Default difficulty also exists which, obviously, serves as the default difficulty when the other 3 are not being used


- Added the ability to allow GCES restrictions to be optional:

	-- When enabled in the config, players will not be automatically put into a Tier and will be able to play Pixelmon as if GCES was not installed
	
	-- If optional is disabled, will force-set players into whatever tier you have set to be the default tier (again, defaults to Default tier if all others are disabled) upon join


- Rewrote the commands:

	-- The permission commands have been merged into one sub command:
		
		--- /gces permission|perm <add|set|remove|unset> <player> <permission>

	-- Added a difficulty sub command:
		
		--- /gces difficulty|diff <check|set> <player> [<difficulty>]

		--- /gces diff check <player>
		
		--- /gces diff set <player> <difficulty>

	-- Changed the permission node for the "/gces check" command from "gces.command.list" to "gces.command.check" to avoid confusion


- Fixed most if not all cases of "Catching" and "Leveling" being case sensitive


- Added support of NPCOptions:

	-- You can now set NPC Trainers configured with NPCOptions to pull and use the player's current max Leveling tier level

	-- This supports a modifier to the level value which you can find on the GCES wiki


- Added a spawns listener:

	-- This, when enabled, will scale the natural spawns of Pokemon to match player's current max Catching tier level

	-- This also supports the same modifier as the NPC Trainer Pokemon level setter


- Added support of restricting Z-Moves in the Reforged version:

	-- This was always possible, apparently, I was just too dumb to find it


- Added support of my SpawnValidation plugin:

	-- If GCES is told to scale the spawns and you're using my SpawnValidation plugin, the two modules will work together to modify the natural spawns based on both of their respective features


- Fixed world blacklist setting looking in wrong config file (thus, never working)


- Fixed a typo in the account handler checking for the Mega Evolution permission in the correct file, then looking in a completely different file for the actual permission


- Fixed a typo in the Dynamax permission stuff in the Reforged version checking for a node that didn't exist in the config


- Cleaned up code differences between the two versions to make big updates like this not as much of a hassle in the future


- Fixed not being able to level up skill tier level restrictions:

        -- /gces lvlup skills <player> <skillname>

        -- /gces setlvl skills <player> <level> <skillname>


- Added a help command (Contribution made by John Clark#7313):

        -- Type just "/gces" and it will pop up with usages of the commands in GCES

7.0.1:

- Fixed (potentially?) player account levels getting reset when applying new difficulty settings

A new version has been released for Gotta Catch Em Small, it is available for download here.


6.2.0:

- Added a world blacklist setting to tell GCES to not activate its restrictions in those worlds (it should auto generate in the misc.conf file)

- Fixed Kubfu and Urshifu not being restricted by the legendary catching restriction

- Fixed an error on the Reforged version during the battle start listener

7.0.0:

- Added difficulty settings:

	-- 3 difficulties (Easy, Medium, and Hard) are now supported and will generate with this update. Can choose to use them or not.

	-- A Default difficulty also exists which, obviously, serves as the default difficulty when the other 3 are not being used


- Added the ability to allow GCES restrictions to be optional:

	-- When enabled in the config, players will not be automatically put into a Tier and will be able to play Pixelmon as if GCES was not installed
	
	-- If optional is disabled, will force-set players into whatever tier you have set to be the default tier (again, defaults to Default tier if all others are disabled) upon join


- Rewrote the commands:

	-- The permission commands have been merged into one sub command:
		
		--- /gces permission|perm <add|set|remove|unset> <player> <permission>

	-- Added a difficulty sub command:
		
		--- /gces difficulty|diff <check|set> <player> [<difficulty>]

		--- /gces diff check <player>
		
		--- /gces diff set <player> <difficulty>

	-- Changed the permission node for the "/gces check" command from "gces.command.list" to "gces.command.check" to avoid confusion


- Fixed most if not all cases of "Catching" and "Leveling" being case sensitive


- Added support of NPCOptions:

	-- You can now set NPC Trainers configured with NPCOptions to pull and use the player's current max Leveling tier level

	-- This supports a modifier to the level value which you can find on the GCES wiki


- Added a spawns listener:

	-- This, when enabled, will scale the natural spawns of Pokemon to match player's current max Catching tier level

	-- This also supports the same modifier as the NPC Trainer Pokemon level setter


- Added support of restricting Z-Moves in the Reforged version:

	-- This was always possible, apparently, I was just too dumb to find it


- Added support of my SpawnValidation plugin:

	-- If GCES is told to scale the spawns and you're using my SpawnValidation plugin, the two modules will work together to modify the natural spawns based on both of their respective features


- Fixed world blacklist setting looking in wrong config file (thus, never working)


- Fixed a typo in the account handler checking for the Mega Evolution permission in the correct file, then looking in a completely different file for the actual permission


- Fixed a typo in the Dynamax permission stuff in the Reforged version checking for a node that didn't exist in the config


- Cleaned up code differences between the two versions to make big updates like this not as much of a hassle in the future


- Fixed not being able to level up skill tier level restrictions:

        -- /gces lvlup skills <player> <skillname>

        -- /gces setlvl skills <player> <level> <skillname>


- Added a help command (Contribution made by John Clark#7313):

        -- Type just "/gces" and it will pop up with usages of the commands in GCES

7.0.1:

- Fixed (potentially?) player account levels getting reset when applying new difficulty settings

A new version has been released for Gotta Catch Em Small, it is available for download here.


Version 8.0.0:

Firstly, and I cannot stress this enough, these are beta releases meaning there could still be some bugs in them! My testers have been very helpful with getting this debugged, though, so it should mostly be fine.

  • Added support of Spigot/Forge hybrids and single player worlds

  • There’s probably more but its been so long since I rewrote this that I completely forgot

Compatibility with Legendary Generator will currently be broken until the Forge port for that is finished, so I recommend setting the GCES mode in your legendarygenerator.conf files to false/disabled!

Note:
If you are using SpongeForge, grab the -Sponge version.

If you are using a Spigot/Forge hybrid or pure Forge, grab the -Forge version.

If you want to use it in single player, grab the -Forge version.

Depending on what platform you are using (Sponge, Forge, Spigot/Forge) you need to go in your misc.conf file and tell GCES how it needs to read permissions!

Version 8.0.1:

  • Nothing much to say here really, just a dependency refresh/update, some stability fixes

A new version has been released for Gotta Catch Em Small, it is available for download here.


Version 8.0.0:

Firstly, and I cannot stress this enough, these are beta releases meaning there could still be some bugs in them! My testers have been very helpful with getting this debugged, though, so it should mostly be fine.

  • Added support of Spigot/Forge hybrids and single player worlds

  • There’s probably more but its been so long since I rewrote this that I completely forgot

Compatibility with Legendary Generator will currently be broken until the Forge port for that is finished, so I recommend setting the GCES mode in your legendarygenerator.conf files to false/disabled!

Note:
If you are using SpongeForge, grab the -Sponge version.

If you are using a Spigot/Forge hybrid or pure Forge, grab the -Forge version.

If you want to use it in single player, grab the -Forge version.

Depending on what platform you are using (Sponge, Forge, Spigot/Forge) you need to go in your misc.conf file and tell GCES how it needs to read permissions!

Version 8.0.1:

  • Nothing much to say here really, just a dependency refresh/update, some stability fixes

A new version has been released for Gotta Catch Em Small, it is available for download here.


  • Rewrote the commands, they shouldn’t give anybody any problems anymore

  • Added another Permission-Mode setting, it lives in the general.conf file and will automatically get generated with this update. This Permission-Mode setting is specifically for the commands, and is separate from the Permission-Mode setting in the misc.conf file in each difficulty

A new version has been released for Gotta Catch Em Small, it is available for download here.


  • Rewrote the commands, they shouldn’t give anybody any problems anymore

  • Added another Permission-Mode setting, it lives in the general.conf file and will automatically get generated with this update. This Permission-Mode setting is specifically for the commands, and is separate from the Permission-Mode setting in the misc.conf file in each difficulty