Jump to content

[1.3 & 1.2] KSP-AVC Add-on Version Checker Plugin 1.1.6.2 - MiniAVC - KSP-AVC Online (2016-10-13)


cybutek

Recommended Posts

Can you please explain what these two features are for and how they work? I couldn't find them in the manual.

I may have accidentally forgot to actually add that information into the readme. But here's a bit of a blurb about them.

'Any' type versions are probably not that important from a user's perspective... The old usage was that when there was a blank KSP_VERSION it would replace it with the current running version (this scenario will of course only be useful for authors who want add-on checking but not game version checking). This no longer happens as the VersionInfo class can now work as a generic catch all 'Any' version, working properly with equality and comparison checks. The change here is more for my benefit as it allows a wider scope in how a version can be used. Wildcards are fairly straight forward as in if a '-1' is used in any part of the version, then that part will be treated as a wildcard. This can be very useful for setting a KSP_VERSION to 0.25.* for example. It can be used anywhere so it is also possible to use the wildcard in the add-on version, but I'm not sure how that could be useful; it would be a very special case if it was.

Link to comment
Share on other sites

KSP-AVC Plugin 1.1.5 is now available!

Added: New informational toolbar to the top left of the screen, replacing the drop down button.

Already much nicer, but still overlaps with DevHelper on the top left.

Would it be possible to detect the existence of DevHelper and then put the toolbar a few pixels below it? I am not sure which would be less work for you, this hardcoded way or somehow make your toolbar movable and remember its last location between restarts?

Link to comment
Share on other sites

Already much nicer, but still overlaps with DevHelper on the top left.

Would it be possible to detect the existence of DevHelper and then put the toolbar a few pixels below it? I am not sure which would be less work for you, this hardcoded way or somehow make your toolbar movable and remember its last location between restarts?

I've implemented the hard-coded way as it's easier. It'll be in the next update. You can just grab the latest .dll from GitHub in the mean time :)

Link to comment
Share on other sites

I've implemented the hard-coded way as it's easier. It'll be in the next update. You can just grab the latest .dll from GitHub in the mean time :)

Thank you, I downloaded the DLL from your repo and now it is perfect :cool:

Link to comment
Share on other sites

Just a quick note... I am going to be starting work on a complete re-write of KSP-AVC soon. As it has come to my attention that the extremely simplistic but manual aspect of AVC is proving to be problematic in some situations. With it having started as a simple tool that strictly adhered to Tyrope's versioning system, it's not very modular.

Considering how widespread version checking using this system has now become, it has to be extended to cater for all situations. This will include full GitHub support and KerbalStuff without relying on remote .version files. Also, where possible information will be taken from already available sources, such as assemblies. With these features working together, it will be completely possible for plugin developers to add AVC support that notifies of updates without the authors having to ever touch a .version after first including it.

An example of one such .version file would be:

{

"name":"Test Mod",

"assembly":"TestAssembly",

"kerbal_stuff_id":"9001"

}

This could be everything required for FULL versioning support, including all the compatibility checks (when connected to the internet). As you can see, there's no version specific information contained so this particular .version file if included with a mod will never need changing.

The current AVC implementation will still be supported, backwards compatible and available to use. The goal is to add in as many time-saving and feature enhancing functions to try and substantially lighten the workload of version file maintenance where possible. With the flexibility of adding more modules in the future, including CKAN.

Link to comment
Share on other sites

Thank you so much for making this happen. I logged in to ksp after a 6-mo hiatus and was so excited to see Tyrope and my work continuing on after we had sort of given up. (Tyrope deserves all the credit, I just played encourager for a month).

It's an outstanding implementation and I'm pleased to say that I use it every single day. I'm also psyched to see more and more mods being supported. At last count, 16 of my mods are using it and that's simply astounding!

I also fully support changing the versioning mechanism. We knew that it was going to be problematic, but it was simple until it was off the ground (which is where you really want to be when you start thinking about things right? :P)

Thank you so much for making it happen Cybutek and please keep it up. I don't doubt that at some point Squad themselves will do something like this and then the three of us (and anyone else by that point) should get some champagne and celebrate a successful acquisition. :)

Link to comment
Share on other sites

Feature request: check once per day and cache the results. Include a debug option for us to turn that off, or some way to clear the cache so that it checks again while we are trying to fix something.

I would really like to see you add this, but I understand if it takes a while. Or if it waits until after your planned (awesome) changes.

Thanks again for making this. :cool:

Link to comment
Share on other sites

Just a quick question: is the loading screen GUI movable, either via config or in game? I have MSI's DevHelper installed that also places its GUI in the top left, unfortunately behind AVC, rendering it basically useless.

Get the .dll from GitHub, it includes a fix for this. I've just not packaged up and released a new version of KSP-AVC for this one feature that many players will have no use for.

Link to comment
Share on other sites

Is there good documentation on the relationship between the github and not-guthub fields of the version file?

If i tell it my github info does that mean i don't tell it my download url, and version and let it draw that from github? if i populate both and screw up and they disagree which overrules the other?

Link to comment
Share on other sites

Is there good documentation on the relationship between the github and not-guthub fields of the version file?

If i tell it my github info does that mean i don't tell it my download url, and version and let it draw that from github? if i populate both and screw up and they disagree which overrules the other?

At the moment, the GitHub field is only there to supplement the remote version data. In its current state, it's used for synchronisation between your committed version file and your github releases. If a github release version does not match the one in the remote version file, it will not display any update notices. This is to solve the problem where AVC users would get an update notification on a newly committed version file whilst the update is still not ready for release. If the download field is left blank or completely omitted and github info is available, it will automatically use the github release page as the download location.

Note that the usage of the GitHub fields will be changing in the overhaul. I will be trying to keep backwards compatibility with its current use, but expect a much more intuitive system in future :)

Link to comment
Share on other sites

Note that the usage of the GitHub fields will be changing in the overhaul. I will be trying to keep backwards compatibility with its current use, but expect a much more intuitive system in future :)

Okay well I'll watch this space in the future then. I haven't officially released my mod yet, but I want to make sure it gets AVC support all squared away correctly before I do.

Link to comment
Share on other sites

Just a quick question regarding the version file format, as I'm presently adding preliminary CKAN support for reading embedded .version files.

The spec says that in order to use KSP_VERSION_MIN and KSP_VERSION_MAX, the KSP_VERSION field has to be defined. Am I correct that KSP_VERSION is essentially the version a mod was compiled for, but MIN/MAX are to be taken as the range it's known to work with?

Many thanks!

~ Paul

Link to comment
Share on other sites

  • 1 month later...

So I just installed AVC 1.1.5 a few days ago, and I noticed it is checking several mods that are NOT on the list of supported mods, and it is also NOT checking mods that ARE on the list....???

And it also seems to be telling me some of them are up to date, but when I check manually, there are newer versions released...???

Edited by Stone Blue
Link to comment
Share on other sites

Just a quick question regarding the version file format, as I'm presently adding preliminary CKAN support for reading embedded .version files.

The spec says that in order to use KSP_VERSION_MIN and KSP_VERSION_MAX, the KSP_VERSION field has to be defined. Am I correct that KSP_VERSION is essentially the version a mod was compiled for, but MIN/MAX are to be taken as the range it's known to work with?

Many thanks!

~ Paul

Its usage is exactly how you explained it. Also I don't think this is specified in the spec but all the field names are case-insensitive.

Edited by cybutek
Link to comment
Share on other sites

cybutek,

First off, thanks so much for all your work. I won't go flying without an Engineer component on my spacecraft and I really appreciate AVC to help me keep track of mod updates.

I wanted to add my vote for a version external to KSC so that I can do a quick version check before I start up the game. Doing the version check during upload and then exiting, upgrading, and restarting is just a convenience thing, but it would be a nice add.

Bill

Link to comment
Share on other sites

I'm having some issues with the version file. I've got the exact same file local and remote, and the plugin appears to fail to parse the remote file. It is the raw link, responds normally in the browser, JSON passes lints, etc.

any ideas as to what's going on here?

Edit: in the meantime I created one on http://ksp-avc.cybutek.net/ and that seems to be working fine.


[Text 19:45:44.8408586]: C:\SteamLibrary\SteamApps\common\Kerbal Space Program\GameData\EditorExtensions\EditorExtensions.version
NAME: EditorExtensions
URL: https://raw.githubusercontent.com/MachXXV/EditorExtensions/Dev/EditorExtensions/EditorExtensions.version
DOWNLOAD: https://github.com/MachXXV/EditorExtensions/releases/latest
GITHUB: MachXXV/EditorExtensions
LatestRelease: NULL
AllowPreRelease: False
VERSION: 2.0
KSP_VERSION: 0.90
KSP_VERSION_MIN: 0.90
KSP_VERSION_MAX: NULL
CompatibleKspVersion: True
CompatibleKspVersionMin: True
CompatibleKspVersionMax: True
CompatibleGitHubVersion: True
[Text 19:45:44.8428756]: https://raw.githubusercontent.com/MachXXV/EditorExtensions/Dev/EditorExtensions/EditorExtensions.version
NAME: NULL (required)
URL: NULL
DOWNLOAD: NULL
GITHUB: NULL
VERSION: NULL (required)
KSP_VERSION: Any
KSP_VERSION_MIN: NULL
KSP_VERSION_MAX: NULL
CompatibleKspVersion: True
CompatibleKspVersionMin: True
CompatibleKspVersionMax: True
CompatibleGitHubVersion: True
UpdateAvailable: False
[Text 19:45:44.8408586]: Version file contains errors: https://raw.githubusercontent.com/MachXXV/EditorExtensions/Dev/EditorExtensions/EditorExtensions.version


{
"NAME":"EditorExtensions",
"URL":"https://raw.githubusercontent.com/MachXXV/EditorExtensions/Dev/EditorExtensions/EditorExtensions.version",
"DOWNLOAD":"https://github.com/MachXXV/EditorExtensions/releases/latest",
"GITHUB":
{
"USERNAME":"MachXXV",
"REPOSITORY":"EditorExtensions",
"ALLOW_PRE_RELEASE":false
},
"VERSION":
{
"MAJOR":2,
"MINOR":0,
"PATCH":0,
"BUILD":0
},
"KSP_VERSION":
{
"MAJOR":0,
"MINOR":90,
"PATCH":0
},
"KSP_VERSION_MIN":
{
"MAJOR":0,
"MINOR":90,
"PATCH":0
}
}

Also intercepted the request from the plugin, here's the raw response it's getting for the version file:


Date: Tue, 23 Dec 2014 01:13:10 GMT
Server: Apache
Access-Control-Allow-Origin: https://render.githubusercontent.com
Content-Security-Policy: default-src 'none'
X-XSS-Protection: 1; mode=block
X-Frame-Options: deny
X-Content-Type-Options: nosniff
Strict-Transport-Security: max-age=31536000
ETag: "6cecf912f0598874bd3ebb209f51e60370713d97"
Content-Type: text/plain; charset=utf-8
Cache-Control: max-age=300
Content-Length: 650
Accept-Ranges: bytes
Via: 1.1 varnish
X-Served-By: cache-iad2137-IAD
X-Cache: MISS
X-Cache-Hits: 0
Vary: Authorization,Accept-Encoding
Expires: Tue, 23 Dec 2014 01:18:10 GMT
Source-Age: 0

{
"NAME":"EditorExtensions",
"URL":"https://raw.githubusercontent.com/MachXXV/EditorExtensions/Dev/EditorExtensions/EditorExtensions.version",
"DOWNLOAD":"https://github.com/MachXXV/EditorExtensions/releases/latest",
"GITHUB":
{
"USERNAME":"MachXXV",
"REPOSITORY":"EditorExtensions",
"ALLOW_PRE_RELEASE":false
},
"VERSION":
{
"MAJOR":2,
"MINOR":0,
"PATCH":0,
"BUILD":0
},
"KSP_VERSION":
{
"MAJOR":0,
"MINOR":90,
"PATCH":0
},
"KSP_VERSION_MIN":
{
"MAJOR":0,
"MINOR":90,
"PATCH":0
}
}
HTTP/1.1 200 OK

Edited by MachXXV
Link to comment
Share on other sites

Any chance we could have the "checking x of x" box *not* hang around in the center of the screen after the game has loaded?

My 'net was having issues today & I had a good 30s wait in the VAB for KSP-AVC to get out of my face...

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

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.

×
×
  • Create New...