Skip to content

Feature: CLI startup parameters (--host / --port / --profile) for launcher integration #41

@monil2233

Description

@monil2233

Summary

Add command-line startup parameters so an external launcher can start Genie with a connection and profile pre-filled, e.g.:

genie.exe --host=127.0.0.1 --port=8001 --profile=TysongDRF

This makes Genie a drop-in target for launcher workflows (e.g. Lich Launcher), where one tool handles all client launches and just hands each client its host/port/profile.

Use case

A user who manages everything through a single launcher wants to point it at genie.exe and pass the destination + profile, rather than launching Genie and clicking through the Connect dialog each time.

Proposed parameters

  • --host=<hostname|ip> — game/proxy host to connect to
  • --port=<port> — game/proxy port
  • --profile=<name> — profile to load (settings, layout, per-character config)

All optional and combinable. Reasonable behavior when only some are supplied (e.g. --profile alone loads that profile and uses its stored connection; --host/--port alone connect ad-hoc).

Important constraint

This must launch the normal interactive UI — it is not a headless/daemon mode. The parameters only pre-fill and kick off the same connect path the Connect dialog uses; the window still comes up as usual.

Current state

Program.cs forwards process args straight to Avalonia's lifetime, and only Velopack consumes its own --veloapp-* args during install/update. There is no custom parsing of --host/--port/--profile today.

Acceptance criteria

  • Parse --host, --port, --profile (and document accepted forms: --key=value)
  • When supplied, pre-fill the connection/profile and begin connecting on startup
  • Normal interactive window still launches (no headless path)
  • Unknown/absent args are ignored gracefully (Velopack --veloapp-* handling unaffected)
  • Brief docs note (README / Connecting wiki) on launcher integration

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Normal priorityenhancementNew feature or request

    Type

    No type
    No fields configured for issues without a type.

    Projects

    Status
    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions