Need advice regarding IO idea for condo

Hello there!

With the recent IO options that now are possible to do in condos, I had a kind of ambitious idea to try, but I dont know which option would be better or easier to implement, and I’m very green on this IO debacle anyway.

My idea (atm) is to build a condo around a moving train, Orient Express style. So you would be able to chill inside one or two wagons, look outside at the moving scenery, etc… And thats where I am having trouble envisioning it, that moving scenery.

I though about two ways to pull it off, with their pros and their cons:

-Option 1: Build static wagons, and have modular scenery at different “layers”, that would appear at random intervals, so there’s variety, but still feeling like a continuous stretch of land. An example from an existing videogame would be the intro sequence from The Room 3.

Pros:

  • The “player area” would be static, so there wouldnt be any issues for the people inside the wagons.
  • Building modular assets, would be less work and more opportunities to focus on details

Cons:

  • I dont know if it would look good and seamless
  • It would be very hard to have random scenery changes, like a tunnel
  • I have no clue to how to do it

-Option 2: Do the opposite, building a huge map with a circular-ish track, and have the train loop it. Similar to how the train segments in Uncharted 2 work.

Pros:

  • The landscape could be curated, adding more variety of scenery, tunnels, environments, etc…
  • No headaches trying to figure out how modular moving scenery works

Cons:

  • Way more work and time consuming
  • The player areas are moving, and I dont know if that could affect playability, or have issues with lag and such.

So what do you guys think? Is there a better option I didnt think about? What would be the best way to pull out any of this?

Thank you so much for your help and time!! ^^

4 Likes

Moving the scenery will probably always be easier than moving the player space. Conveyor environment all the way! Plus who doesn’t like a little magic behind the curtain, its the kind of thing that only really happens in video games. It’s fun!

Good luck either way, train maps are always cool

4 Likes

Sounds like a great idea for a condo! As @EvKem said in their reply, I think moving the scenery would be the best approach. Having players standing on movers for a prolonged amount of time can cause issues with desync depending on the amount of players connected to your condo, and how everyone’s internet connection holds up.

The biggest hurdle to doing a conveyor belt method is the transition when moving the items back to their starting position. The best way to get around this would be to use something like a tunnel section to hide the moment that the scenery pops back into place. Here is a quick model I threw together to show what I mean:

Inside View:

Behind the scenes:

The set would just need to be a bit bigger to fit a full-sized train, but the basic idea is the same~

Here is all the IO I needed to pull this off:

  • 2 Movers (one for the scenery, one for the tunnel)
  • 1 Timer module (To loop it easily
  • 1 Relay

The movers are set to a 10 second duration to move -5000 units in the Y direction, and set to No Looping
This means it will travel -5000 units in 10 seconds when “Start” is sent to them

When a mover gets a “Stop” input sent in, it will snap the items back to their starting position.

The relay then starts the scenery, waits a few seconds, then starts the tunnel at a delay long enough to ensure it covers your view before the scenery finishes moving. Then, the “Stop” input is sent to the scenery to snap it back to the start, and the “Stop” is sent to the tunnel once it is out of view.

The timer loops every 12 seconds so the relay restarts just in time for the pieces to always be moving. This will just take some experimentation with different delays based on your condo’s size.

Here are the connections I used for the relay:


)

For random scenery changes, it could be possible to have more than one “conveyor belt” of items that can move between tunnels. Instead of telling the “scenery” mover to start in the relay, jsut swap it out with a randomizer module, and hook up each one of your conveyor belts to it. That way, it chooses a random belt of items to show going by each time!

Can’t wait to see what you come up with for your condo! I hope this helped answer any questions~

7 Likes

I’ve thought of doing train map myself.

I figured Id keep the train stationary.
Then have the terrain grouped on several large disks rotating at different speeds.
Further out disks moving slower so mountains do go flying by.

edit:
So I did a little test of my disk idea and it could work but they need to be massive so you don’t notice the curvature. The problem is the larger they are the more rocks and trees and such you need to cover the disk increases massively.
I think @Megumin 's Idea is better suited.

1 Like

So I did some more tinkering and came up with this.

Using 4 simple movers. 2 for the foreground, 2 for the background mountains.
This allows constant movement without needing a tunnel to hide the reset.
you could even have things like tunnels or buildings on there own mover that only go by once every 10min or something.

8 Likes

Wow, that looks fantastic!!
So what was your setup for that?

When you send the “start” command to a “mover simple” it jumps back to it’s initial position then slides to where its set to go.

I tried having the mover “on end” send start to it’s self but that caused some timing issues so instead I’m using a timer to control both movers.

The timer starts one of the movers then half the duration later starts the second.
Both movers are stacked on top of each other and have the same settings.

Example

let’s look at the settings for the tree section.

The base is a “canvas one-way wall” scale = 200 long.
Don’t use “world align” on the textures or it wont look like its moving.

Timer

Looping = on
Start on spawn = on
(You’ll want connections in “on timer started” this will start the movers instantly instead of when the timer finishes.)



The weird number is 5.1 the game just changes it sometimes. (probably a float).

Mover Simple

Auto start = off (the timer handles this)
Loop type = no loop
Ease = off
Make use of the “offset position” to make the mover still accessible.
Use the offset on the second mover up/down by a fraction to avoid z-fighting between the moving pieces.

All this applies to the mountains aswell but with longer pieces and timing.

1 Like

Thank you so much! This is really helpful!

I’ll try it myself, but it sounds like what I was looking for

1 Like

No problem, it was fun to figure out.
Glad we could help, and good luck with your condo.