Func_tracktrain problem, cant get it to run upside down as in a conveyor.

I am making my first prophunt map and am making an illegal Brewery with conveyors etc but I have come across a problem. I don’t wish to use custom textures. I tried the Func_Conveyor which works but only moves objects/players but the surface texture stays fixed. So me been me decided I would make a full conveyor using trackpath and Func_tracktrain for each individual plate on the conveyor…

so in essence, the conveyor plates go across the top on a track path then under and back on the same line on the track path till they join up again with the start so it is a looping tracktrain.

The problem I have is that at end of the conveyor where the tracktrain panels head back along the bottom of the conveyor they do a strange flip/turnover so they are still topside facing up instead of topside facing down, they roll over the end okay but at the point where they pitch from 90 degrees from original they flip around, I have tried XYZ settings to 180 etc and none change anything, can anyone help with this problem…?

I have a rough test map if needed so you can see the problem

Any help would be appreciated cause once I sort this problem I can make it more compact and smaller. :smiley:

A custom texture is really easy to make, is that the only reason why you didn’t use func_conveyor?

func_conveyors are often not strong enough I noticed, even on slopes or in combination with trigger_push. Anyone else having that problem?

Hee hee, well I did make models of a Tamiflu box for a left4dead map I made a few years ago so am aware of how to make textures but I am one of those people who likes a challenge and as the Func_conveyor didn’t do exactly what I wanted I decided it would be fun to create a conveyor from scratch, so please if you have any ideas on this problem please feel free to enlighten me on how to solve it. :dance:

Func_conveyor doesn’t move objects. Valve should have properly made this work but they were lazy. Proper conveyor belts can be tricky and are expensive in Source. Hopefully you’re only trying to create a short conveyor, or else it may cause a FPS drop.

I would recommend not having the conveyor flip around to come back. Just have it hidden/covered underneath. Continuously spawn new pieces of conveyor at the start and kill each conveyor piece when it gets to the end.

I suggest you download Black Mesa Source and decompile one or two of the maps, i remember them having some conveyors with scrolling textures and object/player movement.

Really? I am no mapper but surely spawning pieces and killing them would be a bigger hit on FPS than 15 or so extra ones going back on the underside… saying that I did try to get the pieces to go faster back to the start to cut out any underneath but it was tricky working out the speed to get them back to the start with out a gap.

[editline]30th April 2014[/editline]

Yes! Wigbig I remember them too, thanks for that suggestion I will look into that right now :smiley:

Having them go back underneath to the beginning is definitely more expensive and less optimized than spawning pieces and killing them. The more pieces of conveyor that exist at once, the more expensive it will be.

Okay Thanks for that, I will bear that in mind, I am learning all the time ! :slight_smile:

No problem! I actually once made a test map to see how expensive conveyor belts are. Once it got up to around a few hundred pieces of conveyor spawned, the FPS dropped so much the map was unplayable. Obviously you wouldn’t even want to approach that many pieces so that people with slower computers wouldn’t be affected.

I’m in the process of creating a factory map and opted to go with singular platforms on a track for each item instead of a conveyor belt. My assembly line is far too long to support a conveyor belt system.

Why spawn pieces and kill them when you can use the same pieces and the teleport option at the end of the conveyor? Spawning dozens of func_tracktrain at a time and killing them will more likely than not eventually cause the engine to crash from malformed entity names.

If you check the flag “Don’t do name fixup” in the point_template of the belt piece (I think it’s checked by default), each piece will be named the same thing and it won’t matter. It works just fine. Also only one piece is spawned at a time, not dozens.

Teleporting each piece to the beginning when it reaches the end would also work just fine of course, but requires the start and end path track to be perfectly aligned (which isn’t hard to do if your conveyor is level and straight).

Done some testing and made a conveyor that uses the “teleport to THIS path” option on the first path track, which means when you have the end track path linked back to the start path track it will auto teleport the tracktrain to the start. This works great but still have the problem of the pieces turning at the end which can be hidden by flat panels as you will see in my TEST that I linked to.

Matt, I did some testing and it does not matter where the start and end are in relation to each other, they don’t need to be perfectly aligned, I made an upwards slope conveyor that goes around a corner as a tryout and it still teleports back correctly to the start at the correct height and orientation for the start track path.

What I was talking about regarded the spacing of each piece, not the height and orientation. If you don’t want any gaps between pieces or the pieces to overlap into each other, then you have to align the start and end path track correctly (by trial and error if you’re doing turns and slopes). If you don’t care about them overlapping, then it’s fine, but it’s more aesthetically pleasing not to have the pieces overlap into each other.

I followed Wigbigs suggestion and looked at the black mesa source mod and decompiled a map to see how they had done the conveyors, seems they use their own Func_conveyor_bms brush function and a trigger_vphysics_motion and scrolling textures, I have just borrowed their textures for testing until I get around to making my own, but I found using the standard hammer Func_conveyor and trigger_vphysics_motion works just aswell, in fact it creates DUST off the items been moved along the conveyor and adds to the effect :smile: I can only surmise they made their own Func_Conveyor_bms to cut out surface drag. Anyway FPS run at around 279 on my system does not seem to be hitting it much even with all those cinder blocks tossing and turning and creating dust. :slight_smile:

Anyone know how to make it so that the player moves the same speed up while standing on it as props with a different weight? Now 100kg props won’t go up and 5kg props shoot up, while the player stays somewhere in between. I know the system with a train of trains, but if you have a conveyor that goes up and then drops the objects into something, it’s hard to do the top part so it will drop obejects properly without using 100 different pieces

Hmm I might just add some sort of physical rolls on it (like a real one). That way props can easily roll downwards after the hill I hope. Or some sort of icy brush if that doesn’t work.

Give me a little while and I will upload my new conveyor test map and custom textures I am making that will solve your problems, the main trick is to use the func_conveyor to move the player and the Trigger_vphysics_motion to move props and limit them to a maximum speed.

Okay took some doing but finally got it working take a look see what you think, some of the positions of the graphics on the ends will need tweaking but that is easy to do, each conveyor will need it doing separately depending on the length.

I have some errors, where are they from?

Thanks alot though, that trigger vphysics thing was exactly what I needed. Now it stays the same speed no matter if it weighs 1 or 50k. NOw I just need to add a conveyor to it for a player that it goes on the same speed and then find a moving texture that fits.

Thanks again!

There will probably be one error UNDER the map from the cap_point_base.mdl which is required for prop hunt maps, if you have CSS & Garrysmod then there should be no other errors as the only extra textures it uses are included with the map and they are the moving textures I made, you can actually alter the speed of those textures by editing the conveyor_beltrodeown.vmt file in the rodeown folder, (extract from.BSP) there are two lines ** “texturescrollrate” “0.20”** alter them both to the same maybe 0.60 or similar as they apply to the speed of scroll of the image and the bumpmap. May take a few goes to match to the way you fit the graphics.

I am now working on making a Func_conveyor_scroll that will be able to animate the texture to any selected speed in hammer, but am having some problems getting it to show up and be included in the map. Not sure but maybe we cant add custom Funcs.