Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FindSteamRoots ¶
func FindSteamRoots() []string
FindSteamRoots returns candidate Steam installation roots in search order.
func GetLibraryPaths ¶
GetLibraryPaths returns all Steam library paths from a Steam root (reading libraryfolders.vdf).
Types ¶
type AppManifest ¶
AppManifest holds parsed fields from an appmanifest_*.acf file.
func ParseAppManifest ¶
func ParseAppManifest(data string) (AppManifest, error)
ParseAppManifest parses appmanifest_*.acf content and returns AppManifest.
type DetectedGame ¶
type DetectedGame struct {
SteamAppID string // Steam App ID
Slug string // lmm game ID (from known games list)
Name string // Display name
InstallPath string // Absolute path to game install (e.g. .../common/Skyrim Special Edition)
ModPath string // Absolute path to mod directory (InstallPath + ModPath relative)
NexusID string // NexusMods game domain ID
}
DetectedGame is a Steam game found on disk that lmm knows how to configure.
func DetectGames ¶
func DetectGames(configDir string) (games []DetectedGame, warnings []string, err error)
DetectGames scans Steam libraries for known moddable games and returns them. configDir is used to load the known-games list (embedded default + optional steam-games.yaml). Warnings are non-fatal errors (e.g. unreadable library, parse failure) so users can diagnose.
type GameInfo ¶
type GameInfo struct {
Slug string // lmm game ID, e.g. "skyrim-se"
Name string // Display name, e.g. "Skyrim Special Edition"
NexusID string // NexusMods game domain ID, e.g. "skyrimspecialedition"
ModPath string // Relative path from game install to mod directory, e.g. "Data"
}
GameInfo describes a moddable game known to lmm, mapped from Steam App ID.