linuxgurugamer

[1.8.0] KSP-AVC Add-on Version Checker Plugin - MiniAVC

Recommended Posts

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
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

Starting KSP today, the AVC window counts up to "checked 92 of 93 add-ons", then sits there forever, never reaching 93.  It worked yesterday and AVC hasn't changed, so presumably the problem is just a server that isn't responding, which isn't AVC's fault.  However:

  • The AVC window sits in front of everything and can't be moved, and ends up being right in front of my save in the load menu.  The button for the save extends a little past the sides of the AVC window so I'm still able to click it, but it's a little awkward.
  • The add-on list (opened by clicking the checkbox in the top-left corner) has a list of all my mods, but there's no indication of which one is still waiting for the response to its update check. 

The AVC window goes away when I load my save, so it doesn't actually hinder playing the game.  But as a suggestion for future updates, it'd be good to have something in the UI to indicate which mods are waiting for their version checks to finish, and a way to move or close the AVC window before they're all finished.

(Edit: I waited and that last mod's version check finished after a few minutes.  So yeah, probably just a slow server.)

Edited by Wyzard

Share this post


Link to post
Share on other sites
6 minutes ago, 5thHorseman said:

Looks like it's MiniAVC, which you didn't write (as far as I know. I wouldn't be surprised actually :) )

I was right! I'm not surprised.

Anyway here's a pretty minor bug report I actually found in another of your mods, PlanetaryDiversity:

planetary_diversity_172.jpg

I was using 1.7.2 and it wanted me to use 1.7.3 but MiniAVC seems to be using the wrong variable for the "please use" version.

http://pulpaudio.com/ksp/planetary_diversity_172.zip

Share this post


Link to post
Share on other sites

New release, 1.4.0

  • Added InstallChecker to full KSP-AVC
  • Updated Event.repaint to Event.Repaint in IssueGui.cs, DropDownList.cs
  • Replaced all WWW with UnityWebRequest
  • Rebuild both for 1.8

Share this post


Link to post
Share on other sites

Hi,

AVC seems to complain about wrong path:

[LOG 10:28:31.710] Incorrect KSP- Addon Version Checker Installation: KSP- Addon Version Checker has been installed incorrectly and will not function properly. All files should be located in KSP/GameData/KSP-AVC/Plugins. Do not move any files from inside that folder.

Incorrect path(s):
GameData\KSP-AVC\KSP-AVC.dll

Tried renaming folder Ksp 1.8 to KSP, still happening.

Share this post


Link to post
Share on other sites
1 hour ago, Lathari said:

Hi,

AVC seems to complain about wrong path:

[LOG 10:28:31.710] Incorrect KSP- Addon Version Checker Installation: KSP- Addon Version Checker has been installed incorrectly and will not function properly. All files should be located in KSP/GameData/KSP-AVC/Plugins. Do not move any files from inside that folder.

Incorrect path(s):
GameData\KSP-AVC\KSP-AVC.dll

Tried renaming folder Ksp 1.8 to KSP, still happening.

I can confirm this. I got the AVC version 1.4.0 and KSP version 1.8

If you can tell me what the best way to share logs is, I can send them.

Share this post


Link to post
Share on other sites
5 hours ago, Problemless Mods Wanter said:

I can confirm this. I got the AVC version 1.4.0 and KSP version 1.8

If you can tell me what the best way to share logs is, I can send them.

No need for logs, I'll get an update out later today.  For now, just ignore it.

You could create a Plugins directory and move the KSP-AVC.dll into that.

Not sure how this happened, might be an issue in the build server

Share this post


Link to post
Share on other sites

New release, 1.4.0.1

  • Changed install loc for KSP-AVC.dll to Plugins

Share this post


Link to post
Share on other sites

New release, 1.4.0.2

  • Fixed a nasty bug with MiniAVC and KSP 1.8 which was causing the game to crash badly

Share this post


Link to post
Share on other sites
8 minutes ago, New Horizons said:

What is the difference between KSP-AVC and MiniAVC? Which one should be installed?

MiniAVC just checks the current folder for a .version file, and pops up a warning if that mod is out of date.  KSP-AVC suppresses any MiniAVC installs you have, checks every folder for a .version file, and gives you a list of what's up to date and what isn't.

MiniAVC is for modders to include with their mods so their users get updates.  Users shouldn't ever install it on their own.

KSP-AVC is the full-featured user interface, and is the stand-alone mod to install if you're a user and don't like all the individual popups.

Share this post


Link to post
Share on other sites
23 minutes ago, New Horizons said:

What is the difference between KSP-AVC and MiniAVC? Which one should be installed?

to add to what DStaal said above, KSP-AVC is sorta moar geared toward people who manually install mods, rather than CKAN, as KSP-AVC has a UI where you can set notification over-rides, if you are knowledgeable about what old mods may still work fine in newer versions of KSP than what the .version file was last set for, for example.

I dont use CKAN, but I'm under the impression it handles version checking and notification, itself? vOv

Edited by Stone Blue

Share this post


Link to post
Share on other sites

The flipside of this is that it now falls upon the modders to update their bundled MiniAVC version, which otherwise causes KSP to spit out NREs continuously. 

 

Share this post


Link to post
Share on other sites
38 minutes ago, SingABrightSong said:

The flipside of this is that it now falls upon the modders to update their bundled MiniAVC version, which otherwise causes KSP to spit out NREs continuously. 

Nothing new, it's always been this way.  I notified as many as I could when I updated it (and then fixed it).

 

15 hours ago, Stone Blue said:

I dont use CKAN, but I'm under the impression it handles version checking and notification, itself? vOv

CKAN keeps track of what it's installed, and does version checking & notification based on what it knows.  If you manually update a mod which was installed via CKAN, CKAN will not know about that and will do it's work based on it's previous actions

Share this post


Link to post
Share on other sites

Hey @linuxgurugamer - hope you're doing well. I just updated PBC and for some reason it's not giving me any "you need to update!" notices when I test.

I updated the hosted file to PBC v2.8, but when I launch using my old .version file with PBC v2.7 on it, I'm not getting any notices. The xml file is set to allow checks. I'm stumped? :huh:

Share this post


Link to post
Share on other sites
43 minutes ago, _Zee said:

Hey @linuxgurugamer - hope you're doing well. I just updated PBC and for some reason it's not giving me any "you need to update!" notices when I test.

I updated the hosted file to PBC v2.8, but when I launch using my old .version file with PBC v2.7 on it, I'm not getting any notices. The xml file is set to allow checks. I'm stumped? :huh:

What is PBC?

Please provide a log file for analysis

Share this post


Link to post
Share on other sites
On 11/12/2019 at 11:05 PM, _Zee said:

for some reason it's not giving me any "you need to update!" notices when I test.

I think I'm seeing the same behavior for all mods. Running version 1.8.0-1.4.0.3 of KSP-AVC. I get messages that mods are out of date but no notification that updates are available. I figured it was just taking modders a while to get updates out but I manually checked today and most of the mods that KSP-AVC said were out of date actually had been updated 2 or 3 weeks ago. There was no notification in KSP-AVC that updates were available though. Here is a before and after log from manually updating a mod (Kerbal Planetary Base Systems):

Before
After

Share this post


Link to post
Share on other sites

This could be similar to the problem I see in one installation out of three.

The telltale sign is that KSP-AVC only ever logs "SetLocalInfoOnly" and never "SetRemoteAvcInfo". The UnityWebRequest just times out, I don't even see Unity making any DNS requests for the update URLs. Kerbal Alarm Clock uses the (deprecated) WWW interface and does receive a response.

Not sure what to make of it. It looks like a problem in Unity. I'll try and find some differences in the Linux Mint setups I use.

Share this post


Link to post
Share on other sites

This is odd, because it is working on my system.  I'll do some more testing.

Ong thing. In the first log file I looked at, I saw an exception which would be the cause of this

Share this post


Link to post
Share on other sites
On 11/17/2019 at 1:24 AM, HansAcker said:

This could be similar to the problem I see in one installation out of three.

I just realised that the in the setups where it did work, I had KSP-AVC 1.3.1 installed, using the WWW interface instead of UnityWebRequest.

With the latest version, I don't even see Unity making any sort of DNS request in response to the UnityWebRequest calls. This happens on both Linux Mint 18.1 (based on Ubuntu Xenial) and Linux Mint 19.2 (Ubuntu Bionic), with KSP installed via Steam.

I'll test it again without any other mods later, but I don't see how any mod could influence internal Unity behaviour. It is a strange issue.

 

 

Share this post


Link to post
Share on other sites

New release, 1.4.1

  • Important Update:  Replaced Unity web calls with HttpWebRequest calls because Unity is not thread safe

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.