Home Creators Posts Import Register Favorites Logout

Downloads

Content

This plugin adds new movement for events such as "mimic" which copies the player's movements, as well as more features.

! SEE BOTTOM OF POST FOR UPDATES !

Hi all,

Today we have a plugin that mostly focuses on event movement whenever the player takes a step. This means that an event set up to use the custom movement will only move whenever the player moves, and can be configured to move 2x per player move, 1x per player move, 1x every 2 player moves, or 1x every 4 player moves. This can be useful when making on-map monsters that the player may want to try and avoid, so they can plan their movement through a dungeon but could also have uses in puzzles and other stuff. Default movement options are not affected if not using the comment to set up the new movement styles.

Along with how the movement works, this plugin also offers some new movement styles. Things such as "avoid" where the event will try to move away from the player, "mimic" where the event will make the same movements as the player, "opposite" where the event will make the opposite movement the player makes, and some more.

Finally, there are some smaller features as well. Events using the new movement can be "stunned" where they will remain in place for x number of player steps, determined by you in a plugin command call. You can also set up a region ID through which events cannot move, which is useful for making random NPC events that wander but only in a certain area.

I am as always interested in any hearing any of your feedback or requests for additional features relating to event movement that I might not have thought about.

Beta Update: Added some plugin commands for stunned events, such as unstun event and get stun status to set a switch ON/OFF based on an event being stunned.

Beta Update 2/15/2023: Added a region that can restrict the Player's movement but not event movement. This is opposite of the already existing region to restrict event movement but not player movement.

 

This version adds a way to pause autonomous movement for events if the message window is open. This uses a similar event command system to tag events that should pause their movement when the message window is open to the other comments set up through this plugin. However, events with the comment for pausing auto movement will not need comments for speed or move type, which was previously required when using the comment to set event movement up.

This update also made comments case insensitive, which should hopefully cut down on some user errors due to incorrect capitalization of the event comment.

Please note that it is planned to move the player region restriction functionality away from this plugin and into [CGMZ] Player Movement in a future update.

This update adds a new movement type: Stalk. This movement type will cause the event to try to remain a certain distance from the player, moving towards them if farther away than the given amount of tiles or away if closer than the amount of tiles. For example, you could have an event that prefers to remain 6 tiles away from the player, and it will attempt to always be 6 tiles away from the player.

This update also added the option to cause animation variance in your events. When events move or step, they all animate on the exact same frame and it can looks robotic and not very realistic. Instead, you can now add random waits between when the animation updates so your events animate more naturally.

This update removes the region restriction for player movement, as this has instead been added to [CGMZ] Player Movement and is more appropriate in that plugin. I want [CGMZ] Event Movement to focus on only events. 

This version redid the movement code for events that were based on player steps. How it used to work was that it would try to move once or twice (for fast speed) when the player step count increased. This did not take into account player move speed so if the player was faster than the event the player could move twice for a normal event's movement speed if it was too slow. This could lead to inconsistent movements by events, mostly in cases where the speed difference between event and player were large.

Now, the event's movement adds steps to take whenever the player moves. This takes into account the delta movement between them, so if the player is very fast and moves twice before the event is done moving, the event will still move twice if it is set to "normal" speed where it should move once for every step the player takes. If your player continues dashing, the moves the events make will eventually catch up to the player's step count and the event will always move a consistent amount of tiles based on how many steps the player has taken.

This update also causes event movement to take jumps into account, although you can turn this off in the parameters. When the player jumps, that amount of steps can be added to the step count which is what event movement is based off of.

Now that movement is more consistent, I added some more move speeds. You can now have VVSlow, which moves once every 8 steps the player takes, VFast which moves 4 times every step the player takes, and VVFast which moves 8 times every step the player takes.

This latest version adds some new move types for events to follow. You can now have your events hug the left or right wall, constantly moving so it is next to the edge of the wall. If it is not placed next to a wall, it will move left/right in a square pattern.

You can now also have your events chase the player if the player is within a specific range of the event. If not within range, the event will move randomly. If within range, it will always try to move toward the player. The range is provided by you, each event can have a different range.

This version also now allows you to set up your events to move without worrying about the player's steps, in case you want to use the new event move route types provided without the step requirement. See below gif for how these new options can look:

A bug was fixed with stunning events so the stun now wears off at the correct number of steps.

This version adds the vertical and horizontal movement type. Vertical causes the event to move up until it runs into something, and then down until it runs into something. Horizontal works in a similar way except for left and right.

See below gif for how it can look:

This update also adds the region switch, which can enable and disable the region blocker mid-game in case you want regions to block events only temporarily.

Files

Comments

AdamL

Hello! Is there any way to make an event chase the player when they enter a certain radius around the event itself?

HIROTONFA

Is this meant to possibly build into a deeper traditional roguelike system? Very cool!

ArsonMuffin

As a huge fan of the Pokemon: Mystery Dungeon series, I dig it