linuxgurugamer

[1.5.1, 1.6.1, 1.7.2] KSP-AVC Add-on Version Checker Plugin - MiniAVC

Recommended Posts

Posted (edited)
13 hours ago, Poodmund said:

:D In my case I think it would be more useful that way anyway as it's only a small amount of versions to be compatible with.

... and there's no rush. I've got a small performance update to push out but everyone's been coping up until this point so it's not mission critical, for me. I'll be happy to see any progress whenever you get a chance to give it some time.

Here is another beta:

https://www.dropbox.com/s/v6gd5xz1zf0gd88/KSP-AVC-1.3.0.4-Beta2.zip?dl=0

Please delete the entire KSP-AVC directory before installing this.

 

This beta incorporates the following changes:

    Added KSP_VERSION_EXCLUDE to allow specific versions to be excluded from being seen as compatible

          "KSP_VERSION_EXCLUDE": [
            {      "MAJOR": 1,      "MINOR": 6,      "PATCH": 1    },
            {      "MAJOR": 2,      "MINOR": 6,      "PATCH": 2    }
          ]


    Added KSP_VERSION_INCLUDE to allow specific versions to be compatible

          "KSP_VERSION_INCLUDE": [
            {      "MAJOR": 1,      "MINOR": 6,      "PATCH": 1    },
            {      "MAJOR": 2,      "MINOR": 6,      "PATCH": 2    }
          ]


    Following from @4x4cheesecake:
        -Fixed wrong log entry
        -Fix JSON format for DISALLOW_VERSION_OVERRIDE
        -Removed obsolete AVC.cfg from "GameData/KSP-AVC".

Edited by linuxgurugamer

Share this post


Link to post
Share on other sites
20 hours ago, 4x4cheesecake said:

Just stepping by for a little heads up:

If this is going to interfere with the "IsCompatible" boolean of "AddonInfo", I would suggest to put:


"DISALLOW_VERSION_OVERRIDE": True,

within the version file as well. Otherwise, the compatibility override is still able to do his job and well...may overrides it^^ As far as I can tell, this wouldn't be helpful in this case ;)

I'd actually argue against this feature.  Yes it allows someone to override what's stated - but that's the point of the override, and the overrides are already marked as a different color.  And even if it was good just here, this would also block the main purpose of the overrides.

Basically: Overrides are already 'at your own risk'.  I see putting this in just being an 'unless I really mean it', and then someone's going to ask for an 'I really *really* mean it' override, and it's just a mess.  Stop at one level: The player already has all the info, this doesn't add anything except potential aggravation to the player the maintainer of KSP-AVC.

Share this post


Link to post
Share on other sites
Posted (edited)
1 hour ago, DStaal said:

I'd actually argue against this feature.  Yes it allows someone to override what's stated - but that's the point of the override, and the overrides are already marked as a different color.  And even if it was good just here, this would also block the main purpose of the overrides.

Basically: Overrides are already 'at your own risk'.  I see putting this in just being an 'unless I really mean it', and then someone's going to ask for an 'I really *really* mean it' override, and it's just a mess.  Stop at one level: The player already has all the info, this doesn't add anything except potential aggravation to the player the maintainer of KSP-AVC.

You know...it's already part of AVC. It is there to protect version locked mods like Kopernicus from the override feature because a mod would be version locked for a reason. If you allow the user to override a serious warning, you'll probably end up with even more trouble.
So far, I'm not aware of any mod which actually makes use of this feature (Kopernicus uses it's own compatibility checker and unloads the assembly if the version doesn't match) but you will never know what happens in the future.
You're absolutely right that this feature works against the override but in my opinion, there must be a way for a mod creator to rely on a version checker plugin. As soon as you allow the override for every mod without any exceptions, there is no point to keep the compatibility check at all and everyone who needs it, has to implement it in the mod itself because there is no other way to be sure a user will be actually warned about an incompatibility by AVC.
These are some very very rare and exceptional cases which should actually make use of the "DISALLOW_VERSION_OVERRIDE" flag and this is indeed not exactly one of them. There are other ways how this can be done and I would actually argue that it should be done differently.

In this case, I just pointed out that it might be necessary, depending on the implementation of the new "KSP_VERSION_EXCLUDE/INCLUDE" feature. It was me, who wrote the code for the override so I'm pretty familiar with the internal structure of AVC. When I read about this new feature, I immediately thought of a way how this new feature might be able to implement and how it can fail if you don't pay attention to the override. Even though LGG is a great modder and probably already thought about this, I thought a little heads up would be nice.
 

Some more details, if you are interested:

Spoiler

So far, there are basically two important bool values: "IsComaptible" (that's the regular AVC check) and "IsForcedCompatible" (that's the override). Just one of them need to be true, to mark a mod as compatible. The override takes priority in this process and if the new feature just flips the "IsCompatible" boolean as soon as any version number in "KSP_VERSION_EXCLUDE" matches the actual game version, the override would still take priority and would break the new feature.

 

Edited by 4x4cheesecake
"how", not "who" :confused:

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.