Districts that remember you, and roads worth staying on
Area heat. Road heat alone rewarded a strange kind of play: work one part of town hard but take a different street every time, and nothing ever got hot. A second, coarser pool now accrues from being inside a district at all — on-road or off — and bleeds into every road running through it, including ones never driven. Deliberately capped below the barricade threshold: a hot district gets roads patrolled, but concrete still takes somebody actually using that road. It also decays slower than road heat, because one patrol re-secures a road while a district's reputation lingers. Surfaces. Off the route the car now makes about 40% of its road top speed, loses grip and scrubs momentum in a fifth of the distance, so the road hierarchy is something you feel rather than something the map merely claims. A first tuning made off-road a 12 km/h crawl, which removed the choice instead of pricing it — going round a checkpoint cross-country has to stay a legitimate move. Speed. Heat scales with how fast you were going, not just how far, and stops rewarding ever-higher speed past a point so the answer is never one exact number on the clock. With the road classes, that makes the routing decision real: the trunk fast and noticed, or the lanes slow and ignored. Save format goes to v2 for the district pool; older saves are refused rather than half-restored. Also fixes a population test that hardcoded densities since tuned, and README claims about patrols and AI that Phase 6 made untrue. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -24,6 +24,8 @@ export interface HudModel {
|
||||
/** False while on the verge — still counts as using the road. */
|
||||
onTarmac: boolean;
|
||||
value: number;
|
||||
/** Standing of the district, which feeds every road through it. */
|
||||
area: number;
|
||||
level: HeatLevel | null;
|
||||
};
|
||||
quest: {
|
||||
@@ -113,6 +115,7 @@ export function createHud(seed: number) {
|
||||
: `#${model.heat.segmentId} ${model.heat.onTarmac ? '(on road)' : '(alongside)'}`
|
||||
}`,
|
||||
`[debug] heat ${bar(model.heat.value)} ${model.heat.level ?? '—'}`,
|
||||
`[debug] area ${bar(model.heat.area)}`,
|
||||
'',
|
||||
`seed ${seed}`,
|
||||
`WASD drive · space handbrake · R respawn · M sound ${model.muted ? 'off' : 'on'}`,
|
||||
|
||||
Reference in New Issue
Block a user