Lua [arz]на каком клиенте играет чубрик

Vespan

loneliness
Автор темы
Проверенный
2,103
1,633
Версия SA-MP
  1. Любая
Скрипт чекает игроков в зоне-стрима в /id,и выводит на каком клиенте играет челик(mobile,vanila,arz launcher).
1662645506684.png

Зависимости:SAMP.lua
Активация:Автоматическая.
(читом не являеться так как не рендериться текст если игрок за стеной,и дистанция рендера текста 20m(как в /dl))
(зачем?Не знаю,я хочу питсу)

 

Вложения

  • [arz]client in player.lua
    3.2 KB · Просмотры: 53
Последнее редактирование:

chapo

🫡 В армии с 17.10.2023. В ЛС НЕ ОТВЕЧАЮ
Друг
8,771
11,214
мне кажется что так было бы прикольнее
1662837336997.png
1662837390043.png

Lua:
local hook = require 'hooks'
local list = {
-- [id] = text,
}

function main()
   while not isSampAvailable() do wait(0) end
   renderNick = hook.call.new('int(__cdecl *)(char* buf, const char* fmt, const char* nick, int id)', renderNick, getModuleHandle('samp.dll') + 0x70F4E)
   sampRegisterChatCommand('test_listadd', function(arg)
      if arg:match('(%d+) (.+)') then
         local id, l = arg:match('(%d+) (.+)')
         list[tonumber(id)] = l
      end
   end)
   wait(-1)
end

function renderNick(buf, fmt, nick, id)
   return renderNick(buf, list[id] and sampGetPlayerNickname(id)..' ('..id..'){ffffff} ['..list[id]..']' or fmt, nick, id)
end
 
D

deleted-user-452405

Гость
мне кажется что так было бы прикольнее
Посмотреть вложение 167969Посмотреть вложение 167970
Lua:
local hook = require 'hooks'
local list = {
-- [id] = text,
}

function main()
   while not isSampAvailable() do wait(0) end
   renderNick = hook.call.new('int(__cdecl *)(char* buf, const char* fmt, const char* nick, int id)', renderNick, getModuleHandle('samp.dll') + 0x70F4E)
   sampRegisterChatCommand('test_listadd', function(arg)
      if arg:match('(%d+) (.+)') then
         local id, l = arg:match('(%d+) (.+)')
         list[tonumber(id)] = l
      end
   end)
   wait(-1)
end

function renderNick(buf, fmt, nick, id)
   return renderNick(buf, list[id] and sampGetPlayerNickname(id)..' ('..id..'){ffffff} ['..list[id]..']' or fmt, nick, id)
end
Урааа блять я попал на твой скрин!!!
 

ARMOR

kjor32 is legend
Модератор
4,853
6,081
мне кажется что так было бы прикольнее
Посмотреть вложение 167969Посмотреть вложение 167970
Lua:
local hook = require 'hooks'
local list = {
-- [id] = text,
}

function main()
   while not isSampAvailable() do wait(0) end
   renderNick = hook.call.new('int(__cdecl *)(char* buf, const char* fmt, const char* nick, int id)', renderNick, getModuleHandle('samp.dll') + 0x70F4E)
   sampRegisterChatCommand('test_listadd', function(arg)
      if arg:match('(%d+) (.+)') then
         local id, l = arg:match('(%d+) (.+)')
         list[tonumber(id)] = l
      end
   end)
   wait(-1)
end

function renderNick(buf, fmt, nick, id)
   return renderNick(buf, list[id] and sampGetPlayerNickname(id)..' ('..id..'){ffffff} ['..list[id]..']' or fmt, nick, id)
end
Код с поддержкой всех версий SAMP ( Вроде должен работать )
Lua:
local hook = require 'hooks'
local list = {
-- [id] = text,
}

function get_samp_version()
    if samp_base == nil or samp_base == 0 then
        samp_base = getModuleHandle("samp.dll")
    end

    if samp_base ~= 0 then
        local e_lfanew = ffi.cast("long*", samp_base + 60)[0]
        local nt_header = samp_base + e_lfanew
        local entry_point_addr = ffi.cast("unsigned int*", nt_header + 40)[0]
        if entry_point_addr == 0x31DF13 then
            return 0x70F4E
        elseif entry_point_addr == 0x3195DD then
            return 0x70FED
        elseif entry_point_addr == 0xCC4D0 then
            return 0x74E3F
        elseif entry_point_addr == 0xC52B0 then
            return 0x755AC
        elseif entry_point_addr == 0xFDB60 then
            return 0x74FCD
        end
    end
    return "unknown"
end

function main()
   while not isSampAvailable() do wait(0) end
   renderNick = hook.call.new('int(__cdecl *)(char* buf, const char* fmt, const char* nick, int id)', renderNick, getModuleHandle('samp.dll') + get_samp_version())
   sampRegisterChatCommand('test_listadd', function(arg)
      if arg:match('(%d+) (.+)') then
         local id, l = arg:match('(%d+) (.+)')
         list[tonumber(id)] = l
      end
   end)
   wait(-1)
end

function renderNick(buf, fmt, nick, id)
   return renderNick(buf, list[id] and sampGetPlayerNickname(id)..' ('..id..'){ffffff} ['..list[id]..']' or fmt, nick, id)
end
 

Rikxix

Активный
242
95
У меня один вопрос... А кому это надо собственно? Для чего этот скрипт собственно нужен .-. как по мне бесполезная фигня, не хочу оскорблять чужой труд может я чего то не догоняю и если это так то объясните мне тупому для чего и кому нахер нужен будет этот скрипт? Или кому то так важно видеть с какого лаунчера играет человек ._.
 

ARMOR

kjor32 is legend
Модератор
4,853
6,081
У меня один вопрос... А кому это надо собственно? Для чего этот скрипт собственно нужен .-. как по мне бесполезная фигня, не хочу оскорблять чужой труд может я чего то не догоняю и если это так то объясните мне тупому для чего и кому нахер нужен будет этот скрипт? Или кому то так важно видеть с какого лаунчера играет человек ._.
Админам может быть полезно, ибо на мобильном клиенте есть свои баги, и тем самым можно понять нарушает ли игрок намеренно читами, или случайно из-за багов игры
 

Vespan

loneliness
Автор темы
Проверенный
2,103
1,633
У меня один вопрос... А кому это надо собственно? Для чего этот скрипт собственно нужен .-. как по мне бесполезная фигня, не хочу оскорблять чужой труд может я чего то не догоняю и если это так то объясните мне тупому для чего и кому нахер нужен будет этот скрипт? Или кому то так важно видеть с какого лаунчера играет человек ._.
1662912728231.png
сюда тыкни что бы забыть,или нажми комбинацию клавиш CONTROL + W
Screenshot_1.png

Жду что бы ты своими ручками что то наклякцал по клавиатуре,интересно получиться очень полезная штучка,или такая как у меня :=-(
да уж обидно от твоих слов,хочеться прям UWU
depositphotos_1336558-stock-photo-gallows-noose.jpg
UWU
спасибо за теплые слова,надеюсь научился ты пользоваться клавиатурой или мышкой что бы закрыть эту вкладку.
Админам может быть полезно, ибо на мобильном клиенте есть свои баги, и тем самым можно понять нарушает ли игрок намеренно читами, или случайно из-за багов игры
99.9% админов пользуються админ тулсом,а там пишет на каком клиенте играет чубрик,но пох.

У меня один вопрос... А кому это надо собственно? Для чего этот скрипт собственно нужен .-. как по мне бесполезная фигня, не хочу оскорблять чужой труд может я чего то не догоняю и если это так то объясните мне тупому для чего и кому нахер нужен будет этот скрипт? Или кому то так важно видеть с какого лаунчера играет человек ._.
не вот если реально ты обиделся на то что я написал,то тогда нахуя такое пишешь,смысл,кто знает кому пригодиться,может кому то исходник потребуеться,админам может пригодиться,обычным игрокам,включи мозг и подумай.
 

Вложения

  • 1662912799084.png
    1662912799084.png
    7.1 KB · Просмотры: 17
Последнее редактирование:
  • Ха-ха
  • Нравится
  • Bug
Реакции: Nerykery, Rikxix и cooqie

Rikxix

Активный
242
95
Посмотреть вложение 168111сюда тыкни что бы забыть,или нажми комбинацию клавиш CONTROL + WПосмотреть вложение 168113
Жду что бы ты своими ручками что то наклякцал по клавиатуре,интересно получиться очень полезная штучка,или такая как у меня :=-(
да уж обидно от твоих слов,хочеться прям UWU
depositphotos_1336558-stock-photo-gallows-noose.jpg
UWU
спасибо за теплые слова,надеюсь научился ты пользоваться клавиатурой или мышкой что бы закрыть эту вкладку.

99.9% админов пользуються админ тулсом,а там пишет на каком клиенте играет чубрик,но пох.


не вот если реально ты обиделся на то что я написал,то тогда нахуя такое пишешь,смысл,кто знает кому пригодиться,может кому то исходник потребуеться,админам может пригодиться,обычным игрокам,включи мозг и подумай.
Если честно если ты пытался меня этим задеть то у тебя это вряд ли получилось, зачем же ты весь свой детский гнев на меня выплеснул? Я ведь попросил объяснить для чего создан скрипт а не наезжать со словами, "Ты не ахуел ли спрашивать? Прожми Ctrl + W Полудурок"
 

Vespan

loneliness
Автор темы
Проверенный
2,103
1,633
У меня один вопрос... А кому это надо собственно? Для чего этот скрипт собственно нужен .-. как по мне бесполезная фигня, не хочу оскорблять чужой труд может я чего то не догоняю и если это так то объясните мне тупому для чего и кому нахер нужен будет этот скрипт? Или кому то так важно видеть с какого лаунчера играет человек ._.
Админам может быть полезно, ибо на мобильном клиенте есть свои баги, и тем самым можно понять нарушает ли игрок намеренно читами, или случайно из-за багов игры
не вот если реально ты обиделся на то что я написал,то тогда нахуя такое пишешь,смысл,кто знает кому пригодиться,может кому то исходник потребуеться,админам может пригодиться,обычным игрокам,включи мозг и подумай.
 

Rikxix

Активный
242
95
ты всё сообщение оскорблял меня и только под конец объяснил, ты думаешь я стал дочитывать оскорбления в свою сторону на 5-7 строк?
 
  • Влюблен
Реакции: Vespan

xcdco

Известный
335
160
У меня один вопрос... А кому это надо собственно? Для чего этот скрипт собственно нужен .-. как по мне бесполезная фигня, не хочу оскорблять чужой труд может я чего то не догоняю и если это так то объясните мне тупому для чего и кому нахер нужен будет этот скрипт? Или кому то так важно видеть с какого лаунчера играет человек ._.
Рванка.
Я на ЦР и у лаунчерских игроков коллизия на т/с и игроков.

Рванки/Кикеры могут работать по ID.
 

cvqez

Активный
99
25
мне кажется что так было бы прикольнее
Посмотреть вложение 167969Посмотреть вложение 167970
Lua:
local hook = require 'hooks'
local list = {
-- [id] = text,
}

function main()
   while not isSampAvailable() do wait(0) end
   renderNick = hook.call.new('int(__cdecl *)(char* buf, const char* fmt, const char* nick, int id)', renderNick, getModuleHandle('samp.dll') + 0x70F4E)
   sampRegisterChatCommand('test_listadd', function(arg)
      if arg:match('(%d+) (.+)') then
         local id, l = arg:match('(%d+) (.+)')
         list[tonumber(id)] = l
      end
   end)
   wait(-1)
end

function renderNick(buf, fmt, nick, id)
   return renderNick(buf, list[id] and sampGetPlayerNickname(id)..' ('..id..'){ffffff} ['..list[id]..']' or fmt, nick, id)
end
изменить цвет айди можно?