Jump to content

Archer mac


Styler001
 Share

Recommended Posts

I saw a request here from a Knight Online player for a bot for the game, so here's one to fulfill that request.

Please take it easy on me. This is my first attempt at a script for AutoIt and it may seem a little bulky and ugly. (The formatting looked better in SciTe, too.) One thing you've got to understand is that alot of the people who play Knight Online can't get a grasp on following instructions, so I've tried to make this as idiot-proof as I could. Some comments may seem over-simplified, but that's what it takes to get through to some of these guys. I can pretty much guarantee you that the site where alot of players look for bots will still have questions like, "what variables can I change?"

So, here it is. It also requires MAGS's timer script which can be found in this topic. I've changed the name of it in my script to KO_Timers.inc.au3 so it doesn't get misplaced by me.

Anyway, here's my script:

;
;   Script name:  Archer.au3
;
; AutoIt Version: 3.1.1
; Language:    English
; Platform:    Windows XP
; Author:        Styler001
;
; With many special thanks to:
;
; SicDoDo for his beginnings of the CheckMob code, with help
; from thing12347 and Stork.
;
; Ipa, Ahk, thing12347, and goodfela26 for their help (which
; turned out to be unnecessary due to a brain-fart on my part)
; on the heal/mana functions.  But their suggestions did make
; it work better.
;
;   MAGS for his code for the timers.  Without them, we would
; have no timed-skill use or auto-repairs.
;
;
; Script Function:  Knight Online Archer mac v1.05 featuring:
;
;       * Auto-attack with check to see if mob is dead before
;           targeting the next mob
;       * Auto-heal using minor heal and HP pots
;       * Auto-mana using mana pots
;       * Auto-repair all or selected equipment at timed
;           intervals (turn on/off)
;       * Auto-party reject/accept (turn on/off)
;       * Auto-trade reject/accept (turn on/off)
;       * Auto-save at timed intervals (turn on/off)
;       * Auto-swift at timed intervals (turn on/off)
;       * Auto-strength of wolf at timed intervals (turn on/off)
;       * Auto-hide at timed intervals (turn on/off)
;       * Auto-safety at timed intervals (turn on/off)
;       * Auto-evade at timed intervals (turn on/off)
;       * Auto-town has not been tested yet, but was included
;           from the ACTool macro.
;
;       *** The swift, hide, safety, and evade autos were added
;               because alot of people asked where they were because
;               they were too lazy to figure out how to add the
;               features themselves.  Open your eyes, people.  This
;               shit's not that hard to figure out.


#include "KO_Timers.inc.au3"
WinWaitActive ("Knight OnLine Client", "", 10)

; ------------------- YOUR SLOTS ---------------------
; ------------ for information only ------------------
; Key 1 = swift
; Key 2 = light feet
; Key 3 = minor heal
; Key 4 = attack skill
; Key 5 = attack skill
; Key 6 = MP potion
; Key 7 = HP potion
; Key 8 = strength of wolf


; ------------------------------------------------------------
;
;       MAKE CHANGES TO THE FOLLOWING VARIABLES ONLY
;
; ------------------------------------------------------------

; --------- TRADE/PARTY/SAVE FOR CHAT WINDOW COMMANDS ----------
; --------------------- 1 = yes, 0 = no ------------------------
$Speak = 1                              ; will "say" commands in KO's chat window
$AllowTrade = 0                     ; allow trade requests
$AllowParty = 0                     ; allow party requests
$SaveInfo = 1                           ; save character info
$SaveDelay = 600000             ; how often (in milliseconds) to save character info

; ------------------ SKILL AND TARGET KEYS -----------------
$EvadeKey = 2                           ; key for evade skill
$EvadeDelay = 31000             ; how often (in milliseconds) to use evade skill
$HideKey = 2                            ; key for hide skill
$HideDelay = 44000              ; how often (in milliseconds) to use hide skill
$SafetyKey = 2                      ; key for safety skill
$SafetyDelay = 31000            ; how often (in milliseconds) to use safety skill
$SwiftKey = 1                           ; key for swift skill
$SwiftDelay = 305000            ; how often (in milliseconds) to use swift skill
$WolfKey = 8                            ; key for strength of wolf
$WolfDelay = 123000             ; how often (in milliseconds) to use strength of wolf skill
$MinorHealKey = 3                   ; key for minor heal skill
$MPPotKey = 6                           ; key for MP potion
$HPPotKey = 7                           ; key for HP potion
$TargetKey = "z"                    ; key for targeting mobs (z = mob, b = enemy player in Abyss)

; ---------------- LAG DELAY FOR POTION USE ----------------
; I have experienced instances where potions are used twice.  For me, this seems
; to have fixed that problem.
$LagDelay = 5000                    ; in milliseconds

; ---------------- DELAY FOR MOUSE CLICKS IN REPAIR ----------------
$RepairClickDelay = 1000    ; in milliseconds

; ---------------- KO SCREEN RESOLUTION --------------------
$ScreenRes = 1                      ; 1 = 1280x1024, 2 = 1024x768

; -------------------- FOR AUTO-TOWN -----------------------
; Enter the X coord you want to use to determine if you auto-town.
; If this coord is black you will auto-town.
$AutoTownXCoord = 190

; ------- EVADE/HIDE/SAFETY/SWIFT/WOLF/TOWN/REPAIR ---------
; ------------------ 1 = yes, 0 = no -----------------------
$UseEvade = 0                           ; use evade skill
$UseHide = 0                            ; use hide skill
$UseSafety = 0                      ; use safety skill
$UseTown = 0                            ; use town skill
$UseSwift = 0                           ; use swift skill
$UseWolf = 1                            ; use strength of wolf skill
$RepairAll = 1                      ; repair all items in repair window
$RepairBoots = 0                    ; repair boots only
$RepairGloves = 0                   ; repair gloves only
$RepairHelmet = 0                   ; repair helmet only
$RepairPads = 0                     ; repair pads only
$RepairPauldron = 0             ; repair pauldron only
$RepairShield = 0                   ; repair shield (or right-hand weapon only)
$RepairWeapon = 0                   ; repair left-hand weapon only

; --------------------- REPAIR FREQUENCY --------------------
; --------------------- (in milliseconds) -------------------
; NOTE: Repair requires repair window to be open at all times
$AllRepairFrequency = 600000
$BootsRepairFrequency = 600000
$GlovesRepairFrequency = 600000
$HelmetRepairFrequency = 600000
$PadsRepairFrequency = 600000
$PauldronRepairFrequency = 600000
$ShieldRepairFrequency = 600000
$WeaponRepairFrequency = 600000

; --------------- HEALTH AND MP POT VALUES ------------------
$MaxHealth = 1211                   ; character's maximum health
$HPPotValue = 720                   ; value of HP potion to use

; ---------------- MANA AND MP POT VALUES -------------------
$MaxMana = 1736                     ; character's maximum mana
$MPPotValue = 960                   ; value of MP potion to use


; ------------------------------------------------------------
;
;         MAKE NO CHANGES TO THE FOLLOWING VARIABLES
;         MAKE NO CHANGES TO THE FOLLOWING VARIABLES
;         MAKE NO CHANGES TO THE FOLLOWING VARIABLES
;                 (YOU'VE BEEN WARNED!!!!)
;
; ------------------------------------------------------------

; ------------- FOR HEAL AND MANA CALCULATIONS ---------------
$BarTotal = 112                     ; total X coords in mana and health bars
$BarLeftXCoord = 158            ; left X coord of mana and health bars

; ----------------- FOR HEAL CALCULATIONS --------------------
$HPBarBlack = 0                     ; 0 = black, to determine if heal should be used
$CheckHPBarTemp = 0             ; used for PixelGetColor
$HPPotPercent = 0                   ; percentage of HP when to use HP pot
$AddToMinHealthXCoord = 0   ; number of X coords to add to reach point to use HP pot
$HPPotUseXCoord = 0             ; X coord at which to use HP pot

; -------------- FOR MINOR HEAL CALCULATIONS -----------------
$MPBarBlack = 0                     ; 0 = black, to determine if mana potion should be used
$CheckMPBarTemp = 0             ; used for PixelGetColor
$MinorHealValue = 120           ; value of minor heal times 2
$MinorHealPercent = 0           ; percentage of minor heal compared to total health
$AddMinorHealXCoord = 0     ; number of X coords to add to reach point to use minor heal
$MinorHealUseXCoord = 0     ; X coord at which to use minor heal twice

; ------------------ FOR MANA CALCULATIONS -------------------
$MPPotPercent = 0                   ; percentage of mana when to use MP pot
$AddToMinManaXCoord = 0     ; number of X coords to add to reach point to use MP pot
$MPPotUseXCoord = 0             ; X coord at which to use MP pot

; ------------------ FOR CHECKMOB FUNCTION --------------------
$CheckMobDummy = 999            ; forces an If condition in CheckMob
$CheckMobHPColor = 10035729; red color at left end of mob HP bar
$CheckMobColorTemp = 0      ; 0 = black, used for PixelGetColor

; ------------------ FOR AUTO-TOWN FUNCTION ------------------
$CheckTownBlack = 0             ; 0 = black, to determine if auto-town should be used
$CheckTownColorTemp = 0     ; used for PixelGetColor


; -------------- USE PAUSE/BREAK KEY ON KEYBOARD TO PAUSE MACRO -------------
; ------------------ USE ESC KEY ON KEYBOARD TO EXIT MACRO ------------------
; NOT WORKING IN KO AT THIS TIME
;Global $Paused
;HotKeySet("{PAUSE}", "TogglePause")
;HotKeySet("{ESC}", "Terminate")


;Func TogglePause()
;   $Paused = NOT $Paused
;   While $Paused
;       Sleep (100)
;       ToolTip ('Script is "Paused"',50,50)
;   WEnd
;   ToolTip ("")
;EndFunc


;Func Terminate()
;   Exit 0
;EndFunc


; ------- CHECK TO SEE IF HEALTH IS TOO LOW AND TP TO TOWN -------
; I'm not sure if this is working or not.  Has not been checked.
;Func CheckTown()
;   If $UseTown = 0 Then
;   EndIf
;Else
;   $CheckTownColorTemp = PixelGetColor ($AutoTownXCoord, 9)
;   If $CheckTownBlack = $CheckTownColorTemp Then
;       Sleep (200)
;       Send ($HPPotKey)
;       Sleep (1500)
;       Send ($HPPotKey)
;       Sleep (300)
;       Send ("{ENTER}/town{ENTER}")
;       Sleep (3000)
;       Send ("c")
;       Sleep (500)
;       Put; before the Exit in the next line if you do not want the macro to stop
;       Exit
;   EndIf
;EndIf
;EndFunc


; ------------ MOUSE CLICK FOR REPAIR FUNCTION ---------------
Func RepairMouseClick()
    MouseDown ("left")
    Sleep ($RepairClickDelay)
    MouseUp ("left")
    Sleep ($RepairClickDelay)
EndFunc


; ------ CHECK IF MOB IS STILL ALIVE BEFORE TARGETING NEXT ------
Func CheckMob()
    Send ($TargetKey)
    If $ScreenRes = 1 Then
        $CheckMobColorTemp = PixelGetColor (574, 46)
        If $CheckMobHPColor = $CheckMobColorTemp Then
            Call ("Attack")
            If $CheckMobDummy = 999 Then
                Call ("Attack")
            EndIf
        Else
            Send ($TargetKey)
            Call ("Attack")
        EndIf
    Else
        If $ScreenRes = 2 Then
            $CheckMobColorTemp = PixelGetColor (447, 48)
            If $CheckMobHPColor = $CheckMobColorTemp Then
                Call ("Attack")
                If $CheckMobDummy = 999 Then
                    Call ("Attack")
                EndIf
            Else
                Send ($TargetKey)
                Call ("Attack")
            EndIf
        EndIf
    EndIf
EndFunc


; ------------------------- ATTACK ---------------------------
Func Attack()
    Send ("4")
    Sleep (100)
    Send ("5")
    Sleep (100)
EndFunc


; -------------------------- HEAL ----------------------------
Func InitHeal()
; ------------ Computations for heal potion ----------------
    $HPPotPercent = 1 - ($HPPotValue / $MaxHealth)
    $HPPotPercent = Round ($HPPotPercent, 2)
    $AddToMinHealthXCoord = Int ($HPPotPercent * $BarTotal)
    $HPPotUseXCoord = $BarLeftXCoord + $AddToMinHealthXCoord
    
; ------------ Computations for minor heal -----------------
    $MinorHealPercent = 1 - ($MinorHealValue / $MaxHealth)
    $MinorHealPercent = Round ($MinorHealPercent, 2)
    $AddMinorHealXCoord = Int ($MinorHealPercent * $BarTotal)
    $MinorHealUseXCoord = $BarLeftXCoord + $AddMinorHealXCoord
EndFunc


; ----------- HEAL, FIRST CHECKING IF POTION SHOULD BE USED OR JUST MINOR HEAL ------------
Func Heal()
    $CheckHPBarTemp = PixelGetColor ($HPPotUseXCoord, 10)
If $HPBarBlack = $CheckHPBarTemp Then
        Send ($HPPotKey)
        Sleep ($LagDelay)
Else
    $CheckHPBarTemp = PixelGetColor ($MinorHealUseXCoord, 10)
    If $HPBarBlack = $CheckHPBarTemp Then
        Send ($MinorHealKey)
        Sleep (800)
        Send ($MinorHealKey)
    EndIf
EndIf
EndFunc

    
; -------------------------- MANA ----------------------------
Func InitMana()
    $MPPotPercent = 1 - ($MPPotValue / $MaxMana)
    $MPPotPercent = Round ($MPPotPercent, 2)
    $AddToMinManaXCoord = Int ($MPPotPercent * $BarTotal)
    $MPPotUseXCoord = $BarLeftXCoord + $AddToMinManaXCoord
EndFunc


; ---------------- CHECK TO SEE IF MANA POTION SHOULD BE USED ---------------
Func Mana()
    $CheckMPBarTemp = PixelGetColor ($MPPotUseXCoord, 27)
    If $MPBarBlack = $CheckMPBarTemp Then
        Send ($MPPotKey)
        Sleep ($LagDelay)
    EndIf
EndFunc


; -------------------------- REPAIR ALL EQUIPMENT -----------------------------
Func RepairAllEquipment()
    If $ScreenRes = 1 Then          ; 1280x1024 screen resolution for repair window
        Sleep (1500)
        
        MouseMove (1183, 77, 0)     ; helmet icon location
        Call ("RepairMouseClick")
            
        MouseMove (1190, 138, 0)    ; pauldron icon location
        Call ("RepairMouseClick")
            
        MouseMove (1132, 185, 0)    ; left-hand weapon icon location
        Call ("RepairMouseClick")
            
        MouseMove (1242, 188, 0)    ; shield/right-hand weapon icon location
        Call ("RepairMouseClick")

        MouseMove (1191, 240, 0)    ; pads icon location
        Call ("RepairMouseClick")

        MouseMove (1130, 289, 0)    ; gloves icon location
        Call ("RepairMouseClick")
        
        MouseMove (1187, 287, 0)    ; boots icon location
        Call ("RepairMouseClick")

        Send ($TargetKey)

Else

    If $ScreenRes = 2 Then          ; 1024x768 screen resolution for repair window
        Sleep (1500)
        
        MouseMove (929, 84, 0)      ; helmet icon location
        Call ("RepairMouseClick")
            
        MouseMove (931, 133, 0)     ; pauldron icon location
        Call ("RepairMouseClick")
            
        MouseMove (876, 185, 0)     ; left-hand weapon icon location
        Call ("RepairMouseClick")
        
        MouseMove (986, 188, 0)     ; shield/right-hand weapon icon location
        Call ("RepairMouseClick")

        MouseMove (932, 242, 0)     ; pads icon location
        Call ("RepairMouseClick")

        MouseMove (874, 292, 0)     ; gloves icon location
        Call ("RepairMouseClick")

        MouseMove (934, 288, 0)     ; boots icon location
        Call ("RepairMouseClick")

        Send ($TargetKey)
            
    EndIf
EndIf
EndFunc


; -------------- REPAIR BOOTS ONLY ----------------
Func RepairBootsOnly()
    If $ScreenRes = 1 Then
        MouseMove (1187, 287, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (934, 288, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; -------------- REPAIR GLOVES ONLY ---------------
Func RepairGlovesOnly()
    If $ScreenRes = 1 Then
        MouseMove (1130, 289, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (874, 292, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; -------------- REPAIR HELMET ONLY ---------------
Func RepairHelmetOnly()
    If $ScreenRes = 1 Then
        MouseMove (1183, 77, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (929, 84, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; -------------------- REPAIR PADS ONLY --------------------
Func RepairPadsOnly()
    If $ScreenRes = 1 Then
        MouseMove (1191, 240, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (932, 242, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; ----------------- REPAIR PAULDRON ONLY --------------------
Func RepairPauldronOnly()
    If $ScreenRes = 1 Then
        MouseMove (1190, 138, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (931, 133, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; -------- REPAIR SHIELD/RIGHT-HAND WEAPON ONLY ----------
Func RepairShieldOnly()
    If $ScreenRes = 1 Then
        MouseMove (1242, 188, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (986, 188, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; ------------- REPAIR LEFT-HAND WEAPON ONLY ---------------
Func RepairWeaponOnly()
    If $ScreenRes = 1 Then
        MouseMove (1132, 185, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
Else
    If $ScreenRes = 2 Then
        MouseMove (876, 185, 0)
        Call ("RepairMouseClick")
        Send ($TargetKey)
    EndIf
EndIf
EndFunc


; -------------------- SAVE CHARACTER INFO ------------------------
Func SaveChar()
    Sleep (1000)
    Send ("{ENTER}/save{ENTER}")
    Send ($TargetKey)
EndFunc


; --------------------- STRENGTH OF WOLF ---------------------------
Func AutoWolf()
    Sleep (1300)
    Send ($WolfKey)
    Sleep (2000)
    Send ($TargetKey)
EndFunc


; --------------------------- EVADE --------------------------------
Func AutoEvade()
    Sleep (1300)
    Send ($EvadeKey)
    Sleep (2000)
    Send ($TargetKey)
EndFunc


; --------------------------- HIDE ---------------------------------
Func AutoHide()
    Sleep (1300)
    Send ($HideKey)
    Sleep (2000)
    Send ($TargetKey)
EndFunc


; --------------------------- SAFETY -------------------------------
Func AutoSafety()
    Sleep (1300)
    Send ($SafetyKey)
    Sleep (2000)
    Send ($TargetKey)
EndFunc


; --------------------------- SWIFT --------------------------------
Func AutoSwift()
    Sleep (1300)
    Send ($SwiftKey)
    Sleep (2000)
    Send ($TargetKey)
EndFunc


; ---------------------------------------------------------------------------
; ---------------------------------------------------------------------------
;
;                            START OF MACRO
;
; ---------------------------------------------------------------------------
; ---------------------------------------------------------------------------

; ------------------------ BLOCK/ALLOW TRADE/PARTY --------------------------
MouseMove (500, 500, 0) ; move mouse to open area so ENTER key won't be a problem
Sleep (1500)
If $Speak = 1 Then
    If $AllowTrade = 0 Then
        Send ("{ENTER}/block_trade_request{ENTER}")
    Else
        Send ("{ENTER}/allow_trade_request{ENTER}")
    EndIf
    
    If $AllowParty = 0 Then
        Send ("{ENTER}/block_party{ENTER}")
    Else
        Send ("{ENTER}/allow_party{ENTER}")
    EndIf
EndIf


; ---------------------------------------------------------
; 
;               TIMERS FOR TIMED-SKILLS
;
; ---------------------------------------------------------
_TimersInitialize()         ; initializes timers for timed-skills

; ------------------------- SAVE --------------------------
If $SaveInfo = 1 Then
    If $Speak = 1 Then
        _TimerSet ("SaveTimer", $SaveDelay, "SaveChar")
        _TimerStart ("SaveTimer")
        Call ("SaveChar")
    EndIf
EndIf


; ------------------------ REPAIRS ------------------------
If $RepairAll = 1 Then
        _TimerSet ("RepairAllTimer", $AllRepairFrequency, "RepairAllEquipment")
        _TimerStart ("RepairAllTimer")
    Call ("RepairAllEquipment")
EndIf


If $RepairAll = 0 Then
    If $RepairBoots = 1 Then
        _TimerSet ("RepairBootsTimer", $BootsRepairFrequency, "RepairBootsOnly")
        _TimerStart ("RepairBootsTimer")
        Call ("RepairBootsOnly")
    EndIf
EndIf


If $RepairAll = 0 Then
    If $RepairGloves = 1 Then
        _TimerSet ("RepairGlovesTimer", $GlovesRepairFrequency, "RepairGlovesOnly")
        _TimerStart ("RepairGlovesTimer")
        Call ("RepairGlovesOnly")
    EndIf
EndIf


If $RepairAll = 0 Then
    If $RepairHelmet = 1 Then
        _TimerSet ("RepairHelmetTimer", $HelmetRepairFrequency, "RepairHelmetOnly")
        _TimerStart ("RepairHelmetTimer")
        Call ("RepairHelmetOnly")
    EndIf
EndIf


If $RepairAll = 0 Then
    If $RepairPads = 1 Then
        _TimerSet ("RepairPadsTimer", $PadsRepairFrequency, "RepairPadsOnly")
        _TimerStart ("RepairPadsTimer")
        Call ("RepairPadsOnly")
    EndIf
EndIf


If $RepairAll = 0 Then
    If $RepairPauldron = 1 Then
        _TimerSet ("RepairPauldronTimer", $PauldronRepairFrequency, "RepairPauldronOnly")
        _TimerStart ("RepairPauldronTimer")
        Call ("RepairPauldronOnly")
    EndIf
EndIf


If $RepairAll = 0 Then
    If $RepairShield = 1 Then
        _TimerSet ("RepairShieldTimer", $ShieldRepairFrequency, "RepairShieldOnly")
        _TimerStart ("RepairShieldTimer")
        Call ("RepairShieldOnly")
    EndIf
EndIf


If $RepairAll = 0 Then
    If $RepairWeapon = 1 Then
        _TimerSet ("RepairWeaponTimer", $WeaponRepairFrequency, "RepairWeaponOnly")
        _TimerStart ("RepairWeaponTimer")
        Call ("RepairWeaponOnly")
    EndIf
EndIf


; ------------------------ EVADE --------------------------
If $UseEvade = 1 Then
    _TimerSet ("EvadeTimer", $EvadeDelay, "AutoEvade")
    _TimerStart ("EvadeTimer")
    Call ("AutoEvade")
EndIf


; ------------------------ HIDE --------------------------
If $UseHide = 1 Then
    _TimerSet ("HideTimer", $HideDelay, "AutoHide")
    _TimerStart ("HideTimer")
    Call ("AutoHide")
EndIf


; ----------------------- SAFETY --------------------------
If $UseSafety = 1 Then
    _TimerSet ("SafetyTimer", $SafetyDelay, "AutoSafety")
    _TimerStart ("SafetyTimer")
    Call ("AutoSafety")
EndIf


; ------------------------ SWIFT --------------------------
If $UseSwift = 1 Then
    _TimerSet ("SwiftTimer", $SwiftDelay, "AutoSwift")
    _TimerStart ("SwiftTimer")
    Call ("AutoSwift")
EndIf


; ------------------- STRENGTH OF WOLF --------------------
If $UseWolf = 1 Then
    _TimerSet ("WolfTimer", $WolfDelay, "AutoWolf")
    _TimerStart ("WolfTimer")
    Call ("AutoWolf")
EndIf


Call ("InitHeal")
Call ("InitMana")
Send ($TargetKey)

While 1
    Sleep (50)
;   Call ("CheckTown")
    Call ("CheckMob")
    Call ("Mana")
    Call ("Heal")
WEnd
Edited by Styler001
Link to comment
Share on other sites

  • 6 months later...

It's not that bad, but you don't need to use Call(). You can just call the functions by doing things like this:

Initheal()
Initmana()
Send ($targetkey)

[off topic]

I haven't been able to open KO lately. It won't let me download the update for some reason

Link to comment
Share on other sites

  • 4 weeks later...

I'm not sure about USKO blocking pixel functions. I was using it mainly for MYKO. Everything worked fine there. (Maybe not this macro, but another one I've written since this one was posted.) For USKO, there are far better options than a simple macro.

Link to comment
Share on other sites

I'm not sure about USKO blocking pixel functions. I was using it mainly for MYKO. Everything worked fine there. (Maybe not this macro, but another one I've written since this one was posted.) For USKO, there are far better options than a simple macro.

haaay sup dude. long time no see.

Link to comment
Share on other sites

  • 3 months later...

sure xtrap blocking pixel, mem and sendkeys commands but

thank you for share, respect to ur work, ill modify and use it for a private server :)

Edited by mistakilla

:alien: ~ Every Living Thing is a Code Snippet of World Application ~ :alien:

Link to comment
Share on other sites

  • 4 months later...

Make your own. Jst create a script that looks checks if s pixel in your health bar is black or whatever the empty color is, then if it is hit the potion button. Basic Bot Ceation 101 by Fear1313, that will be $10 :)

[center][/center]Working on the next big thing.Currently Playing: Halo 4, League of LegendsXBL GT: iRememberYhslaw

Link to comment
Share on other sites

  • 2 weeks later...

Make your own. Jst create a script that looks checks if s pixel in your health bar is black or whatever the empty color is, then if it is hit the potion button. Basic Bot Ceation 101 by Fear1313, that will be $10 :)

Actually I found an interesting thing last night while testing a few things out with the new patch.

I was flipping between a z,8(swift),r,3(attack) macro running constantly, and put in a WinActivate() to go back to the KO Window, and then sometimes it would do the keypresses again. Otherwise, it would run through once, and stop...

SO... I'm going to mess around when I get back home, try to see if I can put in a window switching thing, run it in the editor, and see if I can't get it to work like that. Either each rotation switch, or every keypress switch windows... *shrug*

Link to comment
Share on other sites

Actually I found an interesting thing last night while testing a few things out with the new patch.

I was flipping between a z,8(swift),r,3(attack) macro running constantly, and put in a WinActivate() to go back to the KO Window, and then sometimes it would do the keypresses again. Otherwise, it would run through once, and stop...

SO... I'm going to mess around when I get back home, try to see if I can put in a window switching thing, run it in the editor, and see if I can't get it to work like that. Either each rotation switch, or every keypress switch windows... *shrug*

Yup Doesn't Work... can't get it to switch back without Alt-Tab

if I alt-tab and hold control before it switches, it works. It seems as long as there's a "real" keypress going on when it switches windows, it's fine... interesting...

Link to comment
Share on other sites

  • 10 months later...

This is a post from 2007 and the game has protection so this won't work unless you xtrap bypass don't ask how to do that here there is a thing called google it is your friend.

[quote name='PsaltyDS' post='635433' date='Jan 27 2009, 07:04 AM']Larry is a mass murderer?! It's always the quiet, clean cut, bald guys... [/quote]

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

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