Thanks to visit codestin.com
Credit goes to github.com

Skip to content

afishhh/ftlman

Repository files navigation

Another FTL: Faster Than Light Mod Manager

This project is an alternative to the Slipstream Mod Manager, written in Rust and with some additional features.

Features

  • Regular FTL mods (Slipstream compatible¹)
  • Supports mod tags from Blizz's Slipstream fork
  • Supports an ftlman-specific Lua patching API (documentation available here)
  • Automatic Hyperspace installer
  • Functional² XML and Lua Sandbox (syntax highlighting, WIP diagnostics)

Currently automatic hyperspace installation is supported for the following FTL versions:

  • Steam (Linux and Windows)
  • Epic (untested)
  • Origin (untested)

Patching the Microsoft version is technically supported but you may encounter permission problems if you try to patch it in the original installation directory.

If you find a mod that fails to patch with ftlman but works with slipstream or one that works different under ftlman open an issue.

¹ ftlman's XML parser is modeled closely after FTL's (RapidXML). This means it is very lenient but behaviour may be slightly different than Slipstream, due to Slipstream's messy handling of sloppy parsing.
² Struggles with files hundreds of kilobytes in size.

Installation

Pre-built binaries

Pre-built binaries for both Linux and Windows are available in the Releases tab.

Compiling from source

Compilation requires a nightly Rust toolchain due to questionable design decisions I made in silpkg. For instructions on installing Rust go to https://www.rust-lang.org/tools/install, make sure to select the nightly toolchain release during installation.

After installing Rust, open a terminal then execute the following command:

cargo install --locked --git https://github.com/afishhh/ftlman ftlman

Note

The same command can be used to update the program.

You should then be able to run ftlman in a terminal to start the program.

Note

These instructions also apply to Windows users, just replace terminal with cmd.exe.

NixOS with flakes

Add this repository to your flake inputs and then use the default package output.

{
  # ... other inputs ...
  inputs.ftlman.url = "github:afishhh/ftlman";
  # Optionally reuse top-level nixpkgs
  # inputs.ftlman.inputs.nixpkgs.follows = "nixpkgs";

  outputs = { self, ftlman, ... }:
    let
      package = ftlman.packages.${system}.default;
    in {
      # use package
    };
}

You can also try out the program using nix run:

nix run github:afishhh/ftlman

About

Mod manager for FTL: Faster Than Light

Topics

Resources

License

Stars

Watchers

Forks