fix: remove Red Orchestra and update legacy ids to an array#784
Open
podrivo wants to merge 4 commits into
Open
fix: remove Red Orchestra and update legacy ids to an array#784podrivo wants to merge 4 commits into
podrivo wants to merge 4 commits into
Conversation
…urations - Removed the Red Orchestra entry from GAMES_LIST.md and the games.js file. - Updated the configuration for Red Orchestra: Ostfront 41-45 to include both old IDs for better compatibility.
- Updated the game resolution logic to support multiple old IDs by converting single old ID values into an array. - Modified the duplicate ID finding tool to accommodate the new array structure for old IDs, ensuring all relevant IDs are captured.
…stra entries - Merged the old `redorchestra` entry into `Red Orchestra: Ostfront 41-45` and updated the protocol to `unreal2`. - Retained `redorchestra` as an old ID for compatibility.
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.
Closes #616
Problem
lib/games.jshad two entries for what is the same game:roo4145— "Red Orchestra: Ostfront 41-45" (2006),gamespy1, query offset+10redorchestra— "Red Orchestra" (2018),unreal2, query offset+1As reported in #616, there is no standalone game called "Red Orchestra". Maintainer @CosminPerRam confirmed in the thread that the 2018 release year is bogus (no such game exists) and that the
redorchestraentry "was added as an alternative query method, not necessarily as being another game." His live testing showedunreal2with a+1offset responded on both test servers, whilegamespy1responded on only one andvalveon none — i.e.unreal2/+1(the same family as Killing Floor 1) is the reliable query, notgamespy1.Fix
redorchestraentry.roo4145as the canonical id (it has the correct full name + release year and was already theMIGRATE_IDS.mdtarget forredorchestraost), and switched it to the protocol/offset that actually works.redorchestraostandredorchestra) viaextra.old_id, which now accepts a string or an array.Supporting changes for the array
old_id:Also: added
redorchestra → roo4145toMIGRATE_IDS.md, regeneratedGAMES_LIST.mdviatools/generate_games_list.js(drops theredorchestrarow), and added aCHANGELOG.mdentry under "To Be Released".Examples
Compatibility
roo4145continues to work; its query is nowunreal2/+1(more reliable across servers per the issue testing).redorchestraandredorchestraostkeep working whencheckOldIDs: true(or--checkOldIDs) is passed — the project's standard deprecation path, now documented inMIGRATE_IDS.md.old_idschema is backwards compatible: existing single-stringold_idvalues are untouched; onlyroo4145uses the array form.Testing
node tools/find_id_duplicates.js→ "No duplicates found."roo4145resolves tounreal2/+1, and both legacy ids resolve only withcheckOldIDs.npm run lint:check: the edited files (lib/games.js,lib/game-resolver.js,tools/find_id_duplicates.js) are clean. The other files eslint flags are pre-existing and untouched by this change.tools/run-id-tests.jsrequires the externalgamedig-id-testsbinary (not available here), so it was not run;find_id_duplicates.jscovers the id-collision check locally.