Skip to content

salamint/blasmodcli

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

292 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

blasmodcli

This is a command line interface to help manage mods for Blasphemous and Blasphemous II on Linux. There is already a mod installer, but at the time being it is only available for Windows. In the meantime, this script should cover basic use cases, to automate the process of installing and managing mods.

Warning

Keep in mind that at the moment this installer does not account for configuration files, so make sure to back any important configuration before continuing.

Contents

  1. Installation
    1. Requirements
  2. How-to
    1. First configuration
    2. Looking for mods
    3. Installing mods
    4. Managing mods
    5. Launch modded from Steam
  3. Commands
  4. Paths

Note

Works on the Steam Deck! Has been tested by 1 person.

Installation

Simply run inside a terminal:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/salamint/blasmodcli/main/scripts/utils/install.sh)"

This will clone the repository, create a virtual environment at a specific non-obtrusive location, and install all dependencies. You can then either add the scripts folder to your $PATH variable, or add a symbolic link to the scripts in a folder already in your $PATH.

Requirements

Dependencies are automatically installed inside the virtual environment generated by the installer.

If you are not using a Python virtual environment like intended, you need to manually install the following Python packages:

  • aiohttp >= 3.13
  • SQLAlchemy >= 2.0

How-to

Here are some common usages of this tool used as examples of what you could be using this tool for.

First configuration

The first time you use this tool, you might want to configure a game to run mods. This can be done simply by running:

blasmodcli configure

Looking for mods

blasmodcli update
blasmodcli list
blasmodcli search quality of life

Note

Since blasmodcli and blas2modcli are each tied to their own game, you might want to update both. That cannot be done with the same command. You will have to type and run blas2modcli update separately.

Installing mods

blasmodcli install randomizer
# Do not ask for confirmation when downloading and installing mods
blasmodcli install -y better-saves

Managing mods

# Uninstall a mod from the game's files
blasmodcli uninstall randomizer
# Remove a mod from the cache directory
blasmodcli remove better-saves
# Download a mod from a specific source and place it in the cache directory
blasmodcli download main/better-saves
# Download (if needed) and install a mod in a specific version
blasmodcli install randomizer:3.0.0

Launch modded from steam

For Blasphemous put this as the steam launch options:

blasmodcli launch -c -- %command%

For Blasphemous II put this as the steam launch options:

blas2modcli launch -c -- %command%

This will ask you if you prefer to start the game modded or vanilla everytime, but you can save an option until the next time your computer is rebooted.

Launch from the terminal

You can start the game using this command:

blasmodcli launch

but this will just start the game using Steam's protocol, so it will only start the game modded if you followed the step above.

Add support to more games and sources

See the dedicated documentation on how to creation configuration files to add new games and sources.

Commands

Note

This part of the documentation will get more detailed later. Otherwise, I recommend checking what each command does using the --help flag.

Command Operates on Description
backup Game Backs up your saves into an archive and exports them.
cd Game Opens a sub-shell inside the game's directory.
configure Game Downloads and extract the modding tools for Blasphemous inside the game's folder.
launch Game Starts the game with the given Steam launch parameters.
list Game Shows the list of every mod available (or installed, or activated).
search Game Lists every mod whose name, author or description contains the given string of text.
update Game Updates the mod database.
download Mod Downloads the archive for a given mod.
info Mod Displays information for a given mod.
install Mod Downloads a mod and extract it in the game's modding directory.
remove Mod Remove a mod archive from the cache.
uninstall Mod Delete every file a mod added from the modding directory.
upgrade Mod Upgrades all mods (or the specified ones) to their latest version.

Paths

Directory Usage
~/.config/blasmodcli/ Tool configuration files.
~/.local/share/blasmodcli/ Database and profile files.
~/.cache/blasmodcli/mods/ Mod archive download firectory.
/tmp/blasmodcli/mods/ Launch preferences.

About

A command line utility to manage your Blasphemous mods on Linux.

Topics

Resources

License

Stars

Watchers

Forks

Contributors