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

Исходник The Seven Deadly Sins: Origin — Скрипты на Fly, Teleport и Speedhack (Lua)

Начинающий
Начинающий
Статус
Оффлайн
Регистрация
13 Фев 2026
Сообщения
126
Реакции
3
Братва, наткнулся на свежий дамп под Seven Deadly Sins: Origin на UE5. Оффсеты актуальны, но сразу предупреждаю: игра сидит на EAC, так что без нормального байпасса даже не суйтесь, отлетите в пермач быстрее, чем успеете прогрузиться.

По технической части: всё стандартно для Unreal Engine, работаем через Cheat Engine (выбираем процесс игры, цепляем нужные адреса).

Оффсеты:
Код:
Expand Collapse Copy
GWorld: 0xBC45848
GNames: 0xB9E38C0
GObjects: 0xBAC7070

Базовые функции (Прямые адреса):
  1. Player Speed: [[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+68]
  2. Global Speed: [[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+20]+2A8]+3E0
  3. Gravity: [[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+188
  4. Jump Height: [[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+190
  5. No Clip: [[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+5D
  6. Movement Speed: [[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+280

Для тех, кто хочет автоматизировать процесс, вот основные LUA-скрипты для таблицы.

Код:
Expand Collapse Copy
{$lua}
if syntaxcheck then return end
[ENABLE]
local script = {}
 
table.insert(script, "{$lua}")
table.insert(script, "[ENABLE]")
table.insert(script, "")
 
XCoord = "[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+1F4"
YCoord = "[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+1FC"
ZCoord = "[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+204"
 
X = "writeFloat('"..XCoord.."',"..(readFloat(""..XCoord.."")..")")
table.insert(script, X)
 
Y = "writeFloat('"..YCoord.."',"..(readFloat(""..YCoord.."")..")")
table.insert(script, Y)
 
Z = "writeFloat('"..ZCoord.."',"..(readFloat(""..ZCoord.."")..")")
table.insert(script, Z)
 
table.insert(script, "")
 
table.insert(script, [[if not syntaxcheck then
 synchronize(function()
   local t = createTimer()
   t.Interval,t.OnTimer = 500,function(tm)
     tm.Destroy()
     memrec.Active = false
   end
 end)
end]])
 
table.insert(script, "")
table.insert(script, "[DISABLE]")
 
MRLoc = AddressList.getMemoryRecordByDescription('Save This Location')
 
local mr = AddressList.createMemoryRecord()
mr.Type = vtAutoAssembler
mr.appendToEntry(MRLoc)
mr.Description = 'Load/Teleport (Name_this_location)'
mr.Script = table.concat(script, '\n')
 
if not syntaxcheck then
 synchronize(function()
   local t = createTimer()
   t.Interval,t.OnTimer = 500,function(tm)
     tm.Destroy()
     memrec.Active = false
   end
 end)
end
 
[DISABLE]

Код:
Expand Collapse Copy
{$lua}
if syntaxcheck then return end
 
-- ===== POINTERS (UPDATED) =====
local gravityPtr  = '[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+188'
local movementPtr = '[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+221'
local speedPtr    = '[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+274'
local playerZPtr  = '[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+204'
 
[ENABLE]
 
local function readFloatSafe(ptr)
    local a = getAddress(ptr)
    if a then return readFloat(a) end
end
 
local function writeFloatSafe(ptr, val)
    local a = getAddress(ptr)
    if a then writeFloat(a, val) end
end
 
local function writeByteSafe(ptr, val)
    local a = getAddress(ptr)
    if a then writeBytes(a, val) end
end
 
writeFloatSafe(speedPtr, 600)
 
-- ===== TIMER LOOP =====
flyTimer = createTimer(nil)
flyTimer.Interval = 10
flyTimer.OnTimer = function()
 
    -- force fly mode + no gravity
    writeByteSafe(movementPtr, 5)
    writeFloatSafe(gravityPtr, 0.0)
 
    -- clamp speed (600 - 3000)
    local speed = readFloatSafe(speedPtr)
    if speed then
        if speed < 600 then writeFloatSafe(speedPtr, 600)
        elseif speed > 3000 then writeFloatSafe(speedPtr, 3000)
        end
    end
end
 
-- ===== CONTROLS =====
function increaseSpeed()
    local s = readFloatSafe(speedPtr)
    if s then
        s = math.min(s + 200, 3000)
        writeFloatSafe(speedPtr, s)
    end
end
 
function decreaseSpeed()
    local s = readFloatSafe(speedPtr)
    if s then
        s = math.max(s - 200, 600)
        writeFloatSafe(speedPtr, s)
    end
end
 
function increaseHeight()
    local z = readFloatSafe(playerZPtr)
    if z then writeFloatSafe(playerZPtr, z + 0.1) end
end
 
function decreaseHeight()
    local z = readFloatSafe(playerZPtr)
    if z then writeFloatSafe(playerZPtr, z - 0.1) end
end
 
-- ===== HOTKEYS =====
hkRight = createHotkey(increaseSpeed, VK_RIGHT)
hkLeft  = createHotkey(decreaseSpeed, VK_LEFT)
hkUp    = createHotkey(increaseHeight, VK_UP)
hkDown  = createHotkey(decreaseHeight, VK_DOWN)
 
[DISABLE]
 
-- stop timer
if flyTimer then
    flyTimer.destroy()
    flyTimer = nil
end
 
-- restore
writeFloat(getAddress('[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+188'), 3.799999952)
writeBytes(getAddress('[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+221'), 1)
writeFloat(getAddress('[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+330]+274'), 200)
 
-- remove hotkeys
if hkRight then hkRight.destroy() end
if hkLeft then hkLeft.destroy() end
if hkUp then hkUp.destroy() end
if hkDown then hkDown.destroy() end

Код:
Expand Collapse Copy
{$lua}
if syntaxcheck then return end
[ENABLE]
local script = {}
 
table.insert(script, "{$lua}")
table.insert(script, "[ENABLE]")
table.insert(script, "")
 
XCoord = "[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+1F4"
YCoord = "[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+1FC"
ZCoord = "[[[[["SevenDeadlySins_Origin-Win64-Shipping.exe"+0BDA26A8]+220]+30]+2E8]+1B8]+204"
 
X = "writeFloat('"..XCoord.."',"..(readFloat(""..XCoord.."")..")")
table.insert(script, X)
 
Y = "writeFloat('"..YCoord.."',"..(readFloat(""..YCoord.."")..")")
table.insert(script, Y)
 
Z = "writeFloat('"..ZCoord.."',"..(readFloat(""..ZCoord.."")..")")
table.insert(script, Z)
 
table.insert(script, "")
 
table.insert(script, [[if not syntaxcheck then
 synchronize(function()
   local t = createTimer()
   t.Interval,t.OnTimer = 500,function(tm)
     tm.Destroy()
     memrec.Active = false
   end
 end)
end]])
 
table.insert(script, "")
table.insert(script, "[DISABLE]")
 
MRLoc = AddressList.getMemoryRecordByDescription('Save This Location')
 
local mr = AddressList.createMemoryRecord()
mr.Type = vtAutoAssembler
mr.appendToEntry(MRLoc)
mr.Description = 'Load/Teleport (Name_this_location)'
mr.Script = table.concat(script, '\n')
 
if not syntaxcheck then
 synchronize(function()
   local t = createTimer()
   t.Interval,t.OnTimer = 500,function(tm)
     tm.Destroy()
     memrec.Active = false
   end
 end)
end
 
[DISABLE]

Код:
Expand Collapse Copy
{$lua}
if syntaxcheck then return end
local base = getAddress("SevenDeadlySins_Origin-Win64-Shipping.exe")+0x0BDA26A8
 
[ENABLE]
 
if speedTimer then speedTimer.destroy() end
 
speedTimer = createTimer(nil, false)
speedTimer.Interval = 50  -- runs every 50ms
 
speedTimer.OnTimer = function()
    local success, playerPtr = pcall(function()
        local p = readPointer(base)
        p = readPointer(p + 0x220)
        p = readPointer(p + 0x30)
        p = readPointer(p + 0x2E8)
        return p + 0x68
    end)
 
    local success2, globalPtr = pcall(function()
        local g = readPointer(base)
        g = readPointer(g + 0x220)
        g = readPointer(g + 0x30)
        g = readPointer(g + 0x20)
        g = readPointer(g + 0x2A8)
        return g + 0x3E0
    end)
 
    if success and playerPtr then
        writeFloat(playerPtr, 100.0)
    end
 
    if success2 and globalPtr then
        writeFloat(globalPtr, 0.01)
    end
end
 
speedTimer.Enabled = true
 
[DISABLE]
 
pcall(function()
    local p = readPointer(base)
    p = readPointer(p + 0x220)
    p = readPointer(p + 0x30)
    p = readPointer(p + 0x2E8)
    writeFloat(p + 0x68, 1.0)
end)
 
pcall(function()
    local g = readPointer(base)
    g = readPointer(g + 0x220)
    g = readPointer(g + 0x30)
    g = readPointer(g + 0x20)
    g = readPointer(g + 0x2A8)
    writeFloat(g + 0x3E0, 1.0)
end)
 
-- destroy timer
if speedTimer then
    speedTimer.destroy()
    speedTimer = nil
end

Народ, кто уже тестил на РМ или в открытом мире — как там по детектам? Скрипты на фриз врагов могут вызывать визуальные дёрганья, имейте в виду. Делитесь фиксами, если кто ковырял поинтеры дальше.
 
Назад
Сверху Снизу