Crate naia_shared
source ·Expand description
Naia Shared
Common functionality shared between naia-server & naia-client crates.
Modules
- Logic shared between client & server sockets related to simulating network conditions
Structs
- Keeps track of sent & received packets, and contains ack information that is copied into the standard header on each outgoing packet
- Represents a connection to a remote host, and provides functionality to manage the connection and the communications to it
- ChannelKind - should be one unique value for each type of Channel
- ComponentKind - should be one unique value for each type of Component
- A map to hold all component types
- Contains Config properties which will be used by a Server or Client
- Manages Entities for a given Client connection and keeps them in sync on the Client
- Represents a specific moment in time
- Simple implementation of a store that manages a recycling pool of u16 keys
- Contains configuration required to initialize a LinkConditioner
- MessageKind - should be one unique value for each type of Message
- Handles incoming/outgoing messages, tracks the delivery status of Messages so that guaranteed Messages can be re-transmitted to the remote host
- A Property of an Component/Message, that contains data which must be tracked for updates
- Container for cross-platform Random methods
- The error message when failing to serialize/deserialize to/from the bit stream.
- Contains Config properties which will be shared by Server and Client sockets
- A queue for items marked by time, will only ever pop items from the queue if the time
- A Timer with a given duration after which it will enter into a “Ringing” state. The Timer can be reset at an given time, or manually set to start “Ringing” again.
Enums
Constants
- The maximum of bytes that can be used for the payload of a given packet. (See #38 of http://ithare.com/64-network-dos-and-donts-for-game-engines-part-v-udp/)
Traits
- Represents a manager that must be notified when packets have been dropped or delivered
- Tracks which Properties have changed and need to be queued for syncing with the Client
- A struct that implements Replicate is a Component, or otherwise, a container of Properties that can be scoped, tracked, and synced, with a remote host
- A struct that implements Replicate is a Component, or otherwise, a container of Properties that can be scoped, tracked, and synced, with a remote host
- A struct that implements Replicate is a Component, or otherwise, a container of Properties that can be scoped, tracked, and synced, with a remote host
- A trait for objects that can be serialized to a bitstream.
- A trait for objects that can be serialized to a bitstream.
- A trait for objects that can be serialized to a bitstream.
- A trait for objects that can be serialized to a bitstream.
- A trait for objects that can be serialized to a bitstream.
- A trait for objects that can be serialized to a bitstream.
- Structures that implement the WorldMutType trait will be able to be loaded into the Server at which point the Server will use this interface to keep the WorldMutType in-sync with it’s own Entities/Components
- Structures that implement the WorldMutType trait will be able to be loaded into the Server at which point the Server will use this interface to keep the WorldMutType in-sync with it’s own Entities/Components
Functions
- Returns whether or not a wrapping number is greater than another sequence_greater_than(2,1) will return true sequence_greater_than(1,2) will return false sequence_greater_than(1,1) will return false
- Returns whether or not a wrapping number is greater than another sequence_less_than(1,2) will return true sequence_less_than(2,1) will return false sequence_less_than(1,1) will return false
- Retrieves the wrapping difference between 2 u16 values wrapping_diff(1,2) will return 1 wrapping_diff(2,1) will return -1 wrapping_diff(65535,0) will return 1 wrapping_diff(0,65535) will return -1
Type Aliases
Derive Macros
- Derives the Channel trait for a given struct
- Derives the Message trait for a given struct
- Derives the Message trait for a given struct, for the Bevy adapter
- Derives the Message trait for a given struct, for the Hecs adapter
- Derives the Replicate trait for a given struct
- Derives the Replicate trait for a given struct, for the Bevy adapter
- Derives the Replicate trait for a given struct, for the Bevy adapter