modiom is a command line tool for mod.io to search, download and update mods for games without builtin support.
modiom is written in Rust, so you'll need to grab a Rust installation in order to compile it. Building is easy:
$ git clone https://github.com/nickelc/modiom.git
$ cd modiom
$ cargo build --release
$ ./target/release/modiom --version
modiom 0.3.0
$ git clone https://github.com/nickelc/modiom.git
$ cargo install --path modiom
$ modiom login --help
Usage: modiom login [OPTIONS] [api-key] [token]
Arguments:
[api-key]
[token]
Options:
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom search --help
Search game or mods.
Usage: modiom search [OPTIONS] [FULLTEXT]
Arguments:
[FULLTEXT]
Options:
--game-id <ID> When specified, modiom will search for mods of the game.
--id <ID> Specify the id of the game or mod.
--name <VALUE>
--name-id <VALUE>
--expr <EXPR>
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom info --help
Show information of mods
Usage: modiom info [OPTIONS] <GAME> <MOD>
Arguments:
<GAME> Unique id of a game.
<MOD> Unique id of a mod.
Options:
--files List all files.
--stats Show the statistics.
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom subs --help
Show information of subscriptions
Usage: modiom subscriptions [OPTIONS] <COMMAND>
Commands:
list
add
remove
help Print this message or the help of the given subcommand(s)
Options:
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom subs list --help
Usage: modiom subscriptions list [OPTIONS]
Options:
--game-id <ID> Unique id of a game.
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom subs add --help
Usage: modiom subscriptions add [OPTIONS] <GAME> <MOD>
Arguments:
<GAME> Unique id of a game.
<MOD> Unique id of a mod.
Options:
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom subs rm --help
Usage: modiom subscriptions remove [OPTIONS] <GAME> <MOD>
Arguments:
<GAME> Unique id of a game.
<MOD> Unique id of a mod.
Options:
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom download --help
Download mod files
Usage: modiom download [OPTIONS] --game-id <ID> --mod-id <ID> [DEST]
Arguments:
[DEST] Save files to DEST
Options:
--game-id <ID> Specify a game id
--mod-id <ID> Specify a mod id
--test-env Use the mod.io test environment
-h, --help Print help information
$ modiom upload --help
Upload new files
Usage: modiom upload [OPTIONS] <GAME> <MOD> <FILE>
Arguments:
<GAME> Unique id of the game.
<MOD> Unique id of the mod.
<FILE> Zip file to upload.
Options:
--filename <NAME> Overwrite the filename.
--version <VERSION> Version of this file release.
--changelog <CHANGELOG> Changelog of this release.
--not-active The uploaded file will not be labeled as current release.
--metadata-blob <BLOB>
--checksum Calculate the checksum before uploading.
--test-env Use the mod.io test environment
-h, --help Print help information
The Modio.toml
file
[game]
section[game]
# id = (int|string)
id = "gametwo" # the name_id of the game or alternative its id
with-dependencies
field (optional)This field specifies globally whether dependencies of mods are downloaded.
If you don't specify the field, it will default to false
.
[game]
# ...
with-dependencies = true
[mods]
mod1 = 1
mod2 = "mod-two"
mod3 = { id = "mod-three" }
[mods.mod4]
id = 4
with-dependencies = true
with-dependencies
field (optional)This field specifies whether dependencies of the mod are downloaded and overrides the global setting.
If you don't specify the field, it will default to false
.
file
field (optional)This field specifies the downloaded file id.
[mods.mod1]
id = "mod-one"
file = 34
version
field (optional)This field specifies the downloaded version.
[mods.mod1]
id = "mod-one"
version = "1.2"