InterestClient
What a policy is told about the client it is deciding for.
Nebula · Packages/com.1by3.nebula/Runtime/Interest/InterestPolicy.cspublic struct InterestClientWhat 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.