- Implement scoring penalties for consecutive same variety arc shows - Update InterestVariety and InterestScoring to track arc streaks - Add new commands for noting interest variety in AgentHarness - Expand HarnessScenarios to test new variety arc mechanics - Increment version to 0.28.34 in mod.json and scoring-model.json
30 lines
1.5 KiB
Markdown
30 lines
1.5 KiB
Markdown
# Scoring model
|
|
|
|
**Global formula:** [`IdleSpectator/scoring-model.json`](../IdleSpectator/scoring-model.json)
|
|
|
|
**Per-event inventory (strength + prose):** [`IdleSpectator/event-catalog.json`](../IdleSpectator/event-catalog.json)
|
|
|
|
- `scoring-model.json` - margins, multipliers, rarity caps, soft-Duel / variety valve knobs
|
|
- `event-catalog.json` - every authored event id (`happiness`, `status`, `worldLog`, `plots`, `decisions`, …)
|
|
- Decisions use `action` (clause after "decides to …")
|
|
- Most other domains use `label`
|
|
- Happiness uses `variantsWithRelated` / `variantsWithoutRelated`
|
|
- Optional `species` / `character` bonuses
|
|
|
|
**Visual tracker (open beside chat):** [scoring-model canvas](/home/dazed/.cursor/projects/home-dazed-Projects-worldbox-mods-idle-mode/canvases/scoring-model.canvas.tsx)
|
|
|
|
## Variety policy (0.28.28)
|
|
|
|
`TotalScore = EventStrength + scaleBonus + char*w + visual*w + novelty*w`.
|
|
|
|
Hard sticky combat (margin 50, MaxWatch 60) is only for Skirmish+ or notable-pair Duels.
|
|
|
|
Anonymous / single-notable Duels are soft sticky: MaxWatch 24, variety valve at 8s, yield to Story peers after 8s.
|
|
|
|
Founding tips come from `new_city` / `new_kingdom` meta outcomes, not decision intent.
|
|
|
|
Consecutive shows of the same variety arc (e.g. duel → duel) subtract `repeatArcPenaltyPer` from TotalScore (capped), resetting when a different arc is shown.
|
|
|
|
Edit the `weights` block in scoring-model.json to change live scoring formula knobs.
|
|
|
|
Edit event-catalog.json to change what each event is worth and what it says.
|