- Pokémon Essentials Version
- v21.1 ✅
Minds Of Their Own (M.O.T.O)
Want to add a bit of randomness to your game? Want your pokemon to be a little less-robotic and more like the anime and manga?
Personally, I have always found the bonding aspect in Pokemon games to be a bit lacking. Sure, a pokemon’s high happiness can give you affection bonuses (if you enable it in the settings), but what about the negatives of not bonding? In the anime/manga, pokemon will kind of do whatever they want if they do not respect you as a trainer. M.O.T.O forces you to either bond with your pokemon or deal with an angry, disobedient, magical monster.
Each mechanic can be adjusted in the config.rb. I personally recommend turning on essentials affection setting within your game for the best experience.
What this plugin does
How It Works
Essentially, you will need to manage your pokemon's happiness more effectively. When 1 of the 3 mechanics are triggered, unhappy pokemon will roll a number between 1-100. If you roll below the happiness threshold you set, you fail. Failure results in either disobedience in battle, refusing to evolve or refusing to switch in during battle. Of course, you can adjust the settings and set these limits to whatever you want. You can also disable any feature as well. Below are the three mechanics and how to use their individual settings.
Pokemon can refuse evolution
Pokemon Can Randomly Disobey In Battle
Pokemon Can Refuse To Switch-In During Battle
I have a few updates planned for this plugin in the near future. Have some cool ideas you want added? leave a comment and maybe I can add it in. If you find bugs or errors, let me know and I will try to fix them as soon as possible.
Be sure to credit!
Want to add a bit of randomness to your game? Want your pokemon to be a little less-robotic and more like the anime and manga?
Personally, I have always found the bonding aspect in Pokemon games to be a bit lacking. Sure, a pokemon’s high happiness can give you affection bonuses (if you enable it in the settings), but what about the negatives of not bonding? In the anime/manga, pokemon will kind of do whatever they want if they do not respect you as a trainer. M.O.T.O forces you to either bond with your pokemon or deal with an angry, disobedient, magical monster.
Each mechanic can be adjusted in the config.rb. I personally recommend turning on essentials affection setting within your game for the best experience.
What this plugin does
- Pokemon can refuse evolution
- Pokemon can decide to randomly disobey you if unhappy regardless of badges; Higher the happiness, lower the percent chance to disobey (progression system)
- Unhappy pokemon can refuse to switch in during battle; You can force the pokemon out of its ball at the cost of their happiness
- Customize feature settings
- Results are displayed within the command window (debug mode only).
How It Works
Essentially, you will need to manage your pokemon's happiness more effectively. When 1 of the 3 mechanics are triggered, unhappy pokemon will roll a number between 1-100. If you roll below the happiness threshold you set, you fail. Failure results in either disobedience in battle, refusing to evolve or refusing to switch in during battle. Of course, you can adjust the settings and set these limits to whatever you want. You can also disable any feature as well. Below are the three mechanics and how to use their individual settings.
Pokemon can refuse evolution
Basically, your pokemon will stop its own evolution halfway through the process. This enables evolution refusal to either happen randomly or due to being unhappy. This doesn’t mean the pokemon will never evolve, you just need to keep trying at different levels (or happiness values if using optional setting).
Config
EVOLUTION_CANCEL_CHANCE - sets the percent chance of a pokemon randomly refusing to evolve. This applies to all pokemon you own.
Optional Setting
You also have the option to ignore random chance and make the refusal happiness based. Set ENABLE_HAPPINESS_REFUSAL = true. Doing this overrides the EVOLUTION_CANCEL_CHANCE.
EVOLUTION_HAPPINESS_THRESHOLD - Pokemon happiness is at this value or below cause 100% evolution refusal. only works if ENABLE_HAPPINESS_REFUSAL = true
Default Settings: pokemon will refuse to evolve randomly with a 30% chance to trigger on all pokemon you own. Happiness refusal is set to false
How to disable:
set EVOLUTION_CANCEL_CHANCE = 0 and ENABLE_HAPPINESS_REFUSAL = false
Config
EVOLUTION_CANCEL_CHANCE - sets the percent chance of a pokemon randomly refusing to evolve. This applies to all pokemon you own.
Optional Setting
You also have the option to ignore random chance and make the refusal happiness based. Set ENABLE_HAPPINESS_REFUSAL = true. Doing this overrides the EVOLUTION_CANCEL_CHANCE.
EVOLUTION_HAPPINESS_THRESHOLD - Pokemon happiness is at this value or below cause 100% evolution refusal. only works if ENABLE_HAPPINESS_REFUSAL = true
Default Settings: pokemon will refuse to evolve randomly with a 30% chance to trigger on all pokemon you own. Happiness refusal is set to false
How to disable:
set EVOLUTION_CANCEL_CHANCE = 0 and ENABLE_HAPPINESS_REFUSAL = false
Pokemon Can Randomly Disobey In Battle
Regardless of how many badges you have, pokemon have a chance to disobey you in battle if you have not bonded with it. It's a progressive system meaning that as you raise a pokemons happiness the chance to disobeys lowers until you reach a point where you will have 100% obedience (excluding badge mechanics).
Config:
Within DISOBEY_CHANCES is a disobedience tier. The first 2 numbers are the tiers range of happiness values. The last number on that line (ex. => 50) is the percent chance to disobey orders during battle. This is done to reflect the bond growing between you and your pokemon. Higher the happiness, lower percent chance to disobey. You can set these tiers to anything you want and add/remove tiers/lines (just remember the comma).
DISOBEY_CHANCES = {
0..49 => 50, # tier 1
50..75 => 25,
76..100 => 10
}
Example: # tier 1 says pokemon that have happiness values 0-49 have a 50% chance to disobey during battle. When happiness 101 and higher, pokemon trust you and will not disobey since the highest happiness value set is 100 (tier 3)
Pokemon with happiness values outside of DISOBEY_CHANCES will always obey trainers (badge mechanics still apply). By default happiness above 101 and higher will result in 100% obedience (normal gameplay rules still apply i.e badges)
Default Settings:
Tier 1- Happiness 0-49 is a 50% chance to disobey; Tier 2- Happiness 50-75 is a 25% chance to disobey; Tier 3- Happiness 76-100 is a 10% chance to disobey; Happiness 101 or above will result in 100% obedience (badges still apply)
How To Disable:
Set the LAST number to 0 in each tier/line within DISOBEY_CHANCES
Config:
Within DISOBEY_CHANCES is a disobedience tier. The first 2 numbers are the tiers range of happiness values. The last number on that line (ex. => 50) is the percent chance to disobey orders during battle. This is done to reflect the bond growing between you and your pokemon. Higher the happiness, lower percent chance to disobey. You can set these tiers to anything you want and add/remove tiers/lines (just remember the comma).
DISOBEY_CHANCES = {
0..49 => 50, # tier 1
50..75 => 25,
76..100 => 10
}
Example: # tier 1 says pokemon that have happiness values 0-49 have a 50% chance to disobey during battle. When happiness 101 and higher, pokemon trust you and will not disobey since the highest happiness value set is 100 (tier 3)
Pokemon with happiness values outside of DISOBEY_CHANCES will always obey trainers (badge mechanics still apply). By default happiness above 101 and higher will result in 100% obedience (normal gameplay rules still apply i.e badges)
Default Settings:
Tier 1- Happiness 0-49 is a 50% chance to disobey; Tier 2- Happiness 50-75 is a 25% chance to disobey; Tier 3- Happiness 76-100 is a 10% chance to disobey; Happiness 101 or above will result in 100% obedience (badges still apply)
How To Disable:
Set the LAST number to 0 in each tier/line within DISOBEY_CHANCES
Pokemon Can Refuse To Switch-In During Battle
Each unhappy pokemon has a chance to refuse switching-in once per battle. Rolls lower than happiness threshold you set will fail causing the pokemon to refuse switch-in (and vice-versa). The player will be prompted if they want to force the pokemon out at the hidden cost of -10 happiness. Once the pokemon is forced out, for the rest of that battle, it will not refuse switching in.
Config:
You can adjust the following settings within the config:
HAPPINESS_THRESHOLD -happiness at this value and lower will trigger disobedience chance
DISOBEY_SWITCH_CHANCE -percent chance for each roll.
How To Disable:
set DISOBEY_SWITCH_CHANCE = 0
Default Settings:
HAPPINESS_THRESHOLD = 60 and DISOBEY_SWITCH_CHANCE = 50;
Example: this means that pokemon with happiness of 60 or below have a 50% chance to refuse once per battle
#Known Bug: Currently, the player can say no when you are asked to force out the pokemon. If you try to re-switch that same pokemon, it will roll again and you may or may not be successful. Will fix in update.
#Known Bug: There was a loop that occurs during switch-in that caused rolls twice per successful switch of an unhappy pokemon (sometimes resulting in a 2nd roll fail). I decided to set a flag lock limiting the player to 1 refusal chance per battle. As a result, you will get a double message in the command window (debug mode) for pokemon who rolled already. Ignore it.
Config:
You can adjust the following settings within the config:
HAPPINESS_THRESHOLD -happiness at this value and lower will trigger disobedience chance
DISOBEY_SWITCH_CHANCE -percent chance for each roll.
How To Disable:
set DISOBEY_SWITCH_CHANCE = 0
Default Settings:
HAPPINESS_THRESHOLD = 60 and DISOBEY_SWITCH_CHANCE = 50;
Example: this means that pokemon with happiness of 60 or below have a 50% chance to refuse once per battle
#Known Bug: Currently, the player can say no when you are asked to force out the pokemon. If you try to re-switch that same pokemon, it will roll again and you may or may not be successful. Will fix in update.
#Known Bug: There was a loop that occurs during switch-in that caused rolls twice per successful switch of an unhappy pokemon (sometimes resulting in a 2nd roll fail). I decided to set a flag lock limiting the player to 1 refusal chance per battle. As a result, you will get a double message in the command window (debug mode) for pokemon who rolled already. Ignore it.
I have a few updates planned for this plugin in the near future. Have some cool ideas you want added? leave a comment and maybe I can add it in. If you find bugs or errors, let me know and I will try to fix them as soon as possible.
Be sure to credit!
- Credits
- Kronic Respawn