Cycling management gameIn development

You are the sports director. Not a rider.

You build the season, write the race plan, then watch from the team car with the radio in hand. The riders decide; you steer them.

Desktop client, single-player, offline · in French and English

Groups and gaps

Demo

Breakaway

in front
Keller is our man in the breakaway, with three other riders.

Martin’s group

+1'20"
Durand, Roche and Aubert in Martin’s group.

Peloton

+4'30"
112 riders.
Reported · race radio · 50 s ago
In forceProtect Martin until Saint-Aubin
PendingKeller: stay in the breakaway

The game

You steer, the riders decide

Bordure takes the side of the person who isn’t pedalling. You build the season, prepare the team and write the race plan, then watch the race unfold from the car. No commands for power, line or attacks: only intentions.

Before the season

  • Choose the calendar and the priorities (A, B, C) according to the sponsors’ objectives.
  • Plan training in blocks, individual instructions and training camps.
  • Manage equipment, the budget and the squad.
  • Select seven or eight riders for each race. The staff advises; it never forbids.

In the race

  • Write a team plan before the start: objectives, roles, missions for each phase of the race.
  • Follow a text feed: commentary, groups, gaps, race radio.
  • React with radio instructions: recipients, intention, end condition. They arrive with a delay, and a rider may be unable to carry them out.
  • Do nothing: the race ends sensibly on the plan alone.

After the race

  • A debrief that keeps facts and interpretations apart.
  • The programme, the market, progression and reputation carry the race over from one season to the next.
  • You can also start from a blank sheet: found a team, then pick riders in turn in Draft mode.

Seven pillars

Seven rules, set down before the code

The engine did not come from a feature list but from seven pillars, set down before the code and checked by tests.

Pillar 1

Intentions, not commands

You issue a plan and radio instructions. Never a power output, a line through a corner or the exact moment of an attack.

Pillar 2

A race finishes by itself

With no input at all after the start, the race ends sensibly on the staff’s plan alone.

Pillar 3

The same rules for everyone

Opposing teams play the same plans, with the same rules and the same perception as you. No scripted winner.

Pillar 4

Imperfect information

The interface only receives filtered projections, with their source and their age. Never the engine’s internal state.

Pillar 5

A radio with a delay

An instruction leaves with a delay, gets an acknowledgment, and is tracked per recipient. Repeating an order gives no bonus.

Pillar 6

Presentation never touches the simulation

Text, playback speed and pauses have no influence on the race.

Pillar 7

Determinism

Same seed, same content, same commands at the same ticks: same result, on any JavaScript engine.

Each pillar has a precise technical consequence

See how the engine holds them

The post on the race engine follows them one by one, from the tick to the radio.

Read the post on the engine →

Simulation

A race you can believe

Nobody writes the outcome of a race: not you, not the game. It comes out of the physics, the riders’ energy reserves, groups that form and break up, and opposing teams that play the way you do.

5 sof simulated race per tick. At a 44 km/h average, a 200 km classic takes about 3,300 of them.
176starters at most, with teams that all play by the same rules.
15integer attributes from 0 to 100 per rider, plus three personality traits.
1single decision function for every team, yours included.

Speed physics

Gradient, aerodynamics and shelter; two energy reserves, one for explosive efforts and one for endurance; groups and gaps that emerge.

Symmetrical teams

Opposing teams play the same plans, with the same rules and the same perception as yours.

Imperfect information

What you see is dated and sourced: observed, reported, estimated or unknown. An estimate never looks like a fact.

Replayable and measurable

Same seed, same commands: same race. A statistical calibration bench measures the engine.

Dev blog

How it is built

Three posts, end to end: what the race engine does, how a season is planned, how you found a team in a draft. Each one exists in French and in English.

A race is five seconds repeated thousands of times

Nobody writes the outcome of a race: not you, not the game. Here is what happens between the start and the line: the physics, the riders’ energy reserves, the groups, the AI shared by every team, what each side knows about the race, and a radio that always arrives a little late.

Read the postLire en français

A season is planned before it is raced

Dozens of races to spread across about twenty riders: nobody should fill in that table by hand. The staff proposes a complete programme as soon as the season opens, you only touch the exceptions, and what you decide is never overwritten.

Read the postLire en français

Found a team, then pick riders in turn

You can start from a blank sheet: you found a team, then the whole peloton, yours and the opposing teams alike, picks its riders in turn from a single pool. Same rules, same information, no result written in advance.

Read the postLire en français

Screens and figures marked “Demo” are fictional. Bordure is still in development: this site presents the game as it is being built, not a version to download.