Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Strip KSP2 build IDs, multi-game for DLC #97

Merged
merged 1 commit into from
Dec 31, 2023

Conversation

HebaruSan
Copy link
Member

Problem

In KSP-CKAN/KSP2-NetKAN#125 we are updating some KSP2 mods with out of date compatibility for the first time, and the install step is failing with "Module XYZ 1.2.3 required but it is not listed in the index, or not available for your version of KSP2".

Cause

I think this is an issue of the formatting of the game versions. The spec requires game versions to have only 1–3 pieces, not 4, so all KSP2 mods obey this (see KSP-CKAN/CKAN#3969 for another recently addressed complication). But the KSP2 builds JSON file contains 4 pieces, and the meta tester is passing all 4 pieces to ckan compat add. I think this makes them not match the modules, so it's behaving as if the compatibility isn't being set.

Changes

Now the build ID is stripped from KSP2's game versions.

While working on this I noticed that the DLC command line flags are passed based solely on the game version, not the game itself, so in theory KSP1's DLC flags could be passed for KSP2 if its version numbers get high enough. Now this is moved to Game.dlc_cmdline_flags and overridden in Ksp1, so KSP1 DLC will only be set up for KSP1.

@HebaruSan HebaruSan added the Bug label Dec 31, 2023
@HebaruSan HebaruSan merged commit 55b9f0f into KSP-CKAN:master Dec 31, 2023
2 checks passed
@HebaruSan HebaruSan deleted the fix/ksp2-versions branch December 31, 2023 01:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant