2 Technical Design: Clues
Sara Gerretsen edited this page 2025-10-13 14:25:34 +00:00

enum ClueID

Enumerator used to identify a clue over network traffic, can be used as an array index.

REVEAL message

Network message NetworkData::REVEAL expecting argument CLUE_ID. Sent by client (VR player) to server to inform the Flatscreen player of a clue

ClueMarker

A marker in the VR game space that can identify whether or not it is visible to the vr player's camera. In abstract, it is a point in space that knows whether or not it is on-screen, and can be identified by a ClueID.

class ClueMarker : Node3D {
...
  bool is_visible() const;
  ClueID get_clue_id() const;
...
};

ClueData { is_known, image }

Represents game-side state of clues. Is-known will

gathered_clues

List of ClueData mirrored between ServerNode and ClientNode. The class interface should match the available actions on the network API. Actions unsupported by the protocol should not be supported by the class.