Skip to main content

Overview

Lich 5 provides extensive command-line configuration options for customizing installation paths, connection settings, and runtime behavior. This guide covers all available options and environment configuration.

Command-Line Options

General Options

lich --help           # Display help message
lich -h               # Short form

lich --version        # Display version and credits
lich -v               # Short form

Frontend and GUI Options

lich --wizard         # Run in Wizard mode (default)
lich -w

lich --stormfront     # Run in StormFront mode
lich -s

lich --avalon         # Run in Avalon mode
lich --frostbite      # Run in Frostbite mode
lich --genie          # Run in Genie mode

Game Server Options

lich --gemstone       # GemStone IV Prime (default)
lich --gs

lich --shattered      # GemStone IV Shattered
lich --platinum       # GemStone IV Platinum
lich --test           # GemStone IV Test server

Login and Connection Options

lich --login=CharacterName    # Login with character
lich --account=AccountName    # Specify account
lich --password=Pass123       # Specify password (not recommended)
lich --character=CharName     # Specify character

Password Management Options

Lich provides command-line options for managing account passwords securely.
lich --add-account AccountName Password --frontend stormfront
lich -aa AccountName Password --frontend stormfront

lich --change-account-password AccountName NewPassword
lich -cap AccountName NewPassword

Legacy Installation Options (Windows/WINE)

lich --install              # Full installation (SGE + SAL)
lich --uninstall            # Full uninstallation

lich --link-to-sge          # Link to Simutronics Game Entry
lich --unlink-from-sge      # Unlink from SGE

lich --link-to-sal          # Link to SAL files
lich --unlink-from-sal      # Unlink from SAL

Directory Structure

Default Directories

Lich uses the following directory structure by default:
lib/constants.rb
LICH_DIR    # Main Lich directory (auto-detected)
TEMP_DIR    # LICH_DIR/temp     - Temporary files
DATA_DIR    # LICH_DIR/data     - Game data files
SCRIPT_DIR  # LICH_DIR/scripts  - Script files
LIB_DIR     # LICH_DIR/lib      - Library files
MAP_DIR     # LICH_DIR/maps     - Map data
LOG_DIR     # LICH_DIR/logs     - Log files
BACKUP_DIR  # LICH_DIR/backup   - Backup files

Customizing Directories

You can override any directory using command-line options or environment variables:
lich --home=/opt/lich \
     --scripts=/usr/local/lich/scripts \
     --data=/var/lich/data \
     --temp=/tmp/lich
Command-line options take precedence over environment variables.

Example Configurations

Headless Server Mode

Run Lich on a server without GUI:
lich --no-gui \
     --without-frontend \
     --detachable-client=8000 \
     --reconnect \
     --reconnect-delay=30 \
     --start-scripts=upkeep,autohunt

Multi-User Setup

Configure separate directories for multiple users:
# User 1
lich --home=/home/user1/.lich \
     --login=Character1

# User 2  
lich --home=/home/user2/.lich \
     --login=Character2

Development Setup

Use test server with custom script directory:
lich --dragonrealms \
     --test \
     --script-dir=/home/dev/lich-scripts \
     --data-dir=/home/dev/lich-data

Dark Mode Configuration

Enable dark theme for the GUI:
lich --dark-mode=on --gui
This applies the GTK dark theme to the Lich interface. See GTK Interface for more GUI options.

SAL File Launching

Lich can be launched from .sal files (Simutronics Account Launcher) or Gse.~xt files:
lich /path/to/SGE.sal
lich "C:\\Games\\SGE.sal"  # Windows path
The SAL file is automatically detected and processed, extracting connection information.

Hosts File Configuration

Specify custom hosts file for name resolution:
lich --hosts-file=/etc/lich/custom-hosts
lich --hosts-dir=/etc/lich/hosts.d/
This allows you to override game server addresses for testing or alternative servers.

Deprecated Options

The following options are deprecated but still supported for backward compatibility:
  • $lich_dir → Use LICH_DIR constant
  • $temp_dir → Use TEMP_DIR constant
  • $script_dir → Use SCRIPT_DIR constant
  • $data_dir → Use DATA_DIR constant

Front-ends

Learn about supported front-end clients

GTK Interface

Configure the GTK GUI interface

Updates

Keep Lich up to date

GTK Interface

Configure the graphical interface

Build docs developers (and LLMs) love