# Conveyor Belt Puzzle

#### raymi100

##### ♥Pikachu♥
Hi, I need help making a conveyor belt puzzle where you step on a tile and it forces you to go in one direction until you hit another direction tile, or an obstacle. Everything I have tried has failed, so I'm at a complete loss.

Edit: I want it so the player cannot move at all until they hit another direction tile or an obstacle.

Edit2: View this reply for a clear description of what I'm trying to do here.

Last edited:

#### Htlaets

##### Veteran
Well, it might help if you expanded on how you want the conveyor belt to work, but...

If you want to take away the player's ability to move while on the conveyor belt except to get off, it's relatively simple.

Next, put all your conveyor belts in different regions.

After that create a parallel event like this:

But have a check for every region id the player can enter the conveyor belt on.

Also, turn off the player's stepping motion.

Next have a page in that event for self switch A that's autorun (this will prevent the player from moving on their own) that looks like this:

This will check the region the player is in and move them based on that, so you can have conveyor belts go in different directions based on the region. Keep in mind, that you'll need to end the event somewhere by turning off self switch A and turning the player's stepping motion back on, so you need to have, at minimum, an end point region check.

If you have points where you want to let a player input a command to get off then something like this added in will catch what the player's pressing:

Hope that helps!

#### raymi100

##### ♥Pikachu♥
Well, it might help if you expanded on how you want the conveyor belt to work, but...

If you want to take away the player's ability to move while on the conveyor belt except to get off, it's relatively simple.

View attachment 213183

Next, put all your conveyor belts in different regions.

After that create a parallel event like this:
View attachment 213184

But have a check for every region id the player can enter the conveyor belt on.

Also, turn off the player's stepping motion.

Next have a page in that event for self switch A that's autorun (this will prevent the player from moving on their own) that looks like this:
View attachment 213185

This will check the region the player is in and move them based on that, so you can have conveyor belts go in different directions based on the region.

If you have points where you want to let a player input a command to get off then something like this added in will catch what the player's pressing:
View attachment 213186

Hope that helps!
Thank you! I updated my post to add how I want it to work, and I'll give this a shot and update you on how it works!

#### Htlaets

##### Veteran
Thank you! I updated my post to add how I want it to work, and I'll give this a shot and update you on how it works!
Ah, with the edit, you'd probably want the direction tile to be its own page, and be a different region depending on the directions available to go. You could use conditionals to check the button that's being held to determine which direction the player goes down.

Edit: Oh, and made a mistake: what you want to turn off and on is the walking animation, not the stepping one.

##### Realist
there is a much easier way than regions, a simple event from on the start
of the belt and move direction +x (left, right, up, down), while the switch
or selfswitch is ON, and release it on the other side.

if you use or have arrow directions, it work a slightly different, but the
region for convoyer isn't really needed though.

unless it's a really complex one for each direction and cross each other that
might change the direction otherwise.

#### Htlaets

##### Veteran
You can definitely do it like that, yeah. The master event route allows for more flexibility since we don't know whether the OP wants to be able to adjust what conveyor belts go which direction, and it's easier to change that in a master event.

Besides, checking regions isn't much harder than copy-pasting touch events, and the OP knowing how to do that opens up many more mechanic options.

Then again, you'd still have to create an additional page for the conveyor events depending on what direction they're tilted in if they're animated. But it's still also easier to add interrupts in the form of moving off a conveyor belt midstream with a master event.

#### raymi100

##### ♥Pikachu♥
there is a much easier way than regions, a simple event from on the start
of the belt and move direction +x (left, right, up, down), while the switch
or selfswitch is ON, and release it on the other side.

if you use or have arrow directions, it work a slightly different, but the
region for convoyer isn't really needed though.

unless it's a really complex one for each direction and cross each other that
might change the direction otherwise.

You can definitely do it like that, yeah. The master event route allows for more flexibility since we don't know whether the OP wants to be able to adjust what conveyor belts go which direction, and it's easier to change that in a master event.

Besides, checking regions isn't much harder than copy-pasting touch events, and the OP knowing how to do that opens up many more mechanic options.

Then again, you'd still have to create an additional page for the conveyor events depending on what direction they're tilted in if they're animated. But it's still also easier to add interrupts in the form of moving off a conveyor belt midstream with a master event.
Okay, let me be super clear about what I'm trying to do here (sorry for not doing this sooner, I didn't know how to explain it until just now).

Basically, this is the puzzle: The red arrows always stay the same direction, but you can switch the blue arrows' direction by activating the switch. When you get on the arrows, they force you to travel in the direction they point to until you hit another direction or an obstacle.

Hopefully that clears it up! Thank you both for your help so far!

#### Htlaets

##### Veteran
Either suggestion will work. For the regionID one, you just add a check on whether or not the switch is on to determine which direction the player will go when they're stepping on it.
You'd have to edit the blue arrows to change what they do on that switch with the touch event suggestion.

For the obstacle, you'd want the arrow that runs into it to be a separate region/event depending on which approach you use, because otherwise you'll softlock trying to walk into the obstacle. You can have that separate region change whether it stops the movement event or continues forward depending on whether or not you've gotten rid of the obstacle.

#### Bex

##### Veteran
If it is for the Player and if you use the Events to show the Arrows anyway, than you could try this:

If you use a Tileset Graphic as Event Graphic, make sure that Tileset Tile is passable in the Database,
because Events on Priority "Below characters" are using the passability setting of the chosen Tileset Tile.

##### Realist
the above section of Bex works, but you can use 4 regions,
1 for left, 1 for right, 1 for down, 1 for UP, and check region ID,
this 1 event is parallel on this map, so make it an erase event.

and place the follow movement like Bex said on the region ID.
that way, it's the easiest way to do that.

you dont need to check player X and Y coordiantes though.

#### Htlaets

##### Veteran
the above section of Bex works, but you can use 4 regions,
1 for left, 1 for right, 1 for down, 1 for UP, and check region ID,
this 1 event is parallel on this map, so make it an erase event.

and place the follow movement like Bex said on the region ID.
that way, it's the easiest way to do that.

you dont need to check player X and Y coordiantes though.
You do need player x and y coordinates to get regionID, though.

Also, making an erase would make it one time use until a reload, so I don't suggest that.

##### Realist
as long you are on the map, it keeps running unless you leave the room,
X and Y coordiantes aren't need if the player hits the region ID, so
that makes it pointless.

RegionID and MapID is more used if you transfer back and forth to
a different map to regain the coordiantes, so that isn't point here.

you can ofcourse activate a switch when to run the parallel event if you please,
but there are 3 other ways to set it up without regions entirely.

like as a moving platform, the sameway is exactly the same for convoyer belt,
but XY coordiantes aren't needed there either!

it really depends how the puzzle works and if some parts require it,
but on the basics, XY coordiantes aren't needed.

there is a tutorial how to make this arrow part work with regions.
I just need to find it where it is.

EDIT:
here is a simple setup you can use:

if: Script: \$gamePlayer.regionID == 10
Moveroute: player (skip)
Move left (maybe turn if needed, depending on the facing direction or add it)
end
if: Script: \$gamePlayer.regionID == 11
Moveroute: player (skip)
Move right (maybe turn if needed, depending on the facing direction or add it)
end

do this for UP and DOWN as well, (12, 13) use region id as you see fit.

\$gamePlayer.regionID == x // catch regionID directly, there is also
another one to fetch, player.x and y directly, but the above part
dont require teh coordiantes as it is directly fetch on the \$gamePlayer.regionID.
efficient and faster to catch

Last edited:

#### Htlaets

##### Veteran
No, my point is that you need player x and y to use the getinfo command to get regionid.

And, if you're going to be using region id ever again in your game it's more convenient to have the entire thing as a common event. So, you can just run that common event whenever you need regionid updated. Or mapid. Or player x y. It's multi-purpose. The only thing you need from that common event for this event is regionid, yes. That's the only information used in the example I gave.

The screenshots I gave will get the event to work with regions, no scripting required.

#### Bex

##### Veteran
Just copy paste a few events in a row with the code i showed in the Picture and you will see,
that it works out of the Box, no need for more tricky Solutions XD.

But i also use Region ID and 1 Paralell Event for stuff like this, for example Slipery Ice.

Edit:
There are also Script equivalents which you can use in the Script Box of many Event Commands,

Last edited:

### Latest Profile Posts

Hoping that Unite has a character generator with black hairs/lips and other features.. it is such a pain making characters without these...
Today is my dad's birthday! And he's still going strong in his retirement days!
Current battle gameplay for Shadows of the Earth: The Vrila'an Legend
and yes... still thinking and testing various color schemes for the menu.
Note we have a progress and goals thread. You can use this to post your IGMC progress too: https://forums.rpgmakerweb.com/inde...d-progress-thread.131387/page-17#post-1286063