Not logged inOpenClonk Forum
Up Topic General / Feedback and Ideas / Some "issues" with the steering
- - By roboclonk Date 2017-11-18 12:47
Hey there.
I had some problems with the steering and put them over here to seperate it from the "variable jump height" topic.

These problems are:

-I recently played the game with two friends who haven't played it before. They meant it's quite fiddly sometimes to move the clonk throught the landscape. For example you get stuck on some small edges on the ground and you have to walk back and jump over it.
I made a video to show what I mean: https://youtu.be/EmlBRy89EYs
I guess the gap is too small for auto-scaling.

-Moving from left to right (and vice versa) feels sluggish. Yeah it makes sense but it doesn't feel that great to move the clonk.

-When I use the grappling hook and hang on a wall or ceiling and then fall off, the clonk doesn't grap the rope, unless you press up. That's annoying when you accidentally fall off. The clonk falls all the way down until the rope ends and you have to climb up again.

-While diving down, the vertices of the clonk are too high (or the graphic is too low ).
Sometimes it's hard to tell where you can dive.

Reply
Parent - - By Maikel Date 2017-11-18 13:18

>-I recently played the game with two friends who haven't played it before. They meant it's quite fiddly sometimes to move the clonk throught the landscape. For example you get stuck on some small edges on the ground and you have to walk back and jump over it.
>I made a video to show what I mean: https://youtu.be/EmlBRy89EYs
>I guess the gap is too small for auto-scaling.


This should be a bug report.

> -Moving from left to right (and vice versa) feels sluggish. Yeah it makes sense but it doesn't feel that great to move the clonk.


This is intended, we never tried to have a mario-like moving.

> -When I use the grappling hook and hang on a wall or ceiling and then fall off, the clonk doesn't grap the rope, unless you press up. That's annoying when you accidentally fall off. The clonk falls all the way down until the rope ends and you have to climb up again.


Also intended so that you can let go off walls and determine yourself when to catch the rope.

> -While diving down, the vertices of the clonk are too high (or the graphic is too low ).
>Sometimes it's hard to tell where you can dive.


Agreed, somehow not that easy to fix and quite a bit of fiddly work. I don't have the time or interest at moment to look at this another time.
Parent - - By Zapper [de] Date 2017-11-18 15:15

>This is intended, we never tried to have a mario-like moving.


The controls feeling sluggish has been critizied quite often, though. So I don't think we should take that as a given if we had a 'better' alternative
Parent - By Maikel Date 2017-11-19 08:56
Fully agree, but what we have here currently is by design. Personally I wouldn't like a Mario-like feeling, because our landscapes are much more dynamic.
Parent - - By ala [de] Date 2017-11-19 11:01 Edited 2017-11-19 11:05

> -While diving down, the vertices of the clonk are too high (or the graphic is too low ).
>Sometimes it's hard to tell where you can dive.
>Agreed, somehow not that easy to fix and quite a bit of fiddly work. I don't have the time or interest at moment to look at this another time.


While looking at the screenshot above, I just wondered why the vertices don't turn with the Clonk if he is swimming in another direction.
Is that because it comes from the animation and not from the object turning? If so, if the Clonk as an object would somewhat turn (like a lorry or tree) along with the animation, and the vertices would therefore move around, could that maybe fix those kind of stucks?
Parent - By Sven2 [us] Date 2017-11-19 19:35
Vertices generally don't move if possible because if they do, the clonk can easily get stuck (and it may not always be possible to "unstick").

For the same reason, rolling doesn't reduce your collision box.
Parent - - By Matthias [de] Date 2017-11-18 20:05 Edited 2017-11-18 23:35
It's a +1 on the sluggishness from me. After my usual multi-month absence, I played some online melee games a few weeks ago. It took some time to get used to things again, but even at the end, to me it felt as if a lot of the "nimbleness" has taken a back seat to, er, "animation integrity"? Turning the clonk around was indeed my most prominent annoyance with that, but also I found myself bordering on a ragequit when I fell multiple many times while scaling below a narrow ceiling, trying to position myself accurately for traversing some obstacle. I think I just couldn't figure out the non-linear animation & movement cycle there.
Reply
Parent - - By Marky [de] Date 2017-11-18 20:49
Yes, I am pretty sure that this could be solved differently. Ideally, the animations would follow what you do with the Clonk, not determine what that Clonk does. So, if you just turn around while standing => current animation. If you turn around and walk/run in the opposite direction the animation could/should be faster. Scaling and hangling should somehow depend on your movement speed, too, and could be blended with a "swing out" animation if you stop hangling (scaling does this properly already, I think). Digging is the same => constant dig speed is more predictable, in my opinion.
Parent - - By Armin [de] Date 2017-11-20 15:13
@digging: Ack. And that's easy to change unlike the constant hangling which would need a less intense animation, if wanted. (http://bugs.openclonk.org/view.php?id=1426).

@the discussion: http://bugs.openclonk.org/view.php?id=1312
Trains in CP/CE/CR were good examples showing a lack of braking+acceleration effects since it was always so noticeable aprupt when the train started or stopped rolling. The braking effects from things that got fired away with a cannon or explosion are very cool, too. But the braking in all normal movements (speed<=20) of the controlled Clonk are forcing you to take less risks when moving though really hard landscapes you find e.g. in some heavily violated acid or Stimmelinsel scenarios. In OC, you will know that a point is easy to reach with a jump but you don't take the risk because you have to compensate the braking before landing after a jump. When landing on very tiny flying materials (2x2 pixels), it's best to have zero horizontal speed... And it is harder & more math to position an AI Clonk to a certain position, which means that the whole pathfinding is even less accurate.
Parent - - By Zapper [de] Date 2017-11-20 15:50

>In OC, you will know that a point is easy to reach with a jump but you don't take the risk because you have to compensate the braking before landing after a jump


But that's a different thing. The acceleration is kept because you also might want to directly continue walking after a jump without stopping for a moment. That's also why instead of kneeling down and stopping (like in CR) you can hold the direction key and roll.

Hmm.. Are you sure that you continue moving even without the movement keys held down? If so, that might be pretty easy to change..
Parent - By Armin Date 2017-11-20 22:53 Edited 2017-11-22 09:43
I have a strong surmise at least .
Edit:
It is easier to see when you set the Decel in the Clonk's ActMap to 4: Your Clonk will continue moving for several seconds after EVERY straight jump or full speed walk. The braking distance was only halfed from 8 to 4 back then. And the roll has no impact in this thing, but if you continue moving 4px after each roll as well btw.
Attachment: DecelTest.ocs (1k)
Parent - - By Marky [de] Date 2017-11-20 17:06
Should I change the digging now? I already did that in my classic mod.
Parent - By Maikel Date 2017-11-20 18:35
Any major change to the steering which this may be should be pushed to the main repos as a commit we can easily revert. Then we have time to test it properly before the 8.0 release. So I'd say yes.
Parent - - By Zapper Date 2017-11-21 09:18
But please never comment out code (in the main repository) to deactivate it. If you want to remove code and maybe later re-activate it, then that is what we have revision control for.

But yeah, maybe we can really get a slight change of the movement controls for the next release to make it feel better (including the jump adjustments)
Parent - - By Marky Date 2017-11-21 09:55

>But please never comment out code (in the main repository) to deactivate it. If you want to remove code and maybe later re-activate it, then that is what we have revision control for.


Yes, usually I am against deactivating code that way, because the usual situation is that you encounter a line in comments and you have no idea whether it is a temporary change that someone forgot activating again or what its purpose was.
In this case I thought that someone would unlikely look for a change in digging in the shovel, so I decided against simply replacing the code and instead added that comment and conditions when the change should be reverted.
Additionally, you have the confirmation (in the history) in the future if we decided keeping that change or not.p
Parent - - By Zapper Date 2017-11-21 10:41
What happens in case we decide that the change is good? Would we do another change that solely removes the comment? When would we do that? At release 8.0? Or at 9.0 when we have decided that the change can be kept?

With the same logic we could have kept ALL OTHER changes/removals as comments. Because we never know if the changes are good and if we need to revert things.

Because we sometimes need to track changes and sometimes need to revert trials, we are using a tool that allows us to do so: We can check for every line of code when and by whom it was changed the last time. And we can easily revert commits and keep the connection between the original commit and the reverting commit intact (because you can say X reverts commit Y).

So even if we decide to revert the changes, we would not go and remove the comment and create a new commit. We would just revert the old commit.
So it's not necessary for history and it doesn't help in reverting. It miiiight help people realize the change when they skim through the code. But even then: If you want to show that the digging speed was changed from cylclic to constant, then that would belong in a comment and not in code!

You could e.g. say "// The digging speed has been changed to constant after some discussion. Previously it was cylclic. Revert if necessary." above your line and have even MORE information with less clutter than when keeping the old code.
Additionally, commented-out code is not tested. It could be that someone changes e.g. a variable name that is used in the code and when you activate it again, it is broken.

So it doesn't help with clarity either.
Parent - - By Marky [de] Date 2017-11-21 11:25

>If you want to show that the digging speed was changed from cylclic to constant, then that would belong in a comment and not in code!


That is a better solution, yes.

>With the same logic we could have kept ALL OTHER changes/removals as comments.
>Would we do another change that solely removes the comment? When would we do that?


It seems you are exaggerating here. After all, I already agreed with you even in my first reply and declared it as an exception to what I normally do.

>Additionally, commented-out code is not tested. It could be that someone changes e.g. a variable name that is used in the code and when you activate it again, it is broken.


Indeed, and the same applies for code that is not even there, so after reverting changes you may have the same problem with your old code.
Parent - By roboclonk [de] Date 2017-11-21 11:56
For me it was quite informative as a young programmer ^^
Reply
Parent - - By Sven2 [us] Date 2017-11-21 17:38
More important than the commented code: Did you test whether you can still dig on top of solid material? Iirc, the variable dig speed was helpful when you tried to dig horizontally on top of e.g. rock, because the extra speed would move the clonk over small obstacles.
Parent - By Marky [de] Date 2017-11-21 17:42 Edited 2017-11-21 18:05
I tested it in earth and firestone only, in acid drilling. Maybe I hit a rock once, but I did not test that specifically. Thanks for the hint!

Still works for me
Parent - - By Clonkonaut Date 2017-11-21 13:40
Reply
Parent - - By Zapper [de] Date 2017-11-21 13:46
Yupp, that is terrible

Good example for when "temporary changes" stay in that state for seven years, because noone cares to remove such a commented-out code block
Parent - - By Marky Date 2017-11-21 16:11
I even read that a few months ago and thought that it could serve as an example for additional functionality in a melee weapon later because it is easier than remembering that this is somewhere in the file history.
Also, I didn't know whether it was a temporary change (didn't want to comb through the history), so I left it alone.
Parent - By Zapper [de] Date 2017-11-21 17:03
Honestly, I have no idea either whether it was intended to be temporary or not :D (That's also why it was bad back then)

A good place for examples for additional functionality would be a) the wiki b) the docs c) the forum d) an upload on the forum or even e) a github repos.
But I don't even know any more what the code was supposed to do
Parent - - By Clonkonaut Date 2017-11-27 19:16
Don't really know if this was introduced with your change. By holding the up key and wriggling the mouse above the clonk, you can climb up / dig up any wall of material. This isn't necessarily bad, it just looks very odd.

https://i.imgur.com/AXqoGDl.mp4
Reply
Parent - - By Marky [de] Date 2017-11-27 19:28
This has been in the game for quite some time, I'd say a year maybe? At least I used it often.
Parent - - By Clonkonaut Date 2017-11-27 19:31
Yeah, I don't mean the wall climbing specifically. That of course has been in the game since...forever? After all, the whole volcano escape scenario wouldn't work properly otherwise.

It just used to look very different and a little bit less like a bug. So it's just the visuals I am talking about.
Reply
Parent - By Marky [de] Date 2017-11-27 19:56
Ah, yes, that feels a little different indeed. Maybe the dig speed should be as it was for the first x frames and change to linear spead after that?
Parent - By Marky [de] Date 2017-11-27 22:33
Changed the dig speed to original speed for the first 3/4 of the process, then it's back to constant speed.

Anyway, with either settings for speed I can create a situation where the clonk top vertex has contact with the landscape and the animations switch between "Dig" and "Jump". With any speed meaning: Before the first of my changes, and afterwards.
Parent - - By K-Pone [de] Date 2017-11-27 19:28
Wasn't the change only implemented in Christmas Ice for testing yet?
Parent - By Clonkonaut Date 2017-11-27 19:33
Reply
Parent - By Pyrit Date 2017-11-30 13:59
Lol. This is bad.
Parent - - By Marky [de] Date 2017-11-21 21:03
I changed the hangling now. No major changes actually, but it feels as if you have more control over the clonk.

Regarding running and turning and the motion feeling sluggish, from the original complaint: I did not notice that, actually. Maybe I am too accustomed to the controls already?
Parent - - By Maikel Date 2017-11-21 21:55

>Regarding running and turning and the motion feeling sluggish, from the original complaint: I did not notice that, actually. Maybe I am too accustomed to the controls already?


I agree here and would think that the feel of the game would change a lot if we go mario-style. All the other movement changes are less influential on the game-feeling, but probably improve controls for most of us.
Parent - - By Zapper [de] Date 2017-11-21 22:13
hmmm, would it really be that bad to stop instantly? I have never tested it, but I'd say we should take every straw to make the game more responsive
Parent - - By Maikel Date 2017-11-22 18:29
Maybe not, in my opinion it would. And I am not sure whether it would really make the game more responsive. I think in many occasions it is also good if you can't correct falling of a cliff any more, for example if you being chased by an enemy and you make a mistake because of the pressure. It is harder to evade attacks as well. Already compared to CR I think in OC it is very easy to evade attacks like spears, arrows, explosions, because the movement is not constrained compared to CR and not much less responsive. Already in last man standing rounds I tend to focus more on evading attacks rather than executing them.
Parent - By Zapper [de] Date 2017-11-22 21:42

> I think in many occasions it is also good if you can't correct falling of a cliff any more, for example if you being chased by an enemy and you make a mistake because of the pressure. It is harder to evade attacks as well.


But if that really is so, that's a good example of something a player can easily get frustrated about. ("It would have been easy to jump-and-run up there, but the ยง&/(& controls are just so bad!")
Parent - By Marky [de] Date 2017-11-22 18:58
As I said: While running I don't even notice that the Clonk does not stop immediately. Only that example with SetCommand illustrates very well that there is a delay.
Parent - By roboclonk Date 2017-11-21 22:12

>Regarding running and turning and the motion feeling sluggish, from the original complaint


I believe, when I noticed that, the game didn't run at full speed. It was a bit slower, so it felt sluggish. Kinda stupid, sorry. ^^'
Reply
Parent - By Armin [de] Date 2017-11-22 09:56 Edited 2017-11-22 10:01
Yes, and I think ppl get used to stopping earlier in front of cliffs and avoiding hard jumps on very small platforms. But imo this is a weird way to make the Clonk less agile. The only plus point I see in the Walking Decel is that it gives a better look to the very strong walking (rather running) animation because OC Clonks move their legs much more than CR Clonks. Same plus point goes for the Walking Acel, but that one doesn't make possible movements way harder and is not creating a few bugs regarding corner scaling and SetCommand().
Parent - By Marky [de] Date 2017-11-21 22:02
Not today, but in the next days I'll work on that diving issue. It should not be that complicated actually, I just have to move the graphics (=bone) upward a little while diving, so that the Clonk pelvis is approximately at the center vertex - that should make the collision more predictable.
Parent - - By Marky [de] Date 2017-11-23 21:42 Edited 2017-11-23 22:35
Fixed the diving collision issue. One more issue that I have: When you enter the water while doing a head-first dive jump the clonk stops abruptly and turns upward. It would feel more naturally started from the diving animation instead, so I am currently implementing this, unless someone has a good reason for not doing so.

Update: Done with this, too, but I kept it on my private branch for now because I am uncertain whether the implementation is good. https://github.com/gitMarky/openclonk/commit/930a3fe16b526639fabbf265a7cf5abd86f1e3a3
Parent - By roboclonk [de] Date 2017-11-24 16:29

>When you enter the water while doing a head-first dive jump the clonk stops abruptly and turns upward. It would feel more naturally started from the diving animation instead.


I noticed that too and I agree.
Reply
Parent - - By Maikel Date 2017-11-28 15:08
Tested it and the transition is good. But now sometimes the clonk does not do the predive jump when landing in water.
Parent - - By Marky [de] Date 2017-11-28 15:47
I thought that this was a general bug/behavior, but it may have to do with the effect that I added.
Parent - By Maikel Date 2017-11-28 16:24
It happened before, but not that often.
Up Topic General / Feedback and Ideas / Some "issues" with the steering

Powered by mwForum 2.29.7 © 1999-2015 Markus Wichitill