[RAKBOT] Координаты из 207 пакета

bottom_text

Известный
Автор темы
675
317
Версия MoonLoader
Другое
Столкнулся с проблемой чтения позиции из входящего 207 пакета в ракботе, подскажите как надо
 
Решение
Решение вопроса получения координат подсказал один человек из беседы ракбота, спасибо ему и всем остальным, кто пытался помочь
Lua:
local p = getPlayer(player_id).position     
   printLog(p.x .. ' ' .. p.y .. ' ' .. p.z)

k1zn

О КУ)))
Всефорумный модератор
2,404
2,052
Lua:
function onSendPacket(id, data, size)
    if id == 207 then
        bs = bitStreamInit(data, size)
        id = bitStreamReadByte(bs) -- [UINT8 Packet_ID]
        lr = bitStreamReadWord(bs) -- [UINT16 lrKey]
        ud = bitStreamReadWord(bs) -- [UINT16 udKey]
        keys = bitStreamReadWord(bs) -- [UINT16 keys]
        x = bitStreamReadFloat(bs) -- [float X]
        y = bitStreamReadFloat(bs) -- [float Y]
        z = bitStreamReadFloat(bs) -- [float Z]
    end
end
 

bottom_text

Известный
Автор темы
675
317
Lua:
function onSendPacket(id, data, size)
    if id == 207 then
        bs = bitStreamInit(data, size)
        id = bitStreamReadByte(bs) -- [UINT8 Packet_ID]
        lr = bitStreamReadWord(bs) -- [UINT16 lrKey]
        ud = bitStreamReadWord(bs) -- [UINT16 udKey]
        keys = bitStreamReadWord(bs) -- [UINT16 keys]
        x = bitStreamReadFloat(bs) -- [float X]
        y = bitStreamReadFloat(bs) -- [float Y]
        z = bitStreamReadFloat(bs) -- [float Z]
    end
end
Входящего пакета, а не исходящего
 

bottom_text

Известный
Автор темы
675
317
207 id это входящий и только входящий
Мне и нужен входящий
1623182402903.png

onSendPacket ловит исходящие пакеты, которые мне не нужны
 

sc6ut

неизвестный
Модератор
382
1,074
тут можешь посмотреть как правильно читать входящую онфут синхру:
ставишь хук на входящие пакеты и читаешь нужную себе информацию.
 

bottom_text

Известный
Автор темы
675
317
тут можешь посмотреть как правильно читать входящую онфут синхру:
ставишь хук на входящие пакеты и читаешь нужную себе информацию.
Lua:
function onRecvPacket(id, data, size)
    if id == 207 then
        local bs = bitStreamInit(data, size)
        local id = bitStreamReadByte(bs) -- всё норм
        local player_id =  bitStreamReadWord(bs)  -- всё норм 
        local hasLr = bitStreamReadByte(bs) -- хз 
        if hasLr ~= 0 then         
            local lr = bitStreamReadWord(bs)  -- хз
        end
        local hasUd = bitStreamReadByte(bs)  -- хз 
        if hasUd ~= 0 then  
            local ud = bitStreamReadWord(bs)  -- хз
        end
        local keys = bitStreamReadWord(bs)  -- хз
        local x = bitStreamReadFloat(bs) -- точно не норм  
        local y = bitStreamReadFloat(bs)
        local z = bitStreamReadFloat(bs)
        printLog(tostring(x) .. ' ' .. tostring(y) .. ' ' .. tostring(z))
    end
end
Вроде сделал как там, но выводится дрисня всё равно
 
Последнее редактирование:

bottom_text

Известный
Автор темы
675
317
Решение вопроса получения координат подсказал один человек из беседы ракбота, спасибо ему и всем остальным, кто пытался помочь
Lua:
local p = getPlayer(player_id).position     
   printLog(p.x .. ' ' .. p.y .. ' ' .. p.z)