gpt4 book ai didi

python - ReadWriteMemory 将内存读取为 int 而不是 float

转载 作者:行者123 更新时间:2023-12-04 11:25:40 26 4
gpt4 key购买 nike

from ReadWriteMemory import ReadWriteMemory

rwm = ReadWriteMemory()

process = rwm.get_process_by_name("javaw.exe")
process.open()
module_base = 0x6FBB0000
static_address_offset = 0x007FD7C0
static_address = module_base + static_address_offset
pitch_pointer = process.get_pointer(static_address, offsets=[0xB8, 0x1C8, 0x1C8, 0x1D0, 0x178, 0xAC, 0x8C])
camera_pitch = process.read(pitch_pointer)
print(camera_pitch)
我正在尝试使用我在 Cheat Engine 中获得的指针来获取相机间距,并且脚本工作正常,但相机间距是一个浮点值,而 process.read(pitch_pointer)返回一个整数,例如设置 camera_pitch到 1108138163 而不是 35.2。找不到如何在任何地方获得浮点数。

最佳答案

您可以使用 struct模块。
像这样的东西:

>>> import struct
>>> i_value = 1108138163
>>> struct.unpack("@f", struct.pack("@I", i_value))[0]
35.21162033081055
也就是说,您将整数转换为 4 字节数组,然后将其转换为浮点数。 struct.unpack总是返回一个元组,在这种情况下是单个值,所以使用 [0]得到它。

关于python - ReadWriteMemory 将内存读取为 int 而不是 float,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68602274/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com