[B18][Mod Updater] ModSync Ninja

Started by historic_os, July 16, 2017, 06:34:45 AM

Previous topic - Next topic

dburgdorf

Just figured I'd give this thread a bump to make it visible again, in the hope that a few more modders and players will notice it and start using ModSync. ;)
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

Kiame

I do plan to ask more mod authors about using this. We're getting ready to update this with easier mod updates and cleaning up the website.

Stay tuned  :)

historic_os

Sorry we've been on the silent side, truth is we are almost ready with a huge update and working hard on getting it out asap.

It includes faster and easier mod update for modders from the game client. We all update our mods on steam, having a modsync update next to the steam update button only makes sense. you'll be able to simply push an update to modsync before pressing the steam update button and it will update the modsync.xml file for you.
Having updates from the client instead of the website also gives us some more power we are making use of. We now read the mod folder to auto detect the game version of the mod update, supported languages of the mod and more.
This change makes life easier for modders who wish to use modsync ninja and also gives much more information to the player.

Theres a new website coming with this update to take advantage of the coming changes (the ingame client will be updated too to show all these changes but at the next version, its already a huge update and we dont want to delay it for too long) - mod page teaser(still WIP). Almost everything in the mod page is automated just by parsing the mod folder  so the updating process stays simple.

Modders who have uploaded mods will become trusted after uploading a mod they own which will allow them to skip the annoying forum verification when adding mods and also let them change mod info(such as forum post link).

We've received many requests to open source the client and we are doing that too with an extra public API library which means you'll be able to have your script in whatever language you want to automatically push updates to the server whenever you want(for example on commit).
Since you'll have full control on that API request you can automatically update your modsync file and push an update, store your passwords locally and more. It also compiles at .NET 3.5 profile and runs completely fine in Unity so you can even have it embedded in your local rimworld client.

kaptain_kavern


dburgdorf

Wow. It's almost like you guys want this thing to seem... professional, or something.

Great job! :D
- Rainbeau Flambe (aka Darryl Burgdorf) -
Old. Short. Grumpy. Bearded. "Yeah, I'm a dorf."



Buy me a Dr Pepper?

frenchiveruti

Then I'll keep spamming mod devs to include it!
Sorry mod devs!

Nightinggale

There is one thing I can't figure out from this announcement and that is how it will affect existing mods, which are already linked to GitHub. There is a changelog (awesome), but do I need to do anything to fill it out or will it just copy the one from GitHub?

What about languages? I assume this mean we need to use the push button ingame instead of relying on GitHub. What about mods with no language files? A DLL is fully able to contain strings. Should it go into "English only" or "no onscreen text, supports everything"?

Apart from those minor details, it look great. I'm really looking forward to see how it will be once it's released and more and more mods will use it.

Quote from: frenchiveruti on December 13, 2017, 10:52:03 PM
Then I'll keep spamming mod devs to include it!
Sorry mod devs!
We can do this the easy way or the hard way. One option is to add a warning for each mod not supporting ModSync. That will make lots of players report warning popups and there is only one way for mod creators to remove them  ::)

However I wouldn't follow that path. It would only upset some mod creators and you will risk that your colonists will wake up ingame with a horse head in the bed and that will really be a mood killer.
ModCheck - boost your patch loading times and include patchmods in your main mod.

kaptain_kavern

Mods that only contains xml patches do not have language data, as well

historic_os

We didn't forget about GitHub mods!
the server will allow you to push an update to the same version from the client. such update will only update the mod metadata(image, about file data, languages etc). so you can basically just use this client update once to populate that data and ignore it until you need to modify that (all the new fields such as Patch Notes are nice, but not required)

this is not how its going to be, its not the end solution. since this is a huge update we just split it to phases. the API library is aimed at GitHub mods, using the library you can build a script to run when you push changes\publish a release to update your mod on ModSync.
having this library public and open source means everyone can build on it. we are planning on building these scripts ourselves but if anyone can beat us to it, that would be nice :P

Kiame

#114
[Preview]

Update Dialog from within the game: (there's a button on the "Mods" page)



"New Version" is auto-populated with the version in the mod's local ModSync.xml file
Quick Copy buttons:

  • Left: Based off the mod's ModSync.xml version. It'll do its best to guess the next increment.
  • Right: Read from the mod's dll. If no dll this button will not show up (shared dlls like 0Harmony.dll are ignored)

Security Key: The password used when the mod was posted to ModSync

Patch notes are (hopefully) self explanatory and, as noted, completely optional.

The "Confirm" button will be enabled once a "New Version" and "Security Key" are entered.

Kiame

#115
The ModSync.ninja RimWorld Client is now up on github.

Translators are welcome and much appreciated!

https://github.com/KiameV/rimworld-modsyncninja-client

-The Languages folder is under ModFolderContents

frenchiveruti

Quote from: Kiame on December 14, 2017, 12:38:16 AM
The ModSync.ninja RimWorld Client is now up on github.

Translators are welcome and much appreciated!

https://github.com/KiameV/rimworld-modsyncninja-client

-The Languages folder is under ModFolderContents
I added Spanish translation as a PR!

kaptain_kavern

Ha great you have made us waiting long! You rocks.

I'll do the French translation o7

historic_os

quick note, this client code is updated for the new version however the new changes to the server including the API are not live. while you can build this version and run it, the new update feature is still offline and will output an error

Canute

Quote from: Nightinggale on December 13, 2017, 11:15:51 PM
Quote from: frenchiveruti on December 13, 2017, 10:52:03 PM
Then I'll keep spamming mod devs to include it!
Sorry mod devs!
We can do this the easy way or the hard way. One option is to add a warning for each mod not supporting ModSync. That will make lots of players report warning popups and there is only one way for mod creators to remove them  ::)

However I wouldn't follow that path. It would only upset some mod creators and you will risk that your colonists will wake up ingame with a horse head in the bed and that will really be a mood killer.
Better don't spam any modder, or force him to use modsync.
Until there is an offical dev support, there is no need to do this. Maybe they notice this is maybe the better way, special after a Version update.

Yes i want to that many use modsync, but don't annoy or anger modder.
They should find their way at their own.