Implement OSRS-style Ironman game modes - #19
Draft
gradwahl wants to merge 7 commits into
Draft
Conversation
gradwahl
requested review from
SaveTheSunF1R3x
and removed request for
SaveTheSunF1R3x
August 28, 2026 22:40
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Goal
Implement OSRS-style Ironman modes in the 2004 progressive server without modernising unrelated game content.
Requested modes:
NORMALIRONMANHARDCORE_IRONMANULTIMATE_IRONMANGROUP_IRONMANHARDCORE_GROUP_IRONMANThe detailed implementation and anti-bypass matrix is committed in
IRONMAN_MODE_CHECKLIST.md. This PR is intentionally draft and should stay that way while the phases are completed.Scope guardrails
2004sp-progressive.NORMALaccounts.Asset scope
Only these modern assets should be backported for Ironman:
Everything else should reuse native 2004 cache content/interfaces:
Existing integration points
This work should extend the current architecture rather than build parallel systems:
engine/src/engine/entity/Player.tsengine/src/engine/entity/PlayerLoading.tscontent/scripts/login_logout/login.rs2content/scripts/interface_trade/scripts/trade.rs2content/scripts/player/scripts/death.rs2content/scripts/shop/scripts/shop.rs2Phase checklist
Phase 0 — Rules matrix
UNRANKED_GROUP_IRONMANmode silently.Phase 1 — Core model and persistence
GameModeenum and centralized rules/helpers.Player.NORMAL.Phase 2 — Group persistence
Phase 3 — Tutorial Island onboarding
Phase 4 — Direct trading
NORMAL <-> NORMALtrade behaviour.Phase 5 — Ground-item provenance
Phase 6 — NPC contribution/drop eligibility
Phase 7 — PvP/death anti-transfer
death.rs2PvM/PvP death path.Phase 8 — Hardcore Ironman
HARDCORE_IRONMAN -> IRONMANon qualifying death.Phase 9 — Hardcore Group Ironman
GROUP_IRONMAN, including offline members.Phase 10 — Ultimate Ironman
Phase 11 — NPC shops
Phase 12 — Duel Arena/minigames/communal rewards
Phase 13 — Multiplayer-required quests
Phase 14 — Group storage
Phase 15 — Group lifecycle/ranked integrity
Phase 16 — Ironman armour backport
Phase 17 — Helmet/status icon backport
Phase 18 — Login/social UX
Phase 19 — Hiscores/site integration
Phase 20 — Moderation/audit/recovery
Phase 21 — Anti-bypass matrix
Phase 22 — Regression
Phase 23 — Ready for review