[2003] Events don't seem to recognize the player as, well, the player

airigh

Warper
Member
Joined
Mar 27, 2014
Messages
1
Reaction score
0
First Language
English
Primarily Uses
First off, I just want to say hello, since this is my first post on this forum!

Anyway, I'm having a really wonky issue, and I think it might have to do with a 'sprint button' system I'm using. Events don't seem to recognize the player at all. Teleport events need to be triggered by "event touch" and not "player touch"- using the later isn't working at all, as far as I know. What's worse, if I try to have an event move the player with a "set move route" command, the game just hangs and no movement can be made at all.

I have my sprint button system (it's supposed to work like RPGmaker VX Ace's sprint system, but I lost my copy of VX Ace when my old computer died and I lost my old Steam password) hooked up to a switch- it should theoretically not be running if I simply turn the switch off, but that doesn't work either. My question is- how do I get the engine to recognize the player as the player without removing the sprint common events?

Here's pictures of all my potentially related events so far.

Sprint system



Event I'm trying to have move the player

Teleport Event workaround example

Day/Night System (just in case that's somehow the problem?)

Any kind of help at all would be appreciated! Thanks in advance!
 

Tricimir

Veteran
Veteran
Joined
Jul 17, 2017
Messages
50
Reaction score
14
First Language
English
Primarily Uses
RMMV
This is a system flaw in 2k3. Basically only one event at a time can interact with the player character. If something like a common event is moving them, Either a direction or changing their speed then they'll ignore commands from other events completely.
There are several ways around this, but I'm afraid none of them are particularly pretty.

First off, events on the same layer as the player will still interact reliably. You can make an event at that layer and then have it's first action be to make them move the player forward onto of the event so it feels like you stepped forward onto it instead of bumping into it. You more or less have to use these instead of events set to below or above the player though.

Second, the run command will only interfere with other events when it's doing something. Right now the way you have it set up it's ALWAYS doing something, so while we cant fix the problem entirely, we can minimize it by modifying your system a little so that it only activates once when you first press the button and again when you first release it.

Add another conditional branch that checks if your variable "Sprint", is equal to a second variable (We'll call it "sprint checker".)
If they match, have it do nothing. (add a wait 0.0 seconds command in there. It reduces lag by reminding the program to breath. any event that runs regularly should have one.)
if Sprint and Sprint Checker don't match then use a variable command to set Sprint Checker equal to Sprint.
From there you can take the conditional branch you have already set up and nest it inside the other one we just made.
Now your run button will "remember" whether you were running or walking the last time it checked and only update the player's speed if that's changed since.

This means regular events will now work unless you happen to press or release the button at the exact moment you step onto the event. (there can still be problems if the player is rapidly tapping the run button for some reason.)

Finally the last possible workaround is to have a parallel process event on your map that's constantly recording the X and Y position of your player. have a conditional branch check if they're on the same tile as an event by comparing their X/Y with the event's X/Y, and if they are, call that event. This works like a backup activation, and the good news is that'll keep trying until it actually activates properly. The bad news is that it may activate more than once so you may have to use switches to disable the conditional branch that runs it with yet another conditional branch. all and all, it can get messy and running too many parallel processes can lag your game. Don't forget to use a Wait 0.0 command. (One event is capable of checking and comparing the locations of every other event on a map if you structure them properly.)

Between those 3 options hopefully you find something that works for you.
 
Last edited:

Users Who Are Viewing This Thread (Users: 0, Guests: 1)

Latest Threads

Latest Posts

Latest Profile Posts

Just beat the last of us 2 last night and starting jedi: fallen order right now, both use unreal engine & when I say i knew 80% of jedi's buttons right away because they were the same buttons as TLOU2 its ridiculous, even the same narrow hallway crawl and barely-made-it jump they do. Unreal Engine is just big budget RPG Maker the way they make games nearly identical at its core lol.
Can someone recommend some fun story-heavy RPGs to me? Coming up with good gameplay is a nightmare! I was thinking of making some gameplay platforming-based, but that doesn't work well in RPG form*. I also was thinking of removing battles, but that would be too much like OneShot. I don't even know how to make good puzzles!
one bad plugin combo later and one of my followers is moonwalking off the screen on his own... I didn't even more yet on the new map lol.
time for a new avatar :)

Forum statistics

Threads
106,018
Messages
1,018,358
Members
137,803
Latest member
andrewcole
Top