CriticalGames

Veteran
Veteran
Joined
Aug 8, 2014
Messages
220
Reaction score
65
First Language
English
Primarily Uses
Hi everyone,


This is something that I've been grappling with for the past few weeks, and I'm really not sure what I can do about it.


For some animated objects in the environment, such as water coming in on the shore of a beach, I use an event with Autonomous Movement to create the animation. However, what I keep finding is that sometimes when I load the game up, a handful of these events will be out of sync with all the others (e.g. when all the events should be at frame 4 of the animation, some have lagged and are only at frame 2). For something like flowing water, this is a big issue and completely kills the effect.


I have the Frequency turned up to '5 (Highest)', so that can't be the issue. And it seems totally randomised. I would use Autotiles, but RPG Maker MV lacks the capacity for 4 frame animations.


I'm using Galv's Move Route Extras Script so that I can specify which frame of animation I want the event to change to (as RPG Maker MV still lacks a Change Image function which allows you to designate specific frames from within a Move Route). The script could be the issue, however I've done a little test where I used the exact same commands but ran them in a Move Route through a separate Parallel Event. So rather than having Autonomous Movement, the events are manipulated remotely - and this worked without any issues (but of course is much more fiddly and I would imagine more costly in terms of performance). So I don't think it's the script.


Hopefully that makes sense! It's unfortunately a bit of a tricky issue to explain, or convey with pictures. Does anyone have any ideas? Or is this something that should be listed as a bug? Thank you very much for your time!
 
Last edited by a moderator:

Shaz

Global Moderators
Global Mod
Joined
Mar 2, 2012
Messages
42,462
Reaction score
14,816
First Language
English
Primarily Uses
RMMV
Is it the frequency that's causing it, or is it that you walk away from the area and the event stops updating because it's out of range, and therefore goes out of sync with other events that are not yet out of range?
 

CriticalGames

Veteran
Veteran
Joined
Aug 8, 2014
Messages
220
Reaction score
65
First Language
English
Primarily Uses
Thanks for the quick reply Shaz! As I said, I've got the Frequency set to Highest, so that shouldn't be the issue.


Your second point, however, seems very likely. But (as I've said an innumerable amount of times now about MV =P) that was never an issue in previous RPG Makers, so I didn't consider it. Do you know of any solutions to that?


Thanks again! =D
 

Shaz

Global Moderators
Global Mod
Joined
Mar 2, 2012
Messages
42,462
Reaction score
14,816
First Language
English
Primarily Uses
RMMV
It was a problem in any previous version that had anti-lag built in.  So it was definitely there in Ace, not sure about VX.  It does a test to see if the event is "near the screen" or "near the player" and if it's not, and not set to autorun/parallel process, it won't update.


The solution I used for my game was to have a variable for each purpose (so, say a variable for waterfalls) which I would increment in a parallel process common event that was turned on the entire game.  On the waterfall events, I would have multiple pages - one for each animation frame, each one conditioned by the variable being 0, 1, 2, 3 ...  This means when the event comes into view or close to the screen/player, the correct page would display according to the value of the variable, so even if it stopped animating because it was too far away, it would immediately jump to the correct frame when it was within range again.  The parallel process common event did a Wait for a certain number of frames, incremented the variable, then reset it to 0 if it was greater than the maximum number of frames.


I suggest you give that a go on just a few of the 'problem' events and see if it works.  If it does, you can then just copy/paste them wherever they're needed.


If you definitely didn't have this problem in Ace, and you didn't have some workaround that forced it to update even though it was out of range (some of the antilag scripts had a 'force update' option), then it may be that this is not really the cause (which is why I say to try it out on just a few events rather than changing them all straight off).
 
Last edited by a moderator:

CriticalGames

Veteran
Veteran
Joined
Aug 8, 2014
Messages
220
Reaction score
65
First Language
English
Primarily Uses
Thank you very much for the detailed explanation Shaz - I really appreciate it! =D Oh, my apologies. I have very little experience with VX and VX Ace, and was referring to 2K/2K3/XP in which this type of thing just wasn't an issue (along with 100 other issues I encounter every day with MV...sorry, this isn't the place for that =P). I assumed that this had to do with the way that MV loads assets, so it's good to understand where this comes from.


That's a very clever way to get around it! I've given it a try, and it works very well - thank you =) My only concern (again, thinking relative to water animations) is that it'll theoretically get out of sync with animations that aren't controlled by this system - for example, if I have a normal water tile perpendicular to a tile where water moves onto the beach, and only the latter is controlled by this Common Event system, isn't it likely that the former and latter would move out of sync with each other if the player moved away and then came back? And if I try to do every standard water tile as an event run by the Common Event system, I end up with several hundred water events - which I don't think can be good for performance.


I tried searching to see if there were any similar anti-lag or 'force update' plugins for MV, but that doesn't seem to be the case.


Anyway, thank you very much for the help - it doesn't seem like there's a perfect solution, but your idea is definitely a possibility.
 

Shaz

Global Moderators
Global Mod
Joined
Mar 2, 2012
Messages
42,462
Reaction score
14,816
First Language
English
Primarily Uses
RMMV
Even the animated water tiles change frames according to a variable within the system.  If you could find where that's updated, you could add a line to the script to also change the variable, so your event variable will always be in sync with the automatically-animating water.


Is it not possible to change your beach water tile to be an autotile?
 

CriticalGames

Veteran
Veteran
Joined
Aug 8, 2014
Messages
220
Reaction score
65
First Language
English
Primarily Uses
Ooh, that's an interesting idea. I'm not particularly adept when it comes to code, but I'll see if I can find anything - thanks! =)


Unfortunately not - there simply aren't enough frames of animation available in MV auto-tiles. When I started this project, it was on RPG Maker XP, which uses four frames for every auto-tile animation, and generally I think that the more frames of animation, the nicer looking the effect is. I was also utilising more complex auto-tiles - for example, a railing - which just don't work with MV's limited format. I'm sadly yet to find a single use for auto-tiles in MV =/
 

Latest Threads

Latest Profile Posts

Sometimes you Just need to realise someone is beyond help... Still hard to walk away tho :(
100 Horror/Tragedy Sample Maps, Penguin Mech Sprite, & TileD Templates | RPG Maker News #70

Continuing working on abs. So far I have done the workout twice. I am excited to see the results after a couple of weeks. How is everyone doing? :)
MZ: oh boy imma work today
Me, excited: Really?
MZ, doesn't do what I tell It too
Me: I Thought-
MZ: I am Working!
Oof, this "side project" of mine is starting to get as complex as a VS plugin, at least as far as plugin parameters are concerned. I think I now understand why a plugin like this doesn't already exist(that I know of). Learning a lot while trying to make it work though!

Forum statistics

Threads
112,224
Messages
1,066,652
Members
145,828
Latest member
Frostdrache
Top