protected override bool OnRead()
        {
            bool bufferReadValid = true;

            this.Peer = GameNetworkMessage.ReadNetworkPeerReferenceFromPacket(ref bufferReadValid);
            ulong part1 = GameNetworkMessage.ReadUlongFromPacket(CompressionBasic.DebugULongNonCompressionInfo, ref bufferReadValid);
            ulong part2 = GameNetworkMessage.ReadUlongFromPacket(CompressionBasic.DebugULongNonCompressionInfo, ref bufferReadValid);
            ulong part3 = GameNetworkMessage.ReadUlongFromPacket(CompressionBasic.DebugULongNonCompressionInfo, ref bufferReadValid);
            ulong part4 = GameNetworkMessage.ReadUlongFromPacket(CompressionBasic.DebugULongNonCompressionInfo, ref bufferReadValid);

            this.BannerCode = GameNetworkMessage.ReadStringFromPacket(ref bufferReadValid);
            if (bufferReadValid)
            {
                this.ProvidedId = new PlayerId(part1, part2, part3, part4);
            }
            this.BodyProperties    = GameNetworkMessage.ReadBodyPropertiesFromPacket(ref bufferReadValid);
            this.ChosenBadgeIndex  = GameNetworkMessage.ReadIntFromPacket(CompressionBasic.PlayerChosenBadgeCompressionInfo, ref bufferReadValid);
            this.ForcedAvatarIndex = GameNetworkMessage.ReadIntFromPacket(CompressionBasic.ForcedAvatarIndexCompressionInfo, ref bufferReadValid);
            return(bufferReadValid);
        }