Moving worlds!

How do i make maps that move? like this one

I’m fairly sure CTF_convoy used animated textures, correct me if I’m wrong.

wow? really? thats… thats fucking awesomely funny, i want the simple way though.

Well, really so is the walls some moving brushes and when they hit the back of the map they teleport to the beginning and the wheels are just set to turn while the rest of the map stands still, it’s just the ground and walls that moves, nothing else.

yes i know how it works what i want to know is how to DO IT, do i make the entire world on a func_tanktrain or something?

  1. lag

  2. physics objects will not stand still, but move backwards against the direction of the tracktrain

  3. optimization would be a large issue


The best method would be to make the map’s surrounding an animated texture or an animated model. It provides the feel of moving but still allows you to optimize and physics props won’t start acting strangely

The map doesn’t actually move. The skybox moves around the map. That gives the impression of moving without the glitches mentioned above.

The skybox is using an animated texture, something which makes it look like it’s moving, when it actually stands still.

The smoke underneath the train also a key factor.

a trigger push set to the same speed underneath adds effect aswell

You use an animated texture on the floor, walls and ceiling to make the train looks as though it is moving. Nothing is moving, but it gives that effect.

Well I’ve played the maps, so how to you explain the same rocks that goes around all the time? If you get behind one you are done. Because it pushes you to the edge of the map.

Decompile it and find out?

The rocks are on a func_tracktrain.

Try to download the map and decompile it. just how to see how stuff is made of course.

Stealing stuff from maps isnt cool.

As pdkm931 wrote: That are multiple segments as func_tracktrain on a simple track with 2 path_track entities. The one in front of the convoy has the flag “Teleport to this point” activated. To get the right space between the segments divide the length of one segment by the speed of them (e.g. 512 / 200 = 2.56) and then create a logic_auto and add these outputs:

OnMapSpawn | NameOfSegment1 | StartForward | 0.00
OnMapSpawn | NameOfSegment2 | StartForward | 2.56 (the result you got from the division)
OnMapSpawn | NameOfSegment3 | StartForward | 5.12 (the result x 2)
OnMapSpawn | NameOfSegment4 | StartForward | 7.68 (the result x 3)