#阳光edx+5560
import win32gui
import win32process
import win32api,ctypes
import tkinter as tk
main=tk.Tk()
main.title("植物大战僵尸修改器 ------豆腐西蓝花")
main.geometry('800x400')
def sun_func():window_handle = win32gui.FindWindow(None, "植物大战僵尸中文版")process_id = win32process.GetWindowThreadProcessId(window_handle)[1]process_handle = win32api.OpenProcess(0x1f0fff, False, process_id)kernel32 = ctypes.windll.LoadLibrary(r"C:\Windows\System32\kernel32.dll")date1 = ctypes.c_long()kernel32.ReadProcessMemory(int(process_handle), 0x006A9EC0, ctypes.byref(date1), 4, None) date2 = ctypes.c_long()kernel32.ReadProcessMemory(int(process_handle), date1.value + 0x768, ctypes.byref(date2), 4, None)date3 = ctypes.c_long()kernel32.ReadProcessMemory(int(process_handle), date2.value + 0x5560, ctypes.byref(date3), 4, None)sun = 5000kernel32.WriteProcessMemory(int(process_handle), date2.value + 0x5560, ctypes.byref(ctypes.c_long(int(sun))), 4,None)kernel32.CloseHandle(int(process_handle))
def cold():window_handle = win32gui.FindWindow(None, "植物大战僵尸中文版")process_id = win32process.GetWindowThreadProcessId(window_handle)[1]process_handle = win32api.OpenProcess(0x1f0fff, False, process_id)kernel32 = ctypes.windll.LoadLibrary(r"C:\Windows\System32\kernel32.dll")date1 = ctypes.c_long()kernel32.ReadProcessMemory(int(process_handle), 0x0048728c+3, ctypes.byref(date1), 1, None) kernel32.WriteProcessMemory(int(process_handle), 0x0048728c+3, ctypes.byref(ctypes.c_int8(0xf)), 1,None)kernel32.CloseHandle(int(process_handle))sun_button=tk.Button(main,text='修改阳光',width=15,height=2,command=sun_func,bg="#ddffff")
cold_button=tk.Button(main,text='修改冷却',width=15,height=2,command=cold,bg="#ddffff")cold_button.pack()
sun_button.pack()
main.mainloop()
if __name__ == '__main__':pass
新手小白,结合网上的教程,简单写了一个python版的植物大战僵尸修改,冷却的问题因为机器码长度限制,改成了f倍,就是15倍,试用了一下,还不错。dll文件应该位置都是一样的吧,应该能直接用,比较捡漏
ps:仅用于学习交流,如有侵权,请联系作者删除