Help - Search - Members - Calendar
Full Version: Aion Kill Bot Macro
AC Tools Everything Macro > AC Tool Macros > Other Macros
master222jinx
I will be describing the Bot Macro I have been working on, however, this is a simple Macro with no memory writing and no autonavagation.

Aion Kill Bot Macro
This bot is usefull in pvp and most sustained boss fights.

What does it do?
Currently I have it set up to cycle through your combat sequence as fast as possible, effectively utilizing the delays and overlapping keying, I have the current example I am using and the core macro you can work on building your own from.

How do I use this Macro?
Its as easy as 1 2 3... just start the macro, select a target and watch it die.

How do I calibrate the Macro?
When first building your macro go to the starting area, use the target dummy as your target and work out the timing, overlap and key mixing. A macro that has alot of delays in it is slow and not effective in real life PvPvE so keep that in mind and work on overlapping and key mixing as much as possible.

Some Simple Steps
Set the Mouse Position for the detection of a target. Screen resolutions are not the same and colors may appear different on each computer so do not skip these steps and run it.

this is and example of where ON YOUR TARGET you should select and test. Just target any npc, get your mouse locatin and run the macro under test mode with color test to get the proper color for the location. Edit the macro and go to the next step.

Set the Mouse Positin for each skill that will be detected. I reccomend using base skills that chain. Also, I reccomend using this with buffs that have the same CD as they do duration so you dont end up casting the buff over and over again waisting your manna. Some buffs need to be left out of the loop and manually clicked as needed to optimize the effectiveness of this macro.


Find the Mouse Position of the first Skill and all subsequent skills you want to detect, edit the locations so the X varies but the Y is the same.

I used this to maintain maximum DPS on a Boss raid as we downed the Guardian General of the Eastern Seil Fortress on the Fergion server... the first fortress ever downed and our max level toon was 39.

I have attached my sin kill macro so you can see what I am currently using. It is as effective I can get it till I level up some more. I will come back to post my lvl 50 kill macro for my sin when I am done getting it tuned in.

Please find the files for this below in my edits. Thank you.
Bear
In the Core Bot macro.mac, In the GetRed commands, if you aren't using the False section there's no Point in having the ELSE commands. Also why are you using ProcessMessages? you have no Procedure's.

Same for Killbot Core.mac you have Else commands that aren't doing anything and another ProcessMessages with No Procedure's to Process.

Same for Mage Adaptation.mac ...Else commands ..ProcessMessages...Ditto..

Edit: Woot, Post 700!! laugh.gif tongue.gif
master222jinx
QUOTE(Bear @ Oct 18 2009, 01:57 PM) *
In the Core Bot macro.mac, In the GetRed commands, if you aren't using the False section there's no Point in having the ELSE commands. Also why are you using ProcessMessages? you have no Procedure's.

Same for Killbot Core.mac you have Else commands that aren't doing anything and another ProcessMessages with No Procedure's to Process.

Same for Mage Adaptation.mac ...Else commands ..ProcessMessages...Ditto..

Edit: Woot, Post 700!! laugh.gif tongue.gif



Mostly out of habbit one sec let me do some shop cleaning and stream line this. Thanks for the input.

Here are the cleaned up ones, I also added the capability for the macro to stop attacking when the mob is dead.
stealthnet
Master Im kind of new to actools and trying to understand your script alittle better.
CODE
while 1 = 1
  OBJVAR 5
  getred 403, 46 = 91 //target acquired Attack loop
    getred 479, 55 = 58 //target health gone
      restart
    else
      keys 1 //initiates auto attack and moves your character into range if needed
      getred 479, 55 = 58 //target health gone
        restart
      else
        getred 651, 989 = 38 //check skill active 2
          Keys 2
        end
      end
      getred 700, 989 = 79 //Check skill active 3
        getred 479, 55 = 58 //target health gone
          restart
        else
          keys 3
        end //add more checks for base chain skills as needed
      end
    end
  end
end

If I set this statment to Pass(true)
CODE
getred 403, 46 = 91 //target acquired Attack loop


If I set this statment to Pass(true)
CODE
getred 479, 55 = 58 //target health gone
restart
    else


Wouldnt this create a constent loop if you target a mob?
DaMOB
Bad programming is bad. No, really, it is bad.

First (we "old ones" found out the hard way) never use = but instead use a range for color matching. You also are using restart? My, God that is as bad if not worse than using a goto.

Try and think how to accomplish the task at hand without using the restart first then use something else that doesn't use an exact match for the color detection routine.

Take the above as some valuable advice or not.
master222jinx
If I set this statment to Pass(true)
CODE
getred 403, 46 = 91 //target acquired Attack loop


If I set this statment to Pass(true)
CODE
getred 479, 55 = 58 //target health gone
restart
    else


Wouldnt this create a constent loop if you target a mob?[/quote]

Yes, that is the purpose of the macro. to infinitly restart when the mob is dead so you do not sit in game listening to 'you do not have a proper target for that skill"
also when you acquire a new healty target it tests false at //target health gone and proceeds to kill the next target. Also that same test is at the beginning of each skill test to ensure you do not have to wait for the whole macro to cycle before it is ready for the next target.
In pvp you do not have time to press extra keys, this macro was developed to run in the background and allow you to simply sellect a target and focous on movement and evasive manuvers while the macro does the majority of your combat rotation.

Ty for the question, hope this clears it up for you.
master222jinx
QUOTE(DaMOB @ Oct 21 2009, 03:14 PM) *
Bad programming is bad. No, really, it is bad.

First (we "old ones" found out the hard way) never use = but instead use a range for color matching. You also are using restart? My, God that is as bad if not worse than using a goto.

Try and think how to accomplish the task at hand without using the restart first then use something else that doesn't use an exact match for the color detection routine.

Take the above as some valuable advice or not.


I will look into that when I complete the next phase of my core bot macro
ty for the input
However, I do believe the beauty of this macro is in the simplicity and its elegence is found in the fewest code possible to accomplis the task... or did I miss the essence of hacking? Would that you actually suggested statements or strings for me to use I wold not have thougt 'troll' or 'QQ' when I first read your post...
DaMOB
QUOTE(master222jinx @ Oct 23 2009, 03:54 PM) *
QUOTE(DaMOB @ Oct 21 2009, 03:14 PM) *
Bad programming is bad. No, really, it is bad.

First (we "old ones" found out the hard way) never use = but instead use a range for color matching. You also are using restart? My, God that is as bad if not worse than using a goto.

Try and think how to accomplish the task at hand without using the restart first then use something else that doesn't use an exact match for the color detection routine.

Take the above as some valuable advice or not.


I will look into that when I complete the next phase of my core bot macro
ty for the input
However, I do believe the beauty of this macro is in the simplicity and its elegence is found in the fewest code possible to accomplis the task... or did I miss the essence of hacking? Would that you actually suggested statements or strings for me to use I wold not have thougt 'troll' or 'QQ' when I first read your post...

As I said you can take the advice or leave it but bad programming practices are just bad. The essence of hacking is doing something in as few lines of code as possible as long as the code is written well and documented (at least on your side). As it stands now the restart command should never have been implemented and what in the hell Cam was thinking when he did that is beyond me since he is so much against a goto statement (there is a reason for this).

Restart is just poor programming practices and a "true hacker" learns from all sources so their code is leaner, meaner, and well written. A script kiddie can slap together a few lines of code and call that being a hacker but the majority can tell immediately who knows how to program and who doesn't.

I don't troll when it concerns programming and QQ over your bad programming practices? Trust me I might not be the best programmer around but I am leaps and bounds above using a restart command.

I have not looked at the ACTool Delphi source (yes, I can read Delphi and I work in C/C++/Perl) but looking at the command in ACTool's help suggests it is an evil command. I mean would you write a program that when an if statement failed or passed you would reload the same program each time? In essence that is exactly what you are doing and no sane programmer would ever do that.

Restart: Performing this command causes the macro to stop then start again from the beginning.If you can't see that as just wrong then there is no help for you.

I said my peace and I was hoping you were one who had the spark to want to learn but obviously you just wish to throw insults at me like some damn monkey throwing shit around in his cage. This "QQ'ing troll" will go back to his real programming forums and leave you to wallow in your feces.
master222jinx
to restart my friend is exactly what I want the macro to do...
so here we debate taste or funcion?
the function of the macro is to be as efficient as possible.
if the mob is dead then restart at the beginning... nuff said
if the mob is alive then continue... nuff said
hence restart is necessessary. thus restart is used.
is this wrong still?
perhapse a while loop? let me look into the while loop real quick... that might shave off a few more lines ^.^
master222jinx
CODE
while 1 = 1
  OBJVAR 5
  getred 403, 46 = 91 //target acquired Attack loop
    isred 479, 55 //target has health
      keys 1 //initiates auto attack and moves your character into range if needed
      getred 651, 989 = 38 //check skill active 2
        isred 479, 55 //target has health
          Keys 2
        end
      end
      getred 700, 989 = 79 //Check skill active 3
        isred 479, 55 //target has health
          keys 3
        end//add more checks for base chain skills as needed
      end
    end
  end
end


this is another variable that works untill your targets healthe turns green from poison effects or status effects.
or
CODE
while 1 = 1
  OBJVAR 5
  getred 403, 46 = 91 //target acquired Attack loop
    getred 479, 55 = 58 //target health gone
    else
      keys 1 //initiates auto attack and moves your character into range if needed
      getred 479, 55 = 58 //target health gone
      else
        getred 651, 989 = 38 //check skill active 2
          Keys 2
        end
      end
      getred 700, 989 = 79 //Check skill active 3
        getred 479, 55 = 58 //target health gone
        else
          keys 3
        end //add more checks for base chain skills as needed
      end
    end
  end
end

this variation uses the test to enter noting at all unless it tests false...
Vengor
GOTO RESTART


Just had to do it DaMOB
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Invision Power Board © 2001-2010 Invision Power Services, Inc.