I came up with an encounter system that works similarly to the Let's Go encounter system; wild battles that don't happen via random encounters, but by interacting with an event in the overworld. The only difference between my system and PLG is that my system is extremely bare-bones and, at this present moment, doesn't support dynamic overworld sprites based on the wild Pokemon. This is because the Pokemon is not defined in the event, but rather it pulls from the encounter table itself and determines a random Pokemon. The event will also respawn after a set period of time, allowing you to not need to worry about any of that yourself. Of course, this means you will have to set the encounter tables up for your map.
There is, however, a drawback in the respawn formula. It checks for a certain amount of time to have passed before doing so, making it a time-sensitive event. The quirk with time-sensitive events is that you must leave the map for the checks to process properly. Otherwise strange things begin to happen. There might still be quirks about this that I just haven't noticed, but... It works for what I need it to, and I figure someone else might find a use for it as well (especially since I haven't seen a tutorial like this on the site yet).
The event requires three pages, much like the standard time-sensitive event.
The first page looks like such:
The value that follows"EncounterTypes::" are all the encounter types available in your game. A list of the default ones can be found here.
The second page is just blank, but needs Self Switch A set to on.
The third page looks like this:
Take note of the switch under conditions; that is required for the check to work as well. "s:cooledDown?(x)" is the name of the Switch, and the X is the value of time in seconds (for example, if you put 60, that means 1 minute. if you put 86400, that corresponds to a full day.)
Once again remember: For this to work correctly, you need to leave the map before the event will respawn properly.
Side notes: You can make the events move around, automatically activate when it interacts with the player, and if you want it to appear underneath the player, you will need to tick the "Through" box on the first page of the event,, tick "Event Touch" under trigger, and make sure that the event icon is chosen from the tileset itself.
A video of the basic event in action is shown if you click on the More Information button. Hopefully this all formats correctly and is easy to understand. If there's any questions, feel free to hit me up!
There is, however, a drawback in the respawn formula. It checks for a certain amount of time to have passed before doing so, making it a time-sensitive event. The quirk with time-sensitive events is that you must leave the map for the checks to process properly. Otherwise strange things begin to happen. There might still be quirks about this that I just haven't noticed, but... It works for what I need it to, and I figure someone else might find a use for it as well (especially since I haven't seen a tutorial like this on the site yet).
The event requires three pages, much like the standard time-sensitive event.
The first page looks like such:
The value that follows"EncounterTypes::" are all the encounter types available in your game. A list of the default ones can be found here.
The second page is just blank, but needs Self Switch A set to on.
The third page looks like this:
Take note of the switch under conditions; that is required for the check to work as well. "s:cooledDown?(x)" is the name of the Switch, and the X is the value of time in seconds (for example, if you put 60, that means 1 minute. if you put 86400, that corresponds to a full day.)
Once again remember: For this to work correctly, you need to leave the map before the event will respawn properly.
Side notes: You can make the events move around, automatically activate when it interacts with the player, and if you want it to appear underneath the player, you will need to tick the "Through" box on the first page of the event,, tick "Event Touch" under trigger, and make sure that the event icon is chosen from the tileset itself.
A video of the basic event in action is shown if you click on the More Information button. Hopefully this all formats correctly and is easy to understand. If there's any questions, feel free to hit me up!
- Credits
- This was the easiest script stuff I've done, but if you want to credit me feel free to.