void CoreTick()
        {
            if (DoDayNightCycle)
            {
                Ticks++;
            }
            CheckAsyncResources();
            wom.Tick();
            game.Mode.Tick();

            if (receivedFirstPosition)
            {
                LocalPlayer player = game.LocalPlayer;
                classic.WritePosition(player.Position, player.HeadY, player.HeadX);
            }

            pingTicks++;
            if (pingTicks >= 20 && cpeData.twoWayPing)
            {
                cpe.WriteTwoWayPing(false, PingList.NextTwoWayPingData());
                pingTicks = 0;
            }

            if (writer.index > 0)
            {
                SendPacket();
            }
        }
        void CoreTick()
        {
            CheckAsyncResources();
            wom.Tick();
            if (!receivedFirstPosition)
            {
                return;
            }

            LocalPlayer player = game.LocalPlayer;

            classic.WritePosition(player.Position, player.HeadY, player.HeadX);
            pingTicks++;

            if (pingTicks >= 20 && cpeData.twoWayPing)
            {
                cpe.WriteTwoWayPing(false, PingList.NextTwoWayPingData());
                pingTicks = 0;
            }
            SendPacket();
        }