The mod is now posted in releases: https://ludeon.com/forums/index.php?topic=41634.msg410175#msg410175
It's time to make a decentralized mod synchronization tool
That's the goal of ModSyncRW. It's the spiritual successor of ModSync.ninja
Goal:
My first goal is to have support for Github for hosted mods.
In game a mod author will, from their mod's page where they'd upload the mod to steam, have a button (just like modsync.ninja) Create ModSyncRW file (only shown if one has not already been created.
The window would then have:
Note: Everything under host selection would be dynamic for the host selected
A file would then be created in the mod's About folder:
ModSyncRW.xml
(i wish this game used json, XML is sooo 90's )
The only thing remaining is figuring out how to keep track of the last time the end user has updated the mod. I don't think the local file system is the best route. My current thought is it would be the end-users job to select the mod/s they've update and select [Is Up To Date] at which point their version of ModSyncRW.xml would get a new field entered last update time. That can then be used to compare to the host's last update time.
The end-user would have a screen very similar to ModSync.ninja's where they can see all their non-steam mods and which ones possibly need to be updated.
As for adding support for new hosts, my hope is to have a simple Interface with just a few methods to implement with hopes that as other devs want to host their stuff elsewhere it can be supported.
Please feel free to comment on this idea and share any ideas you may have.
Thanks!
It's time to make a decentralized mod synchronization tool
That's the goal of ModSyncRW. It's the spiritual successor of ModSync.ninja
Goal:
- Create a decentralized way to manage mods
- Support multiple different repositories / download sites
- Open Source - this will be hosted on Github for people to add support to other repo/file hosts... Repo: https://github.com/KiameV/rimworld-modsync-rw
My first goal is to have support for Github for hosted mods.
In game a mod author will, from their mod's page where they'd upload the mod to steam, have a button (just like modsync.ninja) Create ModSyncRW file (only shown if one has not already been created.
The window would then have:
- Where the mod is hosted (initially just Github)
- The owner's name
- The project's name
- Where to download new updates from (Clone or Releases)
- Branch (initially filled in as master)
Note: Everything under host selection would be dynamic for the host selected
A file would then be created in the mod's About folder:
ModSyncRW.xml
Code Select
<?xml version="1.0" encoding="utf-8"?>
<ModSyncRW>
<host name="github">
<owner>KiameV</owner>
<project>rimworld-changedresser</project>'
<last-update></last-update>
<download-from>Releases</download-from>
<branch>master</branch>
</host>
</ModSyncRW>
(i wish this game used json, XML is sooo 90's )
The only thing remaining is figuring out how to keep track of the last time the end user has updated the mod. I don't think the local file system is the best route. My current thought is it would be the end-users job to select the mod/s they've update and select [Is Up To Date] at which point their version of ModSyncRW.xml would get a new field entered last update time. That can then be used to compare to the host's last update time.
The end-user would have a screen very similar to ModSync.ninja's where they can see all their non-steam mods and which ones possibly need to be updated.
As for adding support for new hosts, my hope is to have a simple Interface with just a few methods to implement with hopes that as other devs want to host their stuff elsewhere it can be supported.
Please feel free to comment on this idea and share any ideas you may have.
Thanks!