Помощь в изменении скриптов

FYP

Известный
Автор темы
Администратор
1,758
5,722
Здесь вы можете попросить других пользователей внести какие-то небольшие изменения в скрипт, например, изменить активацию.
Для вопросов по программированию и разработке на форуме есть отдельная категория Разработка.

Рекомендации:
  1. Не просите о редактировании .asi, .sf, .luac, .dll, .exe и прочих файлов, не поддающихся простой декомпиляции. Скрипты формата .ahk (AutoHotKey), .lua (Lua/MoonLoader) и .cs (CLEO) легко поддаются изменению.
  2. Сообщения по типу "спасибо, помог" по правилам форума считаются флудом и скорее всего будут удалены. Если вам помогли, вы можете нажать кнопку Мне нравится под ответом - это даст понять, что ответ верный.
  3. За злонамеренное распространение вредоносного ПО - перманентный бан. Имейте это в виду.
Удаление копирайтов является нарушением авторских прав, если автор не дал на это своего разрешения. Правила BlastHack запрещают нарушать авторские права, поэтому если вам нужно их убрать - обращайтесь к автору.
 
Последнее редактирование:

painw

Известный
113
63
Как можно доработать следующий код,чтобы серийник брался не из скрипта а с сайта пастебин?
local ffi = require("ffi")
ffi.cdef[[
int __stdcall GetVolumeInformationA(
const char* lpRootPathName,
char* lpVolumeNameBuffer,
uint32_t nVolumeNameSize,
uint32_t* lpVolumeSerialNumber,
uint32_t* lpMaximumComponentLength,
uint32_t* lpFileSystemFlags,
char* lpFileSystemNameBuffer,
uint32_t nFileSystemNameSize
);
]]
local serial = ffi.new("unsigned long[1]", 0)
ffi.C.GetVolumeInformationA(nil, nil, 0, serial, nil, nil, nil, 0)
serial = serial[0]

function main()
if not isSampLoaded() then return end
while not isSamAvailable() do wait(100) end
if serial == 'серийник логического диска, на котором скрипт должен работать' then
--Code
else
print('Не-не братан, кажись ты чё-то попутал..')
thisScript().unload
end
end
Lua:
local ffi = require("ffi")
local requests = require('requests')
ffi.cdef[[
    int __stdcall GetVolumeInformationA(
    const char* lpRootPathName,
    char* lpVolumeNameBuffer,
    uint32_t nVolumeNameSize,
    uint32_t* lpVolumeSerialNumber,
    uint32_t* lpMaximumComponentLength,
    uint32_t* lpFileSystemFlags,
    char* lpFileSystemNameBuffer,
    uint32_t nFileSystemNameSize
    );
]]
local serial = ffi.new("unsigned long[1]", 0)
ffi.C.GetVolumeInformationA(nil, nil, 0, serial, nil, nil, nil, 0)
serial = serial[0]

local a = decodeJson(requests.get("https://pastebin.com/raw/6fhVRt0v").text)

function main()
    while not isSampAvailable() do wait(0) end
    if serial == tonumber(a['serial']) then
        sampAddChatMessage('ok', -1)
    else
        sampAddChatMessage('not ok', -1)
        thisScript():unload()
    end
end
 
  • Клоун
  • Влюблен
Реакции: XRLM и congic

U123ui

Новичок
4
0
Здравствуйте, возможно ли создать такой же lua файл, но только, чтобы не открывал Трудовую Книжку когда нажимаете на M ?

 

976h

Участник
90
34
Здравствуйте, возможно ли создать такой же lua файл, но только, чтобы не открывал Трудовую Книжку когда нажимаете на M ?

Lua:
script_name('AntiBattlePass');
script_author('Will Be Fine');

require 'moonloader'

function onWindowMessage(msg, wparam, lparam)
    if msg == 0x0100 then
        if wparam == 77 then
            consumeWindowMessage(true, false)
        end
    end
end
 

congic

Активный
275
85
Кто может заставить работать следующий код?
local mb = require('MoonBot')

function onBotRPC(bot, rpcId, bs)
sampAddChatMessage(string.format('Bot %s got RPC: %d', bot.name, rpcId), -1)
end

function main()
sampRegisterChatCommand('bot.add', addCommand)
sampRegisterChatCommand('bot.remove', removeCommand)
wait(-1)
end
function addCommand(arg)
local bot = mb.add(arg)
bot:setProxy('163.5.60.152',12605, 'user157544', 'mvwhq3')
bot:useProxy('true')
bot:connect()
sampAddChatMessage(string.format('Connecting %s', bot.name), -1)
end

function removeCommand(arg)
if arg:match('%d+') then
local bot = mb.getBotHandleByIndex(tonumber(arg))
if bot ~= nil then
sampAddChatMessage(string.format('Deleting %s', bot.name), -1)
mb.remove(tonumber(arg))
end
end
end
 

sakuta

Участник
35
8
Кто может заставить работать следующий код?
local mb = require('MoonBot')

function onBotRPC(bot, rpcId, bs)
sampAddChatMessage(string.format('Bot %s got RPC: %d', bot.name, rpcId), -1)
end

function main()
sampRegisterChatCommand('bot.add', addCommand)
sampRegisterChatCommand('bot.remove', removeCommand)
wait(-1)
end
function addCommand(arg)
local bot = mb.add(arg)
bot:setProxy('163.5.60.152',12605, 'user157544', 'mvwhq3')
bot:useProxy('true')
bot:connect()
sampAddChatMessage(string.format('Connecting %s', bot.name), -1)
end

function removeCommand(arg)
if arg:match('%d+') then
local bot = mb.getBotHandleByIndex(tonumber(arg))
if bot ~= nil then
sampAddChatMessage(string.format('Deleting %s', bot.name), -1)
mb.remove(tonumber(arg))
end
end
end
А что в нем не работает? ошибку скинь которая тебе выдается

Кто может заставить работать следующий код?
local mb = require('MoonBot')

function onBotRPC(bot, rpcId, bs)
sampAddChatMessage(string.format('Bot %s got RPC: %d', bot.name, rpcId), -1)
end

function main()
sampRegisterChatCommand('bot.add', addCommand)
sampRegisterChatCommand('bot.remove', removeCommand)
wait(-1)
end
function addCommand(arg)
local bot = mb.add(arg)
bot:setProxy('163.5.60.152',12605, 'user157544', 'mvwhq3')
bot:useProxy('true')
bot:connect()
sampAddChatMessage(string.format('Connecting %s', bot.name), -1)
end

function removeCommand(arg)
if arg:match('%d+') then
local bot = mb.getBotHandleByIndex(tonumber(arg))
if bot ~= nil then
sampAddChatMessage(string.format('Deleting %s', bot.name), -1)
mb.remove(tonumber(arg))
end
end
end

Ну должно работать.

proxy:
local mb = require('MoonBot')



function onBotRPC(bot, rpcId, bs)

    sampAddChatMessage(string.format('Bot %s got RPC: %d', bot.name, rpcId), -1)

end



function main()

    sampAddChatMessage('Я запустился')

    sampRegisterChatCommand('bot.add', addCommand)

    sampRegisterChatCommand('bot.remove', removeCommand)

    wait(-1)

end

function addCommand(arg) -- Функция, вызываемая при команде /bot.add
    local bot = mb.add(arg) -- Создаём бота. Если бы ник был пустой, то модуль сам бы назвал бота в формате UnnamedИНДЕКС
    bot:setProxy('163.5.60.152',12605, 'user157544', 'mvwhq3')
    bot:useProxy(true, function(status)
    print(string.format('Connection to proxy: %s', status and 'success' or 'failed'))
    if status then bot:connect() end
    end)
    bot:connect() -- Подключаем бота. Как видите, айпи и порт не указан: бот возьмёт их сам. Мы бы могли их указать сами, но щас это не нужно
    sampAddChatMessage(string.format('Connecting %s', bot.name), -1) -- Выводим сообщение с ником бота
end


function removeCommand(arg)

    if arg:match('%d+') then

        local bot = mb.getBotHandleByIndex(tonumber(arg))

        if bot ~= nil then

            sampAddChatMessage(string.format('Deleting %s', bot.name), -1)

            mb.remove(tonumber(arg))

        end

    end

end
 
Последнее редактирование:
  • Влюблен
Реакции: congic

congic

Активный
275
85
А что в нем не работает? ошибку скинь которая тебе выдается



Ну должно работать.

proxy:
local mb = require('MoonBot')



function onBotRPC(bot, rpcId, bs)

    sampAddChatMessage(string.format('Bot %s got RPC: %d', bot.name, rpcId), -1)

end



function main()

    sampAddChatMessage('Я запустился')

    sampRegisterChatCommand('bot.add', addCommand)

    sampRegisterChatCommand('bot.remove', removeCommand)

    wait(-1)

end

function addCommand(arg) -- Функция, вызываемая при команде /bot.add
    local bot = mb.add(arg) -- Создаём бота. Если бы ник был пустой, то модуль сам бы назвал бота в формате UnnamedИНДЕКС
    bot:setProxy('163.5.60.152',12605, 'user157544', 'mvwhq3')
    bot:useProxy(true, function(status)
    print(string.format('Connection to proxy: %s', status and 'success' or 'failed'))
    if status then bot:connect() end
    end)
    bot:connect() -- Подключаем бота. Как видите, айпи и порт не указан: бот возьмёт их сам. Мы бы могли их указать сами, но щас это не нужно
    sampAddChatMessage(string.format('Connecting %s', bot.name), -1) -- Выводим сообщение с ником бота
end


function removeCommand(arg)

    if arg:match('%d+') then

        local bot = mb.getBotHandleByIndex(tonumber(arg))

        if bot ~= nil then

            sampAddChatMessage(string.format('Deleting %s', bot.name), -1)

            mb.remove(tonumber(arg))

        end

    end

end
[21:58:41.854019] (error) rakbot.lua: opcode '0AF8' call caused an unhandled exception
stack traceback:
[C]: in function 'sampAddChatMessage'
C:\samp zima 2\зима\moonloader\rakbot.lua:15: in function <C:\samp zima 2\зима\moonloader\rakbot.lua:13>
[21:58:41.854019] (error) rakbot.lua: Script died due to an error. (0F236C34)
 

minxty

Известный
888
738
[21:58:41.854019] (error) rakbot.lua: opcode '0AF8' call caused an unhandled exception
stack traceback:
[C]: in function 'sampAddChatMessage'
C:\samp zima 2\зима\moonloader\rakbot.lua:15: in function <C:\samp zima 2\зима\moonloader\rakbot.lua:13>
[21:58:41.854019] (error) rakbot.lua: Script died due to an error. (0F236C34)
добавь в начало меина -
Lua:
repeat wait(0) until isSampAvailable()
 
  • Влюблен
Реакции: congic

kolinggom

Новичок
11
0
можно сделать что бы после перезахода не сбивалось значение?
 

Вложения

  • asp.lua
    445 байт · Просмотры: 4

sakuta

Участник
35
8
Ну отсоединяет от сервера server closed the connection
Cекунду.

Ну отсоединяет от сервера server closed the connection
Держи

reconnect:
local mq = require("samp.events")

function main()
    -- ну тут свой код и так понятно.

    while true do
        wait(0)

        -- тут тоже твое если надо

    end
end

function mq.onServerMessage()
    if text:find('Server closed the connection.') then reconnect(10000) end
end

Cекунду.


Держи

reconnect:
local mq = require("samp.events")

function main()
    -- ну тут свой код и так понятно.

    while true do
        wait(0)

        -- тут тоже твое если надо

    end
end

function mq.onServerMessage()
    if text:find('Server closed the connection.') then reconnect(10000) end
end
А, стоп, тебе на раксамп или просто на обычный самп?
 
  • Bug
Реакции: mooh и minxty

congic

Активный
275
85
Cекунду.


Держи

reconnect:
local mq = require("samp.events")

function main()
    -- ну тут свой код и так понятно.

    while true do
        wait(0)

        -- тут тоже твое если надо

    end
end

function mq.onServerMessage()
    if text:find('Server closed the connection.') then reconnect(10000) end
end


А, стоп, тебе на раксамп или просто на обычный самп?
обычный самп с использованием библиотеки мунбот