Post Reply Home » Forums » Dark Age of Camelot » DAOC Submissions

my macro set! : DAOC Submissions

Posted: March 2nd, 2004
Total Posts:10213 Joined:2004
Here is simple script, repeats single keystroke til out of materials

--------------------------------------------------------------------------------
This is a script I have used for almost a year. I never could get the fancy scripts to work where it will sell for you or anything else. This script will hit a hotbar button over and over until you run out of materials. It wont sell, it wont run around for you, but it will help you get the job done. I have found that after 50 or so key repeats it stops on its own. But if you can settle for making the same item 50 times then this is the one for you! Just change the username and server # where it says too, and change the key you want it to be. I have scripts saved for each hotbar key for each toon.


// Enter script code below
// Script: crafting_pixel
// Description: Pushes 2 when timer window closes until out of materials
// Plays a wave when finished. Can log out when finished by
// not commenting out last line (remove the // in front of the line)
// Note: You will need to put your charname and server code in the line
// indicated below. You can find this information in your camelot
// folder. Just look for a file with the name of your character
// followed by the server code .ini. For example, if you char name
// was joe and you played on the Lancelot server, your file would be
// something like 'joe-90.ini'
// Starting procedure: Start a crafting job so that the craft timer window
// is up. Then start the script. It will run until you
// Run out of materials.
// Created: 12/16/02 4:11:24 PM
// Modified: 01/23/02

Var TimerPos, PixelPos: TPoint;
Var Red, Green, Blue: Integer;
Var stop: Boolean;

var KeyToPress: String;
KeyToPress := '2'; // must be a string from '0' to '9'

function IniInit(): Boolean;
var
str, temp, name, code: String;
DAOCiniFile: TiniFile;
GoodInput: Integer;
begin
DAOCiniFile := TiniFile.Create(GetApplicationDirectory+'toonsnamehere-server#here.ini');
// change char name here

str := DAOCiniFile.ReadString('Panels', 'TradeTimer', 'NotFound');
if(str = 'NotFound') then
begin
Debug('DAOC ini File not found');
Break;
end;
temp := TextBeforeToken(str, ',');
TimerPos.x := StrtoInt(temp);
temp := TextAfterToken(str, ',');
temp := TextBeforeToken(temp, ',');
TimerPos.y := StrtoInt(temp);
end;
//////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
IniInit();

stop := false;

PixelPos.x := TimerPos.x;
PixelPos.y := TimerPos.y + 23;

AddScreenWatch(TimerPos.x, PixelPos.y, 200, 1);
While(stop = false) do
begin
GetPixelColor(PixelPos.x, PixelPos.y, Red, Green, Blue);
//Debug('Red: ' + InttoStr(Red) + ' Green: ' + InttoStr(Green) + ' Blue: ' + InttoStr(Blue));
if((Red + Green + Blue) > 700) then
stop := true
else PixelPos.x := PixelPos.x + 1;
if(PixelPos.x > TimerPos.x + 200) then
begin
Debug('Error: Found no craft timer window');
stop := true;
PixelPos.x := -1;
end;
end;
DeleteScreenWatch(TimerPos.x, PixelPos.y, 200, 1);

if(PixelPos.x > 0) then
stop := false;

AddScreenWatch(PixelPos.x, PixelPos.y, 1, 1);

while(stop = false) do
begin
GetPixelColor(PixelPos.x, PixelPos.y, Red, Green, Blue);
if((Red+Green+Blue) < 700) then
begin
SendKeys(KeyToPress);
Pause(2000);
GetPixelColor(PixelPos.x, PixelPos.y, Red, Green, Blue);
if((Red+Green+Blue) < 700) then
stop := true; // must be out of materials
end;
Pause(3000 + Round(Random * 1000));
end;
// change above pause values to be longer or shorter
DeleteScreenWatch(PixelPos.x, PixelPos.y, 1, 1);

PlayWave(GetXylobotDirectory + 'Audio\startup.wav');
// remove the slashes below and it will quit when out of
//materials. I dont use this.
//SendKeys('/q<CR>');
Ready to join the community? Click here and see all of the benefits!
blue large dotWho is online
Users browsing this forum: No registered users and 8 guests