Jump to content

Everquest II Bot - (Locked)


JoshDB
 Share

Recommended Posts

; ----------------------------------------------------------------------------
; Everquest II Tellbot
; By JoshDB
; http://atlanta.dnsdc3.com/~gologo/db/
; ----------------------------------------------------------------------------
; To run:
; 
; Fill in Server with the server you'll be playing on, Player with the character to be controlled, and $Anchor with the character that
;   will be controlling the other.
$Anchor = "Your Controlling Character"
$Server = "Your Server"
$Player = "Your Player to be Controlled"
;
; Start the bot.  To control the second character, just send it tells containing the commmand you want it to use!
;   List of commands:
;
;TB_US_T1_1 - Use slot 1 in the first hotkeys tab
;TB_US_T1_2 - Use slot 2 in the first hotkeys tab
;TB_US_T1_3 - Use slot 3 in the first hotkeys tab
;TB_US_T1_4 - Use slot 4 in the first hotkeys tab
;TB_US_T1_5 - Use slot 5 in the first hotkeys tab
;TB_US_T1_6 - Use slot 6 in the first hotkeys tab
;TB_US_T1_7 - Use slot 7 in the first hotkeys tab
;TB_US_T1_8 - Use slot 8 in the first hotkeys tab
;TB_US_T1_9 - Use slot 9 in the first hotkeys tab
;TB_US_T1_0 - Use slot 0 in the first hotkeys tab
;TB_US_T1_- - Use slot - in the first hotkeys tab
;TB_US_T1_= - Use slot = in the first hotkeys tab
;
;TB_US_T2_1 - Use slot 1 in the second hotkeys tab
;TB_US_T2_2 - Use slot 2 in the second hotkeys tab
;TB_US_T2_3 - Use slot 3 in the second hotkeys tab
;TB_US_T2_4 - Use slot 4 in the second hotkeys tab
;TB_US_T2_5 - Use slot 5 in the second hotkeys tab
;TB_US_T2_6 - Use slot 6 in the second hotkeys tab
;TB_US_T2_7 - Use slot 7 in the second hotkeys tab
;TB_US_T2_8 - Use slot 8 in the second hotkeys tab
;TB_US_T2_9 - Use slot 9 in the second hotkeys tab
;TB_US_T2_0 - Use slot 0 in the second hotkeys tab
;TB_US_T2_- - Use slot - in the second hotkeys tab
;TB_US_T2_= - Use slot = in the second hotkeys tab
;
;TB_US_T3_1 - Use slot 1 in the third hotkeys tab
;TB_US_T3_2 - Use slot 2 in the third hotkeys tab
;TB_US_T3_3 - Use slot 3 in the third hotkeys tab
;TB_US_T3_4 - Use slot 4 in the third hotkeys tab
;TB_US_T3_5 - Use slot 5 in the third hotkeys tab
;TB_US_T3_6 - Use slot 6 in the third hotkeys tab
;TB_US_T3_7 - Use slot 7 in the third hotkeys tab
;TB_US_T3_8 - Use slot 8 in the third hotkeys tab
;TB_US_T3_9 - Use slot 9 in the third hotkeys tab
;TB_US_T3_0 - Use slot 0 in the third hotkeys tab
;TB_US_T3_- - Use slot - in the third hotkeys tab
;TB_US_T3_= - Use slot = in the third hotkeys tab
;
;TB_DC_Jump - Makes the character jump
;TB_DC_Follow Me - Makes the character follow the anchor
;TB_DC_Follow Current Target - Makes the character follw the current target
;TB_DC_Target Group Member #1 - Makes the character target group member #1
;TB_DC_Target Group Member #2 - Makes the character target group member #2
;TB_DC_Target Group Member #3 - Makes the character target group member #3
;TB_DC_Target Group Member #4 - Makes the character target group member #4
;TB_DC_Target Group Member #5 - Makes the character target group member #5
;TB_DC_Target Group Member #6 - Makes the character target group member #6
;TB_DC_Assist Me - Makes the character assist the anchor
;TB_DC_Assist Current Target - Makes the character follow the current target
;
;TB_DC_Exit - Exits bot
;
; ----------------------------------------------------------------------------


$Loop = 1

sleep(1000)

While $Loop = 1
    If FileExists("C:\Program Files\Sony\EverQuest II\logs\" & $Server & "\eq2log_" & $Player & "1.txt") Then FileDelete("C:\Program Files\Sony\EverQuest II\logs\" & $Server & "\eq2log_" & $Player & "1.txt")
    FileCopy("C:\Program Files\Sony\EverQuest II\logs\" & $Server & "\eq2log_" & $Player & ".txt","C:\Program Files\Sony\EverQuest II\logs\Blackburrow\eq2log_Ranjit1.txt")
    $logtext = FileRead ("C:\Program Files\Sony\EverQuest II\logs\" & $Server & "\eq2log_" & $Player & "1.txt", 10000)
    $string = String($logtext)
    _CheckForCommands()
    _CheckForSkills()
wEnd

Func _Clear()
    $log = FileOpen("C:\Program Files\Sony\EverQuest II\logs\" & $Server & "\eq2log_" & $Player & ".txt", 2)
    FileClose($log)
EndFunc

Func _CheckForSkills()
    $result = StringInStr($string, "TB_US_T1_1")
    if $result > 0 Then
        send("1")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_2")
    if $result > 0 Then
        send("2")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_3")
    if $result > 0 Then
        send("3")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_4")
    if $result > 0 Then
        send("4")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_5")
    if $result > 0 Then
        send("5")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_6")
    if $result > 0 Then
        send("6")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_7")
    if $result > 0 Then
        send("7")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_8")
    if $result > 0 Then
        send("8")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_9")
    if $result > 0 Then
        send("9")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_0")
    if $result > 0 Then
        send("0")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_-")
    if $result > 0 Then
        send("-")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T1_=")
    if $result > 0 Then
        send("=")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_1")
    if $result > 0 Then
        send("^1")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_2")
    if $result > 0 Then
        send("^2")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_3")
    if $result > 0 Then
        send("^3")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_4")
    if $result > 0 Then
        send("^4")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_5")
    if $result > 0 Then
        send("^5")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_6")
    if $result > 0 Then
        send("^6")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_7")
    if $result > 0 Then
        send("^7")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_8")
    if $result > 0 Then
        send("^8")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_9")
    if $result > 0 Then
        send("^9")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_0")
    if $result > 0 Then
        send("^0")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_-")
    if $result > 0 Then
        send("^-")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T2_=")
    if $result > 0 Then
        send("^=")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_1")
    if $result > 0 Then
        send("!1")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_2")
    if $result > 0 Then
        send("!2")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_3")
    if $result > 0 Then
        send("!3")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_4")
    if $result > 0 Then
        send("!4")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_5")
    if $result > 0 Then
        send("!5")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_6")
    if $result > 0 Then
        send("!6")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_7")
    if $result > 0 Then
        send("!7")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_8")
    if $result > 0 Then
        send("!8")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_9")
    if $result > 0 Then
        send("!9")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_0")
    if $result > 0 Then
        send("!0")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_-")
    if $result > 0 Then
        send("!-")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_US_T3_=")
    if $result > 0 Then
        send("!=")
        _Clear()
    EndIf
EndFunc

Func _CheckForCommands()
    $result = StringInStr($string, "TB_DC_Jump")
    if $result > 0 Then
        send("{SPACE}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Follow Me")
    if $result > 0 Then
        send("{ENTER}/follow " & $Anchor & "{ENTER}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Follow Current Target")
    if $result > 0 Then
        send("{ENTER}/follow{ENTER}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Target Group Member #1")
    if $result > 0 Then
        send("{F1}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Target Group Member #2")
    if $result > 0 Then
        send("{F2}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Target Group Member #3")
    if $result > 0 Then
        send("{F3}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Target Group Member #4")
    if $result > 0 Then
        send("{F4}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Target Group Member #5")
    if $result > 0 Then
        send("{F5}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Target Group Member #6")
    if $result > 0 Then
        send("{F6}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Assist Me")
    if $result > 0 Then
        send("{ENTER}/assist " & $Anchor & "{ENTER}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Assist Current Target")
    if $result > 0 Then
        send("{ENTER}/assist{ENTER}")
        _Clear()
    EndIf
    $result = StringInStr($string, "TB_DC_Exit")
    if $result > 0 Then
        $Loop = 0
    EndIf
EndFunc

Enjoy. If you like, spread it around. Please leave the top credits part in there ( ;

Ha, I haven't been on these forums since... 2006, almost. Behold, my legacy signature:My AutoIt idol is Valuater. You know you love him, too.My Stuff: D&D AGoT Tools Suite
Link to comment
Share on other sites

  • 1 month later...

Im not sure if im understanding this. My Thinking:

This script is set up and run on a second computer with a second account.

It reads the Chatlog and looks for the newest line that would contain a "TB_US_T1_1" wisper from the first computer, when it finds that string it sends the keypress?

Like:

Comp1 Wispers TB_US_T1_1 to Comp2 The Script reads the logfile, finds the TB_US_T1_1 and sends the keypress?

Pimped. Might work with other games like World of Warcraft.

DB

Link to comment
Share on other sites

Why do you use

$result = StringInStr($string, "TB_DC_Assist Current Target")
    if $result > 0 Then
        send("{ENTER}/assist{ENTER}")
        _Clear()
    EndIf

Instead of:

If StringInStr($string, "Blabla")
>>
EndIf

Or the way i prefer:

Select 
Case StringInStr($string, "blabla")
>>>
Case StringInStr($string, "etcetc")
>>>
EndSelect
Edited by viking
Link to comment
Share on other sites

Yes, you should probably use Select Case here :) Would be alot less confusing hehe :mellow:

I like the way you are using chat history (i guess?) to command the character, but may i suggest using script files? Like script.ini and you run them with a GUI. If you would like an example i could show you mine, i use a script parser of sorts for my bot that i am working on.

Edited by jackyyll
Link to comment
Share on other sites

  • 4 months later...

Yes, you should probably use Select Case here :whistle: Would be alot less confusing hehe :)

I like the way you are using chat history (i guess?) to command the character, but may i suggest using script files? Like script.ini and you run them with a GUI. If you would like an example i could show you mine, i use a script parser of sorts for my bot that i am working on.

I'd love to see how you coded your solution. I've been looking at many different options and have yet to find one I really like.

Link to comment
Share on other sites

  • 2 years later...

I like this code and was wondering if it has been updated or not?

I was thinking of fiddling with it and adding a small GUI to it.

Where you just put in the controlled name and then do a combo box for the server list then put in the controller name and hit start. =)) Just an idea I had looking at this script. Any help would be appreciated and welcomed.

Link to comment
Share on other sites

  • 12 years later...
  • Developers
4 minutes ago, gbark said:

Hi,

Old necro I know, but any thought of an update? I can't seem to get it to work as outlined. 

Yea, well don't hold your breath for the OP to answer and this topic has become against out forum rules in the mean time. 
So start reading those now first please.

Jos

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

  • Developers

Welcome to the AutoIt forum.

Unfortunately you appear to have missed the Forum rules on your way in. Please read them now - particularly the bit about not discussing game automation - and then you will understand why you will get no help and this thread will now be locked.

See you soon with a legitimate question I hope.

The Moderation team

SciTE4AutoIt3 Full installer Download page   - Beta files       Read before posting     How to post scriptsource   Forum etiquette  Forum Rules 
 
Live for the present,
Dream of the future,
Learn from the past.
  :)

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...