celguar / spp-classics-cmangos

SPP Classics repack with ike3 playerbots. Based on cmangos. Supports 1.12, 2.4.3, 3.3.5. Check "Releases" for installer
https://discord.gg/s4JGKG2BUW
239 stars 60 forks source link

get rid of AFK on player/bot? #301

Open umbrablade opened 2 weeks ago

umbrablade commented 2 weeks ago

I don't really know script well, and don't want to mess with DB, but is there an easy way to opt out of going afk while botting, like a gm command? can't find anything in config files, and doesn't seem to be a command while im in gm mode...

Thanks :)

celguar commented 2 weeks ago

Hello, assuming you have bots in repack, and botting also refers to you letting some program control your game to automate it, and the fact that bots can be AFK and you can be AFK I don't really get what are you asking about

umbrablade commented 2 weeks ago

Sorry for not elaborating... i'm looking for a way to disable automatically going afk while botting my own character, so I can have it quest while I am not at my desk. It goes afk and I constantly have to take it out of (away) when PC has the command .bot self applied to it... sorry I am new to this.

celguar commented 2 weeks ago

you would have to use some script that sends keyboard commands to not let your game send afk status.

celguar commented 2 weeks ago
' Anti-AFK for single or multiple WoW sessions
' --------------------------------------------
' coded by Corleone, 12/2013
' 
' Assign 2 keys of your choice in WoW for sideward moving to the left and to the right,
' or use your already predefined keys.
' Alter those keys in the user config section below (in quotation marks!) as described:
'
' i.e. "A" for left, "D" for right, 
' or as presetted here as an example "%{left}" = ALT+left arrow, "%{right}" = ALT+right arrow
'
' Special keys are SHIFT = +, CTRL = ^, ALT = %
' Non-ASCII keys have to be enclosed in curly brackets { }, i.e. "^{F12}" for CTRL-F12
' You can find more keycodes here: http://msdn.microsoft.com/en-us/library/8c6yea83
'
' This VBS script accepts a numeric value of milliseconds as start parameter for the repetition time.
' Default value is 200000 milliseconds if no parameter is passed.
' The script closes automatically when no more WoW instances are running and the iteration expires.

On Error Resume Next

' ########################### begin user config
strStepLeft = "%{left}"
strStepRight = "%{right}"
' ########################### end user config

Set WshShell = Wscript.CreateObject("WScript.Shell")
Set args = WScript.Arguments
num = args.Count
if num = 0 then
  n = 200000
else
  n =  args(0)
end if

strComputer = "."
strExeName = "Wow.exe"

Do
  Set objWMIService = GetObject("winmgmts:" & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
  Set colProcessList = objWMIService.ExecQuery("Select * from Win32_Process")
  numCount = 0
  For Each objProcess in colProcessList
    If Instr(1, objProcess.Name, strExeName) then
      numCount = numCount + 1
    End If
  Next
  If numCount = 0 then
    Exit Do
  End If

  For Each objProcess in colProcessList
    colPID = objProcess.processID
    colName = objProcess.Name

    If Instr(1, colName, strExeName) then
      WshShell.AppActivate colPID
      WshShell.sendkeys "/r"
      WshShell.AppActivate colPID
      WshShell.SendKeys "{ENTER}"
    End If
  Next  
    Wscript.sleep n
Loop

MsgBox "No running WoW instance found. Terminating AntiAFK now.",0,"AntiAFK VBS"
celguar commented 2 weeks ago

save as .vbs

umbrablade commented 2 weeks ago

Hello, thank you so much for the quick response! When I get to my PC I will try this out. Just want to say thank you all for this open source project, I have really been enjoying using the repack! Means a lot to all of us WoW enthusiasts. :-)

All the best. Umbrablade