Skip to content

Latest commit

 

History

History
111 lines (80 loc) · 3.97 KB

File metadata and controls

111 lines (80 loc) · 3.97 KB

MultiVC logo

MultiVC

Nix-like version manager for VoxelCore

CI License: MIT OR Apache-2.0

Русский


MultiVC manages VoxelCore engine versions as dependencies: each version is installed once, and instances (game worlds) reference the version they need by hash. Available as GUI (egui) and CLI (clap).

Screenshots

Cores Instances
Cores tab Instances tab

CLI demo

Installation

Pre-built binaries on the Releases page. Archives include settings.toml next to the executable — portable mode is active right after unpacking.

Quick Start (CLI)

multivc install 0.31.1       # Install a core
multivc ls                   # List installed cores
multivc fetch                # Available versions from GitHub

multivc new my_world 0.31.1  # Create an instance
multivc instances            # List instances
multivc launch my_world      # Launch the game

multivc check                # Validate integrity
multivc rm 0.31.1            # Remove a core

Features

  • Install and update VoxelCore versions from GitHub Releases
  • Instance management — separate configs, dependencies, launch
  • File integrity validation (SHA-256)
  • Parallel downloads with progress reporting
  • Launch and stop instances from GUI and CLI
  • i18n — Russian and English interface (GUI)

How It Works

Each engine version is stored in its own directory by hash. An instance references a core — you cannot delete a core while at least one instance depends on it.

By default, data is stored in user directories:

Type Windows Linux macOS
Config %APPDATA%\MultiVC\ ~/.config/MultiVC/ ~/Library/Application Support/MultiVC/
Data %LOCALAPPDATA%\MultiVC\ ~/.local/share/MultiVC/ ~/Library/Application Support/MultiVC/

Portable mode — if settings.toml is placed next to the executable, everything is stored there. Force it: --portable.

<data dir>/
├── cores/                # installed engine versions
│   ├── lock.toml         # registry: hash → version, timestamp
│   └── sha256:a1b2c3…/   # directory for a specific version
│       ├── core.exe      # executable (Windows)
│       └── res/          # engine resources
└── instances/            # game worlds
    ├── lock.toml         # registry: name → metadata
    └── my_world/         # instance directory
        └── instance.toml # config: core, description, dependencies

Platforms

Tier Platform Status
1 Windows Fully supported
2 Linux Supported
3 macOS Limited (VoxelCore engine limitations)

Building from Source

Requirements: Rust (stable)

git clone https://github.com/lost-umbrella-dev/MultiVC.git
cd MultiVC
cargo build -p gui --release   # GUI
cargo build -p cli --release   # CLI

Binaries in target/release/.

License

MIT OR Apache-2.0