Mods / Rustique: Vintage Story Mod Manager - Linux

Tags:
Utility QoL
Authors:
theysa, violet_revenant
Side:
Both
Created:
May 2nd 2025 at 12:01 AM
Last modified:
Apr 27th at 9:05 PM
Downloads:
1888
Follow Unfollow 88
For testers:
rustique-linux-v0.5.16.zip

Rustique

The complete Mod Manager for Vintage Story!

For Linux, Windows & Mac (On Github!)

Written in Rust; fitting, right?

 

Support me with Ko-fi

Hiya! 

 

I've created a new mod manager for Vintage Story as I felt there was a need for a fast AF solution that handles dependencies.

 

Platforms:

 

THIS VERSION IS FOR LINUX

 

Windows Version: Windows

 

 

MAC builds on GITHUB!

I'm prob not going to make a new mod page for the mac builds, but they will always be updated at the same time as the linux build.

https://github.com/Tekunogosu/Rustique/releases

 

Mac Installations (Thank you EKDE for the instructions)

 

  1. To compile Rustique on the Mac, install Rust and Git.
  2. Clone the repo: `git clone https://github.com/Tekunogosu/Rustique.git`.
  3. cd into its folder then do `cargo build --release`.
  4. The executable will be placed in a subfolder and ready to use. Works great on my Mini M1 as of 0.3.0.



!!Caution!!: This is Alpha software. Back up your mods just in case and expect things to blow up on occasion. Expect extra verbosity and annoying messages. :3

 

~DISCORD~

I created a discord to make it easier to get in touch with me about bugs or suggestions you might have. This will also be the best place to get dev builds if you want to do some testing. These builds will be the ones between the versions released here on the mod site.

 

https://discord.gg/mXXVTgQgzs

How to use? (Linux + Mac)

 

  1. Download the executable and place it wherever you want. This is a binary, NOT a mod. It will work regardless of where it's located. Feel free to rename it too so its easier to type if you want.
  2.  Ensure it's executable
    • $ chmod +x rustique 
  3. Now you're free to use it!
    • $ ./rustique help

 

 

NOTE: Check out the help command to see a full list of what Rustique can do. Below I show the long form of the flags, but there are shorter versions of each one as well.

Basic update routine

 

  • $ ./rustique sync    (compile a local JSON data structure of installed mods and synchronize with the VS Mods server to check currently available versions)
  • $ ./rustique list --updates    OR     ./rustique list    (the `--updates` flag shows only installed mods that are known to have updates available)
  • $ ./rustique update --all    (update everything, including dependencies)

 

It's as easy as that! I know it seems like a lot, 3 commands and all.. But the point of Rustique is to give you full controll and flexibility when managing your mods. This means you pick how and when you update your mods.

 

Installing missing dependencies

 

Tired of having to seek out all the dependencies for the cool new mod you just found? Rustique can handle that as well!

 

  • $ ./rustique sync     (You need to sync first so Rustique knows whats already on the system.)
  • $ ./rustique install --missing-dependencies

 

And that's it! This command will recursively download all missing dependencies for all currently installed mods and the dependencies for those. It's nice and fast!

 

Install a new mod with Rustique

 

Rustique has the ability to install new mods for you, provided you know the mod ID. This can be obtained from the URL bar on the mod page on the website.

NOTE: Not all mods show their mod ID in the url bar!

 

Example:

https://mods.vintagestory.at/alchemy  -- alchemy is the mod ID for this mod. As you can see, the ID appears in the URL bar. That ID can then be used with Rustique to install it and any dependencies it might have.

 

Example of a mod without a mod ID:

https://mods.vintagestory.at/show/mod/23518   -  This mod shows a number, but that number is actually something called an "ASSET ID": this will not work to download the mod! You can find the mod id by using the search command in rustique to get the numerical ID that does work.

  • $ ./rustique search -q 'some cool mod that you know of the name of here'

 

The numerical mod id will show on the left side, which you can then use like so:

  • $ ./rustique install 7812

 

Or use the name that you got from the url bar (as shown above)

  • $ ./rustique install alchemy

 

It's that easy! Any dependencies will automatically be downloaded as well.

If you don't want to deal with the CLI for download, feel free to manually install mod. Rustique will be able to find and manage that without any issues. Just sync and update.

What about non-default mod locations?

 

With version v0.2.0 you can set the default mod directory through Rustique itself.

 

The following will set the default, so you dont have to type it everytime

  • $ ./rustique config set -m /path/to/your/mods
  • $ ./rustique list

 

You can still use ./Rustique -m /path/to/mods  to run rustique on any dir you want, as -m takes priority.

 

There are other features to modify and you can check them out with ./Rustique help config   (Not all functionality is implemented just yet)

Misc Features

 

Shell completion

 

Rustique can output shell completion files for bash, zsh, and fish. It prints to standard output, so you will need to redirect it to wherever your shell needs to implement the autocomplete.

Example for zsh:

  • $ ./rustique misc --gen-auto-complete zsh >> ~/.zsh/completion/_rustique

 

1-click-install

 

Ever wished you could click the 1-click-install button on the moddb and install the mod? Well rustique can do that too! 

This command will create and install the file rustique.desktop into ~/.local/share/applications/rustique.desktop so when you click the 1-cilck-install, it sends the command to rustique to do the installation. 

  • $ ./rustique misc --one-click-setup

Missing Features

 

There are several features that are still being worked on. This is an Alpha version, but it's stable and what is there works very well. If you do find any bugs or confusing behavior, please report them on the github page. You can leave a message here too, but I will see them faster on github.

 

  • GUI
    • There is a GUI planned. I will not be working on that until the cli version is feature complete. But it will happen.

 

  • Localization
    • Localization is planned. This will prob take a while to get implemented and I will need volunteers as I only speak english.

 

Known Issues

 

See Github for all currently open issues. https://github.com/Tekunogosu/Rustique/issues

 

Special thanks

 

  • MothHelix : For breaking things and doing extra testing!
  • EDKE : For reporting bugs on github! and for the mac testing!

Mod Version Downloads Released Changelog Download
0.5.16 141 Apr 27th at 9:05 PM rustique-linux-v0.5.16.zip

v0.5.16 - Linux + Windows

 

* Fix for #63 - Added new alias to the struct that is used to deserialize the modinfo.json file.

0.5.15 39 Apr 23rd at 11:56 PM rustique-linux-v0.5.15.zip

v0.5.15 - Linux + Windows

 

  • Fixed bug introduced in 0.5.14; after a dependency update the feature flag to enable tls was changed but not updated on rustiques end.

 

Due to the nature of this bug, you will need to manually download the latest version if you are on v0.5.14, if you are still on v0.5.13, the self update should work fine

0.5.14 10 Apr 23rd at 10:31 PM rustique-linux-v0.5.14.zip

v0.5.14 - Linux + Windows

 

  • Fixed regression bug that caused rustique to hang when using certain commands that called the config file.
  • Fixed issue #61. Some mod were showing the incorrect URL with the list command.
  • Fixed an issue where the columns for the list command would not show the correct order given by the config file
0.5.13 26 Apr 22nd at 10:22 PM rustique-linux-v0.5.13.zip

v0.5.13 - Linux

 

  • Fixed issue where rustique was not displaying debug info when -d was passed. Thanks @BinToss .
  • Fixed issue where all color codes being displayed through rustique were being escaped and not coloring as intended.
  • Fixed an issue where if you moved the mods folder and updated rustique config, sync would not save as it was looking for the old location.
0.5.12 46 Apr 5th at 8:13 PM rustique-linux-v0.5.12.zip

Fixed issue with null values in tags pulled from the ModDB

 

  • Some mods had null values in their tag field (pull from the ModDB) which caused rustique to throw errors. This also prevented the info command from working on those mods.

 

Thanks to @BinToss for submitting the PR to fix this issue.

0.5.11 149 Feb 1st at 5:07 PM rustique-linux-v0.5.11.zip

Local Modpack Installation

You can now install local modpacks without them being uploaded to the mod site. This allows you to share your private modpacks!

  • Put your modpack.zip (replace with whatever your modpack filename) into .config/rustique/modpacks/mypacks -- or whatever your path is for rustiques config
  • run rustique modpack install modpack_id -- replace modpack_id with your modpacks id
  • Profit

 

Thanks @BouncyLlama for the PR on this!

Known Issues.

The self update may not work as the rustique executable is now named 'rustique' instead of 'Rustique'. This happened after moving over to Rust workspaces to reorganize the code and will be fixed in the future. 

Once you update to v0.5.11, the self updater will work without issue going forward, sorry for the inconvenience. :3

The MacOS releases have been disabled for now as there are some issues with github actions.

I don't have a mac to troubleshoot the errors I'm seeing. If someone who actually uses the mac version wants to investigate, that would be greatly appreciated!

0.5.10 322 Jul 21st 2025 at 9:17 PM rustique-linux-0.5.10.zip

Version 0.5.10-alpha

 

  • Rustique now notifies you to run the sync command after pinning a mod version.
  • Fixed a bug with the modpack sync command not checking the correct directory for modpacks.
  • Fixed regression bug with modpack update. Modpack update should now work properly.
0.5.9 92 Jun 25th 2025 at 8:46 PM rustique-linux-0.5.9.zip

Version 0.5.9-alpha

  • Added requested [-p, --pinned] to the list command to show only pinned mods. Thanks propaneko for the suggestion!
0.5.8 42 Jun 24th 2025 at 5:12 PM rustique-linux-0.5.8.zip

Version 0.5.8-alpha

  • Fixed bug with pinning game versions where it expected a 'v' but the modDB updated their game versions to not include the prepended 'v'. 
0.5.7 38 Jun 23rd 2025 at 6:28 PM rustique-linux-0.5.7.zip

Version 0.5.7-alpha

  • Fixed bug where rustique was replacing spaces in the mod directory with underscores, "_", which caused downloads to fail as the path didn't exist.
0.5.6 46 Jun 20th 2025 at 8:09 AM rustique-linux-0.5.6.zip

 

This update is really only for unix, but github actions builds it for everything anyway.

Version 0.5.6-alpha

  • Unix only Rustique can now be used with the 1-click-install from the mod-db. Thanks @coolcoder613eb!
  • Use Rustique misc -o to install the needed files for the 1-click-install to work.
0.5.5 72 Jun 5th 2025 at 7:59 PM rustique-linux-0.5.5.zip

This version brings some changes to the windows default mod location. Previously I was going off data I got off the wiki, which was outdated on whatever page I looked at, that mentioned %appdata%/Vintagestory/Mods was the default. I discovered that the preferred default location is the same as the Unix versions, VintagestoryData/Mods.

For Windows users. The first time you run Rustique after this update you will be prompted to update your default mod location IF its still set to the old location. Don't worry, rustique will take care of everything and make it nice and simple. IF you have modpacks enabled, make sure you run Rustique with admin rights so it can manage the modpacks.

This update also brings some new flags to list so you can export as csv now and change which columns show on the fly.

Version 0.5.5-alpha

  • WINDOWS ONLY: Changed the default path for Windows to %appdata%/VintagestoryData/Mods. Originally it was %appdata%/Vintagestory/Mods, which is technically works, but the preferred location is VintagestoryData. I was looking at an old wiki page when getting this information initially.
  • WINDOWS ONLY: Because of the change to the default mod path for windows, Rustique will now ask if you want to move the mods when you first run Rustique. This will not affect your game in any way, just where the mods get loaded from.
  • Added new flags to list, --columns: Lets you show only specific columns, --export: Change the output format, currently only for csv, --file-path: save the output to a file instead of printing to stdout.
0.5.4 53 Jun 2nd 2025 at 12:44 AM rustique-linux-0.5.4.zip

 

This release is thanks to Spawn from the discord for figuring out we need a good way to install modpack dependencies!

Version 0.5.4-alpha

  • Added progress bars for mod api fetches and downloading of mod files. Will possible add more in other sections at a later time.
  • Added new flag; Rustique modpack install --missing-dependencies mpkid. This helps download mods for a modpack that you install manually.
0.5.3 54 May 31st 2025 at 5:12 PM rustique-linux-0.5.3.zip
If you have version 0.5.2, you can update with `Rustique self --update`.
 

Version 0.5.3-alpha

  • Fixed regression bug where sync would not lowercase the modid after making the API calls for the mods. This caused the sync file to create a new entry that didn't have the required information to update these types of mods.
0.5.2 39 May 31st 2025 at 5:59 AM rustique-linux-0.5.2.zip

 

This is a needed update to fix self updating.

Version 0.5.2-alpha

  • Fixed invalid type error with api call when checking for update for rustique.
0.5.0 34 May 31st 2025 at 12:34 AM rustique-linux-0.5.0.zip

 

Yes, another HUGE update. This one bringing an updater!! Going forward the app will check if there is a new update by checking the github releases. By default it will check everytime you run the command, but you can disable that check in the config.

NOTE: Existing Rustique users will need to ENABLE checking for updates with Rustique config set --check-for-updates true. This is because if the value is missing from the config "which it is for existing users", it gets set to false. New users will have this set to true by default.

Version 0.5.0-alpha - Self Updating.. Update!

  • Rustique now has a self update!! Rustique will update in place. Check out Rustique help self to see the commands. (You can check for updates and perform an update)
  • Fixed list --updates showing all mods instead of only ones that need updates. This fixes issue #12.
  • list now runs sync automatically if the sync file is missing from an installed modpack. This raised an error before.
  • Added --with-mpk to the base Rustique flags as a shortcut to handling modpack mods. You'll be able to use the base commands, list,update,install, on the packpack mods dir. Rustique -w tmmv update -a -- this will update all the individual mods in the tmmv modpack.
  • You can use mod-id@version with install and delete commands to install or delete that version
  • Mod backups have been implemented! It's disabled by default, you can turn it on with Rustique config set --backup-mods true. You can also choose where they are stored with Rustique config set --backup-mods-dir /path/to/dir
  • You can now delete mods! Checkout Rustique help delete
  • Modpack delete has been implemented as well. See Rustique modpack help delete
0.4.3 52 May 27th 2025 at 4:48 PM rustique-linux-0.4.3.zip

This release fixes regression bugs with API calls. Sorry for back-to-back releases :3

0.4.1 43 May 27th 2025 at 4:29 AM rustique-linux-v0.4.1.zip

Do update to this version as it fixes a critical bug with the sync command & there were changes the mod api that could cause some issues.

Version 0.4.1-alpha

  • Fully switched to the tokio-async library, swapped from synchronous zip lib to async-zip. This shows a slight increase in performance when using Rustique on a lot of mods at once.
  • modpack create now sets your own mods up in a way that will let you enable/disable them.
  • Added modpack local list to view your locally created modpacks. Enable/disable work like normal.
  • A flag for modpack create --ignore-modpacks was added to let you choose to ignore enabled modpacks. Its set to false by default so you can create new modpacks out of existing ones.
  • A flag for modpack create --copy-mods was added for choosing to copy the mods made by the command instead of moving them. By default when you create a modpack, the mods are moved into the ~/.config/rustique/modpacks/installed/yourpack folder. If you set --copy-mods, the orignal mods will stay in place and a copy will be created into the installed dir.
  • All integer api_arg values are now i64 instead of u32. The api changed how game versions are handled and now show a large negative i64 value.
  • Fixed bug with the sync command where if a malformed mod-id is found, sync would prematurely exit... Thought this was fixed, but maybe I unfixed it??
0.4.0 52 May 26th 2025 at 4:26 AM rustique-linux-x86_64.zip

Finally!!! Modpacks took a lot of work to implement, but its here!. There are still more things to test, so please report any bugs you run into.

Check out the wiki for more details on how to use modpacks: [Rustique Wiki](https://github.com/Tekunogosu/Rustique/wiki)


# Version 0.4.0-alpha

 

  • Implemented modpack functions! Create, Install, Enable/Disable, List, Info
  • The modpack functionality has a lot to it. See the wiki for usage examples
  • There are now builds for Intel and Arm based Macs! I used Github Actions, so it *should* work. Its untested though..
  • Various bug fixes and tweaks
0.3.1 75 May 17th 2025 at 9:19 PM Rustique-0.3.1-alpha.zip

This version had a bit more packed into it than I originally intended, sorta got carried away :3

This version fully implements version pinning AND the info command. At some point I will have a wiki created to show how to use Rustique as its starting to get more and more complex.

Version 0.3.1-alpha

 

  • Version pinning is live! You can now pin a specific mod version and/or a specific game version. There are some situations where you get weird results by setting both or mods not having an game version that matches at all. Please report any situations where you encounter errors.
  • You can now enable the following columns for the list display table; Pinned Version, Game Version.
  • To pin a specific version of a mod use `Rustique config set -w mod-id -P 1.2.3`
  • To pin a specific game version use `Rustique config set -p 1.20.8`
  • The "Latest Version" in list command will now show (pinned) if a version has been pinned.
  • Columns with numbers displayed should now be right aligned.
  • The Info command is now live. See `Rustique help info ` to see how it use it.
0.3.0 52 May 14th 2025 at 5:59 AM Rustique-0.3.0-alpha.zip

Version 0.3.0-alpha

  • Implemented search! Checkout Rustique help search on how to use it
  • You can now change what information to display with search via the config file!
  • You can modify the display table for the list and search command via Rustique! Checkout ./Rustique config help table. A wiki page will be going up for this as there is a lot to it.
  • If the config.toml file is malformed, the malformed config is backed up and a new config will be created with a nice message.

 

This was another large update. Implementing the search command and handling the table styling from the config file took a lot of work and I'm pretty happy with how it turned out.

The following commands are now live
./Rustique search
./Rustique config table [set,list,reset,del]

Search is pretty straight forward and there may be some bugs, so please let me know if you find any.

The table config is a bit complex, so I will be making a wiki page to document how to use it here shortly.

 

The help text should be available for all the new commands, but I likely missed a few or its poorly worded, there was a lot going on for 0.3.0 :3

0.2.5 59 May 10th 2025 at 5:13 PM Rustique-0.2.5-alpha.zip

Version 0.2.5-alpha

 

  • Fixed display issue where dependencies were being duplicated when viewing `list`
  • Fixed issue where the config folder for rustique was being created in the wrong place on linux.

Version 0.2.4-alpha

 

  • You can now reset config values with `Rustique config del [OPT]`, see `Rustique config help del`
  • You can now list all config values with `Rustique config list`
0.2.3 49 May 8th 2025 at 9:00 PM Rustique-v0.2.3-alpha.zip

Another release! I'm really trying to avoid posting too many updates, but there was enough changed and bug fixes that you all should have. The big feature added for this version is shell auto-completion. Check out Rustique help misc.

 

As always, report any errors you find to github or let me know in the comments, I prefer github though

Version 0.2.3-alpha

 

  • Fixed invalid missing dependencies column when you use  list -u

Version 0.2.2-alpha

 

  • Fixed version parsing error for versions that show up as NULL from the api. This was just a display issue, didn't actually affect the usage of Rustique

Version 0.2.1-alpha

 

  • Using -v now shows the correct mod directory that Rustique is looking at
  • Added compiler flags to make the Rustique binary smaller and reduced features from used libraries. (saves a few MBs from the executable)
  • Added misc command for generating auto complete for the shells zsh,bash,fish,powershell. `./Rustique help misc`

 

0.2.0 61 May 8th 2025 at 12:55 AM Rustique-0.2.0-alpha.zip

Finally!! This was a huge update and pretty much non-stop work since the last release. I switched to using async for the api calls which dramatically improved performance for downloading. But the biggest thing is that the config file is live!! Not all of it is working, see the description or Rustique help to learn more.

 

Please report any errors you find.

Version 0.2.0-alpha

 

  • Fixed blank api messages
  • Config file is now live! You can easily set the default mod directory so you don't have to use -m for each use if different than default.
  • To manage the config file you use Rustique directly. Checkout `Rustique help config` for all options. Note that not everything is implemented yet.
  • Reorganized code base a bit, this doesn't affect anything user side, but it's a win for me. :3
  • Added logging lib and implemented --verbose and --debug. --verbose will show some extra messages if you notice some problems. --debug you should only use if told to do so, its extremely noisy and floods the terminal.
  • The description from the mod files is now sanitized to strip any newline or tab characters as it messes with the `list` table formatting. If you find any other mods that don't show up correctly, please report it.
  • Fixed some versioning bugs when using sync and update that would cause some mods to not be updated.
  • Added an operation time footer for `list`, `update`, `sync`, and `install`. This can be turned off in the configs.
  • List shows total mods installed at the bottom. For now, this only shows the valid mods that Rustique can actually manage. Any non-zip mods or ones that list can't read, will not be counted.
  • The list table style is slightly more compact now and the dependencies lists (mostly) doesn't wrap in the middle of a long mod_id.
  • Information text has a border now to make it easier to read.
  • Rustique no longer deletes mods that are malformed during the update command, it reports the problem but leaves it alone.
  • Full rework of mod installation and dependency resolution. Update & Install are dramatically faster. My test of 200+ out of date mods can do the update in about 5s, this is on a really good PC though too.
  • Reworked how the modinfo.json data is extracted, should make sync a bit faster. This is notible on slower pc's
  • Rustique can now attempt to find the modid from various methods to manage your mods. Users will be notified if Rustique cannot determine the mod_id.
  • After installing updates or new mods, there is now a table that displays the mods and their versions.
  • Downloads now have 3 retry attempts, which ususally resolve. You will be notified if something failed, ususally you can just try again and it should work.

 

 

Known Issues

  • The [ list -u ] command shows you are missing all dependencies, even if you have them. A fix just didn't make it for this release.
  • Some error messages may not be as helpful as they could be.
0.1.5 110 May 2nd 2025 at 11:54 PM Rustique-0.1.5-alpha.zip
  • Proper version checking has been implemented. Rustique should always pull the latest version available. If it doesn't that means the api has some funky versioning. You can Rustique list to find out which mods didn't update.
  • Fixed various error messages so they are a bit less verbose. I'm sure I missed a few or 10.
  • Sync no longer fails if it encounters during api calles and while processing json files. You should get a meaningful error message to report. Excution will continue and the sync file will be generated regardless, it will just be missing any mod where it encountered an error.
  • You will now be notified during sync if it encounters a folder instead of a .zip and remind you to zip your mods first. At the moment it has no clue if its actually an unzipped mod or just a random folder you have. This will be adjusted at a later time.

 

As always, if you encounter any errors, please report them!

0.1.2 68 May 2nd 2025 at 4:32 AM Rustique-0.1.2-alpha.zip

This is a minor bug fix to correct an api json parse error. This error would prevent you from installing certain mods or using sync if those mods were already installed.

 

Thanks MothHelix for the report!

0.1.1 64 May 2nd 2025 at 12:08 AM Rustique.zip

First alpha release! v0.1.1 - Linux only (for now)

 

A windows version is being worked on!

 

To install:

Unzip Rustique and place it on whatever directory you want. Add the location to your PATH, if you want. Then start doing mod things! Check the main page for detailed usage instructions.


59 Comments (oldest first | newest first) (threaded | flat)

theysa , May 21st at 8:35 AM

Hiran You can pin the game version with rustique config set -p 1.22.1 and it'll only download for that version. 

Hiran, May 21st at 5:28 AM

Would it be possible to add game version parameter to update command, or to config? This way we would be able to update to whatever game version we want, and it would also help folks who run older game version

theysa , May 20th at 7:39 PM

Hiran This version of rustique has a known issue with game version pinning. This bug shows up if the mod author makes the newest version of their mod for the older version of the game, and the older version of the mod for the newer version of the game (which is not how you should do it). The 0.6.0-dev version, which you can only get by compiling it from the github branch atm, fixes this issue.

 

For now, you will need to pin the mod to the version you want. 

 

rustique config set -w claycasting -P 1.3.8

Hiran, May 20th at 4:37 PM (modified May 20th at 4:38 PM)

Rustique unfortunately can't correctly detect game version, which leads to it downloading wrong version of the mod if dev supports more than one version. Clay Casting released patch to 1.21.6 and rustique downloaded it, despite the fact that I'm running 1.22

https://mods.vintagestory.at/claycasting#tab-files

Hiran, May 15th at 7:09 AM (modified May 15th at 7:11 AM)

It seems like these mods no longer exist, thats why it can't find them. They were here for 1.21.6.
I think you should alter that message to also include mod name, not only its id.

Just for your information - their names are This Mod Sucks and EF Traders Fix

theysa , May 14th at 8:49 PM

Hiran looks like the mods grabber and etfradersfix are not valid mod ids. What mods are those?

Hiran, May 14th at 8:04 PM

Got this when doing sync command.

Spoiler
[00:00:00] [█████████▒░░░░░░░░░░] 75/152 bettererprospecting                                                                                                                                                    
2026-05-14T20:02:53.334468Z ERROR tokio-rt-worker ThreadId(15) grabber missing field `mod` at line 1 column 20
[00:00:01] [█████████████▒░░░░░░] 100/152 improvedhandbookrecipescontinued                                                                                                                                      
2026-05-14T20:02:53.603445Z ERROR tokio-rt-worker ThreadId(08) eftradersfix missing field `mod` at line 1 column 20
 [00:00:01] [████████████████████] 152/152 Fetch Complete                                                                
theysa , May 3rd at 7:28 PM

Meyneth Honestly, it would be a total pita to try and implement that. This is mostly because mod authors are bad at versioning and there is no mechanism on the moddb to indicate if its a stable build or not. The only thing I can check is if the mod has a -rev/dev/alpha at the end of the version and honestly most mods don't even use this schema. So I guess its possible for me to try but I think it would be a lot of work for little gain. 

 

All that being said, you can pin mod versions so rustique doesn't update them until you are ready. 

Meyneth, May 3rd at 6:21 PM

theysa Is there any way to make Rustique only check for stable versions of mod updates? Or any plans to make this a feature if not? 

Morggin, Apr 25th at 4:46 AM

theysa I understand. Thanks for the response. 

theysa , Apr 24th at 5:45 AM

Morggin Heya, yes there is no html export, only CSV through the list command. This tool is designed to be simple.. mostly.. and there is no plan to add an html or pdf rendering of any kind. Sorry, its just not in the scope of my design.

Morggin, Apr 24th at 1:47 AM

Looking over all the stuff here.  Im currently using VS_Modupdate for my Linux server.  After an update, it exports an html document that is basically a list of all the mods.  I didn't see any options for that with this tool.  

theysa , Apr 22nd at 7:06 PM (modified Apr 22nd at 7:07 PM)

Kyattono

Thanks for the kind words and I'm glad you like it! I'm finally able to do some more work on rustique so I'll look into the server/client distinction. I have some bugs and other things to work out first, but I'll put it on the list. Thanks!

Kyattono, Apr 21st at 9:09 PM (modified Apr 21st at 9:10 PM)

Thank you for the excellent manager! So nice to have something that works and works well. This is going to make it so easy to find version incompatible mods now that 1.22 is stable :)

for those who want an easy one liner for this purpose
```rustique list -c game-version mod-url name filename version -e csv -f ./modlist-export.csv```
that is probably more than you need to make it easy to keep tabs on when mod authors update their mods for the new stable version.

Also definitely thirding that server vs client distinction, that would be a great feature!

theysa , Mar 12th at 8:28 PM

OctaMagOS Thanks for kind words, I'm really glad it works well for you. Thats actually an interesting feature idea. That should be relatively easy to implement when I have some free time again. Thanks for the idea, I'll add it to my todo list for rustique.

OctaMagOS, Mar 10th at 10:36 PM (modified Mar 10th at 10:47 PM)

feature request/idea, as someone who runs servers and absolutely loves this tool something I often find mildly annoying is when converting my single player worlds to run on a server so I can play with friends is the lack of an easy way to remove all the client side mods, not sure how feasible this is but I know mods can be tagged client/server/both on the mod db so theoretically is reasonable if modders reliably abide by what they select. And again I absolutely love this tool, thank you for all your hard work!!

dohlbrak, Feb 13th at 9:39 AM

Thank you

theysa , Feb 13th at 7:21 AM (modified Feb 13th at 7:22 AM)

dohlbrak Yes, you can pin the game version with this command.

 

rustique config set -p 1.21.6

dohlbrak, Feb 12th at 11:58 PM

Is there a way to set up Rustique to only update for my game version?  With the 1.22 release, currently, it is installing any update and I am still running 1.21.6.

fightlessbirds, Feb 1st at 8:10 PM

😍

theysa , Jan 19th at 8:12 PM

Majestik Thanks! Simple was always the goal, glad I could achieve that. :3

Majestik, Jan 18th at 1:09 PM

Thanks for the mod manager ! Simple but efficient :)

theysa , Dec 31st 2025 at 2:59 AM

ividyon Glad it's working out for you! 

ividyon, Dec 26th 2025 at 9:44 AM

A wonderful tool to help manage the Linux docker server I host for myself and a friend. Thanks a lot!

theysa , Jun 25th 2025 at 6:05 PM

propaneko hmm, yea I think I could add. I'll put it on my list and let you know when its available! Thanks for the suggestion!

propaneko, Jun 25th 2025 at 10:38 AM

Haaai again, is there a chance we could get `Rustique list -p/--pinned` command? Would be easy to keep track of what mods are currently pinned in my modlist.

theysa , Jun 11th 2025 at 3:05 AM

CuraCougar What command were you trying to run when you recieved that error? If clearing out all the files but the config file fixed it, I'm thinking it is related to the search-db or version config. What version were you running before you updated?

CuraCougar, Jun 11th 2025 at 2:07 AM

Had an issue today trying to use this to update server. It was working fine a week or so ago after first install. This time it was returnign API decode errors.
Updated Rustique, No changes, API Decode error.
Updated and restarted system the same.
Cleared all files but the Config/toml file in .config/rustique. This fixed the issue and let it synch as normal and update.


theysa , Jun 1st 2025 at 1:44 PM

jmkjhk71 You're very welcome! :3

jmkjhk71, Jun 1st 2025 at 8:45 AM

theysa All working now, thanks for the speedy response!

jmkjhk71, May 31st 2025 at 5:35 PM

theysa Nice one, thanks for the update. 👍

theysa , May 31st 2025 at 4:48 PM

jmkjhk71 Ok, I figured out what was going on. All those mods you listed have a modid with capital letters. Rustique DID handle that but I appear to have a regression bug that was not lowercasing the modids. This will be fixed in 0.5.3.

 

As for the /home/jamie/.local/share/vintagestory/Mods/   This is actuall trying to find a specific mod, but rustique couldn't get the filename, this is related to the modid being incorrect and a filename not being found.

 

Thank you for reporting this! I'll have an update out shortly.

theysa , May 31st 2025 at 3:32 PM

jmkjhk71 Heya! Thanks for reporting that. I'll take a look at those mods and see whats going on. If you could, could you run the same command but use, `Rustique -d` and send me the results on discord. This will help me figure out more of whats going on. Thanks!

jmkjhk71, May 31st 2025 at 12:32 PM

Getting this for some mods: 

```

2025-05-31T10:09:21.069295Z  WARN tokio-runtime-worker ThreadId(07) Failed to download mod: , Parse Error: relative URL without a base
2025-05-31T10:09:21.069312Z  WARN tokio-runtime-worker ThreadId(07) Failed to download mod: , Parse Error: relative URL without a base
2025-05-31T10:09:21.171131Z  WARN                 main ThreadId(01) File /home/jamie/.local/share/vintagestory/Mods/ is no longer there!
```

That last error is wrong, the path does exist. It seems to be struggling to update these mods, although I can't see anyting in the mod info file to suggest why:

- OresAPlenty
- Simple Mob Footsteps
 -Sticks From Firewood

theysa , May 28th 2025 at 4:26 PM

propaneko Hiya! I'm glad the tool is working out for you!

The mod api is working actually. This looks like a bug with how the updates are filtered with list --updates, thanks for reporting that. I'll have that fixed in the next update. Def let me know if you find anything else!

propaneko, May 28th 2025 at 7:51 AM

Heya, so because of the error you mentioned below this is why I'm getting list of all mods when typing ./Rustique list --updates ? Love the mod btw, huge help to keep server up to date with mods on linux env :3

theysa , May 27th 2025 at 2:50 AM

HEADS UP: At the time of writing this comment, the mod API is broken. The versions for all mods are showing up as a huge number instead of text. This breaks Rustique, so if you try to sync and you get an error message that says: error decoding response body then this is why. I've already posted an issue on their github for the modapi, so hopefully they get that fixed soon.

theysa , May 24th 2025 at 1:00 PM

EDKE Heya! Version pinning is actually already in 0.3.1! It def needs more testing if you want to give it a shot. You can pin game versions as well as mod versions. I don't have much in the way of documentation just yet, thats coming with the 0.4 release along side modpacks. Check out `Rustique config help set` for more info.

This is the basics though:

 

  • You can use 'Rustique info --mod-id modid' to see the last 3 versions, if you want to see more add '--show-versions 10' to see the last 10 versions
  • To pin a version: 'Rustique config set --with-mod modid --pin-version VERSION'. There are short names for the commands too if you look at the help.
  • Run a 'Rustique sync' after you pin a version to update Rustique for the pinned versions you set. The 'list' command will also show what you have pinned.
  • You can also update the 'list' table itself to show the actual pinned version, by default it displays a (pinned) tag in the Latest Version column, see 'Rustique config table set help list'. This feature is a bit complex and the commands are long, just a heads up.

 

Let me know if you run into any issues with any of that. I doubt too many people have really tested it out, my lack of documentation and frequent updates prob has something to do with that :p

EDKE, May 24th 2025 at 7:37 AM

Hello :) Do you plan on adding a blacklist feature or a version locking mechanism? Because I just saw that Terra Prety released a PRE version of their mod which is unstable. It would be great if Rustique had a way to prevent such mod to be updated, with some configurable option. Thank you!

theysa , May 14th 2025 at 3:24 PM

EDKE Thank you for the build notes for mac! I'll add that to my instructions. I really appreciate it! I hope Rustique is treating you well

EDKE, May 14th 2025 at 9:04 AM

To compile Rustique on the Mac, install Rust and Git.

Clone the repo: `git clone https://github.com/Tekunogosu/Rustique.git`.

cd into its folder then do `cargo build --release`.

The executable will be placed in a subfolder and ready to use. Works great on my Mini M1 as of 0.3.0.

 

theysa , May 3rd 2025 at 7:52 PM

momtookmybeans Ty for the list! Yea, the list output didn't really work here. I'm going to add a command to spit out mod ids in an easy to use way.

 

Sleeves, May 3rd 2025 at 7:01 PM

Forgot to mention, I also made a command line mod manager for the game. It's undergoing a rewrite at the moment, but feel free to reach out if you hit any obstacles :-]

Sleeves, May 3rd 2025 at 6:54 PM

Most likely the missing mod field is due to an invalid/failed query, where an error is returned instead of mod data. Ideally this should be detected, logged to stderr, and skipped- or aborted if it's a single mod.

momtookmybeans, May 3rd 2025 at 5:23 PM

theysa sure, here ya go

Spoiler!
|-----------+-----------+----------+----------+----------+----------+----------|
| AllHelveW | allhelvew | 1.0.1 | 1.0.1 | | | Helve |
| orkable | orkable | | | | | hammers |
| | | | | | | can work |
| | | | | | | any |
| | | | | | | items. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Aloysia | aloysiaha | 1.0.0 | 1.0.0 | | | Drastica |
| Hates | tesdwarfb | | | | | lly |
| Dwarf | irch | | | | | lessens |
| Birch - | | | | | | Dwarf |
| Less | | | | | | Birch |
| Bushes! | | | | | | Bushes |
|-----------+-----------+----------+----------+----------+----------+----------|
| Ancient | ancientar | 1.0.6 | 1.0.6 | | | Makes |
| Armory | mory | | | | | unused |
| | | | | | | weapons |
| | | | | | | usable, |
| | | | | | | with |
| | | | | | | tweaks |
|-----------+-----------+----------+----------+----------+----------+----------|
| Art of | artofcook | 0.2.4 | 0.2.4 | coreofar | | Bronze |
| Cooking | ing | | | ts | | kitchen |
| | | | | | | applianc |
| | | | | | | es. |
| | | | | | | Kneading |
| | | | | | | dough |
| | | | | | | and shaw |
| | | | | | | arma. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Better | betterfir | 1.1.5 | 1.1.5 | | | A |
| Firepit | epit | | | | | Vintage |
| | | | | | | Story |
| | | | | | | mod to |
| | | | | | | improve |
| | | | | | | the fire |
| | | | | | | pit's |
| | | | | | | behaviou |
| | | | | | | r |
|-----------+-----------+----------+----------+----------+----------+----------|
| Better | betterfor | 0.1.0 | 0.1.0 | | | Improved |
| forest | est | | | | | forest |
| | | | | | | and tree |
| | | | | | | generati |
| | | | | | | on. No |
| | | | | | | new |
| | | | | | | blocks. |
| | | | | | | No |
| | | | | | | impact |
| | | | | | | on perfo |
| | | | | | | rmance. |
| | | | | | | Only |
| | | | | | | server |
| | | | | | | side |
|-----------+-----------+----------+----------+----------+----------+----------|
| Better | bettersti | 1.2.0 | 1.2.0 | | | A simple |
| Sticks | cks | | | | | mod that |
| | | | | | | prvoides |
| | | | | | | alternat |
| | | | | | | e |
| | | | | | | recipes |
| | | | | | | for |
| | | | | | | creating |
| | | | | | | sticks |
| | | | | | | and |
| | | | | | | firewood |
|-----------+-----------+----------+----------+----------+----------+----------|
| BetterBlo | betterblo | 1.0.5 | 1.0.5 | | | Tiered |
| omeries : | omeriesre | | | | | bloomeri |
| ReBorn | born | | | | | es to |
| | | | | | | match |
| | | | | | | steel |
| | | | | | | furnaces |
|-----------+-----------+----------+----------+----------+----------+----------|
| BetterPro | BetterPro | 1.7.0 | 1.7.0 | | | A less |
| specting | specting | | | | | tedious |
| | | | | | | form of |
| | | | | | | prospect |
| | | | | | | ing. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Bows | maltiezbo | 1.0.5 | 1.0.5 | | | Replaces |
| | ws | | | | | bows |
| | | | | | | models |
|-----------+-----------+----------+----------+----------+----------+----------|
| Break Ore | BreakOreW | 1.0.0 | 1.0.0 | | | Break |
| With | ithRocks | | | | | ore |
| Rocks | | | | | | chunks |
| | | | | | | using 4 |
| | | | | | | stones |
| | | | | | | instead |
| | | | | | | of a |
| | | | | | | hammer |
|-----------+-----------+----------+----------+----------+----------+----------|
| Butcherin | butcherin | 1.8.2 | 1.8.2 | | | Carry |
| g | g | | | | | animals |
| | | | | | | back to |
| | | | | | | your |
| | | | | | | place |
| | | | | | | for |
| | | | | | | proper |
| | | | | | | butcheri |
| | | | | | | ng. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Carry On | carryon | 1.8.0-rc | 1.8.0-rc | | | Adds the |
| | | .4 | .4 | | | capabili |
| | | | | | | ty to |
| | | | | | | carry |
| | | | | | | various |
| | | | | | | things |
|-----------+-----------+----------+----------+----------+----------+----------|
| chiseltoo | chiseltoo | 1.14.17 | 1.14.17 | | | Quentin' |
| ls | ls | | | | | s Chisel |
| | | | | | | ing |
| | | | | | | Tools' |
|-----------+-----------+----------+----------+----------+----------+----------|
| Class | classreba | 1.0.0 | 1.0.0 | | | Slight |
| Rebalance | lance | | | | | rebalanc |
| | | | | | | e to the |
| | | | | | | class |
| | | | | | | negative |
| | | | | | | s |
|-----------+-----------+----------+----------+----------+----------+----------|
| CommonLib | commonlib | 2.6.1 | 2.6.1 | | | |
|-----------+-----------+----------+----------+----------+----------+----------|
| Composter | composter | 1.2.1 | 1.2.1 | | | A contai |
| | | | | | | ner that |
| | | | | | | decompos |
| | | | | | | es food |
| | | | | | | extremel |
| | | | | | | y fast |
|-----------+-----------+----------+----------+----------+----------+----------|
| CompostTw | rlldtco00 | 1.2.0 | 1.2.0 | | | Tweaks |
| eak | 01 | | | | | Various |
| | | | | | | things |
| | | | | | | about |
| | | | | | | composti |
| | | | | | | ng |
|-----------+-----------+----------+----------+----------+----------+----------|
| Config | configlib | 1.5.3 | 1.5.3 | vsimgui | | Configs |
| lib | | | | | | library |
| | | | | | | with |
| | | | | | | YAML |
| | | | | | | config |
| | | | | | | format |
| | | | | | | and |
| | | | | | | in-game |
| | | | | | | GUI |
|-----------+-----------+----------+----------+----------+----------+----------|
| Core of | coreofart | 0.2.3 | 0.2.3 | | | The main |
| Arts | s | | | | | mod-libr |
| | | | | | | ary for |
| | | | | | | other |
| | | | | | | mods of |
| | | | | | | the Arts |
| | | | | | | series. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Dampened | dampeneda | 0.0.8 | 0.0.8 | | | Mind |
| Anvil | nvil | | | | | your nei |
| | | | | | | ghbors. |
| | | | | | | Dampen |
| | | | | | | your |
| | | | | | | anvil. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Dana | danatweak | 3.4.1 | 3.4.1 | | | Various |
| Tweaks | s | | | | | tweaks |
|-----------+-----------+----------+----------+----------+----------+----------|
| Dear | vsimgui | 1.1.8 | 1.1.8 | | | Brings |
| ImGui | | | | | | famous |
| | | | | | | immediat |
| | | | | | | e mode |
| | | | | | | GUI to |
| | | | | | | Vintage |
| | | | | | | Story |
|-----------+-----------+----------+----------+----------+----------+----------|
| Duncan's | duncansgr | 1.0.1 | 1.0.1 | | | Get more |
| Grass' | ass | | | | | dry |
| | | | | | | grass |
| | | | | | | dependin |
| | | | | | | g on the |
| | | | | | | height |
| | | | | | | of the |
| | | | | | | grass. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Entities | entitiesi | 1.0.11 | 1.0.11 | | | Creature |
| Interact | nteract | | | | | s from |
| | | | | | | various |
| | | | | | | mods |
| | | | | | | interact |
| | | | | | | with |
| | | | | | | each |
| | | | | | | other. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Explosive | explosive | 0.0.8 | 0.0.8 | | | Make |
| s | | | | | | your |
| | | | | | | life |
| | | | | | | easier - |
| | | | | | | blow up |
| | | | | | | all the |
| | | | | | | problems |
| | | | | | | ! |
|-----------+-----------+----------+----------+----------+----------+----------|
| Extra | extrainfo | 1.9.9 | 1.9.9 | | | Useful |
| Info | | | | | | informat |
| | | | | | | ion for |
| | | | | | | handbook |
| | | | | | | , |
| | | | | | | blocks, |
| | | | | | | items |
| | | | | | | and |
| | | | | | | entities |
|-----------+-----------+----------+----------+----------+----------+----------|
| Farseer | farseer | 1.3.1 | 1.3.1 | | | Draws |
| | | | | | | silhouet |
| | | | | | | tes of |
| | | | | | | the |
| | | | | | | terrain |
| | | | | | | outside |
| | | | | | | of your |
| | | | | | | view |
| | | | | | | distance |
|-----------+-----------+----------+----------+----------+----------+----------|
| FastHoney | fasthoney | 1.0.0 | 1.0.0 | | | squeeze |
| Squeeze | squeeze | | | | | honey so |
| | | | | | | fast you |
| | | | | | | shid |
| | | | | | | pants |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | caninae | 1.0.32 | 1.0.32 | | | A collec |
| the Stone | | | | | | tion of |
| Age: | | | | | | canines |
| Caninae | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | capreolin | 1.2.8 | 1.2.8 | | | A collec |
| the Stone | ae | | | | | tion of |
| Age: Capr | | | | | | New |
| eolinae | | | | | | World |
| | | | | | | deer |
| | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | casuariid | 1.1.2 | 1.1.2 | | | A collec |
| the Stone | ae | | | | | tion of |
| Age: Casu | | | | | | Australi |
| ariidae | | | | | | an fligh |
| Plus | | | | | | tless |
| | | | | | | birds |
| | | | | | | from |
| | | | | | | human |
| | | | | | | history. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | dinornith | 1.0.16 | 1.0.16 | | | A collec |
| the Stone | idae | | | | | tion of |
| Age: Dino | | | | | | Moa and |
| rnithifor | | | | | | other |
| mes Plus | | | | | | New |
| | | | | | | Zealand |
| | | | | | | flightle |
| | | | | | | ss birds |
| | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | felinae | 0.2.10 | 0.2.10 | | | A collec |
| the Stone | | | | | | tion of |
| Age: | | | | | | cats |
| Felinae | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | machairod | 1.0.25 | 1.0.25 | | | A collec |
| the Stone | ontinae | | | | | tion of |
| Age: Mach | | | | | | saber |
| airodonti | | | | | | cats |
| nae | | | | | | from |
| | | | | | | human |
| | | | | | | history. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | manidae | 1.0.15 | 1.0.15 | | | A collec |
| the Stone | | | | | | tion of |
| Age: | | | | | | pangolin |
| Manidae | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | pantherin | 1.1.27 | 1.1.27 | | | A collec |
| the Stone | ae | | | | | tion of |
| Age: Pant | | | | | | big cats |
| herinae | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | rhinocero | 1.0.18 | 1.0.18 | | | A collec |
| the Stone | tidae | | | | | tion of |
| Age: Rhin | | | | | | rhinocer |
| ocerotida | | | | | | os from |
| e | | | | | | the Holo |
| | | | | | | cene. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | sirenia | 1.0.20 | 1.0.20 | | | A collec |
| the Stone | | | | | | tion of |
| Age: | | | | | | manatee |
| Sirenia | | | | | | and |
| | | | | | | dugong |
| | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| Fauna of | sphenisci | 1.0.11 | 1.0.11 | | | A collec |
| the Stone | dae | | | | | tion of |
| Age: Sphe | | | | | | penguins |
| niscidae | | | | | | from the |
| | | | | | | Holocene |
| | | | | | | . |
|-----------+-----------+----------+----------+----------+----------+----------|
| FoodShelv | foodshelv | 1.6.3 | 1.6.3 | | | Contains |
| es | es | | | | | various |
| | | | | | | food |
| | | | | | | shelves |
| | | | | | | and food |
| | | | | | | storage, |
| | | | | | | mainly |
| | | | | | | made to |
| | | | | | | be used |
| | | | | | | alongsid |
| | | | | | | e |
| | | | | | | Expanded |
| | | | | | | Foods. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Freedom | freedomun | 1.1.4 | 1.1.4 | | | Changes |
| Units | its | | | | | all temp |
| | | | | | | eratures |
| | | | | | | into fah |
| | | | | | | renheit |
|-----------+-----------+----------+----------+----------+----------+----------|
| FreeStone | free_ston | 1.0.1 | 1.0.1 | | | Breaking |
| DropsWhen | e_drops_w | | | | | a rock |
| Broken | hen_broke | | | | | block |
| | n | | | | | with 5 |
| | | | | | | empty |
| | | | | | | neighbou |
| | | | | | | ring |
| | | | | | | blocks |
| | | | | | | will |
| | | | | | | drop the |
| | | | | | | rock |
| | | | | | | block |
| | | | | | | itself. |
|-----------+-----------+----------+----------+----------+----------+----------|
| From | fromgolde | 1.8.12 | 1.8.12 | | | Adding |
| Golden | ncombs | | | | | depth, |
| Combs | | | | | | variety, |
| | | | | | | and comp |
| | | | | | | lexity |
| | | | | | | to |
| | | | | | | Vintage |
| | | | | | | Apicultu |
| | | | | | | re |
|-----------+-----------+----------+----------+----------+----------+----------|
| Gimme One | gimmeones | 1.1.0 | 1.1.0 | | | A mod |
| Seed Plz | eedplz | | | | | that |
| | | | | | | keeps |
| | | | | | | your |
| | | | | | | sanity |
| | | | | | | when |
| | | | | | | looking |
| | | | | | | for tree |
| | | | | | | seeds |
| | | | | | | from |
| | | | | | | your |
| | | | | | | favorite |
| | | | | | | trees; |
| | | | | | | trees |
| | | | | | | will |
| | | | | | | always |
| | | | | | | drop one |
| | | | | | | seed |
| | | | | | | when |
| | | | | | | felled. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Grass to | grasstofl | 1.0.1 | 1.0.1 | grasstor | | Addon |
| Flax | ax | | | opes | | for |
| | | | | | | Grass to |
| | | | | | | Ropes |
| | | | | | | Enables |
| | | | | | | the |
| | | | | | | crafting |
| | | | | | | of flax |
| | | | | | | fibers, |
| | | | | | | using |
| | | | | | | dry |
| | | | | | | grass |
| | | | | | | bundles |
| | | | | | |   |
|-----------+-----------+----------+----------+----------+----------+----------|
| Grass to | grasstoro | 1.1.4 | 1.1.4 | | | Expands |
| Ropes | pes | | | | | crafting |
| | | | | | | of dry |
| | | | | | | grass, |
| | | | | | | as a sub |
| | | | | | | stitute |
| | | | | | | for most |
| | | | | | | cattail |
| | | | | | | recipes. |
| | | | | | | |
| | | | | | | For |
| | | | | | | Zaldarr. |
| | | | | | |   |
|-----------+-----------+----------+----------+----------+----------+----------|
| Instand | aaainstan | 1.1.0 | 1.1.0 | | | |
| Temporal- | dtemporal | | | | | |
| Mob Drops | mobdrops | | | | | |
|-----------+-----------+----------+----------+----------+----------+----------|
| Instant | instantpi | 1.0.3 | 1.0.3 | | | Pick Up |
| Pick Up | ckup | | | | | dropped |
| | | | | | | items |
| | | | | | | instantl |
| | | | | | | y |
|-----------+-----------+----------+----------+----------+----------+----------|
| LanternsA | lanternsa | 1.0.0 | 1.0.0 | | | Lantern |
| reLighter | relighter | | | | | is |
| s | s | | | | | lighter, |
| | | | | | | it just |
| | | | | | | is. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Larger | largercro | 1.0.2 | 1.0.2 | | | Makes |
| Crock | ck | | | | | the |
| | | | | | | crock |
| | | | | | | hold 6 |
| | | | | | | servings |
| | | | | | | instead |
| | | | | | | of 4 |
|-----------+-----------+----------+----------+----------+----------+----------|
| Manual | manualtoo | 1.3.5 | 1.3.5 | | | Craft |
| Tool | lcrafting | | | | | Tools |
| Crafting | | | | | | manually |
|-----------+-----------+----------+----------+----------+----------+----------|
| Material | materiala | 1.2.0 | 1.2.0 | | | Use |
| Aging | ging | | | | | vinegar |
| | | | | | | to age |
| | | | | | | logs, |
| | | | | | | planks, |
| | | | | | | rock and |
| | | | | | | hay. |
| | | | | | | Brine |
| | | | | | | some |
| | | | | | | metal! |
|-----------+-----------+----------+----------+----------+----------+----------|
| Millwrigh | millwrigh | 1.2.0 | 1.2.0 | | | Building |
| t | t | | | | | better |
| | | | | | | windmill |
| | | | | | | s since |
| | | | | | | 1386. |
|-----------+-----------+----------+----------+----------+----------+----------|
| More | MoreStone | 1.0.0 | 1.0.0 | | | Increase |
| Stone | Drops | | | | | s the |
| Drops | | | | | | number |
| | | | | | | of |
| | | | | | | stones |
| | | | | | | dropped |
| | | | | | | from |
| | | | | | | mining |
| | | | | | | rock |
| | | | | | | from 2-3 |
| | | | | | | to 3-5. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Oils! | oils | 1.2.3 | 1.2.3 | | | Adds |
| | | | | | | oils, |
| | | | | | | finishes |
| | | | | | | , waxes, |
| | | | | | | and |
| | | | | | | soaps, |
| | | | | | | plus |
| | | | | | | their |
| | | | | | | uses |
|-----------+-----------+----------+----------+----------+----------+----------|
| Overhaul | overhaull | 0.2.8 | 0.2.8 | | | |
| Library | ib | | | | | |
|-----------+-----------+----------+----------+----------+----------+----------|
| Particles | particles | 1.2.1 | 1.2.1 | | | Adds par |
| Plus | plus | | | | | ticles |
| | | | | | | to |
| | | | | | | various |
| | | | | | | blocks. |
|-----------+-----------+----------+----------+----------+----------+----------|
| ProspectT | prospectt | 2.0.3 | 2.0.3 | | | Stores |
| ogether | ogether | | | | | and |
| | | | | | | displays |
| | | | | | | prospect |
| | | | | | | ing data |
| | | | | | | on the |
| | | | | | | map and |
| | | | | | | allows |
| | | | | | | sharing |
| | | | | | | data |
| | | | | | | between |
| | | | | | | players. |
| | | | | | | Based on |
| | | | | | | Prospect |
| | | | | | | oInfo by |
| | | | | | | P3t3rix. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Resin On | roas | 1.0.0 | 1.0.0 | | | Resin |
| All Sides | | | | | | shape on |
| | | | | | | all |
| | | | | | | sides of |
| | | | | | | leaking |
| | | | | | | log |
|-----------+-----------+----------+----------+----------+----------+----------|
| Ropetiabl | ropetiabl | 1.2.4 | 1.2.4 | | | Sets the |
| e at gen | eall0 | | | | | minimum |
| 0 | | | | | | generati |
| | | | | | | on of |
| | | | | | | ropetiea |
| | | | | | | ble |
| | | | | | | animals |
| | | | | | | to 0 |
|-----------+-----------+----------+----------+----------+----------+----------|
| Shears | shearsspe | 1.0.0 | 1.0.0 | | | |
| speed | edscales | | | | | |
| scales | | | | | | |
|-----------+-----------+----------+----------+----------+----------+----------|
| Simple | simplefoo | 1.0.2 | 1.0.2 | | | Will |
| Footsteps | tstepsred | | | | | play |
| Redux | ux | | | | | footstep |
| | | | | | | sounds |
| | | | | | | for enti |
| | | | | | | ties. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Simple | claywheel | 1.1.2 | 1.1.2 | | | Adds a |
| Pottery | | | | | | pottery |
| Wheel | | | | | | wheel |
| | | | | | | for |
| | | | | | | easier |
| | | | | | | clay |
| | | | | | | forming. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Spyglass | spyglass | 0.5.2 | 0.5.2 | | | Adds a |
| | | | | | | spyglass |
| | | | | | | so you |
| | | | | | | can spy |
| | | | | | | on your |
| | | | | | | neighbor |
| | | | | | | s from |
| | | | | | | the |
| | | | | | | safety |
| | | | | | | of your |
| | | | | | | windmill |
| | | | | | | ! |
|-----------+-----------+----------+----------+----------+----------+----------|
| SqueezeHo | squeezeho | 1.0.0 | 1.0.0 | | | Squeeze |
| neyCombIn | neycombin | | | | | honeycom |
| toBarrel | tobarrel | | | | | bs over |
| | | | | | | barrel. |
| | | | | | | No more |
| | | | | | | crying |
| | | | | | | over |
| | | | | | | spilled |
| | | | | | | honey. |
|-----------+-----------+----------+----------+----------+----------+----------|
| SturdyLea | sletharm | 0.1.1 | 0.1.1 | | | Armor |
| therArmor | | | | | | made |
| | | | | | | from |
| | | | | | | sturdy |
| | | | | | | leather, |
| | | | | | | what |
| | | | | | | else |
| | | | | | | could |
| | | | | | | you |
| | | | | | | want? |
|-----------+-----------+----------+----------+----------+----------+----------|
| Substrate | substrate | 1.1.2 | 1.1.2 | | | To be |
| | | | | | | added |
|-----------+-----------+----------+----------+----------+----------+----------|
| tab_fix | tab_fix | 1.1.0 | 1.1.0 | | | A simple |
| | | | | | | mod to |
| | | | | | | disable |
| | | | | | | GUI |
| | | | | | | fucus by |
| | | | | | | pressing |
| | | | | | | tab-key |
|-----------+-----------+----------+----------+----------+----------+----------|
| The | thecritte | 0.9.1 | 0.9.1 | | | Adds Hed |
| Critters | rpack | | | | | gehogs, |
| Pack | | | | | | Ducks, |
| | | | | | | Robins, |
| | | | | | | Waxwings |
| | | | | | | , Squirr |
| | | | | | | els, |
| | | | | | | Yaks and |
| | | | | | | more... |
|-----------+-----------+----------+----------+----------+----------+----------|
| Toolsmith | toolsmith | 1.1.0-rc | 1.1.0-rc | | | Upgrade |
| | | .4 | .4 | | | your |
| | | | | | | tools |
| | | | | | | with |
| | | | | | | proper |
| | | | | | | handles |
| | | | | | | and |
| | | | | | | bindings |
| | | | | | | for dura |
| | | | | | | bility |
| | | | | | | and |
| | | | | | | other |
| | | | | | | buffs! |
| | | | | | | Plus, |
| | | | | | | returnin |
| | | | | | | g the |
| | | | | | | tool |
| | | | | | | head |
| | | | | | | when it |
| | | | | | | wears |
| | | | | | | out |
| | | | | | | since |
| | | | | | | they |
| | | | | | | should |
| | | | | | | last |
| | | | | | | much |
| | | | | | | longer |
| | | | | | | then |
| | | | | | | they do |
| | | | | | | in |
| | | | | | | vanilla. |
|-----------+-----------+----------+----------+----------+----------+----------|
| Transloca | transloca | 1.0.0 | 1.0.0 | | | Adds pur |
| tor Map | tormap | | | | | chaseabl |
| | | | | | | e Transl |
| | | | | | | ocator |
| | | | | | | Maps to |
| | | | | | | Treasure |
| | | | | | | Hunter |
| | | | | | | traders |
|-----------+-----------+----------+----------+----------+----------+----------|
| VanillaMo | vanillamo | 1.1.2 | 1.1.2 | | | Do you |
| reMolds | remolds | | | | | want |
| | | | | | | more |
| | | | | | | diverse |
| | | | | | | molds |
| | | | | | | while |
| | | | | | | staying |
| | | | | | | true to |
| | | | | | | the |
| | | | | | | spirit |
| | | | | | | and mech |
| | | | | | | anics of |
| | | | | | | the |
| | | | | | | game? |
| | | | | | | This mod |
| | | | | | | is for |
| | | | | | | you! |
|-----------+-----------+----------+----------+----------+----------+----------|
| Verticali | Verticali | 0.3.1 | 0.3.1 | | | Climbing |
| ty | ty | | | | | ! Also |
| | | | | | | jumping! |
| | | | | | | And craw |
| | | | | | | ling! |
+-----------+-----------+----------+----------+----------+----------+----------+

sorry for the mess it wouldn't let me upload a screenshot.

theysa , May 3rd 2025 at 3:40 PM

momtookmybeans ty for reporting that. Can you tell me which mods you have installed? I personally havn't seen the error, so there has to be a mod triggering it.

 

You can post a screenshot of the list command to make that easier.

 

$ ./Rustique list

 

Or a screenshot using your file manager works too. Thanks!

momtookmybeans, May 3rd 2025 at 3:08 PM

theysa thank you! it's working now although i got "Api Error: fetch_mod (json) []: json: missing field `mod` at line 1 column 20" it still updated the mods just fine but i figured you'd want to know about any errors.

theysa , May 3rd 2025 at 2:49 PM

momtookmybeans

 

Hiya, since this is a command line program, you won't be able to just double click and execute it like a program with a GUI. You must use a program called a terminal, which will be installed by default.

 

Follow these steps:

 

  1. Download the Rustique binary, which will most likely be downloaded to you Downloads directory. (if you have your browser download to a different directory, then change that part in the instructions)
  2. You will need to extract the binary from the .zip you downloaded. Since you are new, you can do this from your file browser. Just right click and select "extracte here". this will put the binary directly in your downloads folder
  3. Open your terminal, it should be called Terminal
  4. In the terminal you need to change the directory to your downloads folder
    • $ cd ~/Downloads
  5. From here, you will set the executable bit for Rustique. This ensures your user, (you), will be able to use the
    • $ chmod +x ./Rustique
  6. If it didn't show any errors, then it worked; it says nothing when you successfully run chmod
  7. Now you can run the commands I described in the description
    • $ ./Rustique sync             --- create a local file with update information about the installed mods
    • $ ./Rustique list -u           --- this shows which files need updated, or tell you everything is good already
    • $ ./Rustique update -a    --- this will update all mods you have installed, if they have updates
    • $ ./Rustique list               ---  just to verify that everything is up-to-date 

 

When you want to use the command in the future, just follow steps from #4. There are other ways to make this available everywhere on the commandline, but thats a bit out of scope for a comment section.

 

I definately recommend you watch some tutorials on how to use the command line with linux. It's not too complicated and will provide you with a lot of useful tools that you can use in your day-to-day.

Let me know if something didn't make sense or if you get any error messages.

momtookmybeans, May 3rd 2025 at 1:20 PM

hello, i really REALLY want to use this but im new to linux and can't figure out how to get it to work, i tried following the steps above but it didn't boot, could one of you please tell me how to get this working on linux mint?
many thanks.

theysa , May 3rd 2025 at 1:17 AM

@MothHelix wow, thats a lot of mods! I sent you a message on discord as well.

 

So from what you sent, only Api Error: fetch_mod (json) []: json: missing field `mod` at line 1 column 20Failed to download mod: File /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ already exists. are weird. I'll see what I can figure out though. People like you are exactly why I wanted to get it out there now so you can break it! :3

The messaging about the unzipped folder show too many times, but thats  from error handling stuff needing to be revamped, so its gonna be a bit noisy atm. Other than the weird error messages, which I think are connected, it looks like everything worked as intended. Did you notice any mods not getting updated? Check with list before you update to see if anything was missed.

 

Thanks a lot for your feedback, it really is very helpful!

MothHelix, May 3rd 2025 at 12:52 AM

Below is my latest crop of error messages, spoilered (and computer account name edited out):

 

Spoiler!
··./Rustique -m /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ sync
Syncing...
Expected .zip, found folder. Did you forget to zip your mod? /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ZippysReseedingReeds-VS1.20.4-1.0.0
Expected .zip, found folder. Did you forget to zip your mod? /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/biomes_1.20.6
Api Error: fetch_mod (json) []: json: missing field `mod` at line 1 column 20
 
··./Rustique -m /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ update
Updating mods...
Failed to download mod: File /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ already exists.
interestingoregen: 1.1.2 successfully installed
Checking for dependencies...
Expected .zip, found folder. Did you forget to zip your mod? /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ZippysReseedingReeds-VS1.20.4-1.0.0
Expected .zip, found folder. Did you forget to zip your mod? /home/***/var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/biomes_1.20.6
Syncing...
Expected .zip, found folder. Did you forget to zip your mod? /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/ZippysReseedingReeds-VS1.20.4-1.0.0
Expected .zip, found folder. Did you forget to zip your mod? /home/***/.var/app/at.vintagestory.VintageStory/config/VintagestoryData/Mods/biomes_1.20.6



I honestly don't think I have anything particularly unusual installed, but I am a very new player so I actually wouldn't know if I did.

I do tend to have a tinkerers turn of mind - I usually look inside a mods code to confirm functions rather than just assume it does what it says on the tin, its not unusual for me to make combo mods, compat mods or simply decide that someone elses mod isn't quite what I want but its faster to just edit it trather than reinvent the wheel, in addition to simply making my own mods.  

Hell, if I can make it happen I'll just decompile published games that have no modding engine just to have a looky-loo under the hood or cos I want to tweak some value and why not, I bought it and I'm not uploading or stealing the code?

Perhaps all that whacking shit with a wrench and peeking inside is meaning my set up or mod choices are a little weird? There are very popular mods on this site that I consider unacceptably buggy and haven't passed my initial launch test and relatively obscure mods I consider absolute gems and don't understand why they don't have more downloads, so I am willing to admit that I'm probably a bit weird in my preferences.

My mod list has been heavily in flux over the past 24ish hours too, as I test and curate it for playing a game with my girlfriend (who has slightly different gameplay priorities to myself) and I haven't been keeping a record of stuff that has been removed or swapped out. Its currently about 120 mods long and I have included the ls output from my mod folder below:

Spoiler!

 

aaainstantTemporalmobdrops_v1.1.0.zip      consistentclayforming_1.0.1.zip                  giantlilies-1.0.zip                 Pyrogenesis-1.0.3.zip
altoffhandpenalty_1.2.1.zip                CrackedRockWeak-1-0-1.zip                        gimmeoneseedplz_1.1.0.zip           R.Dryness_v0.0.1.zip
animalcages_v3.2.2.zip                     CreatureKilledBy-1.0.0.zip                       gourmand_1.6.8.zip                  relativearmourdurability.zip
apeflowerpots-1.20.4-v1.2.3.zip            Cuniculture-1.20.7_1.0.8.zip                     gourmandbalance_1.0.1.zip           restoredhaircolors-1.0.1.zip
apelanterns-v1.20-1.1.1.zip                DanaTweaks-v3.4.1.zip                            harepet_1.2.2.zip                   R.Meat_v0.0.4.zip
autoconfiglib_2.0.6.zip                    darkerdrifterspawns_1.1.0.zip                    haytexturefix.zip                  'robust_small_grass v1.0.0.zip'
AWearableLight-v1.1.31.zip                 daubwashes-v1.0.0.zip                            HealthBar.v1.0.6.zip                rockstratavariety_0.0.1.zip
betterentityinteraction_1.0.4.zip          DebarkMod_1.0.2.zip                              ImprovedHandbookRecipes_1.1.3.zip   royalscurtains_0.0.1.zip
BetterGrass_v0.0.3.zip                     Desertification_Surfacevariation_1.0.0.zip       InterestingOreGen-v1.1.2.zip        royalsrugs_0.0.4.zip
betterloot1.1.4.zip                        drbraziers_1.1.1.zip                             itempickupnotifier_1.0.0.zip        R.Permanent_skin_v0.0.3.zip
BetterRuinsv0.4.11.zip                     drkfoodshelvesclayworkspatch.zip                 JacksArmorTweak_v1.1.0.zip          rustique-sync.json
BetterStickCrafting.zip                    drksmetallightsv2.0.0.zip                        JacksComposting_1.2.1_Simple.zip    scorelogs_0.0.6.zip
BetterTradersv0.0.10.zip                   DryableGroundStorage.zip                         JacksDryableFirewood_1.1.0.zip      simplefootstepsredux_v1.0.2.zip
BetterTranslationsv0.0.20.zip              DrystoneParity.zip                               JacksTallGrass_1.0.0.zip            smoothdigestion_1.0.1.zip
biomes_1.20.6                              DynamicToolWorkspeed_v1.0.4.zip                  JuicyOres-v1.0.0.zip                spyglass_0.5.2.zip
bradycrudebuilding-v1.3.2_v1.20.7.zip      EasierSodRoofingV0.0.1.zip                       KAT_v1.0.zip                        spyglassinfo_1.0.1.zip
bradyladders-v1.1.0_v1.20.7.zip            ExtraInfo-v1.9.9.zip                             LetThereBeLightV0.0.2.zip           statushudcont_3.2.6.zip
buzzwords_1.7.0.zip                       'FancyClouds2D v1.1.0.zip'                        maketea_0.3.1.zip                   stepupcontinued_0.0.1.zip
CampaignCartographer_v4.6.7.zip            FancyPlanters-v1.2.0.zip                         metalpots_1.2.0.zip                 StickBeam_1.2.0.zip
CarryOn-1.20_v1.8.0-rc.4.zip               farseer_1.3.1.zip                                MobsRadar-v2.1.7.zip                temperatureheighttweak_0.3.0.zip
'cats_v3.2.0_petai_v3.0. .zip'              FixedPaths.zip                                   morefloors-2.1.1.zip                usefultraders-v2.2.0.zip
cattailseverywhere_1.0.1.zip               fleeexhaustion_1.1.1.zip                         morenails_v1.2.0.zip                VanillaBedVariants_1.0.1.zip
chickenfeed_1.1.8.zip                      FloralZonesCapeRegion-v1.0.18.zip                MorePiles-v2.1.3.zip                vsimgui_1.1.8.zip
chickenpet_1.1.1.zip                       FloralZonesCaribbeanRegion-v1.0.13.zip           nmfw1.0.0.zip                       warmarmor_1.2.1.zip
clay_goes_in_mining_bag_1.zip              FloralZonesCentralAustralianRegion-v1.0.10.zip   NoBearJetpacks_1.0.2.zip            WarmerClothing_1.1.0.zip
clayworks_0.4.2.zip                        FloralZonesCosmopolitanRegion-v1.0.1.zip         oneroof_1.9.3.zip                   waypointtogethercontiued_2.2.0_1.20.0.zip
ClickUpTorches.zip                         FloralZonesEastAsiaticRegion-v1.0.8.zip          petai_v3.4.3.zip                    xinvtweaks_v1.8.0.zip
clipfix-1.0.9.zip                          FloralZonesMediterraneanRegion-v1.0.8.zip        pigfeed_1.0.8.zip                   ZippysReseedingReeds-VS1.20.4-1.0.0
configlib_1.5.3.zip                        FloralZonesNeozeylandicRegion-1.0.10.zip         PlaceEveryItem-v2.2.2.zip           ZippysThatchPatch-VS1.20.4-1.0.0.zip
ConnectedStairs-v1.0.0.zip                'Flour Bags-v1.1.1.zip'                           plasterwashes-v1.1.0.zip
'Conquest Blocklayer Overhaul v1.0.2.zip'   foodshelves_1.6.3.zip                            postsandbeams_1.4.0.zip
'Conquest Landform Overhaul v1.0.1.zip'     forgesstaywarm_1.0.0.zip                         pottery-wheel_v1.1.2.zip


Let me know if there is anything else I can do to help, and I'm on discord (MothHelix is my user in the VS discord) if you want to hit me up directly via PM

theysa , May 2nd 2025 at 11:58 PM

Sleeves ty for your feedback. The relative use of the binary is just for those that may not know how to use it, meaning they downloaded the file and are running those commands immediately. Anyone who knows about aliases or how to add programs to their path will know better than to try it with the relative path.

Sleeves, May 2nd 2025 at 8:53 PM

Just FYI, the command reference probably shouldn't include the ./ pattern as that's for relative paths, which may not be used (people could alias the tool or package it). Seems cool though :-]

theysa , May 2nd 2025 at 4:35 PM

EDKE wow thats great to hear it works on mac! I honestly didn't even know there was anyone using mac for VS, now that  I do I'll get a binary up for that as well. I'll take a look at that mod. Sadly, there are a lot of mod authors that do upload weird things or have non-standard configs, so ty for letting me know of another case to check out.

 

MothHelix You're finding all the edge case mods here! I'll take a look at KettlesHatt's Animal Tweaks. It's funny, I made a tool to install a random 100+ mods and only ran into issues with really old mods and you managed to find serveral mods with api issues in no time, so good job!! Would you mind telling me your list of mods? Something tells me there will be more edge cases in there.

 

Thanks everyone for the feedback, this is really valuable!

MothHelix, May 2nd 2025 at 11:06 AM

Thanks for the quick response!

 

This time it breezed past A Wearable Light perfectly, deleted my working (unedited) copy of KettleHatt's Animal Tweaks (https://mods.vintagestory.at/show/mod/20363) and replaced it with the other non-mod download from that page (which is listed as v0.0.1) and then gave me an error:

Failed to download mod: ZipError: Failed to find modinfo.json in Some("KAT_JSON\'s.zip"): specified file not found in archive, specified file not found in archive

Then when I put KAT_v1.0.zip back and ran update again to confirm the error it said:

Updating mods...
No valid mod ids foun

 

I ran sync before update and it then repeated the replacement of the KAT mod with the JSON files.

 

I removed the KAT mod to keep testing, ran sync and ran into this one (again on an unedited mod):

Api Error: Failed fetching mod Floral Zones: Caribbean Region: json: timeout: global at line 1 column 48769

I stopped there cos I don't have time for more fiddling now, but I thought I'd let you know :)

EDKE, May 2nd 2025 at 9:21 AM

Nice tool, thanks a lot! I've downloaded and compiled the source on Mac and it works. Thank you for making the code available! :)

Also I found a bug but I think it's the mod's author's fault: https://mods.vintagestory.at/alloycalculator was replaced by an older incompatible version because it has weird version numbers.

theysa , May 2nd 2025 at 3:59 AM

Hiya MothHelix!   Thanks for the feedback, really appreciate that.

 

 

Spoiler!

 

The version stuff def needs some work. I took the easy road for dealing with them and its time to get that taken care of. The main takeaway here is that sync fails to do its thing if you hit an error parsing a json file, thats a big no-no and def needs fixing. I really tried to make it handle errors in a way that would still make the program work, looks like I missed one, really nice catch!

 

Spoiler!

Notifying you of mods that are in folders that need to be zipped is a good idea and I'll def add that to my todo.

 

Spoiler!

Those colums are def going to be configurable, so you'll be able to put what you want there. Last date updated for local is not something I thought about, but I'm sure I can come up with something for that

 

 

I'm glad the dependency handling is wanted! I found it a bit strange that none of the other mod updaters handled dependencies, that's actually the one of the driving factors for me creating Rustique. That and speed; ModUpdater was painfully slow and I didn't like that. Nothing against that project or anything, I used it and it served me well.

 

Anyway, I'll try and have a bug fix for the sync issue out sometime tomorrow. Pretty sure I know whats causing it. Other updates, the config management stuff will happen later on. I plan to have a new main release every week, and bug fixes in between, this way there aren't too many updates. 

 

Anyway, ty for your kind words and feedback!! Let me know if you manage to break it some more, thats the feedback I need the most!

MothHelix, May 2nd 2025 at 3:26 AM

I downloaded this and tried it out, and like it so far. My immediate quibbles are all addressed in your planned feature notes, but I do have a few little bits of feedback for you:

 

  • When I tried a 'sync' it failed with the error message: Api Error: Failed fetching mod A Wearable Light: json: invalid type: integer `0`, expected a string at line 1 column 3869
  • The mod in question was causing a little dependency error for the required game version every time I started up VS, so I changed the modinfo file (days ago) from "1.20.*" to "*" just to keep log spam to a minimum.
    The mod is still working in game, so the only issue is that in this case its blocking me from syncing my mods with Rustique unless I guess I revert to the version on the site. (which is a reasonable enough thing to do, the one line 'warning' in the log isn't important, its just that when setting up a mod list I like to correct all errors and warnings I can to focus on any that might be real problems)

 

  • I have a small selection of mods that I have edited for personal use and I keep them unpacked in folders because they still show up in game but VSModsUpdater (which I have been using until now) will skip automatically updating them (and thus erasing my changes). When run, VSModsUpdater includes a list of mods in folders and a suggestion that I should zip them up. This is a handy reminder for me to manually check for updates, and honestly to reassess if my changes are necessary and if I should revert to the default versions.
  • Rustique entirely ignores those modded folders for both the list and sync commands. Perhaps Rustique could list those mods separately with a reminder it can't automatically handle their updates?

 

  • Related to the first point, perhaps in addition to the mods version perhaps the minimum game version for each mod could be listed? Other things I'd like there would be the last change log text and date last updated (locally and on modsDB). I see on your planned feature list that setting which columns show up is a planned feature, so this is more just a suggestion for things that could be extra columns rather than a direct request for changing the list feature as it is.

 

I am looking forward to seeing this project develop! Dependency handling alone made this an instant download for me. Congratuations on the launch.

violet_revenant, May 2nd 2025 at 12:32 AM

it works!!!

 

maybe `./Rustique help` can spit out the URLs for this page https://mods.vintagestory.at/rustique and the github https://github.com/Tekunogosu/Rustique , and the current version 0.1.1?

 

EDIT: oh, version is already there as `./Rustique --version` or `./Rustique -V`! nice!