Skip to content

feat(RWE): the redesign non-price half - read signals, arcade toggle, spine difficulty - #36

Open
TheCodingDad-TisonK wants to merge 1 commit into
developmentfrom
feat/RWE-redesign-nonprice
Open

feat(RWE): the redesign non-price half - read signals, arcade toggle, spine difficulty#36
TheCodingDad-TisonK wants to merge 1 commit into
developmentfrom
feat/RWE-redesign-nonprice

Conversation

@TheCodingDad-TisonK

Copy link
Copy Markdown
Member

The RandomWorldEvents redesign, non-price half.

The 13 arcade events from the brief's CUT LIST are removed (no more timeScale writes, no repPoints writes, no cash trickles for the read-signal events). The world/sim events become read-signal announcements, with the yield flags leaving the price patch. The read surface is completed (getActiveEvent, isEventActive, getProgress, getRemainingTime, getIntensity). The arcade physics toggle defaults OFF (the retained physics events only enter the trigger pool when ON, and the damage patch only scales the player's own vehicle). Difficulty rides the vendored Option-Scaling resolver (World-events dial to frequency and base intensity). The catalog goes 53 to 40 events, with new help strings in 26 languages.

The price and money halves stay gated as the follow-up (the price patch is retained for the keep-to-MarketDynamics events; the instant addMoney events are left). Note: registerPriceModifier appears built on development, so that dependency should be re-verified before the price half.

Verified: 16 bench checks (rwe-redesign-bench.mjs) plus the syntax gate clean. Built and deployed as 2.2.0.0. Not yet observed in a running game.

Keep the role, delegate the mechanism (build brief 2026-07-16):
- CUT 13 arcade edges (time warps, reputation writes, cash trickles,
  magic fuel, free upgrades/cleaning, steering pull, slippery roads,
  fuel discount). No more timeScale, repPoints or per-60-second money
  trickles behind the read-signal events.
- World/sim events become PULL read-signals announced by RWE; the
  owning sim systems (SoilFertilizer / CropDisease / DairyCore) apply
  their own model. Manager read surface completed: getActiveEvent,
  isEventActive, getProgress, getRemainingTime, getIntensity (nil when
  nothing is active).
- Arcade physics behind the opt-in RandomWorldEvents.arcadePhysics
  toggle (default OFF, admin SettingsHub key): the four retained
  physics events only enter the trigger pool when ON, and the
  Vehicle.addDamageAmount patch scales only the player's own vehicle.
- Difficulty rides the Option-Scaling Spine: vendored the pure
  OptionScalingResolver; the World-events dial scales frequency and
  base intensity, the Economy dial is exposed via getDifficulty().
  Absent spine or dial off = neutral = the mod's own settings.
- Event catalog 53 -> 40. Help text and the new arcadePhysics strings
  updated in 26 languages. Bench added at
  tools/test/rwe-redesign-bench.mjs (16 checks).

The price half (MarketDynamics price modifiers) and the money half
(onDayChange settlement via TaxMod) stay gated by design; their
existing mechanisms are preserved untouched.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant