Talk:Cables and Ropes

From Valve Developer Community
Jump to: navigation, search

So is wind the only way to make a rope move? --TomEdwards 06:57, 1 Jan 2006 (PST)

Also affected by Rotor-wash and physics. --wisemx 10:08, 1 Jan 2006 (PST)
env_shake can also move ropes. --Mattshu 00:00, 9 February 2011 (UTC)

Anyone have any ideas about how to make a rope resize itself dynamically? I've added a pulley constraint, but when one of the objects is pulled towards the pulley, the rope goes slack. Basically with what I have now, the rope will resize itself longer, but will not resize itself shorter. I'm working with the source code, not Hammer. Thanks for any help. --O 06:01, 16 Jul 2006 (PDT)

Rope materials

Are there any other materials you can use as a Rope Material instead of the default, cable/cable_metalwinch01, and cable/cable_hose*? I've tried using cable/chain because it was white-colored, but it doesn't even render. I'm trying to make the effect of dangling antlion webs, unless somebody else knows a way to give this effect with/without using move_rope and keyframe_rope, I'd be grateful :] --Mattshu 00:07, 9 February 2011 (UTC)

I vaguely recall ropes being very limited to only using some cable_black(?) texture, creating a black line, lots of years ago, but I saw another texture today (in an LP of a mod called Half-Mind, on the swingsets there), that looked like a yellow rope, so I know that the texture can be changed somehow. I'm just saying that you should be prepared for it possibly requiring some actual programming. --MossyBucket (formerly Andreasen) 00:23, 9 February 2011 (UTC)
Bah, nothings easy anymore! Is there a way to take that material, copy it, edit the nonoriginal, then recompile(?) it? I've never tried anything like that. --Mattshu 03:28, 9 February 2011 (UTC)
I looked it up: The rope code is in rope.cpp. There's some talk about "legacy support", so I'm guessing there were some added functionality for cables when Episode 1 and 2 was released, or the SDK was updated. Anyway, if iShader/Ropeshader is set to 0, it can only take "cable/cable.vmt" as the material, but if it's instead set to 1, it can take either the "cable/rope.vmt" or the "cable/chain.vmt" material. What controls the iShader/RopeShader, I have no idea. I've searched for it without finding anything else. --MossyBucket (formerly Andreasen) 05:49, 9 February 2011 (UTC)
I'll just find another way then, I don't mess with the programming portion of modding :P Thanks --Mattshu 13:19, 9 February 2011 (UTC)
If your entity simply does not have a keyvalue named 'RopeShader', you should not be restricted to these two materials, because that part of the code never gets executed. Then you should be able to specify any ordinary material with 'RopeMaterial'. How does the vmt you tried to use look exactly? --Biohazard 13:36, 9 February 2011 (UTC)
In game, nothing. In Hammer, it looks like a small white block. --Mattshu 17:14, 9 February 2011 (UTC)
No, I meant your vmt. Anyway, what you can do in the worst case is creating a new material yourself. Just copy one that works and reference a new texture instead etc. --Biohazard 03:39, 10 February 2011 (UTC)
Yeah that's what I guessed I'd have to do. Thanks all --Mattshu 13:32, 10 February 2011 (UTC)
I decided to test out some ropes, and became surprised: LOTS of materials work for ropes - it seems every rope material BUT chain.vmt, whether you add RopeShader to the entities or not (although they're not that easy to light up). There is definitely something within the VMT file itself, like something that's in all the other rope VMTs but not chain.vmt. --MossyBucket (formerly Andreasen) 17:38, 10 February 2011 (UTC)
For me $alphatest or $translucent make the rope disappear. And well, you should not add RopeShader as a kv at all, it's obsolete. The RopeMaterial update also happens later than the RopeShader one ever could; it overrides it. --Biohazard 17:47, 10 February 2011 (UTC)