{ "_comment": "REPUTATION — the standing the player holds on each planet and space station (js/reputation/Reputation.js). min…max = the scale (max is the BEST reputation, min the worst); neutral = what a place starts at when the player has no standing with it (and no faction the player knows controls it); home = the standing the player's HOME WORLD is pinned to, always — nothing changes it. Place identity: planets are -p and settlements -s (SystemGenerator); the home world is the key 'home'. Values are integers; every write is clamped to [min, max]. Factions: every settlement's reserved `owner` field (null for now) is the controlling-faction check — when factions land, a place controlled by a faction the player has standing with inherits that standing (see Reputation.standingFor).", "min": -20, "max": 20, "neutral": 0, "home": 20, "_bonuses": "bonuses — the standing's BONUSES (js/reputation/Reputation.js → creditFraction, applied by GameScene): each is a FRACTION OF THE SCALE'S TOP (max) — sideQuest = what a COMPLETED + CLAIMED side quest earns on the world that POSTED it (10% → +2 at the default +20); perGoodSold = what every GOOD SOLD on a world earns it (2% → +0.4 per unit — the sub-point fraction credits across sales until it pays out whole points, so five sales land +2); pirateKills = the SYSTEM KILL MILESTONE (every `every` pirates the run puts down in a system — 10 by default — +`bonus` standing, 1 by default, lands on EVERY place in that system — each planet's anchored post + the free-space stations; the per-system tally is the save's `pirateKills` field, js/save/SaveData.js, and the payout lands through GameScene.recordPirateKill's rep.change — so it clamps at max, and a place already at the top simply stands). The per-world bonuses are no-ops on the home world (pinned at max — the bonus can't move what nothing moves).", "bonuses": { "sideQuest": 0.10, "perGoodSold": 0.02, "pirateKills": { "every": 10, "bonus": 1 } } }