Nebula
Interest

InterestClient

What a policy is told about the client it is deciding for.

generated from the sources
public struct InterestClient

What a policy is told about the client it is deciding for. A snapshot: the gateway fills it once per evaluation, so a policy never walks live gateway state (and cannot keep a reference to it).

Fields

ClientId

public ulong ClientId;

Identity

public string Identity;

The player's identity across sessions (PlayerIdentity): the authenticated subject, "" for none.

Name

public string Name;

PawnNetId

public ulong PawnNetId;

HasPawn

public bool HasPawn;

PawnX, PawnY, PawnZ

public double PawnX, PawnY, PawnZ;

Absolute position of the pawn, resolved through any carrier. Meaningless when HasPawn is false.

PawnSpace

public ulong PawnSpace;

The region space PawnX, PawnY and PawnZ are in (see InterestFocus.Space): 0 unless the pawn stands in a physics frame with regions of its own (a planet). A policy that adds a focus at the pawn gives it this space.

PawnCarrierNetId

public ulong PawnCarrierNetId;

The outermost entity the pawn is riding in (a ship, a lift), or 0 when it stands in the world.

InstanceId

public ulong InstanceId;

The client's simulation scope, resolved through the pawn's carrier chain; 0 is the public world, and so is a client with no pawn.

Team

public byte Team;

A byte the game sets per client (gateway.SetClientTag): team, faction, whatever the policy needs.

Tags

public ulong Tags;

64 free bits the game sets per client (gateway.SetClientTags): alliances, roles, subscriptions to a front. Server state, like Team; the client never sends it.

HasHint

public bool HasHint;

A hint from the client survived validation (FocusHintFilter).

HintX, HintY, HintZ

public double HintX, HintY, HintZ;

The accepted hint in absolute world coordinates. Meaningless when HasHint is false.

FocusMode

public FocusMode FocusMode;

What the server allows this client's hint to do (gateway.SetClientFocusMode).

PortalWindows

public int PortalWindows;

How many portal windows the client is looking through right now (docs/portals.md D22): the other sides of the open links it stands in the window of and may look through, at most NebulaGateway.MaxPortalWindows. 0 for a client that sees nothing through a portal.

Properties

FreeHint

public bool FreeHint { get; }

Shorthand for FocusMode being Nebula.FocusMode.Free: the hint was not clamped to the pawn.

On this page