Most of you who are interested in Quake 1 mapping will have come across the func_train entity at some point. I also used to know about it, but until recently never thought whether it would be possible to build some kind of massive “chain” constantly moving (in this case “up”) through the map. I added this while I went along with my upcoming deatchmatch map, Fire, Water, Squish (working title…).
So I went to work and came up with the following setup (top view) – multiple chain segments surrounded by lights, each of the segments turned into a func_train entity.
A slightly better impression is in the following (editor) screenshot where you have a 3D view of some of the segments:
It did take quite a bit of tweaking the details while getting the whole setup to work smoothly, but in the end it fit together as it should.
One thing to keep in mind that you just will to accept (as far as I know, anyway) is the compromise in terms of lighting. As there is no dynamic lighting of models in Quake 1, the static lighting for the train will be calculated at build time (that’s also why you can see the light entities in the second screenshot above). So I had to make sure that the lighting wasn’t too far off when the individual chain segments are in motion, but see for yourself what it all looks like in this short video clip.