Merge remote-tracking branches 'lethosor/remove-embark' and 'lethosor/revert-401-dfhack-log'
Also update NEWSdevelop
commit
8f60e0eb01
@ -1,53 +0,0 @@
|
|||||||
-- lets you embark anywhere.
|
|
||||||
helpstring=[[ embark [-t|-d|-e|-h]
|
|
||||||
-t test if the patch can be applied
|
|
||||||
-d disable the patch if enabled
|
|
||||||
-e enable the patch if disabled
|
|
||||||
-h shows help
|
|
||||||
]]
|
|
||||||
args={...}
|
|
||||||
if args[1]=="-h" then
|
|
||||||
print(helpstring)
|
|
||||||
return
|
|
||||||
end
|
|
||||||
local ms=require("memscan")
|
|
||||||
local dfu=require("plugins.dfusion")
|
|
||||||
local patch
|
|
||||||
function embark() --windows only?
|
|
||||||
local seg=ms.get_code_segment()
|
|
||||||
local idx,off
|
|
||||||
local patch=dfu.patches.embark_anywhere
|
|
||||||
if patch~=nil then
|
|
||||||
return patch
|
|
||||||
else
|
|
||||||
idx,off=seg.uint8_t:find_one{0x66, 0x83, 0x7F ,0x1A ,0xFF,0x74,0x04}
|
|
||||||
if idx then
|
|
||||||
patch=dfu.BinaryPatch{name="embark_anywhere",pre_data={0x74,0x04},data={0x90,0x90},address=off+5}
|
|
||||||
return patch
|
|
||||||
else
|
|
||||||
qerror("Offset for embark patch not found!")
|
|
||||||
end
|
|
||||||
end
|
|
||||||
end
|
|
||||||
patch=embark()
|
|
||||||
if args[1]=="-t" then
|
|
||||||
if patch:test() and not patch.is_applied then
|
|
||||||
print("all okay, patch can be applied")
|
|
||||||
elseif patch.is_applied then
|
|
||||||
print("patch is currently applied, can be removed")
|
|
||||||
else
|
|
||||||
qerror("patch can't be applied")
|
|
||||||
end
|
|
||||||
elseif args[1]=="-d" then
|
|
||||||
if patch.is_applied then
|
|
||||||
patch:remove()
|
|
||||||
print("patch removed")
|
|
||||||
end
|
|
||||||
elseif args[1]=="-e" then
|
|
||||||
if not patch.is_applied then
|
|
||||||
patch:apply()
|
|
||||||
print("patch applied")
|
|
||||||
end
|
|
||||||
else
|
|
||||||
print(helpstring)
|
|
||||||
end
|
|
Loading…
Reference in New Issue