@ wadim, kannste da nicht einfach nach der email suchen? So ging es bei mir ratz fatz.
Verändert sich ExAreaID nach einem Server reboot?
Verändert sich ExAreaID nach einem Server reboot?
da warte ich lieber auf GW2 oder D3Quote:
die haben anscheinend die koordinaten irgendwie aus mehreren adressen zusammen gesetzt o0
denn die alten werte einer bestimmten position finde ich garnicht mehr
#include <WindowsConstants.au3>
#include <GUIConstants.au3>
#include <GUIConstantsEx.au3>
#include <NomadMemory.au3>
Global $StartMem_Position_D, $EndMem_Position_D, $ScanValue, $hprocess, $PID
$Form1 = GUICreate(" Update [Gw.exe]", 289, 84, -1, -1, -1, BitOR($WS_EX_TOOLWINDOW,$WS_EX_WINDOWEDGE))
$Group1 = GUICtrlCreateGroup("Update", 8, 8, 273, 49)
$Button1 = GUICtrlCreateButton("Write File (.txt)", 16, 24, 83, 25, 0)
$Button2 = GUICtrlCreateButton("Write File (.ini)", 104, 24, 83, 25, 0)
$Button3 = GUICtrlCreateButton("Exit", 192, 24, 83, 25, 0)
GUICtrlCreateGroup("", -99, -99, 1, 1)
$Label1 = GUICtrlCreateLabel("wadimwadim", 8, 64, 64, 17)
$Label2 = GUICtrlCreateLabel("www.elitepvpers.com", 184, 64, 97, 17)
GUISetState(@SW_SHOW)
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $Button3
Exit
Case $Button1
_GetNewAddress()
_WriteFileTXT()
guictrlsetstate($Button2, $GUI_ENABLE)
guictrlsetstate($Button1, $GUI_ENABLE)
Case $Button2
_GetNewAddress()
_WriteINI()
guictrlsetstate($Button2, $GUI_ENABLE)
guictrlsetstate($Button1, $GUI_ENABLE)
EndSwitch
WEnd
Func _Scan_Position_D()
$PID = ProcessExists("Gw.exe")
$hprocess = _MemoryOpen($PID)
$StartMem_Position_D = 0x00D36000
;$EndMem_Position_D = 0x00DFFFFF
Do
$ScanValue = _MemoryRead($StartMem_Position_D, $hprocess, 'float')
$StartMem_Position_D = $StartMem_Position_D + 1
Until ($ScanValue < -6300) And ($ScanValue > -6345)
Return ($StartMem_Position_D - 1)
EndFunc
Func _Scan_Position_A()
$PID = ProcessExists("Gw.exe")
$hprocess = _MemoryOpen($PID)
$StartMem_Position_A = 0x00A13000
;$EndMem_Position_A = 0x00A13899
Do
$ScanValue = _MemoryRead($StartMem_Position_A, $hprocess, 'float')
$StartMem_Position_A = $StartMem_Position_A + 1
Until ($ScanValue < -6300) And ($ScanValue > -6345)
Return ($StartMem_Position_A - 1)
EndFunc
Func _GetNewAddress()
guictrlsetstate($Button1, $GUI_DISABLE)
guictrlsetstate($Button2, $GUI_DISABLE)
Global $NewPosition = _Scan_Position_D()
Global $NewPosition_2 = _Scan_Position_A()
Global $NewCourse = $NewPosition_2 + 609
Global $NewDeath = $NewPosition_2 + 884
Global $NewMouseCoord_X = $NewDeath + 1548
Global $NewMouseCoord_Y = $NewMouseCoord_X + 4
Global $NewTown_OutpostID = $NewMouseCoord_X + 1976
Global $NewExAreaID = $NewTown_OutpostID - 13600
Global $NewNpcIDnear = $NewPosition - 1168
Global $NewNpcIDselect = $NewNpcIDnear - 32
Global $NewCheckMap = $NewNpcIDselect + 1040
Global $NewZoomExpanderA = $NewMouseCoord_X - 1885
Global $NewZoomExpanderB = $NewZoomExpanderA - 1
Global $NewNoNpc = $NewZoomExpanderA + 7297
Global $NewLVL = $NewPosition_2 - 9120
Global $NewPVP_PVE = $NewLVL + 12
Global $NewNoMessage = $NewCheckMap + 1884
Global $NewPing = $NewPVP_PVE - 11240
Global $NewCharName = $NewPing + 80
Global $NewMouse_Text = $NewCharName + 20180
Global $NewMouse_LocationA = $NewCharName + 76279
Global $NewMouse_LocationB = $NewCharName + 76278
Global $NewBagId = $NewCharName + 6988
Global $NewMouse_SelectId = $NewNpcIDnear - 20
Global $NewInterfaceSize = $NewCharName + 5635
Global $NewPlayerStatus = $NewNoMessage + 2007
Global $Line = '==========================='
Global $Line2 = '========================='
Global $txtname = 'update[Gw.exe].txt'
EndFunc
Func _WriteFileTXT()
FileWriteLine($txtname, '=======================' & 'Update: ' & @MDAY & '.' & @MON & '=======================')
FileWriteLine($txtname, $Line2 & 'Section A' & $Line2)
FileWriteLine($txtname, 'New Position X --> ' & Hex($NewPosition_2) & ' float')
FileWriteLine($txtname, 'New Position Y --> ' & Hex($NewPosition_2 + 4) & ' float')
FileWriteLine($txtname, 'New Death --> ' & Hex($NewDeath) & ' int')
FileWriteLine($txtname, 'New Course --> ' & Hex($NewCourse) & ' float')
FileWriteLine($txtname, 'New MouseCoord X --> ' & Hex($NewMouseCoord_X) & ' float')
FileWriteLine($txtname, 'New MouseCoord Y --> ' & Hex($NewMouseCoord_Y) & ' float')
FileWriteLine($txtname, 'New Town_OutpostID --> ' & Hex($NewTown_OutpostID) & ' int')
FileWriteLine($txtname, 'New ExAreaID --> ' & Hex($NewExAreaID) & ' int')
FileWriteLine($txtname, 'New ZoomExpander A --> ' & Hex($NewZoomExpanderA) & ' int')
FileWriteLine($txtname, 'New ZoomExpander B --> ' & Hex($NewZoomExpanderB) & ' int')
FileWriteLine($txtname, 'New NoNpc --> ' & Hex($NewNoNpc) & ' int')
FileWriteLine($txtname, 'New LVL --> ' & Hex($NewLVL) & ' int')
FileWriteLine($txtname, 'New PVP_PVE --> ' & Hex($NewPVP_PVE) & ' int')
FileWriteLine($txtname, 'New Ping --> ' & Hex($NewPing) & ' int')
FileWriteLine($txtname, 'New CharName --> ' & Hex($NewCharName) & ' unicode[i]')
FileWriteLine($txtname, 'New InterfaceSize --> ' & Hex($NewInterfaceSize) & ' int')
FileWriteLine($txtname, 'New Mouse_Text --> ' & Hex($NewMouse_Text) & ' int')
FileWriteLine($txtname, 'New Mouse_LocationA --> ' & Hex($NewMouse_LocationA) & ' int')
FileWriteLine($txtname, 'New Mouse_LocationB --> ' & Hex($NewMouse_LocationB) & ' int')
FileWriteLine($txtname, 'New BagId --> ' & Hex($NewBagId) & ' int')
FileWriteLine($txtname, $Line2 & 'Section D' & $Line2)
FileWriteLine($txtname, 'New Position X --> ' & Hex($NewPosition) & ' float')
FileWriteLine($txtname, 'New Position Y --> ' & Hex($NewPosition + 4) & ' float')
FileWriteLine($txtname, 'New Npc_ID_near --> ' & Hex($NewNpcIDnear) & ' int')
FileWriteLine($txtname, 'New Npc_ID_select --> ' & Hex($NewNpcIDselect) & ' int')
FileWriteLine($txtname, 'New CheckMap --> ' & Hex($NewCheckMap) & ' int')
FileWriteLine($txtname, 'New Mouse_SelectId --> ' & Hex($NewMouse_SelectId) & ' int')
EndFunc
Func _WriteINI()
$iniName = 'update[Gw.exe].ini'
FileWriteLine($iniName, ';Section A')
FileWriteLine($iniName, 'PositionX' & ' = ' & Hex($NewPosition_2))
FileWriteLine($iniName, 'PositionY' & ' = ' & Hex($NewPosition_2 + 4))
FileWriteLine($iniName, 'Death' & ' = ' & Hex($NewDeath))
FileWriteLine($iniName, 'Course' & ' = ' & Hex($NewCourse))
FileWriteLine($iniName, 'MouseCoordX' & ' = ' & Hex($NewMouseCoord_X))
FileWriteLine($iniName, 'MouseCoordY' & ' = ' & Hex($NewMouseCoord_Y))
FileWriteLine($iniName, 'Town_OutpostID' & ' = ' & Hex($NewTown_OutpostID))
FileWriteLine($iniName, 'ExAreaID' & ' = ' & Hex($NewExAreaID))
FileWriteLine($iniName, 'ZoomExpanderA' & ' = ' & Hex($NewZoomExpanderA))
FileWriteLine($iniName, 'ZoomExpanderB' & ' = ' & Hex($NewZoomExpanderB))
FileWriteLine($iniName, 'NoNpc' & ' = ' & Hex($NewNoNpc))
FileWriteLine($iniName, 'LVL' & ' = ' & Hex($NewLVL))
FileWriteLine($iniName, 'PVP_PVE' & ' = ' & Hex($NewPVP_PVE))
FileWriteLine($iniName, 'Ping' & ' = ' & Hex($NewPing))
FileWriteLine($iniName, 'CharName' & ' = ' & Hex($NewCharName))
FileWriteLine($iniName, 'Mouse_Text' & ' = ' & Hex($NewMouse_Text))
FileWriteLine($iniName, 'Mouse_LocationA' & ' = ' & Hex($NewMouse_LocationA))
FileWriteLine($iniName, 'Mouse_LocationB' & ' = ' & Hex($NewMouse_LocationB))
FileWriteLine($iniName, 'BagId' & ' = ' & Hex($NewBagId))
FileWriteLine($iniName, 'InterfaceSize' & ' = ' & Hex($NewInterfaceSize))
FileWriteLine($iniName, ';SectionD')
FileWriteLine($iniName, 'PositionX' & ' = ' & Hex($NewPosition))
FileWriteLine($iniName, 'PositionY' & ' = ' & Hex($NewPosition + 4))
FileWriteLine($iniName, 'Npc_ID_near' & ' = ' & Hex($NewNpcIDnear))
FileWriteLine($iniName, 'Npc_ID_selec' & ' = ' & Hex($NewNpcIDselect))
FileWriteLine($iniName, 'CheckMap' & ' = ' & Hex($NewCheckMap))
FileWriteLine($iniName, 'Mouse_SelectId' & ' = ' & Hex($NewMouse_SelectId))
EndFunc