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

So to clarify, this mod just goes to whatever URL you put in the config to check against said file, regardless of where that file is located at correct?

Although I agree on the issue of timed commits - i.e. either it knows about a release before I change the release from draft to final, or I have to commit the version file after the release is ready, and we're stuck in a circle of sadness.

Is it using the Github API under the hood? Meaning, is there an option to just do a comparison against the actual releases on GitHub?

You are correct in that it just goes to whatever URL you put in the config. It is completely up to the mod author how they would like to host it.

It doesn't use the GitHub API, it is much simpler than that. It's just a simple GET request... But hooking into the GitHub API and creating a new field for it is a possibility. Although in that process you'll be giving up the extra checks which a .version file allows for, such as compatibility checks with game version. Also any other specialised checks which may be added down the road (such as dependancies :P).

Link to comment
Share on other sites

You are correct in that it just goes to whatever URL you put in the config. It is completely up to the mod author how they would like to host it.

It doesn't use the GitHub API, it is much simpler than that. It's just a simple GET request... But hooking into the GitHub API and creating a new field for it is a possibility. Although in that process you'll be giving up the extra checks which a .version file allows for, such as compatibility checks with game version. Also any other specialised checks which may be added down the road (such as dependancies :P).

Fair enough, the downside being you lose the benefit of GitHub releases, or have to hack things up.

Link to comment
Share on other sites

Fair enough, the downside being you lose the benefit of GitHub releases, or have to hack things up.

Oh I'm not saying that it's not worth putting the feature in. Options are always good... Just that this option would be even more limiting than the standard version check in a .version file. Because KSP-AVC doesn't do a just a mod version check but also checks with game version if one is available. Not just for the local compatibility checks, but also with remote checks... An example would be if the player is still playing on 0.23.5 with an older version of your mod, but your latest release supports a minimum version of 0.24. The player will not get a notification to upgrade to the latest version in this case. While with the GitHub check they will get nagged every time they start the game saying there's a new version, even though it is completely incompatible with their current game installation.

Link to comment
Share on other sites

Oh I'm not saying that it's not worth putting the feature in. Options are always good... Just that this option would be even more limiting than the standard version check in a .version file. Because KSP-AVC doesn't do a just a mod version check but also checks with game version if one is available. Not just for the local compatibility checks, but also with remote checks... An example would be if the player is still playing on 0.23.5 with an older version of your mod, but your latest release supports a minimum version of 0.24. The player will not get a notification to upgrade to the latest version in this case. While with the GitHub check they will get nagged every time they start the game saying there's a new version, even though it is completely incompatible with their current game installation.

I was thinking more a combination of both - i.e. I compare my local version file and all of it's goodness not on the get request for file change, but on the version of that file tagged with the latest release. That gives you best of both worlds. An option that allows the workflow of:

- Release version 1, tagged as 1.0.0

- KSP-AVC picks up the version with the tag of the last release - 1.0.0

- Draft new release (1.0.1)

- Include new version file in draft

- KSP-AVC does not pick up new release, because it looks at the version of the version file tagged with the last release - still 1.0.0

- Publish release as Pre-Release

- KSP-AVC still does not pick up new release, as it is not tagged as Latest Release in github

- Save pre-release as a real release (1.0.1)

- KSP-AVC now sees the new version file, and does all of it's goodness.

That would have me sold in a second. It handles a nice workflow with no muss no fuss, lets me draft releases and do pre-releases without confusing my users, and does not depend on any third party servers - just Github - so it's simple and easy to explain to my users.

Link to comment
Share on other sites

I was thinking more a combination of both - i.e. I compare my local version file and all of it's goodness not on the get request for file change, but on the version of that file tagged with the latest release. That gives you best of both worlds. An option that allows the workflow of:

- Release version 1, tagged as 1.0.0

- KSP-AVC picks up the version with the tag of the last release - 1.0.0

- Draft new release (1.0.1)

- Include new version file in draft

- KSP-AVC does not pick up new release, because it looks at the version of the version file tagged with the last release - still 1.0.0

- Publish release as Pre-Release

- KSP-AVC still does not pick up new release, as it is not tagged as Latest Release in github

- Save pre-release as a real release (1.0.1)

- KSP-AVC now sees the new version file, and does all of it's goodness.

That would have me sold in a second. It handles a nice workflow with no muss no fuss, lets me draft releases and do pre-releases without confusing my users, and does not depend on any third party servers - just Github - so it's simple and easy to explain to my users.

Ahh, I completely get you now... It wont be a replacement, but as an extra check for getting around them pesky commit timing problems that the process currently has. The easiest way would be to just check that the latest GitHub release version is equal to the one in the .version file. This will then mean that the .version file can be committed whenever you want, but until the GitHub release version also matches, it will not be used.

Link to comment
Share on other sites

Ahh, I completely get you now... It wont be a replacement, but as an extra check for getting around them pesky commit timing problems that the process currently has. The easiest way would be to just check that the latest GitHub release version is equal to the one in the .version file. This will then mean that the .version file can be committed whenever you want, but until the GitHub release version also matches, it will not be used.

Make that happen and I will happily test it for you and sing your praises from the mountaintops :)

(FYI this thread got buried - so toss me a PM if you wish to have a tester)

Link to comment
Share on other sites

The MiniAVC does not seem to be working as expected for me. I get the impression that it is still checking for updates even though I told it not to. Is it because I had the full version installed and removed it to test?


Executing: MiniAVC - 1.0.1.0
Assembly: K:\Games\KSP_win-test\GameData\ThunderAerospace\TacLifeSupport\MiniAVC.dll

[Log 19:15:01.2140679]: Starter was created.
[Log 19:15:01.8741056]: FirstRunGui was created.
[Log 19:15:06.0063420]: Remote checking has been disabled for: TAC Life Support
[Log 19:15:06.0173426]: FirstRunGui was destroyed.
[Log 19:15:06.3473615]: K:\Games\KSP_win-test\GameData\ThunderAerospace\TacLifeSupport\TacLifeSupport.version
NAME: TAC Life Support
URL: [url]http://ksp-avc.cybutek.net/version.php?id=9[/url]
DOWNLOAD: NULL
VERSION: 0.9.0.1046
KSP_VERSION: 0.24.2
KSP_VERSION_MIN: NULL
KSP_VERSION_MAX: NULL
CompatibleKspVersion: True
CompatibleKspVersionMin: True
CompatibleKspVersionMax: True
[Log 19:15:06.3473615]: [url]http://ksp-avc.cybutek.net/version.php?id=9[/url]
NAME: TAC Life Support
URL: [url]http://ksp-avc.cybutek.net/version.php?id=9[/url]
DOWNLOAD: [url]https://github.com/taraniselsu/TacLifeSupport/wiki/Download[/url]
VERSION: 0.9.0.9910
KSP_VERSION: 0.24.2
KSP_VERSION_MIN: NULL
KSP_VERSION_MAX: NULL
CompatibleKspVersion: True
CompatibleKspVersionMin: True
CompatibleKspVersionMax: True

[Log 19:15:06.3553619]: IssueGui was created.
[Log 19:15:06.3563620]: ToolTipGui was created.
[Log 19:15:08.4084794]: IssueGui was destroyed.
[Log 19:15:08.4494817]: Starter was destroyed.
[Log 19:15:30.1297218]: ToolTipGui was destroyed.

Complete log file if you want it.

Edited by TaranisElsu
Link to comment
Share on other sites

The MiniAVC does not seem to be working as expected for me. I get the impression that it is still checking for updates even though I told it not to. Is it because I had the full version installed and removed it to test?

Looks like a simple check was missed out. Good spot!

Link to comment
Share on other sites

Ok... That bug is now fixed in MiniAVC 1.0.1.1. Give it a whirl and if there's any more problems, you know where to shout :D

Any word on the Github integration we were bantering back and forth above? I'm prepping for a bunch of releases and would love to add this in.

Link to comment
Share on other sites

Any word on the Github integration we were bantering back and forth above? I'm prepping for a bunch of releases and would love to add this in.

I did take a look into the GitHub API, but my focus for the last few days has been with Kerbal Engineer. The cycle will alternate back to KSP-AVC very soon (the next start of Visual Studio) :)

Link to comment
Share on other sites

Version 1.1.3 is now available!

Added: GitHub latest release checking.

Added: Version file reading is now case insensitive.

Fixed: Bug in version equality checking. (Now using a custom VersionInfo object).

KSP-AVC now supports GitHub release checking. By having the remote version file contain GitHub information, the version checker can do a release check to see if the latest release is the same version as the version file. If there is a release to check with, and it's not the same version as it states in the version file, no update notice will be displayed to players. The check is done against the tag given to releases and does a regex removal of all characters other than numbers and points, so please bare in mind that "v1.0.0" and "v1.0.0-alpha" will both come back as "1.0.0", and "v1.0.0-alpha1" will be "1.0.1". Also if no download location is actually specified in the version file but an update is available and there is a GitHub release associated with it, the download location will link to the page for the player to download that release.

MiniAVC has also been updated to 1.0.2.0 with the same functionality.

Edited by cybutek
Link to comment
Share on other sites

Version 1.1.3 is now available!

Added: GitHub latest release checking.

Added: Version file reading is now case insensitive.

Fixed: Bug in version equality checking. (Now using a custom VersionInfo object).

KSP-AVC now supports GitHub release checking. By having the remote version file contain GitHub information, the version checker can do a release check to see if the latest release is the same version as the version file. If there is a release to check with, and it's not the same version as it states in the version file, no update notice will be displayed to players. The check is done against the tag given to releases and does a regex removal of all characters other than numbers and points, so please bare in mind that "v1.0.0" and "v1.0.0-alpha" will both come back as "1.0.0", and "v1.0.0-alpha1" will be "1.0.1". Also if no download location is actually specified in the version file but an update is available and there is a GitHub release associated with it, the download location will link to the page for the player to download that release.

MiniAVC has also been updated to 1.0.2.0 with the same functionality.

Excellent! I'm up to my armpits with pre-releases so this is a perfect time to add this

Link to comment
Share on other sites

I can't boot the game any more. Reverting to KSP-AVC 1.1.2 fixed it. Here's the end of my log: http://pastebin.com/5Hz5q0P4
I am having the exact problem. The game crashed for unrelated reasons. restarting I had the notice to update AVC to 1.1.3. I hit the download button, installed AVC and restarted KSP. At the point where the Version check usually runs, the loading hangs requiring an end-task. I let it set for about 10 minutes once. Normaly the full load cycle takes about 1.5 minutes. I removed the AVC folder from GameData and the game started normally, including firing off a miniAVC notice for one of the plugins. Dropped AVC1.1.3 back in, no joy. Deleted AVC folder, again a good loading. Nothing conclusive in the Output_log.

AVC 1.1.1 and 1.1.2 work fine.

EDIT - KSP 32 bit. v0.24.2.559 and about a million and 3 mods. heh.

Wolfschadowe

Edited by Wolfschadowe
Link to comment
Share on other sites

I'm trying to sort out a fix now... It's quite an odd thing because it's not actually giving any errors, just soft locking.

*facepalm* like serious *FACEPALM*. Accidentally left in some experimenting code.

Edited by cybutek
Link to comment
Share on other sites

I'm trying to sort out a fix now... It's quite an odd thing because it's not actually giving any errors, just soft locking.

*facepalm* like serious *FACEPALM*. Accidentally left in some experimenting code.

Lol. It happens.

Link to comment
Share on other sites

Version 1.1.3.1 is now available!

Fixed: Game breaking bug.

And that's no exaduration considering the bit of code that was accidentally left in basically unloaded every single plugin and assembly from the game on startup. As I was seeing the feasibility of a one button update/install and if it would be possible without having to restart. All fixed now, and MiniAVC wasn't affected.

Sorry :blush:

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