No code or art changed today. One tuning asset was edited and put back, and the reason is worth writing down.
Feedback from play: the second world has an issue with the grass, the level going up needs work, it is too hard and does not work, and the main thing is that the grass slows you down, which sucks. The complaint is real and the feeling is exactly right. The cause turned out to be design rather than a defect, and the first attempt at fixing it was a regression.
The wrong fix
The first diagnosis was that the slow-down scalar for deep grass multiplied the run speed of 9.0, giving 4.95 units a second, which is below the walk speed of 5.5. Through the speed-to-height jump curve, that would pin every jump in the level to its 3.0 minimum against rises of 4.2. On that reading, the wade scalar went from 0.72 to 0.95 and the deep-grass scalar from 0.55 to 0.82.
Every step of that was wrong, and it is recorded because it is the reasoning anyone will reach for next:
- The scalar does not multiply the run. The run is forced off in deep grass. The scalar multiplies the walk speed, so the speed is 5.5 times 0.55, which is 3.025. There was never a run there to flatten.
- The jump is not scaled down, it is swallowed. The buffered jump press returns false and eats the buffer, so the press produces nothing at all. The height arithmetic never ran.
- Both numbers are ruled values, not loose tuning. The world's clearance budget is derived from the 3.025 cap, and a build-time assertion checks it. Raising the scalar to 0.82 blows that budget silently.
The change was a regression wearing a fix's clothes. It was reverted to 0.72 and 0.55 the same session.
What is actually happening in deep grass
| What happens | Consequence on the climb |
|---|---|
| The run is forced off | The scalar multiplies walk speed 5.5, giving 3.025. There is no run in the thick to slow down. |
| The ground jump is swallowed | The press does not produce a jump at all. The air jump is preserved on purpose, because this world is meant to develop the double jump. |
| Jump is replaced by a charged spring | Hold 0.45 s standing still, with sideways motion zeroed and gravity removed, then release. A tap under 0.12 s gives a deliberate 0.75 hop as wrong-input feedback. Then a 0.5 s cooldown. |
| The speed tier is sampled ahead of him | It is read one full cell past his leading edge, not under his feet. Advancing into fresh grass is always the slow tier. |
The climbing stage is deep grass on all ten of its patches, so the entire 48-unit climb is in the slow tier. The two ways up are a 0.45 s stationary charge on a 0.5 s cooldown, or doubling back onto the road he already cut to get a real jump, which on the shade face regrows in 2.1 s.
The sampled-ahead tier is the load-bearing detail, and it is what makes the climb feel the way players describe it. He can never trample his way into a jump while going forward. His own road only helps when he turns around and walks back into it, which is the designed lesson, and also the exact reason it feels bad on a climb.
So this is not a defect. The spring is the traversal verb, an eight-pass assertion suite checks every authored step against numbers measured at 120 Hz, and by its own checks the climb is completable. What was reported is that it is unpleasant and too demanding, which is a judgement about an intentional mechanic that is also the world's featured verb. Nudging those two speed numbers is not the answer. They are derived, they are asserted, and they were never the problem.
