Class EnvironmentInventory
Ordered, private operator inventory. Client identities are discovered from their signed-in Steam environments;
a campaign supplies actors and its own dependency locks. Reading it has no host effects; placing actors on it
(deterministic, no host effects either) and acting on its hosts are EnvironmentRuns'.
public sealed class EnvironmentInventory
- Inheritance
-
objectEnvironmentInventory
- Extension Methods
Properties
Detected
What the this-machine default detected and assumed, one line each, for preflight to print; empty for an inventory that was not read through Read(string?).
[JsonIgnore]
public IReadOnlyList<string> Detected { get; }
Property Value
- IReadOnlyList<string>
Environments
public List<EnvironmentRecipe> Environments { get; set; }
Property Value
- List<EnvironmentRecipe>
Hosts
public Dictionary<string, HostProfile> Hosts { get; set; }
Property Value
- Dictionary<string, HostProfile>
LeaseDirectory
An absolute lease directory on LeaseHost, shared by inventories using these Steam accounts.
public string LeaseDirectory { get; set; }
Property Value
- string
LeaseHost
The host that stores Steam-account leases; required if any client recipe exists.
public string LeaseHost { get; set; }
Property Value
- string
Missing
What the this-machine default looked for and did not find, with every path tried.
[JsonIgnore]
public IReadOnlyList<string> Missing { get; }
Property Value
- IReadOnlyList<string>
SteamUserData
This machine's Steam userdata under the detected Steam root, when it exists; null otherwise or when nothing was detected.
[JsonIgnore]
public string? SteamUserData { get; }
Property Value
- string
Methods
Read(string?)
The inventory at path, or this machine alone when path is null: host local
with local-server (Valheim Dedicated Server, Steam app 896660) and local-client (Valheim), found in its
Steam libraries. A file lists the environments to use, in preference order; one on this machine (a host of kind
local, or no host) needs only its name and roles, and its install, runtime and ports default as
Detected reports. A file never gains environments it does not list.
public static EnvironmentInventory Read(string? path)
Parameters
pathstring
Returns
Validate(string)
Validate the whole inventory before any actor assignment or host contact.
public void Validate(string directory)
Parameters
directorystring