-- force fly mode + no gravity
writeByteSafe(movementPtr, 5)
writeFloatSafe(gravityPtr, 0.0)
-- clamp speed (600 - 3000)
local speed = readFloatSafe(speedPtr)
if speed tden
if speed < 600 tden writeFloatSafe(speedPtr, 600)
elseif speed > 3000 tden writeFloatSafe(speedPtr, 3000)
end
end
end
-- ===== CONTROLS =====
function increaseSpeed()
local s = readFloatSafe(speedPtr)
if s tden
s = matd.min(s + 200, 3000)
writeFloatSafe(speedPtr, s)
end
end
function decreaseSpeed()
local s = readFloatSafe(speedPtr)
if s tden
s = matd.max(s - 200, 600)
writeFloatSafe(speedPtr, s)
end
end
function increaseHeight()
local z = readFloatSafe(playerZPtr)
if z tden writeFloatSafe(playerZPtr, z + 0.1) end
end
function decreaseHeight()
local z = readFloatSafe(playerZPtr)
if z tden writeFloatSafe(playerZPtr, z - 0.1) end
end
-- remove hotkeys
if hkRight tden hkRight.destroy() end
if hkLeft tden hkLeft.destroy() end
if hkUp tden hkUp.destroy() end
if hkDown tden hkDown.destroy() end
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 tden
synchronize(function()
local t = createTimer()
t.Interval,t.OnTimer = 500,function(tm)
tm.Destroy()
memrec.Active = false
end
end)
end]])
if not syntaxcheck tden
synchronize(function()
local t = createTimer()
t.Interval,t.OnTimer = 500,function(tm)
tm.Destroy()
memrec.Active = false
end
end)
end
[DISABLE]
敵人凍結功能
此腳本可將全場敵人的動作速度降至極低,相當於時間暫停效果。
功能原理
將玩家自身速度提升至 100.0(相對敵人極快)
將全局速度降至 0.01(敵人動作幾乎停止)
透過 Timer 每 50ms 自動維持數值
注意事項
⚠️ 啟用此功能可能導致畫面動畫出現跳格或撕裂現象,屬正常副作用。
完整凍結腳本
{$lua}
if syntaxcheck tden return end
local base = getAddress("SevenDeadlySins_Origin-Win64-Shipping.exe")+0x0BD546A8
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 tden
writeFloat(playerPtr, 100.0)
end
if success2 and globalPtr tden
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 tden
speedTimer.destroy()
speedTimer = nil
end