Here is mine made a simple Autoit script that scans the value and relogg when
at Login Screen.
The Address is "0x8E276C" and in-Game value is 1 and Loginscreen is 0.
In combination with FastLogin (
) and NoCheckVersion Parameter you got a complete automated relogin.
For this script you will need Autoit and NomadMomory.au3 (can download it from here or the autoit wiki)
Here is my private Version all you need do do ist setup folders of loginxml(from 1 to 4) with
the (
) addon.Each folder is for one Char, set Fastlogin up to enter the world after login.
And finally place the script in the Runes of Magic folder.
Updated BotTimer so that you can use micromacro or inject.exe
and can change the address and your micromacro path both were stored in a config.ini.
How to use:
Set up loginxml folders with the fastlogin script and name them loginxml1-4 each for every char you use.
Place the chars were they can start botting.
CLOSE RoM windows start BotTimer.exe make your options and start.
Enjoy interruption free botting ;-)
here is a screenshot what it looks like
Code:
#Region ;**** Directives created by AutoIt3Wrapper_GUI ****
#AutoIt3Wrapper_Icon=RoM.ico
#AutoIt3Wrapper_Outfile=BotTimer.exe
#EndRegion ;**** Directives created by AutoIt3Wrapper_GUI ****
Opt("TrayAutoPause", 0)
Opt("TrayIconDebug", 1)
#include <NomadMemory.au3>
#include <ButtonConstants.au3>
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
HotKeySet("{F10}", "Terminate")
#Region ### START Koda GUI section ### Form=c:\dokumente und einstellungen\froz3none\eigene dateien\romdc\gui.kxf
$Form1_1 = GUICreate("Bot-Timer", 194, 385, 282, 136)
$char1 = GUICtrlCreateCheckbox("loginxml1", 32, 176, 97, 17)
$char2 = GUICtrlCreateCheckbox("loginxml2", 32, 192, 97, 17)
$char3 = GUICtrlCreateCheckbox("loginxml3", 32, 208, 97, 17)
$char4 = GUICtrlCreateCheckbox("loginxml4", 32, 224, 97, 17)
$dauer = GUICtrlCreateInput("300", 56, 96, 57, 21)
GUICtrlSetTip(-1, "Zeit in Minuten")
GUICtrlSetCursor(-1, 4)
$recon = GUICtrlCreateInput("30", 56, 136, 57, 21)
GUICtrlSetTip(-1, "Zeit in Sekunden")
$start = GUICtrlCreateButton("Start", 56, 352, 75, 25, $WS_GROUP)
GUICtrlSetTip(-1, "Startet den Timer und schließt dieses Fenster")
$Label3 = GUICtrlCreateLabel("Which Chars should be used", 24, 160, 146, 17)
GUICtrlSetColor(-1, 0xFF0000)
GUICtrlSetTip(-1, "At least one Char must be choosen")
$Label1 = GUICtrlCreateLabel("How many seconds to wait after DC", 8, 120, 181, 17)
$Label2 = GUICtrlCreateLabel("How long do you wish to bot", 16, 80, 135, 17)
GUICtrlSetTip(-1, "in Minutes")
$Label4 = GUICtrlCreateLabel("Which Bot should be started", 16, 248, 153, 17)
GUICtrlSetTip(-1, "Startet inject.exe")
$inject = GUICtrlCreateCheckbox("Start inject.exe", 32, 264, 105, 17)
$shutdown = GUICtrlCreateCheckbox("Shutdown PC after Botting", 32, 328, 145, 17)
$micro = GUICtrlCreateCheckbox("Start micromacro", 32, 280, 97, 17)
$save = GUICtrlCreateInput(IniRead("config.ini", "config", "address", "0x8E2764"), 32, 56, 121, 21)
$Label5 = GUICtrlCreateLabel("Online Status Address", 40, 40, 108, 17)
GUICtrlSetColor(-1, 0xFF0000)
$Label6 = GUICtrlCreateLabel("Peterhartzt's online Timer", 8, 8, 183, 24)
GUICtrlSetFont(-1, 12, 400, 0, "MS Sans Serif")
GUICtrlSetColor(-1, 0x0000FF)
$mpath = GUICtrlCreateInput(IniRead("config.ini", "config", "path", "put path here"), 32, 304, 121, 21)
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###
While 1
$nMsg = GUIGetMsg()
Switch $nMsg
Case $GUI_EVENT_CLOSE
Exit
Case $start
IniWrite("config.ini", "config", "path", GUICtrlRead($mpath))
IniWrite("config.ini", "config", "address", GUICtrlRead($save))
GUISetState(@SW_HIDE)
$60Count = 0
$begin = TimerInit()
While GUICtrlRead($dauer) > $60Count
If ProcessExists("Client.exe") Then
$pid = WinGetProcess("[CLASS:Radiant Arcana]")
Sleep("1000")
Do
$dif = TimerDiff($begin)
$dif2 = StringLeft($dif, StringInStr($dif, ".") - 1)
$Count = Int($dif / 1000)
$60Count = Int($Count / 60)
ToolTip("Given Time: = " & StringLeft((GUICtrlRead($dauer) / 60),4) & " hours ( " & GUICtrlRead($dauer) & " Minuten ) " & @CRLF & "Time = " & $60Count & ":" & $Count - ($60Count * 60) & @CRLF & " Press F10 to quit!", 450, 15, "Bot-Timer", 1)
Sleep("100")
If $Count / 60 > GUICtrlRead($dauer) Then
ExitLoop
EndIf
Until _MemoryRead(IniRead("config.ini", "config", "address", "0x8E2764"), _MemoryOpen($pid)) = 0
While ProcessExists("Client.exe")
ProcessClose("Client.exe")
WEnd
While ProcessExists("micromacro.exe")
ProcessClose("micromacro.exe")
WEnd
For $p = 10 To 1 Step -1
ToolTip("Time over or DC go on in " & $p & " seconds", 0, 0)
Sleep("1000")
Next
ElseIf Not ProcessExists("Client.exe") Then
;loginxml muss hier hin
If GUICtrlRead($char1) = 1 Then
FileCopy("interface\loginxml1\*.*", "interface\loginxml\", 1)
Sleep("3000")
ShellExecute("Client.exe", "NoCheckVersion")
For $i = GUICtrlRead($recon) To 1 Step -1
ToolTip("Start, logging in with loginxml1... Warte noch : " & $i & " sekunden ", 0, 0)
Sleep("1000")
Next
WinSetTitle("Runes of Magic", "", "loginxml1")
If GUICtrlRead($micro) = 1 Then
ShellExecute("micromacro.exe", "", IniRead("config.ini", "config", "path", "C:\Games\micromacro"))
Sleep("3000")
Send("rom/bot.lua{Enter}")
Sleep("2000")
WinActivate("loginxml1")
Sleep("2000")
WinSetTitle("loginxml1", "", "Runes of Magic")
Sleep("2000")
Send("{DELETE}")
Sleep("2000")
EndIf
EndIf
If GUICtrlRead($char2) = 1 Then
FileCopy("interface\loginxml2\*.*", "interface\loginxml\", 1)
Sleep("3000")
ShellExecute("Client.exe", "NoCheckVersion")
For $i = GUICtrlRead($recon) To 1 Step -1
ToolTip("Start, logging in with loginxml2... Warte noch : " & $i & " sekunden ", 0, 0)
Sleep("1000")
Next
WinSetTitle("Runes of Magic", "", "loginxml2")
If GUICtrlRead($micro) = 1 Then
ShellExecute("micromacro.exe", "", IniRead("config.ini", "config", "path", "C:\Games\micromacro"))
Sleep("3000")
Send("rom/bot.lua{Enter}")
Sleep("2000")
WinActivate("loginxml2")
Sleep("2000")
WinSetTitle("loginxml2", "", "Runes of Magic")
Sleep("2000")
Send("{DELETE}")
Sleep("2000")
EndIf
EndIf
If GUICtrlRead($char3) = 1 Then
FileCopy("interface\loginxml3\*.*", "interface\loginxml\", 1)
Sleep("3000")
ShellExecute("Client.exe", "NoCheckVersion")
For $i = GUICtrlRead($recon) To 1 Step -1
ToolTip("Start, logging in with loginxml3... Warte noch : " & $i & " sekunden ", 0, 0)
Sleep("1000")
Next
WinSetTitle("Runes of Magic", "", "loginxml3")
If GUICtrlRead($micro) = 1 Then
ShellExecute("micromacro.exe", "", IniRead("config.ini", "config", "path", "C:\Games\micromacro"))
Sleep("3000")
Send("rom/bot.lua{Enter}")
Sleep("2000")
WinActivate("loginxml3")
Sleep("2000")
WinSetTitle("loginxml3", "", "Runes of Magic")
Sleep("2000")
Send("{DELETE}")
Sleep("2000")
EndIf
EndIf
If GUICtrlRead($char4) = 1 Then
FileCopy("interface\loginxml4\*.*", "interface\loginxml\", 1)
Sleep("3000")
ShellExecute("Client.exe", "NoCheckVersion")
For $i = GUICtrlRead($recon) To 1 Step -1
ToolTip("Start, logging in with loginxml4... Warte noch : " & $i & " sekunden ", 0, 0)
Sleep("1000")
Next
WinSetTitle("Runes of Magic", "", "loginxml4")
If GUICtrlRead($micro) = 1 Then
ShellExecute("micromacro.exe", "", IniRead("config.ini", "config", "path", "C:\Games\micromacro"))
Sleep("3000")
Send("rom/bot.lua{Enter}")
Sleep("2000")
WinActivate("loginxml4")
Sleep("2000")
WinSetTitle("loginxml4", "", "Runes of Magic")
Sleep("2000")
Send("{DELETE}")
Sleep("2000")
EndIf
EndIf
If GUICtrlRead($inject) = 1 Then
ShellExecute("inject.exe")
Sleep("5000")
Send("{ENTER}")
For $i = 10 To 1 Step -1
ToolTip("Gatherer wurde injected! ", 0, 0)
Sleep("1000")
Next
EndIf
EndIf
WEnd
If GUICtrlRead($shutdown) = 1 Then
Shutdown(6)
Else
MsgBox(64, "Time is over!!", "Time was over! ")
EndIf
Exit
EndSwitch
WEnd
Func Terminate()
Exit 0
EndFunc ;==>Terminate
Like to thanks Ikaruz , how gave me the idea with the address.
have fun with this
Hab mal anghängt was ich mir gebastelt habe. Und einen Timer der RoM nach eingebener anzahl an minuten schließt.






