-
Notifications
You must be signed in to change notification settings - Fork 22
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
YAFC won't create project if you don't own the DLC #323
Comments
Yes... I saw that the space age mod is hard-coded enabled in 39e328b: yafc-ce/Yafc.Parser/FactorioDataSource.cs Line 185 in 39e328b
I do not like this change myself, but the PR #320 got merged very quickly. @shpaass Why don't we read the mod list and check if it is enabled or not? Same goes for hard-coded Quality, if people disable this (for reasons) they cannot use YAFC! (Maybe we need a separate ticket to discuss this, or we use this one?) |
The PR #320 got merged very quickly to have at least some support of Factorio 2.0. |
My proposal would be:
If we all agree with this proposal, I guess we need to figure out some flexible way (plugins?) to add mod specific support/code for space-age, quality (and py). |
@lehitom For now, I would suggest to revert to the previous YAFC version, until we fixed this (it might take a little). I think the newest version only/mostly added v2.0 support, so there is not (much) you would miss out on. |
I think that Yafc 0.9.x doesn't work with Factorio 2.x, but that needs to be checked. |
Oh... there were some breaking changes for the base game as well? 😞 |
I'll be free in around 10 hours, but it will take time learning this part of Yafc. |
While waiting for the agreement or on counter proposals, I'll work on decoupling space-age/quality/elevated-rail from the base game. I guess we need to this at the least... |
Yafc v0.9.1 is not meant to work with Factorio 2.x. Too much stuff changed in the game. |
There is nothing (code-wise) that requires the Space Age DLC/mods to be loaded. So removing the hard-coded loading of the Space Age DLC mods seemed to be enough. So it does not seem to be necessary (for now) to think about keeping track of certain feature to be available or not. In a later stage when we want to support 'quality', 'spoiling', 'TURD', etc., we do need to think about it. |
I checked all of the #320 commits to see if they would a hard dependency on the Space Age DLC. And I only found the one commit that adds the mods by default. As far as I could figure out, there is no need to forcefully add these mods: when they are enabled in mod-list.json they get loaded. No other code is depending on these mods, all related code adds support when it is encountered when loading the mods. I tested by loading both a Space Age and a non-Space Age project (with the mods enabled/disabled) without issues. So in the end the fix for #323 is fairly straightforward 😌
This should have been fixed in the v2.1.0 release, could you verify so we can close the issue? |
v2.1.0 release works just as good as the custom build I did of the original patch on shpass's branch. So all good here Thanks again! |
YAFC CE v2.0.0
Factorio v2.0.8
When it attempts to create a project, it detects the expansion as active (I don't own it) and the mod list only contains the base game. After hitting disable and reload 4 times, it hits a critical error. This is a fresh install of the game as of 2.0.7, I moved my 1.1 files elsewhere.
The text was updated successfully, but these errors were encountered: