Sword of Moonlight > Devs

EXIT: There's no place like home

<< < (3/3)

Holey Moley:
Demo

http://csv.swordofmoonlight.net/SomEx.dll/1.2.2.14.zip

Here is that demo I promised. The rendering bug I mentioned turned out to not be about the volume-texture feature but transparent elements more broadly.

Unfortunately I don't want to patch the current release since the controls code is not in an ideal state after all of the changes I've made (http://www.swordofmoonlight.net/bbs2/index.php?topic=301.0) that this demo is made to showcase. I can't go back to the old code just for a patch.

This demo also has some real problems in the controls area but they aren't really noticeable. I have to make a project of really digging into it before I can make a new release. I will work on it next thing but I have to cut myself off of SOM so I can get back to working on my 3D modeling project's work.

The underlying controls problem was a problem before too I think, but the changes in this demo kind of helped me to see it, but exacerbates it too. What it boils down to is the climbing code thinks it's climbing pretty much as long as it's not prevented from doing so. Before I think this did have an impact... it resulted from a change I made a little while back... but a small one. Now the climbing code doesn't act instantly but waits until it knows you're not holding down the action button, and that actually makes things easier I think, but it makes the climbing state more important to get correct.

The ducking down motion now happens later, and that puts it in conflict with the squatting motion that happens when climbing into a low-ceiling area or climbing while squatting. The reason is when squatting instead of ducking down (further) you pop up your head. But the way it's implemented is just as an inversion of the height, so you can't invert mid duck. And it doesn't make sense to "pop up" while climbing.

To climb into crawlspaces (whether at ground level or not) you now tap action. (You can't really make this with SOM's stock tiles but you can arrange box objects to create such spaces.) I think that's better actually. But the reason it was done by holding before was both because you can auto-squat while running, which is done by holding, and that lets you choose what to do given an obstacle that's both a platform and a crawlspace. In that case now I think it will take the platform because the clipper always goes as high as it can go. I don't think that's the best default necessarily. Still tapping feels and looks better.

Lastly, this demo has the crosshair and other mouse cursor improvements from the previous reply here, and F12 and the Plus and Minus keys beside it can now access a MASTER VOLUME feature. And don't forget the wall-holding feature itself, that's the real subject of the demo. While working on the cursor stuff I came across a comment dated 2012. Hard to believe it was that long ago.

Holey Moley:
Demo Patch

http://csv.swordofmoonlight.net/SomEx.dll/1.2.2.14.zip

The demo I uploaded yesterday broke running so that when you stop and stand still it crouched down. I didn't notice. That's for sneaking, which I don't do in testing often. It's also an alternative way to stop without releasing the action button.

EDITED: Writing this gives me the idea of making crouching after running not raise up so that it's a continuous movement. I tested it and it already does that sometimes, but other times not... which certainly shouldn't be the case. It's probably an indication something is awry. Usually there is a delay before raising up... not sure why, but I guess that's a good window to slip in crouching and maybe even other things.

I had to rewire some things as a result and added some embellishments and further fixes: firstly the gauges now deplete, which helps I think to make it clear it's a feature and not a bug; secondly, I noticed it wasn't possible to jump backward, which was because the same movement penalties as running were being applied, which slows backward and sideways. So this is an improvement (I hadn't thought of it) both because it works omnidirectionally like crouching now, but also the sideways penalties were limiting how far you could see out, so afterward you can get a considerably better view around the  corner, which was something I was concerned about. It means too you don't have to try so hard to hit the edge of the corner.

As a result of the ability to stretch out further I settled on using the dashing height as the bottomed out height, which I think is ideal anyway. I think that is approximately head height, which is ideal for peeking your head up. That only works if a barrier happens to be shoulder height though.

I'm pretty pleased with these changes.

Holey Moley:

--- Quote from: Holy Diver link=topic=299.msg2791#msg2791 ---EDITED: Writing this gives me the idea of making crouching after running not raise up so that it's a continuous movement. I tested it and it already does that sometimes, but other times not... which certainly shouldn't be the case. It's probably an indication something is awry. Usually there is a delay before raising up... not sure why, but I guess that's a good window to slip in crouching and maybe even other things.
--- End quote ---

I looked into this. It turned up a bug in the demo (maybe going way back) that happens if you take off running while entering squat-walk mode from crouching. Running is supposed to return to normal height. I wrote up a fix for it. I left the rest alone. It looks interesting, like taking off from a runner's stance at a starting mark. Maybe it could use some polishing up. (Edited: this is functionally identical to taking off running from a crouch position: because you have to release the button before you can press it to run.)

Likewise I followed-up on going from running to crouching. This wasn't really possible to do cleanly before. It is simple now (though it was pretty involved to fully flesh out) because the jump-detector keeps you dashing for a little while after you let go so the jump speed matches the running speed. It's during this window that you can crouch, and in this case you don't have to let go of the stick to do so. You transition into leaning out. It can work as a fast stop maneuver, that can then jump. If you tap the Action button instead of crouching (holding it) you technically enter a crouch briefly but transition into a squat-walk as normally would happen. It all happens more quickly because when running you're already down the first phase of crouching.

I was going to upload a patch with these changes except I noticed that it wasn't working for the jogging and sneaking modes. I'm not sure why really. I will have to investigate it another day. I'm pretty excited about these developments. I never liked that these actions couldn't be performed while running/sneaking around. I honestly can't remember if I never thought to do it this way or if I've just forgetten that I had. I think having the option to do them either way actually makes them less complicated than having to remember to switch between dashing and walking mode.

It remains possible to do short dashes that bleed the gauges slightly without crouching. To crouch this way you have to have been running for a little while. I think it's twice the time it takes for the gauges to begin draining. That is 383+383 (766) milliseconds by default. This number is actually pretty nailed down these days. I think you want it to be between 375 and 400 which isn't a lot of wiggle room. The default splits the difference.

Holey Moley:
Random news: yesterday I was obsessing over this stuff again (can't remember what about exactly) and took to trying to kind of diminish the squat-walking transitional movement. What it looks like is just a function of how I implemented it so that during the transition you are both standing up (from crouching) and squatting down at the same time, so you end up in a middle height...

That's because everything is a continuous function, and when squatting the duck animation is inverted and when standing up the duck animation is basically going in reverse.

So the end result is a little lumpier than I'd like. I think what got me into that investigation was I was/am unhappy with the jarringness of the transition from running to squat-walking that I'm working on. I haven't solved that one just yet.

My idea to smooth it out was to just try to take the curves and somehow make them a less extreme version of themselves. I ended up turning to the spring-system simulation system that I originally developed to smooth out gait transitions. I think last year I applied it to the crouching/leaning effect to improve its experience. I tried to apply it to the squat transition, but could not get satisfying results.

Finally the idea occurred to me to why not just apply it to the eye level animations in general, sense the reason I couldn't get good results was I was trying to isolate it to the squat-transition.

It makes sense to smooth everything out so that they are less mechanical. This kind of smoothing is applied in at least those two places, so maybe I should be looking for other ways to use it, if only to make everything match.

The results are an improvement I think. Taking off to a run from a crouch that I spoke on the other day as needing a little polish automatically got smoothed out by this change.

I'm thinking that the problem with walking up stairs in my King's Field II project that is just a little jarring can be solved this way by implementing some kind of general shock absorbing system. It's not so simple to implement because it needs to be isolated to small shocks so it doesn't come into play when falling. I could just cut it out when falling too.

I'm still finding problems in the demo and working out the known issues for a release. I would like to be able to write a blog post about something for February but my attention is so divided I don't know if it makes sense to. If so I need to release my new 3D software work (that this is detracting from.)

Anytime I do an intense period of work on the movement systems (this is my main area of interest) it always results in great improvements. I call SOM a walk-sim because I feel moving in games is the heart of King's Field games.

Navigation

[0] Message Index

[*] Previous page

Go to full version