Page 1 of 1

Skald lvl macro

Posted: January 27th, 2004, 12:27 am
by Tault_admin
Need confirmation

Code: Register to unlock hidden link

// This is designed to work at 800x600 resolution only due to
// the fact that it uses GetPixelColor to find specific pixels
// on the screen that are a specific color.  Your user info box
// must be at the bottom right-hand corner of the screen and
// 100% Alpha.  This is where the function looks for the
// colors to determine your health, endurance, power, target
// con, and target health (for anti-KS).
//
// You will need to run this where there is nobody else around
// because the script will exit if anyone says anything to you
// (for anti-banning purposes.)  To exit this script yourself
// simply say anything.
//
// Be sure to turn chat logging on by typing 'L' before running
// this script.
//
// Your quick bar must be set up as follows:
// 1. doesn't matter
// 2. rest
// 3. chant of battle
// 4. compell surrender
// 5. doesn't matter
// 6. DD
// 7. DD
// 8. Assault style attack
//
// You may have to edit the color values at various locations in the
// script:
//    e.g.    (Red=255) and (Green=132) and (Blue=56)
// You can find out what the specific color values are for a particular
// pixel with this code:
//
//   var Red : integer;
//   var Green : integer;
//   var Blue : integer;
//   var x : integer;
//   var y : integer;
//
//   x := 790;
//   y := 546;
//
//   GetPixelColor(x,y,Red,Green,Blue);
//   debug(Red);
//   debug(Green);
//   debug(Blue);
//
// Use the ScriptHelper under the Main Menu to find the exact x, y pixel 
location
// that you want to check the color of.
//
//
// I am posting this because I am truly hoping that all game makers
// (including Mythic) will find a way to stop this type of exploit.  I 
played my
// character normally up to a very high level.  I started reading about 
posts
// about people artificially leveling their characters.  First I was peeved, 
but
// then being a programmer, I was intrigued.
//
// I wrote this script just to see if it could be done.  I will be the first 
to
// admit that it is not perfect, but it works extremely well for leveling 
your
// character artificially.
//
// My success at writing this script, along with programs like DAoC 
Unleashed
// that display a map with your enemies on it, made me stop playing this 
game.
// My hope is that scripts like this and others will become wildly popular 
and
// Mythic and other game makers will be forced to find a solution to this 
exploit.
//
//

Pause (4000);

var logtext : string;
var logmarker : integer;

Function GetCon() : boolean;
Begin
var j : integer;
var Red : integer;
var Green : integer;
var Blue : integer;
var x : integer;

for j := 1 to 10 do begin
   x := 681 + j;

   GetPixelColor(x,579,Red, Green, Blue);
   //debug(Red);
   //debug(Green);
   //debug(Blue);

   //if (Red=255) and (Green=132) and (Blue=56) then Result:=True;  //  
Orange
   if (Red=248) and (Green=240) and (Blue=0) then Result:=True; // Yellow
   if (Red=104) and (Green=100) and (Blue=255) then Result:=True;  // Blue
   if (Red=152) and (Green=240) and (Blue=128) then Result:=True;  // Green
   if (Red=168) and (Green=168) and (Blue=168) then Result:=True;  // Grey
end;
End;


Function GetHealth() : boolean;
Begin
var Red : integer;
var Green : integer;
var Blue : integer;

GetPixelColor(790,526,Red, Green, Blue);

if (Red=216) and (Green=64) and (Blue=0) then Result:=True;
End;


Function GetEnd() : boolean;
Begin
var Red : integer;
var Green : integer;
var Blue : integer;

GetPixelColor(790,536,Red, Green, Blue);

if (Red=48) and (Green=224) and (Blue=0) then Result:=True;
End;


Function GetPow() : boolean;
Begin
var Red : integer;
var Green : integer;
var Blue : integer;

GetPixelColor(790,546,Red, Green, Blue);

if (Red=216) and (Green=160) and (Blue=0) then Result:=True;
End;

Function GetTargetHealth() : boolean;
Begin
var Red : integer;
var Green : integer;
var Blue : integer;

GetPixelColor(790,591,Red, Green, Blue);

if (Red=255) and (Green=96) and (Blue=0) then Result:=True;
End;

Procedure CheckExit(Str:string);
Begin
if (hastoken(logtext,Str)) then begin
  Raise Exception.Create('Script Halted' + Str);
end;
End;


Procedure Melee ();
Begin

var i : integer;
var BeingAttacked : boolean;
var DONE : boolean;

while true do begin
sendkeys('l');
pause(500);
sendkeys('l');
pause(500);

DONE := false;
repeat
  pause(3000);
  sendkeys('<F8>');  // target
  pause(500);
  logmarker := SetLogMarker;
  logtext := GetNewLogText (logmarker);
  CheckExit(' say,');
  CheckExit(' says,');
  CheckExit(' sends,');
  CheckExit('You have died.');
  if (hastoken(logtext,'damage')) then begin
   BeingAttacked:=true;
  end;
  if (GetCon=true) then begin
   if (GetTargetHealth=true) then begin
    DONE := true;
   end;
  end;
until (DONE=true) or (BeingAttacked=true);
BeingAttacked := false;
sendkeys('/stand<CR>');
pause(500);
sendkeys('/face<CR>');  // face
pause(500);
sendkeys('4');  // compell surrender
pause(500);
sendkeys('8');  // attack mode - assault
pause(500);
sendkeys('3');  // dmg add
pause(500);

i := 0;
repeat
  i := i + 1;
  sendkeys('8');  // attack mode - assault
  pause(500);
  sendkeys('6');  //  dd
  pause(500);
  sendkeys('7');  //  dd
  pause(1000);
  logmarker := SetLogMarker;
  logtext := GetNewLogText (logmarker);
  CheckExit(' say,');
  CheckExit(' says,');
  CheckExit(' sends,');
  CheckExit('You have died.');
until (i=100) or (GetCon=false);

sendkeys('l');
pause(500);
sendkeys('l');
pause(500);

sendkeys('2');  // regen
pause(500);
sendkeys('c');  // sit
pause(500);
sendkeys('<F7>');  //  target loot
pause(500);
sendkeys('g');  // get it
pause(500);
sendkeys('<F7>');  //  target loot
pause(500);
sendkeys('g');  // get it
pause(500);
sendkeys('<F7>');
pause(500);
sendkeys('g');
pause(500);

repeat
  pause(1000);
  logmarker := SetLogMarker;
  logtext := GetNewLogText (logmarker);
  CheckExit(' say,');
  CheckExit(' says,');
  CheckExit(' sends,');
  CheckExit('You have died.');
  if (hastoken(logtext,'damage')) then begin
   BeingAttacked:=true;
   sendkeys('8');
   pause(500);
   sendkeys('<F8>');
   pause(500);
   sendkeys('/face<CR>');
   pause(500);
  end;
until ((GetHealth=true) and (GetEnd=true) and (GetPow=true)) or 
(BeingAttacked=true);
sendkeys('/stand<CR>');
pause(500);
end;
End;


Begin
Melee;
End;

Posted: February 16th, 2004, 7:33 pm
by tault_Tault Community
i dont get it.. how do u use scripts?

Posted: February 23rd, 2004, 12:44 pm
by tault_Tault Community
Register to unlock hidden link

Posted: February 23rd, 2004, 1:17 pm
by Tault_admin
Thats if you actually want to pay but actool is the program thats free.

Posted: February 23rd, 2004, 1:27 pm
by tault_Tault Community
The script you posted requires xylobot, it don't work with ACTool