PEAK
Install with App

Details

Latest version
0.14.0
Last Updated
First Uploaded
Downloads
1.7K
Likes
10
Size
1.4MB
Dependants

PEAK RANKED

A ranked ladder for PEAK. ELO, monthly seasons, a daily cup everyone climbs together and 1v1 ghost duels — and LIVE RACE, where up to 32 of you climb the same mountain in the same second and can watch each other do it. With a proper speedrun timer running underneath all of it.

⚠️ Beta. While the version starts with 0., scoring rules can still change and leaderboards may be reset. Bug reports are very welcome.

The PEAK RANKED signpost on the right side of the main menu


Climb for a rating

Everyone starts at 1000 ELO and UNRANKED. Your first three scored runs are placement runs; after them you get a rank, and the sign in the main menu shows where you stand.

Rank ELO
SCOUT 0 – 799
HIKER 800 – 1199
CLIMBER 1200 – 1599
ALPINIST 1600 – 1999
SHERPA 2000 – 2399
PEAK LEGEND 2400 +

Every rank has three sub-levels — except PEAK LEGEND, which has no ceiling and no sub-levels. You are either there or you are not.

Above 2000 ELO the mountain expects you to keep climbing. After seven days without a scored run, ratings in SHERPA and PEAK LEGEND decay by 10 a day. Below 2000, nothing decays — the grind is for the top, not for everyone.


Seasons

A season is a calendar month. It ends on the 1st at 17:00 UTC, and the main menu shows which season is running and how long it has left, on its own sign under the map rotation.

When a season ends:

  • The final standings go into the Hall of Fame, unchanged for good.
  • Ratings are soft reset — moved halfway back toward 1200, not wiped. A SHERPA starts the new season ahead of a SCOUT, but not so far ahead that the season is decided in advance.

DAILY CUP — the main event

Everyone in the world gets the same mountain and the same seed, once a day. The day ends at 17:00 UTC, and then it is scored:

  • Where you placed decides your ELO. With fewer than 50 entrants the bands are fixed places; from 50 up they become percentiles, because "top 5%" of eight people is nobody.
  • The bottom half always loses rating. A cup you show up for and coast through is not free ELO.
  • A personal best on the day is worth +10 on top, once per day. Beating yourself counts even on a day when everyone else was faster.

1V1 GHOST DUEL

You are matched against someone near your rating, and you race their ghost on their seed. Classic ELO, K-factor 20 — beating someone far above you moves your rating a lot, beating someone far below you barely moves it.

Duels are not zero-sum: only the active climber's rating changes. Your ghost cannot lose you rating while you are asleep.


LIVE RACE — up to 32, same mountain, same second

Everyone else so far is a recording. This one is not.

The host opens a race and passes the invite code around; up to 32 climbers join, get the same seed and the same route, and start together on a synchronised countdown. From there it is a race in the ordinary sense of the word: live standings in the corner, who is where on the mountain, who just made the campfire and who is still below it.

And you can see them climbing. Because everyone runs the same mountain from the same seed, a rival's position means the same thing in your world as in theirs — so they simply appear in it, climbing as they climb, the four nearest of them drawn and fading out with distance. The host decides when creating the race (SHOW RIVALS); with it off, only the standings are shared.

And you can talk to them — text chat in the lobby and on the mountain, so a race with sixteen people is not sixteen people in silence.

And when your own run is over, you can watch. Finished, fell or gave up — the mountain stays where it is, and you fly it as a free camera: click a name to jump to that scout, Tab for the next, F to stick with someone through a hard section. The timer panel switches to their splits. When the last climber is done, the final standings appear over the mountain and wait until you close them.

Or watch without racing at all. A code and the WATCH button are enough, at any point — even for a race that started an hour ago. You load the same mountain, take no player slot and hold nothing up.

No rating is at stake. That is the point: it is the mode you play with people you know, and the one to run when you want to see where you actually stand against someone climbing right now rather than against their ghost from last Tuesday.

(Both of those have their own section further down, with pictures.)


Every mode at a glance

Mode What it is Counts for ELO
DAILY CUP Same mountain, same seed, once a day, scored at 17:00 UTC. Yes, a lot
1V1 GHOST DUEL Matched near your rating, racing their ghost on their seed. Yes, a little
SPEEDRUN Your seed, your map, your ascent level, whole mountain or a single section. No — but it lands on the speedrun board
GHOST TRAINING Pick any run from the leaderboard and race it as practice. No
LIVE RACE Up to 32 players, same seed, synchronised start, live standings, text chat — and, if the host allows it, the others climbing in your own mountain. Spectators may join at any time. No

Ghosts, not route lines

A translucent climber runs the route alongside you — your own best attempt, or anyone else's from the leaderboard. Not a glowing line on the rock: an actual figure, animated from the recording, holding the item they were holding at that point in the climb.

You can see when they pulled out the rope. That is usually the thing you were missing.

Opacity is adjustable, and the whole thing can be switched off if it distracts you.

A ghost climbing ahead, holding the item it held at that point


See what your opponent is actually doing

In a duel or in training, a small panel shows the other climber's state — read from their recording, drawn in the game's own colours:

  • Their clock, and how much they have left before they finish
  • Stamina, with the status effects eating into it: poison, cold, hunger, injury, each in the colour the game itself uses
  • Adrenaline, when they have any
  • Their inventory as icons — what is in hand, on the belt, and in their backpack (and which backpack, because a rocket is not a fanny pack)

In a Live Race the same information appears for every participant. With a full field the list shows the leaders, then your own neighbourhood — the two things you want while you climb, without hunting for your own row.

The opponent panel with clock, stamina, status effects and inventory

And in a Live Race, this is what the rivals in your own mountain look like — the four nearest of them, fading out with distance, climbing where they are actually climbing.

Rivals climbing in your own mountain during a live race


The race chat

A race put a dozen people on the same mountain at the same second and gave them no way to say a word to each other. Now there is one.

Press Y to write, Enter to send, Escape to close. It behaves the way a chat in a shooter behaves: while you are not writing, the last messages float over the picture and fade out on their own; press the key and it becomes solid, with an input line at the bottom.

Your climber stands still while you type — movement, emotes and the item bar stay out of it, so a "w" in a sentence does not send you off the ledge. The server says who joined and who left, so an empty spot in the standings has a reason.

Nothing is stored: the messages live for the length of the race and are gone with it.

If you would rather race in silence, F9 hides the whole thing, and a switch in the settings turns it off for good. Like every panel, you choose where it sits.


The timer underneath all of it

Every mode runs on the same timer, and it is built to speedrunning conventions rather than to a stopwatch you start by hand.

The clock starts when you do — not when the level finishes loading, not when the intro ends, but on your first input, the moment you actually have control. That is the speedrun.com rule, and it is what makes a time here comparable to a time anywhere else.

From there it handles itself:

  • Automatic splits at every campfire, named the way the game names them — SHORE, ROOTS, ALPINE, GLOOM, THE CITADEL.
  • Live comparison against your reference run, green ahead and red behind, plus the sum of your best segments — the theoretical best you have already proven you can climb.
  • A run only counts if you finish alive. Dying at the helicopter is a death, not a finish.

The timer with automatic splits and the comparison against a reference run

The SPEEDRUN mode exists for exactly this: your seed, your map, your rules, no rating at stake. It has its own board, filterable by map and route.

Sections are their own category. A single-biome mini-run takes a fraction of a full ascent, so it never competes with one — and it is ranked by biome name, not section number, because section 2 is TROPICS on one mountain and ROOTS on another.


Vanilla stays vanilla

Start from the left signpost — PLAY OFFLINE or HOST GAME — or join a friend's lobby, and the mod gets out of the way completely: no timer, no result card over the scout report, nothing recorded. A run you did not start from our signpost should look like PEAK. That was a community request, and it is how the mod behaves by default.

Want the clock there anyway? Settings (F7) → RUN & SCORING → Runs outside PEAK RANKED → TIMER & CARD, and you get timer, splits and result card in every run. Such a time still stays on your own machine — no seed control, no ghosts, no leaderboard entry. The mod did not set seed, map or ascent level there, so it cannot vouch for them, and the panel says so in plain words rather than letting you think a time counted when it did not.


Getting started

  1. Install through a mod manager (r2modman or Gale). BepInExPack_PEAK comes with it.
  2. Launch PEAK. There is a second signpost on the right side of the main menu.
  3. Pick DAILY CUP and climb. Three runs later you have a rank.
Key What it does
F8 Show or hide the timer
F7 Settings and help
F6 Race window, while a race is running
Y Write in the live race chat
F9 Show or hide the chat

The presentation is configurable in game — key bindings, which panels are visible, and where each one sits. Drag a panel with the mouse and drop it where you want it; while you are placing it, it shows its largest possible size, so it will not grow over something else later.

The rules are not. When the clock starts and how the items are rolled are the same for everyone, because a leaderboard can only compare runs made under the same rules.

The mod follows the game's language setting: German gets German, everything else English.


Fair play

Your other mods are switched off while a scored run is active, and come back when you return to the main menu. That applies to every start from the PEAK RANKED signs — Daily Cup, duel, ghost training, speedrun, race — and to nothing else: start from the left signpost and your setup is untouched. Which mods may keep running anyway is decided by an allowlist on the server, not per player, so the same rules apply to everyone on the board. You can read that list in the gameSETTINGS → HELP → ALLOWED MODS names everything currently permitted, with the readable name of every one you actually have installed, so you can check before a run instead of after. If a mod of yours belongs on that list, say so on Discord.

A few items are kept out of the loot. Not many — the ones that skip past a section of the mountain instead of climbing it, so that a fast time says something about the climb and not about what happened to be lying in a suitcase. The list lives on the server, so an item can be blocked, or released again, without anyone installing anything. Nothing is deleted mid-run and nothing vanishes out of your hands: a blocked item is simply not rolled when the mountain is filled, and the spot holds something else. You can read the list in the gameSETTINGS → HELP → BLOCKED ITEMS names everything currently blocked. Runs from the left signpost are untouched, as always.

Times are submitted with the map, the seed, the ascent level, the game version and the list of mods that were loaded. Runs are checked on the server: split times have to be internally consistent, and each section has a minimum duration calibrated against real world-record runs.

During a scored run the mod also records game-state signals for the fairness check, alongside the trajectory it records anyway for your ghost. It looks for effects the game itself cannot produce: stamina that stops draining while you climb, a status bar frozen in place, sustained flight, a position that jumps. Every legitimate advantage in PEAK has a cause behind it — an item, a buff, a game event — and the check is simply whether the cause is there. Nothing leaves the game process, and nothing is recorded in a vanilla run.

Cosmetic and quality-of-life mods stay allowed. What gets flagged is an advantage in the run, not the fact that you mod your game; a cheat mod that is installed but unused does nothing. Conspicuous runs are never rejected — they are set aside and looked at by a human. Where a threshold is calculated rather than absolute, your result card says under review, so you know your run is being checked and not lost.

🚧 This is still being built out and calibrated. Thresholds are deliberately generous, because a wrongly rejected honest run is worse than a cheater who is caught one review later — the cost is that some cheated runs get through at first. New rules run in a log-only mode against real runs before they are ever allowed to take a time off a board.

If a leaderboard entry looks impossible to you, report it. Boards may be corrected retroactively while this is in beta — the goal is that the times up there are real, and that matters more than never touching a board again.


Good to know

  • Playing without a connection works. Timing, splits, your personal bests, your own ghost and MY RUNS are all local. What needs the server is leaderboards, ELO, other people's ghosts and races.
  • The leaderboards live in the main menu — the ELO ladder, today's Daily Cup, the speedrun board, and MY RUNS, your own history. Click a row there to pin that run as your comparison instead of your best time.

The leaderboard window with the ELO ladder

  • Co-op runs are not verified yet — there is no seed handshake between players, so treat co-op times as unofficial for now.
  • Losing connection during a race means you are out. There is no rejoin.

Feedback and bug reports

1. Join the Discord — then 2. open the PEAK RANKED thread

Both links are needed: the second one only opens once you are on the server. The thread is the fastest way to reach me. Useful in a report: what you were doing, which mode you were in, and — if the game is still open — the log at BepInEx/LogOutput.log. Every [RankedPeak] line in there is from this mod, and it usually says what went wrong before you noticed it did.

While this is in beta, a report is worth more than a star rating: the scoring rules and the leaderboards can still be corrected, and they get corrected because someone said something.



Licence

Free to use and to pass on unmodified. The source code is not published. See the licence file included in the download for the details.

PEAK belongs to Landfall. This mod ships no game files and is not affiliated with or endorsed by Landfall.

Bug reports and ideas are very welcome — they are the fastest way to get something fixed while this is still in beta. The Discord channel is linked above.


🤖 Built with AI

The code of this mod was written with an AI coding assistant. Everything else — what the mod does, how it scores, which features exist and which do not — comes from me and from the people who play it and ask for things in the Discord.

Thunderstore development is made possible with ads. Please consider making an exception to your adblock.