CC_RANDOM_ENCOUNTERS

RPG Maker MV

Call an event instead of battle on random encounter (MZ compatible)

Do you like random encounters, but want to do more than just immediately launch a battle scene when one occurs?

This script changes random encounters on the map so that instead of immediately starting a battle, an event (common or map) is called.
This puts control of random encounters back in your hands, to build an evasion system, allow the player to lose random battles without game over, spawn a map encounter near the player or anything else you can do with events.

The troop ID which would have been used for the battle is stored in a variable, so you can still use the map / region settings to choose an encounter.

Also, you can change the formula used to calculate steps until the next random encounter using a plugin parameter.

This plugin was developed for MV, but is MZ compatible.

How to use:
  • Save the script code as "cc_random_encounters.js"
  • Copy the file into the js/plugins subfolder of your game
  • Configure using plugin manager


Eventing:
When your common event is called, the variable that was set in the plugin parameters will have its value set to the troop ID of the random encounter that would have been started normally.
If your map has no valid encounters for the region the player is in, the variable will be set to 0.
This allows you to completely make the encounter system using the common event instead of setting up troops on the map if you want to.

Otherwise, the simplest event code would be:

Conditional Branch: variable (random encounter troop) > 0:
Battle Processing: variable (random encounter troop), can escape
End


That event would have exactly the same effect as the built in encounter system - starting a battle immediately.

A slightly less trivial example:

Conditional Branch: variable (random encounter troop) == 0:
Exit Event Processing
End
Show Text: "Monsters Are Near..."
Show Choices: "Fight!", "Hide"
When "Fight!":
Battle Processing: variable (random encounter troop), can escape
When "Hide":
Show Text: "You got away.. this time."
End

This example gives the player a choice to fight the encounter or avoid it.
Try adding a random dice roll to make hiding not always work, or give the player advantage when choosing to fight.

With events, you can easily get creative and trigger a minigame using parallel events, or have a chasing map event appear near the player and vanish if the player manages to take enough steps without touching it.
It's all up to your own creativity.