Opened 6 years ago

Closed 3 years ago

#5053 closed enhancement (fixed)

GUI mod compatibility check - ignore mods that don't change the simulation state

Reported by: elexis Owned by:
Priority: Should Have Milestone: Alpha 25
Component: UI – Miscellaneous Keywords:
Cc: Patch:

Description

As of r21301 / Phab:D931 in #3370 and r21239 / Phab:D955 in #4887 we have mod compatibility checks for the lobby, savegames and replays.

But it doesn't support one use case of mods, that is mods that only change the GUI and thus should be able to launch games that run with otherwise the same mods.

The mods we know from the forums are all 'game-content' mods, i.e. they all provide new templates.

But fpre for instance made at least one a22 mod containing good GUI improvements.

As mentioned in Phab:D931, this GUI mod support feature could be implemented by a mod.json flag. But it could become less error prone by testing for launched directories and then excluding all mods that only change the GUI.

(Launching multiple GUI mods is likely to fail, but that's not our responsibility as it is an undecidable problem actually if mods are compatible. If we could solve that, we could likely decide the halting problem using that code.)

The host could only advertize the non-GUI mods to the lobby and clients could only test against the non-GUI mods (thus also excluding the mod user and mod implicitly). We should consider all root directories to identify those that can't change the simstate.

Change History (4)

comment:1 by elexis, 6 years ago

Inconsistency: load.js allows the user to load savegames of different mods, while replay_actions.js does not offer that choice. In both cases they only affect the player who does that choice (as opposed to the lobby where it can affect all clients of the game (OOS)).

comment:2 by Itms, 5 years ago

Component: UI & SimulationUI – Miscellaneous

Not 100% sure where to put this ticket.

comment:3 by elexis, 5 years ago

(Duplicate at #5435)

comment:4 by wraitii, 3 years ago

Milestone: BacklogAlpha 25
Resolution: fixed
Status: newclosed
Type: defectenhancement

Fixed in Phab:rP25634 / r25634

Note: See TracTickets for help on using tickets.