public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.SimpleEvent); buf.WriteInt((int)Event); }
public void Deserialize(SerializationBuffer buf) { CharacterId = buf.ReadInt(); ForPlayerId = buf.ReadInt(); SpawnPosition = buf.ReadVector3(); SpawnRotation = buf.ReadQuaternion(); }
private void DeserializePlayerCommands(SerializationBuffer buf, ref CMD intoStruct, out int receivedTick, out int receivedPlayerId) { receivedTick = buf.ReadInt(); receivedPlayerId = buf.ReadInt(); intoStruct.ReadFromBuffer(buf); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.PlayerRegistration); buf.WriteString(PlayerName); }
public void Deserialize(SerializationBuffer buf) { AtTick = buf.ReadInt(); FiringPlayerId = buf.ReadInt(); FiringRotation = buf.ReadQuaternion(); HitCharacterId = buf.ReadInt(); }
public void Deserialize(SerializationBuffer buf) { Add = buf.ReadBool(); ForLocalPlayer = buf.ReadBool(); PlayerId = buf.ReadInt(); PlayerName = buf.ReadString(); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.SceneLoading); buf.WriteString(SceneName); }
private void DeserializeGlobalSnapshot(SerializationBuffer buf, out int receivedTick) { receivedTick = buf.ReadInt(); int indexForReceivedTick = GetSnapshotIndexForTick(receivedTick); // Commands snapshot int commandsCount = buf.ReadInt(); for (int i = 0; i < commandsCount; i++) { int commandsPlayerId = buf.ReadInt(); // Don't override commands from local players IdentifiedData <CMD> tmpPlayerCommands = new IdentifiedData <CMD>(); tmpPlayerCommands.DataId = commandsPlayerId; tmpPlayerCommands.DataStruct.ReadFromBuffer(buf); for (int j = 0; j < SnapshotsRingBuffer[indexForReceivedTick].CommandsSnapshot.PlayerCommands.Count; j++) { if (SnapshotsRingBuffer[indexForReceivedTick].CommandsSnapshot.PlayerCommands[j].DataId == commandsPlayerId) { SnapshotsRingBuffer[indexForReceivedTick].CommandsSnapshot.PlayerCommands[j] = tmpPlayerCommands; break; } } } // World snapshot SnapshotsRingBuffer[indexForReceivedTick].WorldSnapshot.ReadFromBuffer(buf); }
public void ReadFromBuffer(SerializationBuffer buf) { int CharacterStatesCount = buf.ReadInt(); for (int i = 0; i < CharacterStatesCount; i++) { int characterId = buf.ReadInt(); Vector3 position = buf.ReadVector3(); Quaternion rotation = buf.ReadQuaternion(); Vector3 velocity = buf.ReadVector3(); bool isStunned = buf.ReadBool(); // Find CharacterState corresponding to this ID and apply the state for (int j = 0; j < CharacterStates.Count; j++) { if (CharacterStates[j].DataId == characterId) { IdentifiedData <MyCharacterState> tmpIdCharState = CharacterStates[j]; tmpIdCharState.DataStruct.MotorState.Position = position; tmpIdCharState.DataStruct.MotorState.Rotation = rotation; tmpIdCharState.DataStruct.MotorState.BaseVelocity = velocity; tmpIdCharState.DataStruct.IsStunned = isStunned; CharacterStates[j] = tmpIdCharState; break; } } } }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)FrameworkNetworkMessageID.CommandRequest); buf.WriteInt(ForPlayerId); buf.WriteInt(ForTick); }
public void WriteToBuffer(SerializationBuffer buf, bool mustBeFullState) { buf.WriteFloat(MoveAxisForward); buf.WriteFloat(MoveAxisRight); buf.WriteQuaternion(CameraRotation); buf.WriteBool(JumpDown); buf.WriteBool(Fire); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.SpawnPlayer); buf.WriteInt(PlayerId); buf.WriteBool(IsLocalPlayer); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.TickSync); buf.WriteInt(Tick); buf.WriteInt(Timestamp); }
public void ReadFromBuffer(SerializationBuffer buf) { MoveAxisForward = buf.ReadFloat(); MoveAxisRight = buf.ReadFloat(); CameraRotation = buf.ReadQuaternion(); JumpDown = buf.ReadBool(); Fire = buf.ReadBool(); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.PlayerAdd); buf.WriteBool(Add); buf.WriteBool(ForLocalPlayer); buf.WriteInt(PlayerId); buf.WriteString(PlayerName); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.LazerHit); buf.WriteInt(AtTick); buf.WriteInt(FiringPlayerId); buf.WriteQuaternion(FiringRotation); buf.WriteInt(HitCharacterId); }
public void Serialize(SerializationBuffer buf) { buf.SeekZero(); buf.WriteInt((int)NetworkMessageID.SpawnCharacter); buf.WriteInt(CharacterId); buf.WriteInt(ForPlayerId); buf.WriteVector3(SpawnPosition); buf.WriteQuaternion(SpawnRotation); }
private void SerializePlayerCommands(SerializationBuffer buf, PC forPlayer, int forTick, bool mustBeFullState) { buf.SeekZero(); buf.WriteInt((int)FrameworkNetworkMessageID.PlayerCommands); buf.WriteInt(forTick); buf.WriteInt(forPlayer.GetId()); CMD currentCommands = forPlayer.GetCommands(); currentCommands.WriteToBuffer(buf, mustBeFullState); }
private void InitializeNetworking() { NetworkTransport.Shutdown(); NetworkTransport.Init(GlobalConfig); Application.runInBackground = true; // Network buffer for messages NetBuffer = new SerializationBuffer(GlobalConfig.MaxPacketSize, 1.5f); // Message channels ConnectionConfig.Channels.Clear(); ConnectionConfig.AddChannel(QosType.ReliableSequenced); ConnectionConfig.AddChannel(QosType.UnreliableFragmented); ConnectionConfig.AddChannel(QosType.Unreliable); }
public void WriteToBuffer(SerializationBuffer buf, bool mustBeFullState) { int characterStatesCount = CharacterStates.Count; buf.WriteInt(characterStatesCount); for (int i = 0; i < characterStatesCount; i++) { buf.WriteInt(CharacterStates[i].DataId); buf.WriteVector3(CharacterStates[i].DataStruct.MotorState.Position); buf.WriteQuaternion(CharacterStates[i].DataStruct.MotorState.Rotation); buf.WriteVector3(CharacterStates[i].DataStruct.MotorState.BaseVelocity); buf.WriteBool(CharacterStates[i].DataStruct.IsStunned); } }
private void SerializeGlobalSnapshot(SerializationBuffer buf, ref GlobalSnapshot <CMD, WS> forSnapshot, int forTick, bool mustBeFullState) { buf.SeekZero(); buf.WriteInt((int)FrameworkNetworkMessageID.GlobalState); buf.WriteInt(forTick); // Commands snapshot int commandsCount = forSnapshot.CommandsSnapshot.PlayerCommands.Count; buf.WriteInt(commandsCount); for (int i = 0; i < commandsCount; i++) { buf.WriteInt(forSnapshot.CommandsSnapshot.PlayerCommands[i].DataId); forSnapshot.CommandsSnapshot.PlayerCommands[i].DataStruct.WriteToBuffer(buf, mustBeFullState); } // World snapshot forSnapshot.WorldSnapshot.WriteToBuffer(buf, mustBeFullState); }
public void Deserialize(SerializationBuffer buf) { Tick = buf.ReadInt(); Timestamp = buf.ReadInt(); }
public void Deserialize(SerializationBuffer buf) { SceneName = buf.ReadString(); }
public void Deserialize(SerializationBuffer buf) { ForPlayerId = buf.ReadInt(); ForTick = buf.ReadInt(); }
public void Deserialize(SerializationBuffer buf) { Event = (EventType)buf.ReadInt(); }
public void ReadFromBuffer(SerializationBuffer buf) { KinematicCharacterSubsystemState.ReadFromBuffer(buf); }
public void WriteToBuffer(SerializationBuffer buf, bool mustBeFullState) { KinematicCharacterSubsystemState.WriteToBuffer(buf, mustBeFullState); }
public void Deserialize(SerializationBuffer buf) { PlayerId = buf.ReadInt(); IsLocalPlayer = buf.ReadBool(); }
public void Deserialize(SerializationBuffer buf) { PlayerName = buf.ReadString(); }