Подписывайтесь на наш Telegram и не пропускайте важные новости! Перейти

Вопрос Как заматчить мой лагрекорд со скитовым

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
26 Июн 2025
Сообщения
36
Реакции
1
как мне адекватно реализовать лагрекорд? я хочу кое что подшаманить с бектреком,
сначало видео перед тем как обьяснить свою проблему :
(noad)
проблема в том что у меня лагрекорд хватает онли телепорт бектрек хистори скита (я про который на реке постоянно тепается вплотную к боту) как я могу это исправить,я учитываю дедтайм,из кваров учитываю :

cvars:
Expand Collapse Copy
local sv_maxunlag = cvar.sv_maxunlag
local cl_interp = cvar.cl_interp
local cl_updaterate = cvar.cl_updaterate
local cl_interp_ratio = cvar.cl_interp_ratio
local sv_minupdaterate = cvar.sv_minupdaterate
local sv_maxupdaterate = cvar.sv_maxupdaterate
local sv_client_min_interp_ratio = cvar.sv_client_min_interp_ratio
local sv_client_max_interp_ratio = cvar.sv_client_max_interp_ratio

делаю проверку на валидный рекорд вот так
valid_record:
Expand Collapse Copy
    --# client_latency = client.latency() and get_lerp_time() = calculates lerp time using cvars
    local correct = 0.0
    correct = correct + client_latency()
    correct = correct + get_lerp_time()
    correct = clamp(correct, 0.0, sv_maxunlag:get_float())

    local curtime = globals_curtime()
    local delta_time = correct - (curtime - record.sim_time)

    return math_abs(delta_time) < 0.2




записываю в рекод таблицу это :

record tbl:
Expand Collapse Copy
        -- this calling in net_update_end
        recs[#recs + 1] = {
            sim_time = sim_time,
            update_tick = update_tick,

            ox = ox, oy = oy, oz = oz,
            vx = vx, vy = vy, vz = vz,

            eye_pitch = eye_pitch,
            eye_yaw = eye_yaw,
            
            --# maybe useless
            lby = lby,

            flags = flags,
            on_ground = on_ground,
            duck_amount = duck_amount,

            --# for vis
            mins_x = mx, mins_y = my, mins_z = mz,
            maxs_x = xx, maxs_y = xy, maxs_z = xz,
            head_x = hx, head_y = hy, head_z = hz,

            choked = choked,
            shifting_tickbase = shifting_tickbase,
            breaking_lag_comp = breaking_lag_comp,
            invalid = false
        }

        local max_size = time_to_ticks(0.4) + 13 --# 13 because arctic.tech


моя догадка это из-за max_size а именно в прибавлении 13 тиков,я не нашел опенсурс лагкомпенсацию читовскую кроме артика
помогите кто шарит пожалуйста,буду благодарен.
хаскер жопы помоги пожалуст. . .
 
хаскер жопы помоги пожалуст. . .
хз я реверсил скитус, у меня почти помоему 100% аккураси со скитом (если не учитывать что у него моделька бектрека с залерпаным оригином и не только)
у тебя много чего нехватает как для записи, так и в ис_валиде + нет вещей которых нет в паблике и кусков что есть в паблике, советую хотябы открыть исходник движка игры и посмотреть самую базу чтоб понять каких вещей тебе ещё может нехватать, спунфидом я заниматся не хочу темболее для аи пиков которые я ненавижу...
 
хз я реверсил скитус, у меня почти помоему 100% аккураси со скитом (если не учитывать что у него моделька бектрека с залерпаным оригином и не только)
у тебя много чего нехватает как для записи, так и в ис_валиде + нет вещей которых нет в паблике и кусков что есть в паблике, советую хотябы открыть исходник движка игры и посмотреть самую базу чтоб понять каких вещей тебе ещё может нехватать, спунфидом я заниматся не хочу темболее для аи пиков которые я ненавижу...
мне не ток для аипика,мне эт надо еще для 3 моих реализаций помимо аипика,это чисто для говноедов делаю,спасибо большое
 
local max_size = time_to_ticks(0.4) + 13
Это говно ебаное, по сути у тебя рекордов не может быть больше 32
Код:
Expand Collapse Copy
while (records[i].size() > 32)
    records[i].pop_back();
самый дефолтный чек, но есть пропернее

--# client_latency = client.latency() and get_lerp_time() = calculates lerp time using cvars local correct = 0.0 correct = correct + client_latency() correct = correct + get_lerp_time() correct = clamp(correct, 0.0, sv_maxunlag:get_float()) local curtime = globals_curtime() local delta_time = correct - (curtime - record.sim_time) return math_abs(delta_time) < 0.2
Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
У тебя также не хватает чеков на чок аля dead time
 
Это говно ебаное, по сути у тебя рекордов не может быть больше 32
Код:
Expand Collapse Copy
while (records[i].size() > 32)
    records[i].pop_back();
самый дефолтный чек, но есть пропернее


Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
У тебя также не хватает чеков на чок аля dead time
спасибо,учту.
 
Это говно ебаное, по сути у тебя рекордов не может быть больше 32
Код:
Expand Collapse Copy
while (records[i].size() > 32)
    records[i].pop_back();
самый дефолтный чек, но есть пропернее


Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
У тебя также не хватает чеков на чок аля dead time
dead_time???&&&
 
ez
valid_record:
Expand Collapse Copy
    --# client_latency = client.latency() and get_lerp_time() = calculates lerp time using cvars
    local correct = 0.0
    correct = correct + client_latency()
    correct = correct + get_lerp_time()
    correct = clamp(correct, 0.0, sv_maxunlag:get_float())

    local curtime = globals_curtime()
    local delta_time = correct - (curtime - record.sim_time)

    return math_abs(delta_time) < 0.2


Код:
Expand Collapse Copy
correct = clamp(latency + lerp, 0, sv_maxunlag) → target_time = curtime - correct
sim_time <= target_time + lerp

Код:
Expand Collapse Copy
for i = 1, #recs do
    if is_valid(recs[i]) and recs[i].sim_time <= target_time + lerp then
        sum_x += recs[i].ox
        sum_y += recs[i].oy
        sum_z += recs[i].oz
        count++
    end
end

if count > 0 then
    avg_x = sum_x / count
    avg_y = sum_y / count
    avg_z = sum_z / count
end

лично я так делаю
ну и curtime - record.sim_time > sv_maxunlagcurtime - record.sim_time > sv_maxunlag
 
Последнее редактирование:

Пожалуйста, зарегистрируйтесь или авторизуйтесь, чтобы увидеть содержимое.

ну вообще у скит чек дедтайма происходит след примером
ПРОТОТИП:

Код:
Expand Collapse Copy
    void __userpurge(a3@<xmm0>, a4@<xmm1>, a5@<xmm2>,
                     a6@<xmm3>, a7@<xmm4>, a1@<edx>, a2@<ecx>, a8)

Код:
Expand Collapse Copy
    if (a4 < min_threshold || |a5| > max_value) {
        *a2 = CONST4 + a6;
        return;
    }
Код:
Expand Collapse Copy
    if (*a2 - a6 < 0.0) {
        delta = a7 - a3
        if (|delta| > THRESHOLD_1) delta = normalize(delta)
        if (|delta| > MEMORY[0x43471D84]) {
            *a2 = CONST5 + a6;  // INVALID
        }
    }

dead_time: sim_time + lerp >= server_tick - 0.2
 
ez



Код:
Expand Collapse Copy
correct = clamp(latency + lerp, 0, sv_maxunlag) → target_time = curtime - correct
sim_time <= target_time + lerp

Код:
Expand Collapse Copy
for i = 1, #recs do
    if is_valid(recs[i]) and recs[i].sim_time <= target_time + lerp then
        sum_x += recs[i].ox
        sum_y += recs[i].oy
        sum_z += recs[i].oz
        count++
    end
end

if count > 0 then
    avg_x = sum_x / count
    avg_y = sum_y / count
    avg_z = sum_z / count
end

лично я так делаю
ну и curtime - record.sim_time > sv_maxunlagcurtime - record.sim_time > sv_maxunlag
так у тебя тоже оно не синкается всеравно, хочу сказать что оно у тебя тоже вронг опять же из за недостачи чеков
 
все чеки есть проблема лерпа
нет у тебя всех чеков, игру пореверси и поймешь почему я тебе так говорю + я вижу ты заметил что у тебя и бектрек не растёт как это происходит в читах, не оттелепорчивается назад как это происходит в читах, при фейкдаке не происходит у тебя ничего, при пинге у тебя нет еще приколов, у тебя просто нихуя нет, тут нет проблемы в лерпе ни одной нахуй потому что он самым дефолтным методом аимвара с тех годов если че по сей день валидный остается
 

Похожие темы

Ответы
3
Просмотры
6K
Назад
Сверху Снизу