- 1
- 0
- Версия SA-MP
-
- 0.3.7 (R1)
Раньше всё работало но сейчас перестало
Вот лог:
Пробовал переустановить moonloader и все библиотеки но ничего.
Вот лог:
ЛОГ:
[20:31:27.497890] (system) Session started.
[20:31:27.497890] (debug) Module handle: 6CE80000
MoonLoader v.026.4-beta loaded.
Developers: FYP, hnnssy, EvgeN 1137
Copyright (c) 2016, BlastHack Team
https://www.blast.hk/moonloader/
[20:31:27.497890] (info) Working directory: D:\Games\самп\moonloader
[20:31:27.497890] (debug) FP Control: 0009001F
[20:31:27.497890] (debug) Game: GTA SA 1.0.0.0 US
[20:31:27.497890] (system) Installing pre-game hooks...
[20:31:27.513517] (system) Hooks installed.
[20:31:31.983166] (debug) Initializing opcode handler table
[20:31:31.984166] (debug) package.path = D:\Games\самп\moonloader\lib\?.lua;D:\Games\самп\moonloader\lib\?\init.lua;D:\Games\самп\moonloader\?.lua;D:\Games\самп\moonloader\?\init.lua;.\?.lua;D:\Games\самп\moonloader\lib\?.luac;D:\Games\самп\moonloader\lib\?\init.luac;D:\Games\самп\moonloader\?.luac;D:\Games\самп\moonloader\?\init.luac;.\?.luac
[20:31:31.984166] (debug) package.cpath = D:\Games\самп\moonloader\lib\?.dll;
[20:31:31.986165] (system) Loading script 'D:\Games\самп\moonloader\AntiRvanka_3.1.lua'...
[20:31:31.986165] (debug) New script: 0C4DE94C
[20:31:32.365192] (system) AntiRvanka_3.1.lua: Loaded successfully.
[20:31:32.366174] (system) Loading script 'D:\Games\самп\moonloader\AutoReboot.lua'...
[20:31:32.366174] (debug) New script: 0EF86414
[20:31:32.404188] (system) ML-AutoReboot: Loaded successfully.
[20:31:32.404188] (system) Loading script 'D:\Games\самп\moonloader\damager.lua'...
[20:31:32.404188] (debug) New script: 0EF86ECC
[20:31:32.860184] (system) damager.lua: Loaded successfully.
[20:31:32.861184] (system) Loading script 'D:\Games\самп\moonloader\egun.luac'...
[20:31:32.861184] (debug) New script: 0EF86104
[20:31:32.906174] (system) egun.luac: Loaded successfully.
[20:31:32.906174] (system) Loading script 'D:\Games\самп\moonloader\FarmBotArizona(afbot)v0.2.luac'...
[20:31:32.906174] (debug) New script: 0EF8659C
[20:31:32.936178] (system) FarmBotArizonaByK0lenval: Loaded successfully.
[20:31:32.936178] (system) Loading script 'D:\Games\самп\moonloader\imgui_addons.lua'...
[20:31:32.937176] (debug) New script: 0EF8628C
[20:31:32.965175] (system) imgui_addons.lua: Loaded successfully.
[20:31:32.965175] (system) Loading script 'D:\Games\самп\moonloader\Invisible.luac'...
[20:31:32.965175] (debug) New script: 0EF86724
[20:31:32.999177] (system) Invisible.luac: Loaded successfully.
[20:31:32.999177] (system) Loading script 'D:\Games\самп\moonloader\reload_all.lua'...
[20:31:32.999177] (debug) New script: 0EF868AC
[20:31:33.018312] (system) ML-ReloadAll: Loaded successfully.
[20:31:33.018312] (system) Loading script 'D:\Games\самп\moonloader\RTeleportV2.luac'...
[20:31:33.018312] (debug) New script: 0EF86A34
[20:31:33.141172] (system) RTeleportV2.luac: Loaded successfully.
[20:31:33.141172] (system) Loading script 'D:\Games\самп\moonloader\SF Integration.lua'...
[20:31:33.141172] (debug) New script: 0EF86BBC
[20:31:33.174289] (system) SF Integration: Loaded successfully.
[20:31:33.174289] (system) Loading script 'D:\Games\самп\moonloader\sfreezer.lua'...
[20:31:33.174289] (debug) New script: 0EFC51CC
[20:31:33.568285] (system) sfreezer.lua: Loaded successfully.
[20:31:33.568285] (system) Loading script 'D:\Games\самп\moonloader\volent project cracked by saxon.luac'...
[20:31:33.568285] (debug) New script: 0EFC4A24
[20:31:34.466434] (system) volent project cracked by saxon.luac: Loaded successfully.
[20:31:34.466434] (system) Loading script 'D:\Games\самп\moonloader\VRV.luac'...
[20:31:34.466434] (debug) New script: 0EFC489C
[20:31:34.494425] (system) VRV.luac: Loaded successfully.
[20:31:57.557618] (system) Installing post-load hooks...
[20:31:57.557618] (system) Hooks installed.
[20:31:59.839044] (error) sfreezer.lua: D:\Games\самп\moonloader\sfreezer.lua:108: attempt to call field 'updateCallbacks' (a nil value)
stack traceback:
D:\Games\самп\moonloader\sfreezer.lua: in function <D:\Games\самп\moonloader\sfreezer.lua:38>
[20:31:59.841045] (error) sfreezer.lua: Script died due to an error. (0EFC51CC)
[20:32:24.342243] (system) Unloading...
[20:32:24.342243] (system) AntiRvanka_3.1.lua: Script terminated. (0C4DE94C)
[20:32:24.343240] (system) ML-AutoReboot: Script terminated. (0EF86414)
[20:32:24.343240] (system) damager.lua: Script terminated. (0EF86ECC)
[20:32:24.345098] (system) egun.luac: Script terminated. (0EF86104)
[20:32:24.346243] (system) FarmBotArizonaByK0lenval: Script terminated. (0EF8659C)
[20:32:24.347243] (system) imgui_addons.lua: Script terminated. (0EF8628C)
[20:32:24.348245] (system) Invisible.luac: Script terminated. (0EF86724)
[20:32:24.349169] (system) ML-ReloadAll: Script terminated. (0EF868AC)
[20:32:24.350096] (system) RTeleportV2.luac: Script terminated. (0EF86A34)
[20:32:24.352096] (system) SF Integration: Script terminated. (0EF86BBC)
[20:32:24.353117] (system) volent project cracked by saxon.luac: Script terminated. (0EFC4A24)
[20:32:24.358234] (system) VRV.luac: Script terminated. (0EFC489C)
[20:32:24.380106] (system) Session terminated.
ЕСЛИ НАДО ТО ВОТ СКРИПТ:
local ev = require('lib.samp.events')
local imgui = require('imgui')
local mb = require('MoonBot')
local encoding = require('encoding')
local socket = require('socket')
local inicfg = require('inicfg')
-- Imgui
local menu = imgui.ImBool(false)
local selectedTab = 1
local state = imgui.ImBool(false)
local logBox = imgui.ImBuffer(10000)
local lines = {}
local nick = imgui.ImBuffer(256)
local password = imgui.ImBuffer(256)
local command = imgui.ImBuffer(256)
-- Other
local hiState = false
local hiTarget = -1
local mass = false
--
-- MoonBot
local botIndex = 0
local canUse = false
local hiTime = 0
local syncTime = 0
--
-- Encoding
encoding.default = 'CP1251'
local u8 = encoding.UTF8
--
function main()
repeat wait(0) until isSampAvailable()
nick.v = u8('Unknown')
password.v = u8('123123')
command.v = u8('hi')
loadSettings()
theme()
mb.registerIncomingRPC(61)
-- local bot = mb.add(u8:decode(nick.v))
-- botIndex = bot.index
sampRegisterChatCommand('sfr.menu', function()
menu.v = not menu.v
end)
sampRegisterChatCommand('sfr.mass', function()
if hiState then
if not mass then
sendMessage('Сперва выключите обычный /sfr')
else
hiState = false
mass = false
hiTarget = -1
sendMessage('Массовый фризер выключен!')
end
else
if canUse then
if state.v then
hiTarget = -1
mass = true
hiState = true
sendMessage('Массовый фризер включен!')
else
sendMessage('Сперва включите бота!')
end
else
sendMessage('Бот еще не зашел в игру!')
end
end
end)
sampRegisterChatCommand('sfr', function(param)
if hiState then
hiState = false
hiTarget = -1
sendMessage('Фриз выключен')
else
if canUse then
if not state.v then
sendMessage('Сперва включите бота!')
else
if param:match('%d+') then
local id = tonumber(param)
local _, ped = sampGetCharHandleBySampPlayerId(id)
if _ then
hiTarget = id
hiState = true
sendMessage(string.format('Атакуем {FF5656}%s', sampGetPlayerNickname(hiTarget)))
else
sendMessage('Игрок не найден!')
end
else
sendMessage('Используйте: {FF5656}/sfr [ID цели]')
end
end
else
sendMessage('Бот еще не зашел в игру!')
end
end
end)
while true do
wait(0)
imgui.Process = menu.v
mb.updateCallbacks()
local x, y, z = getCharCoordinates(PLAYER_PED)
if state.v and canUse then
local position = mb.getBotHandleByIndex(botIndex).position
local x, y, z = getCharCoordinates(PLAYER_PED)
if getDistanceBetweenCoords3d(x, y, z, position.x, position.y, position.z) <= 500 then
Draw3DCircle(position.x, position.y, position.z, 0.5, 0xAAFF5656)
end
local time = socket.gettime()*1000
if time - syncTime > 100 then
syncTime = time
if hiState then
if mass then
if hiTarget == -1 then
local _, ped = findAllRandomCharsInSphere(x, y, z, 500, true, false)
if _ then
local _, id = sampGetPlayerIdByCharHandle(ped)
if _ and not sampIsPlayerPaused(id) and not sampIsPlayerNpc(id) then
hiTarget = id
end
end
end
if hiTarget ~= -1 then
local _, ped = sampGetCharHandleBySampPlayerId(hiTarget)
if _ then
local x, y, z = getCharCoordinates(ped)
sendSpectator(x, y, z)
else
hiTarget = -1
sendSpectator(x, y, z)
end
else
sendSpectator(x, y, z)
end
else
local _, ped = sampGetCharHandleBySampPlayerId(hiTarget)
if _ then
local x, y, z = getCharCoordinates(ped)
sendSpectator(x, y, z)
else
hiState = false
sendMessage('Жертва пропала!')
end
end
else
local x, y, z = getCharCoordinates(PLAYER_PED)
sendSpectator(x, y, z)
end
end
if hiState then
if time - hiTime > 1000 then
if mass then
if hiTarget ~= -1 then
local _, ped = sampGetCharHandleBySampPlayerId(hiTarget)
if _ then
hiTime = time
mb.getBotHandleByIndex(botIndex):sendCommand(string.format('/%s %d', command.v, hiTarget))
end
hiTarget = -1
end
else
local _, ped = sampGetCharHandleBySampPlayerId(hiTarget)
if _ then
hiTime = time
mb.getBotHandleByIndex(botIndex):sendCommand(string.format('/%s %d', command.v, hiTarget))
else
hiState = false
sendMessage('Жертва пропала!')
end
end
end
end
end
end
end
function loadSettings()
local ini = inicfg.load(nil, 'sfreezer')
if ini == nil then
saveSettings()
else
nick.v = u8(ini.settings.nick)
password.v = u8(ini.settings.password)
command.v = u8(ini.settings.command)
end
end
function saveSettings()
inicfg.save({
settings = {
nick = u8:decode(nick.v),
password = u8:decode(password.v),
command = u8:decode(command.v)
}
}, 'sfreezer')
end
function Draw3DCircle(x, y, z, radius, color)
local screen_x_line_old, screen_y_line_old;
for rot=0, 360 do
local rot_temp = math.rad(rot)
local lineX, lineY, lineZ = radius * math.cos(rot_temp) + x, radius * math.sin(rot_temp) + y, z
local screen_x_line, screen_y_line = convert3DCoordsToScreen(lineX, lineY, lineZ)
if screen_x_line ~=nil and screen_x_line_old ~= nil and isPointOnScreen(lineX, lineY, lineZ, 1) then renderDrawLine(screen_x_line, screen_y_line, screen_x_line_old, screen_y_line_old, 3, color) end
screen_x_line_old, screen_y_line_old = screen_x_line, screen_y_line
end
end
function onBotIncomingRPC(bot, rpcId, bs)
if state.v then
if rpcId == 61 then
local dialogId = bs:readInt16()
local style = bs:readInt8()
local title = bs:readString8()
local btn1 = bs:readString8()
local btn2 = bs:readString8()
if dialogId == 2 then
if title:find('Регистрация') then
lua_thread.create(function()
log('Регистрация - Вводим пароль')
wait(100)
bot:sendDialogResponse(dialogId, 1, 0, u8:decode(password.v))
end)
elseif title:find('Выбор пола') then
lua_thread.create(function()
log('Регистрация - Выбираем пол')
wait(100)
bot:sendDialogResponse(dialogId, 1, 0, '')
wait(100)
bot:sendRequestClass(0)
wait(100)
-- bot:sendRequestSpawn()
bot:sendSpawn()
canUse = true
end)
end
elseif dialogId == 1 then
lua_thread.create(function()
log('Авторизация - вводим пароль')
wait(100)
bot:sendDialogResponse(dialogId, 1, 0, u8:decode(password.v))
wait(100)
bot:sendRequestClass(0)
wait(100)
-- bot:sendRequestSpawn()
bot:sendSpawn()
canUse = true
end)
end
end
end
end
function onBotIncomingPacket(bot, packetId, bs)
if state.v then
if packetId == 32 or packetId == 33 or packetId == 35 or packetId == 36 then
canUse = false
if hiState then
hiState = false
sendMessage('Бота отключило, выключаем фризер')
end
end
if packetId == 32 then
log('Бота отключили от сервера, реконнектимся...')
end
if packetId == 33 then
log('Потеряно соединение с сервером, реконнектимся...')
end
if packetId == 35 then
log('Не можем подключиться к серверу, реконнектимся...')
end
if packetId == 36 then
log('Подключение забанено, реконнектимся...')
end
if packetId == 37 then
log('На сервере стоит пароль, реконнектимся...')
end
if packetId == 31 then
log('На сервере нет свободных слотов, реконнектимся...')
end
if packetId == 34 then
log('Успешно подключились!')
end
end
end
function sendSpectator(x, y, z)
if state.v and canUse then
local data = mb.getSpectatorData()
data.position.x = x
data.position.y = y
data.position.z = z
mb.getBotHandleByIndex(botIndex):sendSpectatorData(data)
mb.getBotHandleByIndex(botIndex).position.x = x
mb.getBotHandleByIndex(botIndex).position.y = y
mb.getBotHandleByIndex(botIndex).position.z = z
end
end
function ev.onSendPickedUpPickup(pickupId)
if state.v and canUse then
mb.getBotHandleByIndex(botIndex):sendPickedUpPickup(pickupId)
end
end
-- function ev.onShowDialog(id, style, title, btn1, btn2, text)
-- sampfuncsLog(string.format('%d - %s', id, title))
-- end
function sendMessage(message)
sampAddChatMessage(string.format('{FF5656}[Skidrow Freezer]: {FFFFFF}%s', message), -1)
end
function imgui.OnDrawFrame()
if menu.v then
local xw, yw = getScreenResolution()
local size = {500, 300}
imgui.SetNextWindowSize(imgui.ImVec2(size[1], size[2]), imgui.Cond.FirstUseEver)
imgui.SetNextWindowPos(imgui.ImVec2(xw / 2 - size[1] / 2, yw / 2 - size[2] / 2), imgui.Cond.FirstUseEver)
imgui.Begin(u8'Skidrow Freezer', menu, imgui.WindowFlags.NoResize)
local tabSize = 40
imgui.BeginChild('##tab', imgui.ImVec2(-1, tabSize), false)
if imgui.ButtonActivated(selectedTab == 1, u8'Общее', imgui.ImVec2(size[1] / 2.1, tabSize)) then
selectedTab = 1
end
imgui.SameLine()
if imgui.ButtonActivated(selectedTab == 2, u8'Бот', imgui.ImVec2(size[1] / 2.1, tabSize)) then
selectedTab = 2
end
imgui.EndChild()
imgui.BeginChild('##options', imgui.ImVec2(-1, -1), false)
if selectedTab == 1 then
imgui.SetCursorPosY(10)
imgui.SetCursorPosX(size[1] / 4 - 10)
if imgui.Button(u8(state.v and 'Выключить' or 'Включить'), imgui.ImVec2(size[1] / 2, size[2] / 10)) then
state.v = not state.v
if state.v then
if nick.v == '' or password.v == '' or command.v == '' then
state.v = false
log('Пожалуйста, укажите все аргументы у бота!')
else
hiState = false
canUse = false
log('Подключаем бота...')
local ip, port = sampGetCurrentServerAddress()
local bot = mb.add(u8:decode(nick.v))
bot:setReconnectTime(5000)
botIndex = bot.index
bot:connect(ip, port)
end
else
hiState = false
canUse = false
mb.remove(botIndex)
log('Процесс завершен!')
end
end
imgui.SetCursorPosX(40)
imgui.InputTextMultiline('##logbox', logBox, imgui.ImVec2(size[1] - 100, size[2] - 140 ), imgui.InputTextFlags.ReadOnly)
end
if selectedTab == 2 then
imgui.SetCursorPosY(50)
imgui.SetCursorPosX(size[1] / 4 - 20)
imgui.PushItemWidth(200)
imgui.InputText('##nick', nick)
imgui.PopItemWidth()
imgui.SameLine()
imgui.Text(u8'Ник бота')
imgui.SetCursorPosX(size[1] / 4 - 20)
imgui.PushItemWidth(200)
imgui.InputText('##password', password)
imgui.PopItemWidth()
imgui.SameLine()
imgui.Text(u8'Пароль бота')
imgui.SetCursorPosX(size[1] / 4 - 20)
imgui.PushItemWidth(200)
imgui.InputText('##command', command)
imgui.PopItemWidth()
imgui.SameLine()
imgui.Text(u8'Команда бота')
end
imgui.EndChild()
imgui.End()
end
end
function imgui.ButtonActivated(activated, ...)
if activated then
imgui.PushStyleColor(imgui.Col.Button, imgui.GetStyle().Colors[imgui.Col.ButtonHovered])
imgui.PushStyleColor(imgui.Col.ButtonHovered, imgui.GetStyle().Colors[imgui.Col.ButtonHovered])
imgui.PushStyleColor(imgui.Col.ButtonActive, imgui.GetStyle().Colors[imgui.Col.ButtonHovered])
imgui.Button(...)
imgui.PopStyleColor()
imgui.PopStyleColor()
imgui.PopStyleColor()
else
return imgui.Button(...)
end
end
function log(message)
if table.getn(lines) >= 10 then
table.remove(lines, 1)
end
local date = os.date('*t')
table.insert(lines, string.format('[%d:%d:%d] %s', date.hour, date.min, date.sec, message))
-- table.insert(lines, message)
logBox.v = ''
for k, line in pairs(lines) do
logBox.v = logBox.v .. u8(line) .. '\n'
end
logBox.v = logBox.v:sub(1, -2)
end
function onScriptTerminate(script, quitGame)
if script == thisScript() then
saveSettings()
mb.unload()
end
end
function theme()
imgui.SwitchContext()
local style = imgui.GetStyle()
local colors = style.Colors
local clr = imgui.Col
local ImVec4 = imgui.ImVec4
local ImVec2 = imgui.ImVec2
style.WindowPadding = imgui.ImVec2(8, 8)
style.WindowRounding = 6
style.ChildWindowRounding = 5
style.FramePadding = imgui.ImVec2(5, 3)
style.FrameRounding = 3.0
style.ItemSpacing = imgui.ImVec2(5, 4)
style.ItemInnerSpacing = imgui.ImVec2(4, 4)
style.IndentSpacing = 21
style.ScrollbarSize = 10.0
style.ScrollbarRounding = 13
style.GrabMinSize = 8
style.GrabRounding = 1
style.WindowTitleAlign = imgui.ImVec2(0.5, 0.5)
style.ButtonTextAlign = imgui.ImVec2(0.5, 0.5)
colors[clr.Text] = ImVec4(0.95, 0.96, 0.98, 1.00);
colors[clr.TextDisabled] = ImVec4(0.29, 0.29, 0.29, 1.00);
colors[clr.WindowBg] = ImVec4(0.14, 0.14, 0.14, 1.00);
colors[clr.ChildWindowBg] = ImVec4(0.12, 0.12, 0.12, 1.00);
colors[clr.PopupBg] = ImVec4(0.08, 0.08, 0.08, 0.94);
colors[clr.Border] = ImVec4(0.14, 0.14, 0.14, 1.00);
colors[clr.BorderShadow] = ImVec4(1.00, 1.00, 1.00, 0.10);
colors[clr.FrameBg] = ImVec4(0.22, 0.22, 0.22, 1.00);
colors[clr.FrameBgHovered] = ImVec4(0.18, 0.18, 0.18, 1.00);
colors[clr.FrameBgActive] = ImVec4(0.09, 0.12, 0.14, 1.00);
colors[clr.TitleBg] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.TitleBgActive] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.TitleBgCollapsed] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.MenuBarBg] = ImVec4(0.20, 0.20, 0.20, 1.00);
colors[clr.ScrollbarBg] = ImVec4(0.02, 0.02, 0.02, 0.39);
colors[clr.ScrollbarGrab] = ImVec4(0.36, 0.36, 0.36, 1.00);
colors[clr.ScrollbarGrabHovered] = ImVec4(0.18, 0.22, 0.25, 1.00);
colors[clr.ScrollbarGrabActive] = ImVec4(0.24, 0.24, 0.24, 1.00);
colors[clr.ComboBg] = ImVec4(0.24, 0.24, 0.24, 1.00);
colors[clr.CheckMark] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.SliderGrab] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.SliderGrabActive] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.Button] = ImVec4(1.00, 0.28, 0.28, 1.00);
-- colors[clr.ButtonHovered] = ImVec4(1.00, 0.39, 0.39, 1.00);
colors[clr.ButtonActive] = ImVec4(1.00, 0.21, 0.21, 1.00);
-- colors[clr.ButtonActive] = colors[clr.ButtonHovered];
colors[clr.ButtonHovered] = colors[clr.ButtonActive];
colors[clr.Header] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.HeaderHovered] = ImVec4(1.00, 0.39, 0.39, 1.00);
colors[clr.HeaderActive] = ImVec4(1.00, 0.21, 0.21, 1.00);
colors[clr.ResizeGrip] = ImVec4(1.00, 0.28, 0.28, 1.00);
colors[clr.ResizeGripHovered] = ImVec4(1.00, 0.39, 0.39, 1.00);
colors[clr.ResizeGripActive] = ImVec4(1.00, 0.19, 0.19, 1.00);
colors[clr.CloseButton] = ImVec4(0.40, 0.39, 0.38, 0.16);
colors[clr.CloseButtonHovered] = ImVec4(0.40, 0.39, 0.38, 0.39);
colors[clr.CloseButtonActive] = ImVec4(0.40, 0.39, 0.38, 1.00);
colors[clr.PlotLines] = ImVec4(0.61, 0.61, 0.61, 1.00);
colors[clr.PlotLinesHovered] = ImVec4(1.00, 0.43, 0.35, 1.00);
colors[clr.PlotHistogram] = ImVec4(1.00, 0.21, 0.21, 1.00);
colors[clr.PlotHistogramHovered] = ImVec4(1.00, 0.18, 0.18, 1.00);
colors[clr.TextSelectedBg] = ImVec4(1.00, 0.32, 0.32, 1.00);
colors[clr.ModalWindowDarkening] = ImVec4(0.26, 0.26, 0.26, 0.60);
end