Skip to content

[7/16] feat: follow ground slopes and slide downhill - #125

Merged
arudaev merged 6 commits into
feature/28-controlled-jumpfrom
feature/29-slopes
Oct 24, 2026
Merged

arudaev merged 6 commits into
feature/28-controlled-jumpfrom
feature/29-slopes

Conversation

@Vatsal2005

@Vatsal2005 Vatsal2005 commented Oct 23, 2026 •

Copy link
Copy Markdown
Collaborator

What and why

Ground contacts now interpolate the authored polylines instead of treating each segment as flat. Walkable slopes through 40 degrees keep feet attached across uphill, crest, downhill and flat joins; steeper contacts accelerate downhill and allow jumping away. Slide visuals use the supplied stepped fall poses without scaling the sprite.

Issue

Closes #29

Stack

Base: feature/28-controlled-jump. Human merges bottom up; retarget the next PR to main and merge origin/main into every open branch, never rebase.

Acceptance criteria

  • Walks continuous authored slopes through 40 degrees
  • Steeper contacts slide downhill and permit jumping away
  • Continuous contact over slope joins, with no staircase boxes

Verification

  • Node 22: npm run typecheck, npm test (71 tests), npm run build; includes main integration at e8577ab
  • py -3.13 scripts/check_docs.py
  • git diff --cached --check
  • Tests traverse uphill/crest/downhill/flat joins at walk and run speeds, exact 40-degree boundary, slide acceleration in both directions, jumping away and every real Creek walk segment
  • Browser regression: walk/run and grounded feet in the Garden, F2 reports slope; no console errors
  • Route-wide browser slope traversal follows [M1-S4] Drop through one-way platforms and climb ladders #30, which supplies the ladders needed to reach the slope
  • Physical gamepad and Vercel preview: Vatsal2005 needs access to the Vercel project

Seam contact

The actual first seam rises from y=461 to y=456. A six-pixel endpoint tolerance applies only when a grounded body crosses a polyline endpoint. Real-file tests cover both seams, states, directions and movement speeds; falling bodies never snap upward.

Screenshots

F2 overlay evidence is in #120 and movement screenshots in #122. The current authored Creek data has no brown slide segments; steep-slide behavior is exercised by geometry fixtures in the tests. Full animation switching follows in #31.

Interpolate the authored ground and carry contact across slope joins, including transitions back to flat ground. The previous slope sets the contact tolerance so a downhill-to-flat join cannot introduce a one-frame fall.

Slide downhill above 40 degrees, retain jump control and use the authored fall poses. Test both movement speeds against the real Creek segments and steep fixture slopes.
@Vatsal2005 Vatsal2005 self-assigned this Oct 23, 2026
@Vatsal2005
Vatsal2005 requested a review from arudaev October 23, 2026 21:51
@vercel

vercel Bot commented Oct 23, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
wincs Error Error Oct 24, 2026 12:29am UTC

Request Review

@vercel

vercel Bot commented Oct 23, 2026

Copy link
Copy Markdown

@Vatsal2005 must be a member of the arudaev's projects team on Vercel to deploy.
- Click here to add @Vatsal2005 to the team.
- If you initiated this build, request access.
- If you're already a member of the arudaev's projects team, make sure that your Vercel account is connected to your GitHub account.

Learn more about collaboration on Vercel and other options here.

Carry the reviewed lane B foundation and latest human-merged integration upward without rewriting published history.
@arudaev
arudaev added this pull request to stack #129 October 23, 2026 22:12
The real first Creek seam rises five pixels. Permit a six-pixel endpoint tolerance only when a grounded body crosses a polyline endpoint, so it reaches the neighboring floor instead of falling through it.

Exercise both actual seams in both states, both directions and at walk and run speeds.
@Vatsal2005 Vatsal2005 changed the title [7/8] feat: follow ground slopes and slide downhill [7/9] feat: follow ground slopes and slide downhill Oct 23, 2026
@Vatsal2005 Vatsal2005 changed the title [7/9] feat: follow ground slopes and slide downhill [7/10] feat: follow ground slopes and slide downhill Oct 23, 2026
Carry human-merged lane A changes upward without rewriting published commits.
@Vatsal2005 Vatsal2005 changed the title [7/10] feat: follow ground slopes and slide downhill [7/11] feat: follow ground slopes and slide downhill Oct 23, 2026
Carry human-merged lane A changes upward without rewriting published commits.
@Vatsal2005 Vatsal2005 changed the title [7/11] feat: follow ground slopes and slide downhill [7/12] feat: follow ground slopes and slide downhill Oct 23, 2026
@Vatsal2005 Vatsal2005 changed the title [7/12] feat: follow ground slopes and slide downhill [7/13] feat: follow ground slopes and slide downhill Oct 23, 2026
@Vatsal2005 Vatsal2005 changed the title [7/13] feat: follow ground slopes and slide downhill [7/14] feat: follow ground slopes and slide downhill Oct 23, 2026
@Vatsal2005 Vatsal2005 changed the title [7/14] feat: follow ground slopes and slide downhill [7/15] feat: follow ground slopes and slide downhill Oct 24, 2026
@Vatsal2005 Vatsal2005 changed the title [7/15] feat: follow ground slopes and slide downhill [7/16] feat: follow ground slopes and slide downhill Oct 24, 2026
Carry human-merged lane A changes upward without rewriting published commits.
@arudaev
arudaev marked this pull request as ready for review October 24, 2026 01:34
@arudaev
arudaev merged commit 2cb1f6d into main Oct 24, 2026
7 of 8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:player Hero movement, animation state, camera

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[M1-S3] Walk up hills and slide down steep slopes

2 participants