claytemplar-RiskOfArena icon

RiskOfArena

Free-for-all PvP: enemy-free arenas, item drafts or personal XP, timed level caps, configurable rewards, respawns and score limits. RiskOfOptions support.

CHANGELOG

1.0.12

  • Scrapper rewards now retain the exact source item tier in Weighted Essence, Draft and Random. White items cannot turn into red items; individual void and custom tiers are preserved separately. Command retains unrestricted rewards.
  • Weighted recycling offers the matching essence without a new rarity roll; Draft rolls a fixed same-tier shortlist; Random grants one random same-tier item. Eligible personal XP substitutions still follow the host's toggle and level cap.
  • Banked recycled choices save their tier and show it in the menu. The host validates that tier on consumption, including remote requests. Back, bank order and Continue preserve each offer. Recycling uses a separate random stream from ordinary rewards.
  • Host bans, enabled content and tier switches still apply. No eligible same-tier replacement means no item is consumed; no fallback rarity or equipment conversion is allowed. Existing batch limits, bank limits and unpaid-item refunds remain in place.

1.0.11

  • Counted the listen-server's local host in Arena rosters, map voting and snapshots even without a remote client connection. One-person multiplayer lobbies and matches keep normal rewards, caps, scrapper and respawn rules.
  • Fixed a logged lobby tooltip initialization exception: staged MPButtons have not run Awake while pickers are constructed, so tooltip binding now waits for active selection events before accessing their event system. Deferred picker construction until the local input system is ready.
  • Added solo-host/disconnection presence tests and a metadata regression check against premature MPButton event-system access.

1.0.10

  • Replaced hard border strips with screen-scaled alpha fringes and filtered panel edges. Removed the duplicated native button outline from Map Vote/Match settings while retaining their translucent colors.
  • Replaced the general settings screen with a gameplay-only Match settings window bound to the actual RiskOfOptions config entries. Host edits save directly; map entries retain stage-image pickers.
  • Clients see synchronized host values in a read-only view, with no editing controls or setting-edit network message. Local controls, keybinds and presentation preferences are excluded from the window and its snapshots.
  • Added revision-cached, rate-limited read requests, ownership checks, gameplay-category regression tests and metadata guards against network configuration writes. Views preserve the selected category/scroll during updates and close on mode/authority changes.

1.0.9

  • Added 05 Match → Enable Arena scrapper, enabled by default and controlled live by the host for everyone.
  • Disabling blocks recycling and despawns the scrapper, highlight and marker; re-enabling restores one without resetting banked rewards. Client configuration cannot override the host's setting, and vanilla scrappers remain unchanged.

1.0.8

  • Added full localized item/equipment descriptions to every Arena item picker, including the scrapper. Mouse hover and keyboard/controller selection work without Inspect; native tooltip styling and rich text are retained above modal overlays.
  • Replaced held-W dismissal with two fresh complete W taps, closing on the second release within a 0.6-second window. W held as a reward menu opens and isolated taps cannot dismiss it; rewards remain banked.
  • Added a guaranteed Arena reward scrapper with persistent native highlighting and a position marker. It converts each permanent item removed into one reward, emits no scrap pickups, and respects available bank space and the host's reward mode.
  • Added an independent, on-by-default Show opponent arrows option in 06 Local controls. Native player indicators now work for Arena combat teams without changing their targeting relationships; names and arrows can be toggled separately.
  • Retained normal scrappers and player indicators outside Arena. Added input-sequence and scrapper-bank regression checks and audited the native scrapper/indicator hooks.

1.0.7

  • Rebuilt and rechecked the release DLL and logos following a remote-client missing-mod report. Retained version 1.0.7 and the multiplayer compatibility check. Added multiplayer setup instructions and a packaging guard against DLL/manifest version mismatches; no gameplay code changed in this rebuild.
  • Kept hotkeys, automatic menu opening and nametag visibility as each player's own live preferences. Moved nametags to 06 Local controls and preserved the previous saved value.
  • Removed nametag visibility from host match settings and network snapshots. Match conditions, rewards, levels, combat, respawns and map rules continue to come from the host.
  • Clarified the host/local split in RiskOfOptions and the setup documentation.

1.0.6

  • Added a translucent Match settings button directly below Map Vote in the Arena character-selection sidebar. It opens native Mod Options with RiskOfArena selected; non-host changes remain local.

  • Preserved player ability vehicles during world-interactable cleanup. Seeker’s Sojourn/Reprieve uses VehicleSeat, itself an interactable, so cleanup must preserve it and its passenger synchronization window.

  • Used RoR2’s localized HUD font for the right-side match panel and showed the host’s active reward mode there.

  • Replaced native-plus-custom death messages with one server-broadcast defeated-by/died notice per death, scoped to Arena.

  • Relabelled mod Cancel controls as Back. W closes either reward menu without spending its offer, including when W was already held as a timed offer arrived.

  • Added a live host-controlled player-nametag checkbox under 05 Match.

  • Removed per-frame global lobby-category searches after discovery; cached map eligibility/names/sort order and avoided redundant sibling/layout changes.

  • Blocked all death, kill, underdog and forced-choice rewards from void/out-of-bounds deaths. Timer rewards remain scheduled independently.

  • Added independent 0–12 starting, death, kill and timed reward amounts directly below their toggles. Migrated legacy event amounts and retained starting amounts.

  • Replaced the old automatic underdog bonus with a clearly labelled, off-by-default extra-death-reward option. Death rewards off/zero use timer respawning rather than a hidden free choice.

  • Kept weighted chances and RNG stable across Continue; added active-rule/per-offer logs and regression checks. No forced-red state was reproduced.

1.0.5

  • Added five 0–100% WeightedEssence controls immediately below Item selection in RiskOfOptions: White, Green, Red, Void and Lunar.
  • Retained 60/25/10/3/2 defaults. Controls enable with WeightedEssence and accept typed percentages as well as slider changes.
  • Captured the host’s configured chances for each new run; queued offers and Random-mode weights remain independent.
  • Zero excludes a class; non-100 totals and disabled/empty classes normalize proportionally. All-zero chances allow XP-only rewards when possible and skip impossible rewards safely.
  • Added custom distribution, probability boundary, normalization and zero-weight regression checks.

1.0.4

  • Preserved the chosen RiskOfArena name, claytemplar author and revised description in release packaging.
  • Added WeightedEssence selection: 60% white, 25% green, 10% red, 3% void, 2% lunar; one host-side roll per reward with an XP alternative.
  • Replaced the two map text fields in RiskOfOptions with image-based, scrollable stage selectors: multiple blacklist checkboxes and one default-map selection, with Apply/Cancel.
  • Registered lobby categories from their native definitions and replaced the instantiated Artifacts row with the Map cover and translucent vote button. Hid Karma only in Arena and restored native visibility on exit.
  • Moved match status and the live leaderboard into the bottom of the native RightInfoBar, beneath existing stats.
  • Replaced filled-image Outline effects with separate border edges for translucent panels; used a compact essence screen.
  • Fixed Back to Essences, Cancel and other custom buttons by parenting before their input locator initializes. Added navigation to the bottom buttons.
  • Kept artwork outside native button animation and async-image control. Cached owned preview/icon loads and updated map vote counts without rebuilding the grid.
  • Broadened catalog-based item selection to restricted visible tiered items and elite equipment essences. Included scrap by default, preserving custom bans.
  • Replaced shared-Player-team free-for-all with one real combat team per player and their entire summon ownership tree. Native enemy masks and hit/force rules now separate opponents from allies with friendly fire off; removed skill-specific targeting workarounds. Added R2API Teams 1.0.3.
  • Added host-controlled Back to Lobby and Continue Game buttons on the match-end panel. Continue preserves inventories, levels, scores and banked rewards and raises the goal by 20 kills repeatedly; enabled time limits get a fresh duration.
  • Added weighted-roll, continued-match and stable team-slot regression tests, plus API checks for native team filtering, lobby categories, Seeker and N’kuhana paths, and return-to-lobby behavior.

1.0.3

  • Replaced Artifacts with a Map cover/name/status panel only while Arena is selected.
  • Added a translucent Map Vote button directly below the preview; removed the floating vote button and automatic opening.
  • Hid the Karma section only in Arena and restored the original sidebar on mode changes.
  • Added a host-configurable default map, initially Titanic Plains (golemplains).
  • Made the leading-map preview and launch result agree, with stable default-aware tie handling.
  • Added six default/leading-map selection regression checks.

1.0.2

  • Gave Arena its own stable modal frame, heading and Cancel button using Command button artwork.
  • Moved map/essence labels outside the native button's internal layout hierarchy.
  • Added legacy-preview fallback for scenes whose Addressable thumbnail reference is empty.
  • Retained the LookingGlass compatibility fix and safe modal cleanup from 1.0.1.

1.0.1

  • Fixed the Arena lobby becoming stuck behind a blurred overlay when LookingGlass is installed.
  • Reused Command visual assets with Arena-owned controls, avoiding world-item picker hooks that require a body/controller.
  • Constructed modal panels while inactive and activated them only when setup finished.
  • Added Escape-to-close and error cleanup to release modal blur and cursor state.
  • Added a binary regression check preventing calls into world-item picker setup.

1.0.0

  • Added Arena after Monsoon in the lobby's difficulty selector.
  • Added free-for-all combat, player targeting fixes, and enemy suppression.
  • Added native Command-style essence selection followed by the corresponding pickup grid.
  • Added white, green, red, lunar, void and equipment essences, plus optional boss and expansion tiers.
  • Added random pickups and fixed drafts for each essence.
  • Added independent reward toggles for deaths, kills and shared timers.
  • Added personal level rewards and a time-based, host-enforced level cap.
  • Added timed, choice-gated and combined respawns with safer spawn placement.
  • Added spawn protection, kill healing, underdog rewards and optional fall-damage protection.
  • Added a scoreboard, kill limits, time limits and tied winners.
  • Added RiskOfOptions settings and host-authoritative reward validation.
  • Added Arena-only map voting, live vote counts and a configurable blacklist with Bazaar Between Time excluded by default.
  • Added scene interactable removal and disabled progression missions and scene exits in Arena.
  • Disabled void fog in Void Fields, Void Locus and Planetarium only during Arena runs.
  • Embedded the user's polished red-and-blue mode icon, with matching transparent size exports.
  • Initial release candidate: compiled against Steam build 25921972; multiplayer playtest pending.