Vixen
02b45cc4
csharp
public readonly record struct ShardCapacity

How full a shard is allowed to get, and where placement stops preferring it.

Read the guide page for this →

Remarks

Two numbers rather than one, because they answer different questions. HardCap is a hard filter — a candidate at it is not scored at all — and SoftCap is where doc 27 § Placement's fill term turns negative and a spawn starts being considered. The gap between them is what a party arriving together fits into: reserving the last slots is the difference between "join your friend" working and it working except at peak.

⚠ Neither is the engine's to guess. The right numbers depend on what a map's entities cost to replicate, which doc 27 answers by measurement — Samples/09-NetworkSoak — rather than by a default that reads as advice.

Fields and properties (3)

  • public int SoftCap

    The population placement starts steering away from.

  • public int HardCap

    The population above which a shard admits nobody.

  • public bool IsValid

    Whether the two numbers make sense together.

Methods (4)

  • public ShardCapacity(int SoftCap, int HardCap)

    How full a shard is allowed to get, and where placement stops preferring it.

  • public bool Admits(int population)

    Whether a shard at this population may admit one more.

  • public double FillAt(int population)

    How full a shard is, as a fraction of its soft cap.

  • public override string ToString()

    Returns the fully qualified type name of this instance.

Used by (22)

  • ClusterSerializationTestsVixen.Live.Cluster.Tests
  • FakeShardVixen.Live.Realm.Cluster.Tests
  • FleetSimulationVixen.Live.Orchestrator.Tests
  • IShardGrainVixen.Live.Cluster
  • LiveVocabularyTestsVixen.Live.Abstractions.Tests
  • MapFleetVixen.Live.Orchestrator
  • MapOptionsVixen.Live.Orchestrator
  • PlacementDirectorVixen.Live.Orchestrator
  • PlacementDirectorTestsVixen.Live.Orchestrator.Tests
  • PlayerAdmissionVixen.Live.Realm
  • RealmVixen.Live.Realm
  • RealmVixen.Live.Realm.Tests
  • RealmClusterTestsVixen.Live.Realm.Cluster.Tests
  • RealmFixtureVixen.Live.Realm.Tests
  • RealmSpecVixen.Live.Abstractions
  • RealmTransfersVixen.Live.Realm
  • ShardCandidateVixen.Live.Orchestrator
  • ShardCapacityConverterVixen.Live.Cluster
  • ShardGrainVixen.Live.Orchestrator
  • ShardLifecycleVixen.Live.Orchestrator
  • ShardLifecycleTestsVixen.Live.Orchestrator.Tests
  • ShardReportVixen.Live.Cluster