Not logged inOpenClonk Forum
Up Topic Development / Scenario & Object Development / Lift Tower and rope
- - By Clonkonaut [ie] Date 2011-10-10 15:52 Edited 2012-01-08 19:28
I have made a 'lift tower' (in Tests.ocf/Experimental.ocd/LiftTower.ocd). The model I took from the forum somewhere. By interacting (careful you can grab it as well) you get a rope with a hook on the end. This hook  can be hooked on to every C4D_Vehicle. If you then grab the tower and press up you pull in the rope. I thought this to be a nice way of transportation. Maybe connecting lift towers will be possible.

It is in experimental because I failed to make good use of the rope. The applied force is incapable of proper pulling. Nonetheless I wanted to have some feedback on this. If no one likes the idead, it won't invest more time on it.

Regarding the rope, I have a question more or less directed at Randrian. Are you willing to polish the rope so it fits the task?
I will have a look at the code but understanding it will certainly take long. At least this week and next weekend I will be busy. So far, the applied force is unsufficient of pulling something in most of the times. And reconnecting the rope to another object wasn't possible. I had to create a new one every time. This horribly fails when there is material inbetween the objects.
Reply
Parent - - By Randrian [de] Date 2011-10-10 17:58
Yes, I can take a look at the rope and try to improve it to fit your needs.
Reply
Parent - - By Clonkonaut [ie] Date 2012-01-08 14:28
Any progress by chance? :)
Reply
Parent - - By Randrian [de] Date 2012-01-09 17:52
Ah ehm no, I am sorry. Put all my recent scripting effort in my projekt for CR.
The problem with the rope was, that it doesn't pull objects on ground? Or are there problems with objects in the air too?
Reply
Parent - - By Clonkonaut [ie] Date 2012-01-09 18:25
I don't think there's a problem with objects in the air. It's almost impossible to test. And anyway, the lift tower's idea is to pull objects on the ground (like lorries or trees). But the force applied does not pull object across even the slightest pile of material. I played around as you will see in the lift tower's rope so immoveable objects get velocity in every direction trying to shake them free. But that doesn't work either because I can't figure out how it's possible to shorten the rope. As soon as I set it to ConnectPull() it loosens, falls to the ground and then tries to pull the connected object into ground direction, too. As soon as I use ConnectLoose() it's shortened to the correct length.

You can test this behaviour by connecting the lift tower to anything and then grab it und press up. Holding it is pull mode, releasing is loose mode.
Reply
Parent - - By Randrian [de] Date 2012-01-09 18:58
Ok, I'll test it. Pulling objects was always a problem. For the grappler I did a lot of work to get the pulling of the clonk more or less acceptable.
Reply
Parent - - By Clonkonaut [ie] Date 2012-02-08 02:34
A little update on this:
I basically fixed my problem, so the tower is somehow able to pull objects. Not perfect though. It does not respect gravity and so starts pulling objects through midair and objects connected do not fall down properly but are slowed by the rope. Still way to go.
Corners are as well a big problem. Something like this horribly fails to work out:
Reply
Parent - - By Randrian [de] Date 2012-02-08 19:45
Ok, I should have a look at it. The ropesystem in such wasn't that bad in pulling objects around, that were free floating without disturbing landscapes (well best without any landscape contact). A bit of a problem could be to overcome the "attach" force the engine exerts on objects wich have a procedure (e.g. WALK).
Another problem is the one you mentioned in your screenshot. We could try to have a rope with smaller segments, which results the rope better fitting the landscape corners. Therefore whe should perhaps try to improve the performance. A bit point in the performance is the graphical representation of the rope. Perhaps making that simpler could help us.
Or it could be help if we outsource some of the code to the engine, wich might result in a better speed.
I will have a look at your implementation and perhaps I'll experiment a bit with it.
Reply
Parent - - By Zapper [de] Date 2012-02-08 20:27
Didn't Guenther's rope pack from back-in-the-days™ work pretty well with not-floating objects and around corners?
Parent - - By Randrian [de] Date 2012-02-08 21:18
Well, it just inserted another vertex when touching the landscape, didn't it? Or used the Engine line procedure for that. We could try that too, to insert additional vertices, when there is a corner nearby.
Reply
Parent - - By Zapper [de] Date 2012-02-08 21:34
I am not sure how it exactly worked.
I just remember that I played around with it a lot and never had the feeling it would be too "unrealistic" or would glitch a lot.

(Guenther?)
Parent - By Randrian [de] Date 2012-02-08 22:49
Hmm, had you ever the problem with the assassins grappling hock not being able to pass a corner? Sometimes you get "stuck" when pulling the rope in at the corner cause there is no direct vertex at the corner, but a bit away from it, resulting in the clonk being pulled to that point instead of the edge and being able to scale there.
Well, I hope you know what I mean even if I have explained it a bit wierd.
Reply
Parent - - By Günther [de] Date 2012-02-08 23:15
It also moved vertices around to keep them mostly spread out throughout the rope, and removed them again when they got near each other.
Reply
Parent - - By Randrian [de] Date 2012-02-08 23:20
But the insertion of particles because of intersection with the landscape was done by the engine, wasn't it?
Reply
Parent - By Günther [de] Date 2012-02-08 23:56
At first, yes, but I replaced that with script because the engine kept breaking the line instead. I think I have since fixed the engine to behave more reasonably, but didn't update the rope.
Reply
Parent - - By Sven2 [de] Date 2012-02-08 21:51
Iiirc, actions can have a custom attachment property which overwrites that of the procedure. Now with ActMaps being all proplists and script and stuff, maybe the rope could just reset attachment of the object it is pulling?
Parent - By Randrian [de] Date 2012-02-08 22:46
Ah ok. Good idea.
Reply
Parent - By Günther [de] Date 2012-02-08 23:19 Edited 2012-02-08 23:57
It doesn't overwrite it, but it totally should.

Edit: And here's an untested patch that should do that.
Attachment: 0001-Use-Action.Attach-even-when-Action.Procedure-is-not-.patch - Use Action.Attach even when Action.Procedure is not nil (5k)
Reply
- - By Clonkonaut [ie] Date 2012-02-08 03:24
Maybe I can lure more people into this if I reveal a little something about what I had in mind with this. The sketch attached shows a little bit of my concept.
One lift tower is used to pull several objects along whatever ground you encounter. The very main problem I wanted to solve was pulling trees to get them to your sawmill. But you can also connect other vehicles. Fungiforms suggestion for different containers on a standard chassis would make this tower very versatile.

My next idea was to connect several towers. (sidenote: a tower which is just connection between two others should alter its look to the third model shown here: http://forum.openclonk.org/topic_show.pl?pid=3614#pid3614!)
You will get a neat ropeway to cover a longer distance. What can be seen in my third/fourth panel in the sketch is that I actually wanted to have to the elevator tower as a part of this travel system.
Reply
Parent - By Randrian [de] Date 2012-02-08 19:39
Ok, this looks very nice and interesting. Maybe it is enough to motivate me a bit more about it ;-)
Reply
Parent - By ST-DDT [de] Date 2012-02-10 12:46
Good idea, hope its possible to implement
Up Topic Development / Scenario & Object Development / Lift Tower and rope

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill