Expand description
§Naia Shared
Common functionality shared between naia-server & naia-client crates.
Modules§
- default_
channels - handshake
- link_
condition_ logic - Logic shared between client & server sockets related to simulating network conditions
Structs§
- AckManager
- Keeps track of sent & received packets, and contains ack information that is copied into the standard header on each outgoing packet
- Bandwidth
Monitor - Base
Connection - Represents a connection to a remote host, and provides functionality to manage the connection and the communications to it
- BigMap
- BitReader
- BitWriter
- Channel
Kind - ChannelKind - should be one unique value for each type of Channel
- Channel
Kinds - Component
Field Update - Component
Kind - ComponentKind - should be one unique value for each type of Component
- Component
Kinds - A map to hold all component types
- Component
Update - Compression
Config - Connection
Config - Contains Config properties which will be used by a Server or Client
- Decoder
- Diff
Mask - Encoder
- Entity
Action Receiver - Entity
Auth Accessor - Entity
Converter - Entity
Converter Mut - Entity
Does NotExist Error - Entity
Event Message - Entity
Property - Fake
Entity Converter - File
BitWriter - Game
Duration - Game
Instant - Global
Diff Handler - Global
Entity - Global
Request Id - Global
Response Id - Host
Auth Handler - Host
Entity - Host
Entity Auth Status - Host
World Events - Host
World Manager - Manages Entities for a given Client connection and keeps them in sync on the Client
- Instant
- Represents a specific moment in time
- KeyGenerator
- Simple implementation of a store that manages a recycling pool of u16 keys
- Link
Conditioner Config - Contains configuration required to initialize a LinkConditioner
- Local
Response Id - Local
World Manager - Message
Container - Message
Kind - MessageKind - should be one unique value for each type of Message
- Message
Kinds - Message
Manager - Handles incoming/outgoing messages, tracks the delivery status of Messages so that guaranteed Messages can be re-transmitted to the remote host
- MutReceiver
- Outgoing
Packet - Owned
BitReader - Ping
Store - Property
- A Property of an Component/Message, that contains data which must be tracked for updates
- Property
Mutator - Protocol
- Random
- Container for cross-platform Random methods
- Reliable
Sender - Reliable
Settings - Remote
Entity - Remote
World Manager - Replica
DynMut - Replica
DynMut Wrapper - Replica
DynRef - Replica
DynRef Wrapper - Replica
MutWrapper - Replica
RefWrapper - Request
OrResponse - Response
Receive Key - Response
Send Key - Serde
Err - The error message when failing to serialize/deserialize to/from the bit stream.
- Shared
Global World Manager - Socket
Config - Contains Config properties which will be shared by Server and Client sockets
- Standard
Header - System
Channel - Tick
Buffer Settings - Time
Queue - A queue for items marked by time, will only ever pop items from the queue if the time passes
- Timer
- 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.
- Timestamp
Enums§
- Channel
Direction - Channel
Mode - Compression
Mode - Entity
Action - Entity
Action Event - Entity
Action Type - Entity
Auth Status - Entity
Event - Entity
Event Message Action - Entity
Response Event - Host
Type - Local
Request OrResponse Id - Owned
Local Entity - Packet
Type
Constants§
- GAME_
TIME_ LIMIT - MTU_
SIZE_ BITS - MTU_
SIZE_ BYTES - 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§
- BigMap
Key - BitWrite
- Channel
- Channel
Receiver - Channel
Sender - Const
BitLength - Entity
AndGlobal Entity Converter - Entity
AndLocal Entity Converter - Global
World Manager Type - Local
Entity AndGlobal Entity Converter - Local
Entity AndGlobal Entity Converter Mut - Message
- Message
Bevy - Message
Builder - Message
Channel Sender - Message
Hecs - MutChannel
Type - Named
- Packet
Notifiable - Represents a manager that must be notified when packets have been dropped or delivered
- Property
Mutate - Tracks which Properties have changed and need to be queued for syncing with the Client
- Protocol
Plugin - Replica
DynMut Trait - Replica
DynRef Trait - Replica
MutTrait - Replica
RefTrait - Replicate
- 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
- Replicate
Bevy - 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
- Replicate
Builder - Replicate
Hecs - 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
- Replicated
Component - Request
- Response
- Serde
- A trait for objects that can be serialized to a bitstream.
- Serde
Bevy Client - A trait for objects that can be serialized to a bitstream.
- Serde
Bevy Server - A trait for objects that can be serialized to a bitstream.
- Serde
Bevy Shared - A trait for objects that can be serialized to a bitstream.
- Serde
Hecs - A trait for objects that can be serialized to a bitstream.
- Serde
Integer Conversion - Serde
Internal - A trait for objects that can be serialized to a bitstream.
- World
MutType - 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
- World
RefType - 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§
- generate_
identity_ token - sequence_
greater_ than - 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
- sequence_
less_ than - 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
- wrapping_
diff - 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§
- Identity
Token - Message
Index - Ordered
Reliable Receiver - Packet
Index - Ping
Index - Short
Message Index - Signed
Integer - Signed
Variable Integer - Tick
- Unordered
Reliable Receiver - Unsigned
Integer - Unsigned
Variable Integer
Derive Macros§
- Channel
- Derives the Channel trait for a given struct
- Message
- Derives the Message trait for a given struct
- Message
Bevy - Derives the Message trait for a given struct, for the Bevy adapter
- Message
Hecs - Derives the Message trait for a given struct, for the Hecs adapter
- Replicate
- Derives the Replicate trait for a given struct
- Replicate
Bevy - Derives the Replicate trait for a given struct, for the Bevy adapter
- Replicate
Hecs - Derives the Replicate trait for a given struct, for the Bevy adapter
- Serde
- Serde
Bevy Client - Serde
Bevy Server - Serde
Bevy Shared - Serde
Hecs - Serde
Internal