SRL Archive - News and General

Biggest screw ups, fails, etc.? Post them here!


Sandstorm

2008-12-01 17:13:29

I've had some major screw ups in my time scripting, and I'm wondering if any of you have to! The purpose of this thread isn't to make fun of everyone, but to show how much you've improved over the years/months/weeks/whatever (if you have :o).

To start it off, I have two "stories".

Here's one; explains itself. This got me SRL Members (barely) o.o.

http://srl.pastebin.com/mf915fd9

Another, more recent one, happened when I was working on the major overhaul of my whole duel arena script. One of my functions wasn't working, and it was one of my most vital functions in the script. The reason? No SetupSRL;! I was very embarrassed when Camo Kyle pointed that out xD.

KHAOZ

2008-12-01 17:17:34

From: Sandstorm
I've had some major screw ups in my time scripting, and I'm wondering if any of you have to! The purpose of this thread isn't to make fun of everyone, but to show how much you've improved over the years/months/weeks/whatever (if you have :o).

To start it off, I have two "stories".

Here's one; explains itself. This got me SRL Members (barely) o.o.

http://srl.pastebin.com/mf915fd9

Another, more recent one, happened when I was working on the major overhaul of my whole duel arena script. One of my functions wasn't working, and it was one of my most vital functions in the script. The reason? No SetupSRL;! I was very embarrassed when Camo Kyle pointed that out xD.


You're a Member? :O

ShowerThoughts

2008-12-01 17:17:54

PC crash whole tut island script to hell.

noidea

2008-12-01 17:17:57

I'm embarrest that I have only writen/released two script. One colour, one reflection.

Sandstorm

2008-12-01 17:19:18

From: Khaoz11
You're a Member? :O


No, perhaps this thread will clear up your confusion:

http://www.villavu.com/forum/showthread.php?t=37583

Dan Cardin

2008-12-01 17:38:35

my biggest and only screw up was way back when i accidentally used "SetArrayLength(word, 0)" when i meant to do "SetArrayLength(word, 1)" :)

Took me all of 10 seconds to find the error, but thats probably the worst one.

Widget

2008-12-01 18:17:18

Hehe, I got into members when I didn't even know arrays properly at all xD

program Widget;

// Widget-Talker
// By Widget
//
// Version 1.1
//
// - Faster than SRL
// - More undetectable than SRL
// - Easy to use layout
// - No F keys, just click 'Type!'
// - Up to 20 lines to auto-type
//
// Just do this:
//
// Drag crosshairs to target first.
// (Don't target this box, you'll get like 12 errors
// or your computer will just crash (not fun).)
// Its a form, the scar box will vanish until you close it.


var WidgetForm:TForm;
TextToType:array of TEdit;
Button:array of TButton;
L:TLabel;
AddText,DestroyText:TButton;
text:string;

function number(letter:char):boolean;
var t:integer;
begin
t := getkeycode(letter)
result := true
if (t < 122) and (t > 97) then result := false;
if (t < 90) and (t > 65) then result := false;
end;

function Capital(letter:char):boolean;
var t:integer;
s:string;
begin
result := false;
t := getkeycode(letter);
s := letter;
if (Chr(t) = letter) then result := true;
if number(letter) then result := false;
if (s='<') or (s='>') or (s='?') or (s=':') or (s='"')
or (s='{') or (s='}') or (s='|') or (s='+') or (s='_')
or (s='~') or (s='!') or (s='@') or (s='#') or (s='$')
or (s='%') or (s='^') or (s='&') or (s='*') or (s='(')
or (s=')') then result := true;
end;

procedure Talk(row:integer);
var t:integer;
begin
text := TextToType[row].text + Chr(13);
for t := 1 to length(text) do begin
if capital(text[t]) then
begin keydown(16); sleep(20+random(20)) end;
keydown(getkeycode(text[t]))
sleep(20+random(20))
keyup(getkeycode(text[t]))
sleep(20+random(20))
if capital(text[t]) then
begin keyup(16); sleep(20+random(20)) end;
end;
end;

Procedure MakeRed(t:integer);
var t1:integer;
begin
for t1 := 0 to (GetArrayLength(TextToType)-1) do begin
TextToType[t1].Color := clBlack;
TextToType[t1].Font.Color := clRed;
end;
TextToType[t].Color := clRed;
TextToType[t].Font.Color := clBlack;
end;
procedure DoButton(WhichButton:integer);
begin
try
Button[WhichButton].Caption := 'Wait...';
MakeRed(WhichButton);
ActivateClient;
sleep(100+random(100));
Talk(WhichButton);
Button[WhichButton].Caption := 'Type!';
except TextToType[WhichButton].Text := 'Something went wrong'; end;
end;

Procedure Button0(Sender:TObject);
begin DoButton(0); end;
Procedure Button1(Sender:TObject);
begin DoButton(1); end;
Procedure Button2(Sender:TObject);
begin DoButton(2); end;
Procedure Button3(Sender:TObject);
begin DoButton(3); end;
Procedure Button4(Sender:TObject);
begin DoButton(4); end;
Procedure Button5(Sender:TObject);
begin DoButton(5); end;
Procedure Button6(Sender:TObject);
begin DoButton(6); end;
Procedure Button7(Sender:TObject);
begin DoButton(7); end;
Procedure Button8(Sender:TObject);
begin DoButton(8); end;
Procedure Button9(Sender:TObject);
begin DoButton(9); end;
Procedure Button10(Sender:TObject);
begin DoButton(10); end;
Procedure Button11(Sender:TObject);
begin DoButton(11); end;
Procedure Button12(Sender:TObject);
begin DoButton(12); end;
Procedure Button13(Sender:TObject);
begin DoButton(13); end;
Procedure Button14(Sender:TObject);
begin DoButton(14); end;
Procedure Button15(Sender:TObject);
begin DoButton(15); end;
Procedure Button16(Sender:TObject);
begin DoButton(16); end;
Procedure Button17(Sender:TObject);
begin DoButton(17); end;
Procedure Button18(Sender:TObject);
begin DoButton(18); end;
Procedure Button19(Sender:TObject);
begin DoButton(19); end;
Procedure MakeBlack(Sender:TObject);
var t:integer;
begin
for t := 0 to (GetArrayLength(TextToType)-1) do begin
TextToType[t].Color := clBlack;
TextToType[t].Font.Color := clRed;
end;
end;
Procedure MakeRed0(Sender:TObject);
begin MakeRed(0); end;
Procedure MakeRed1(Sender:TObject);
begin MakeRed(1); end;
Procedure MakeRed2(Sender:TObject);
begin MakeRed(2); end;
Procedure MakeRed3(Sender:TObject);
begin MakeRed(3); end;
Procedure MakeRed4(Sender:TObject);
begin MakeRed(4); end;
Procedure MakeRed5(Sender:TObject);
begin MakeRed(5); end;
Procedure MakeRed6(Sender:TObject);
begin MakeRed(6); end;
Procedure MakeRed7(Sender:TObject);
begin MakeRed(7); end;
Procedure MakeRed8(Sender:TObject);
begin MakeRed(8); end;
Procedure MakeRed9(Sender:TObject);
begin MakeRed(9); end;
Procedure MakeRed10(Sender:TObject);
begin MakeRed(10); end;
Procedure MakeRed11(Sender:TObject);
begin MakeRed(11); end;
Procedure MakeRed12(Sender:TObject);
begin MakeRed(12); end;
Procedure MakeRed13(Sender:TObject);
begin MakeRed(13); end;
Procedure MakeRed14(Sender:TObject);
begin MakeRed(14); end;
Procedure MakeRed15(Sender:TObject);
begin MakeRed(15); end;
Procedure MakeRed16(Sender:TObject);
begin MakeRed(16); end;
Procedure MakeRed17(Sender:TObject);
begin MakeRed(17); end;
Procedure MakeRed18(Sender:TObject);
begin MakeRed(18); end;
Procedure MakeRed19(Sender:TObject);
begin MakeRed(19); end;
Procedure CreateRow(Sender:TObject);
var currows,t:integer;
begin
currows := GetArrayLength(Button)
if currows < 20 then begin
t := currows + 1
SetArrayLength(TextToType,t)
SetArrayLength(Button,t)
t := t - 1
L.Caption := 'WidgetTalker - '+IntToStr(t+1)+' Lines Open'
WidgetForm.Height := WidgetForm.Height + 20
TextToType[t] := TEdit.Create(WidgetForm);
TextToType[t].Parent := WidgetForm;
TextToType[t].width := 180;
TextToType[t].height := 20;
TextToType[t].left := 5;
TextToType[t].top := 25+20*t;
TextToType[t].color := clBlack;
TextToType[t].font.color := clRed;
TextToType[t].text := TextToType[t-1].text
Button[t] := TButton.Create(WidgetForm);
Button[t].Parent := WidgetForm;
Button[t].width := 50;
Button[t].height := 20;
Button[t].left := 185;
Button[t].top := 25+20*t;
Button[t].caption := 'Type!';
Button[t].font.color := clRed;
if (t=0) then begin
TextToType[0].OnClick := @MakeRed0; end;
if (t=1) then begin
TextToType[1].OnClick := @MakeRed1; end;
if (t=2) then begin
TextToType[2].OnClick := @MakeRed2; end;
if (t=3) then begin
TextToType[3].OnClick := @MakeRed3; end;
if (t=4) then begin
TextToType[4].OnClick := @MakeRed4; end;
if (t=5) then begin
TextToType[5].OnClick := @MakeRed5; end;
if (t=6) then begin
TextToType[6].OnClick := @MakeRed6; end;
if (t=7) then begin
TextToType[7].OnClick := @MakeRed7; end;
if (t=8) then begin
TextToType[8].OnClick := @MakeRed8; end;
if (t=9) then begin
TextToType[9].OnClick := @MakeRed9; end;
if (t=10) then begin
TextToType[10].OnClick := @MakeRed10; end;
if (t=11) then begin
TextToType[11].OnClick := @MakeRed11; end;
if (t=12) then begin
TextToType[12].OnClick := @MakeRed12; end;
if (t=13) then begin
TextToType[13].OnClick := @MakeRed13; end;
if (t=14) then begin
TextToType[14].OnClick := @MakeRed14; end;
if (t=15) then begin
TextToType[15].OnClick := @MakeRed15; end;
if (t=16) then begin
TextToType[16].OnClick := @MakeRed16; end;
if (t=17) then begin
TextToType[17].OnClick := @MakeRed17; end;
if (t=18) then begin
TextToType[18].OnClick := @MakeRed18; end;
if (t=19) then begin
TextToType[19].OnClick := @MakeRed19; end;
if (t=0) then begin
Button[0].OnClick := @Button0; end;
if (t=1) then begin
Button[1].OnClick := @Button1; end;
if (t=2) then begin
Button[2].OnClick := @Button2; end;
if (t=3) then begin
Button[3].OnClick := @Button3; end;
if (t=4) then begin
Button[4].OnClick := @Button4; end;
if (t=5) then begin
Button[5].OnClick := @Button5; end;
if (t=6) then begin
Button[6].OnClick := @Button6; end;
if (t=7) then begin
Button[7].OnClick := @Button7; end;
if (t=8) then begin
Button[8].OnClick := @Button8; end;
if (t=9) then begin
Button[9].OnClick := @Button9; end;
if (t=10) then begin
Button[10].OnClick := @Button10; end;
if (t=11) then begin
Button[11].OnClick := @Button11; end;
if (t=12) then begin
Button[12].OnClick := @Button12; end;
if (t=13) then begin
Button[13].OnClick := @Button13; end;
if (t=14) then begin
Button[14].OnClick := @Button14; end;
if (t=15) then begin
Button[15].OnClick := @Button15; end;
if (t=16) then begin
Button[16].OnClick := @Button16; end;
if (t=17) then begin
Button[17].OnClick := @Button17; end;
if (t=18) then begin
Button[18].OnClick := @Button18; end;
if (t=19) then begin
Button[19].OnClick := @Button19; end;
end;
end;

Procedure DestroyRow(Sender:TObject);
var currows,t:integer;
begin
currows := GetArrayLength(Button)
t := currows -1
if t > 0 then begin
TextToType[t].Hide;
L.Caption := 'WidgetTalker - '+IntToStr(t)+' Lines Open'
if (t=1) then L.Caption := 'WidgetTalker - '+IntToStr(t)+' Line Open'
Button[t].Hide;
SetArrayLength(TextToType,t)
SetArrayLength(Button,t)
WidgetForm.Height := WidgetForm.Height - 20
t := t - 1
end;
end;



// ===========================
// ===== HERE'S THE FORM =====
// ===========================
procedure MakeForm;
begin
SetArrayLength(TextToType,1)
SetArrayLength(Button,1)
WidgetForm := CreateForm;
WidgetForm.Left := 286;
WidgetForm.Top := 212;
WidgetForm.Width := 250;
WidgetForm.Height := 80;
WidgetForm.Caption := 'WidgetTalker, by Widget';
WidgetForm.Color := clBlack;
WidgetForm.Font.Color := clRed;
WidgetForm.Font.Height := -11;
WidgetForm.Font.Name := 'MS Sans Serif';
WidgetForm.Font.Style := [];
WidgetForm.Visible := False;
WidgetForm.PixelsPerInch := 96;
WidgetForm.OnClick := @MakeBlack
WidgetForm.FormStyle := fsStayOnTop;
TextToType[0] := TEdit.Create(WidgetForm);
TextToType[0].Parent := WidgetForm;
TextToType[0].width := 180;
TextToType[0].height := 20;
TextToType[0].left := 5;
TextToType[0].top := 25;
TextToType[0].color := clBlack;
TextToType[0].font.color := clRed;
TextToType[0].text := 'Brought to you by Widget';
TextToType[0].OnClick := @MakeRed0;
Button[0] := TButton.Create(WidgetForm);
Button[0].Parent := WidgetForm;
Button[0].width := 50;
Button[0].height := 20;
Button[0].left := 185;
Button[0].top := 25;
Button[0].caption := 'Type!';
Button[0].OnClick := @Button0;
AddText := TButton.Create(WidgetForm);
AddText.Parent := WidgetForm;
AddText.width := 25;
AddText.height := 20;
AddText.left := 185;
AddText.top := 5;
AddText.caption := '+';
AddText.OnClick := @CreateRow;
DestroyText := TButton.Create(WidgetForm);
DestroyText.Parent := WidgetForm;
DestroyText.width := 25;
DestroyText.height := 20;
DestroyText.left := 210;
DestroyText.top := 5;
DestroyText.caption := '-';
DestroyText.OnClick := @DestroyRow;
L := TLabel.Create(WidgetForm);
L.Parent := WidgetForm;
L.width := 25;
L.height := 20;
L.left := 7;
L.top := 7;
L.caption := 'WidgetTalker - 1 Line Open';
end;



Procedure CallForm; // Load the form without crashing
var tva:TVariantArray;
begin
setarraylength(tva, 0);
ThreadSafeCall('MakeForm', tva);
end;

Function ShowWidget:Boolean; // Make it visible
begin
if (WidgetForm.ShowModal = mrOk) then
Result := True else Result := False;
end;

Function ShowWidgetForm:Boolean; // Makes it visible without crashing
var tva:TVariantArray;
begin
setarraylength(tva, 0);
Result := ThreadSafeCall('ShowWidget', tva) ;
end;
Procedure Form;
Begin
CallForm;
//GetSelf.Visible := False;
if not ShowWidgetForm then begin
WriteLn('Script terminated by user.');
FreeForm(WidgetForm)
GetSelf.Visible := True;
TerminateScript;
end;
GetSelf.Visible := True;
end;

// Big main loop, eh?

begin
Form;
end.

It's maximum length of 20 fields should be fairly obvious ;)

Edit: Don't run this, Freddy screwed up SCAR somewhat since I wrote this =\

P1nky

2008-12-01 18:43:03

left my username / password in my first script(powerchopper)

lol, really common though :)

thanks forgot who was it change p.w and pmed me the new info :)

Nava2

2008-12-01 19:48:49

From: Widget
Hehe, I got into members when I didn't even know arrays properly at all xD

program Widget;

// Widget-Talker
// By Widget
//
// Version 1.1
//
// - Faster than SRL
// - More undetectable than SRL
// - Easy to use layout
// - No F keys, just click 'Type!'
// - Up to 20 lines to auto-type
//
// Just do this:
//
// Drag crosshairs to target first.
// (Don't target this box, you'll get like 12 errors
// or your computer will just crash (not fun).)
// Its a form, the scar box will vanish until you close it.


var WidgetForm:TForm;
TextToType:array of TEdit;
Button:array of TButton;
L:TLabel;
AddText,DestroyText:TButton;
text:string;

function number(letter:char):boolean;
var t:integer;
begin
t := getkeycode(letter)
result := true
if (t < 122) and (t > 97) then result := false;
if (t < 90) and (t > 65) then result := false;
end;

function Capital(letter:char):boolean;
var t:integer;
s:string;
begin
result := false;
t := getkeycode(letter);
s := letter;
if (Chr(t) = letter) then result := true;
if number(letter) then result := false;
if (s='<') or (s='>') or (s='?') or (s=':') or (s='"')
or (s='{') or (s='}') or (s='|') or (s='+') or (s='_')
or (s='~') or (s='!') or (s='@') or (s='#') or (s='$')
or (s='%') or (s='^') or (s='&') or (s='*') or (s='(')
or (s=')') then result := true;
end;

procedure Talk(row:integer);
var t:integer;
begin
text := TextToType[row].text + Chr(13);
for t := 1 to length(text) do begin
if capital(text[t]) then
begin keydown(16); sleep(20+random(20)) end;
keydown(getkeycode(text[t]))
sleep(20+random(20))
keyup(getkeycode(text[t]))
sleep(20+random(20))
if capital(text[t]) then
begin keyup(16); sleep(20+random(20)) end;
end;
end;

Procedure MakeRed(t:integer);
var t1:integer;
begin
for t1 := 0 to (GetArrayLength(TextToType)-1) do begin
TextToType[t1].Color := clBlack;
TextToType[t1].Font.Color := clRed;
end;
TextToType[t].Color := clRed;
TextToType[t].Font.Color := clBlack;
end;
procedure DoButton(WhichButton:integer);
begin
try
Button[WhichButton].Caption := 'Wait...';
MakeRed(WhichButton);
ActivateClient;
sleep(100+random(100));
Talk(WhichButton);
Button[WhichButton].Caption := 'Type!';
except TextToType[WhichButton].Text := 'Something went wrong'; end;
end;

Procedure Button0(Sender:TObject);
begin DoButton(0); end;
Procedure Button1(Sender:TObject);
begin DoButton(1); end;
Procedure Button2(Sender:TObject);
begin DoButton(2); end;
Procedure Button3(Sender:TObject);
begin DoButton(3); end;
Procedure Button4(Sender:TObject);
begin DoButton(4); end;
Procedure Button5(Sender:TObject);
begin DoButton(5); end;
Procedure Button6(Sender:TObject);
begin DoButton(6); end;
Procedure Button7(Sender:TObject);
begin DoButton(7); end;
Procedure Button8(Sender:TObject);
begin DoButton(8); end;
Procedure Button9(Sender:TObject);
begin DoButton(9); end;
Procedure Button10(Sender:TObject);
begin DoButton(10); end;
Procedure Button11(Sender:TObject);
begin DoButton(11); end;
Procedure Button12(Sender:TObject);
begin DoButton(12); end;
Procedure Button13(Sender:TObject);
begin DoButton(13); end;
Procedure Button14(Sender:TObject);
begin DoButton(14); end;
Procedure Button15(Sender:TObject);
begin DoButton(15); end;
Procedure Button16(Sender:TObject);
begin DoButton(16); end;
Procedure Button17(Sender:TObject);
begin DoButton(17); end;
Procedure Button18(Sender:TObject);
begin DoButton(18); end;
Procedure Button19(Sender:TObject);
begin DoButton(19); end;
Procedure MakeBlack(Sender:TObject);
var t:integer;
begin
for t := 0 to (GetArrayLength(TextToType)-1) do begin
TextToType[t].Color := clBlack;
TextToType[t].Font.Color := clRed;
end;
end;
Procedure MakeRed0(Sender:TObject);
begin MakeRed(0); end;
Procedure MakeRed1(Sender:TObject);
begin MakeRed(1); end;
Procedure MakeRed2(Sender:TObject);
begin MakeRed(2); end;
Procedure MakeRed3(Sender:TObject);
begin MakeRed(3); end;
Procedure MakeRed4(Sender:TObject);
begin MakeRed(4); end;
Procedure MakeRed5(Sender:TObject);
begin MakeRed(5); end;
Procedure MakeRed6(Sender:TObject);
begin MakeRed(6); end;
Procedure MakeRed7(Sender:TObject);
begin MakeRed(7); end;
Procedure MakeRed8(Sender:TObject);
begin MakeRed(8); end;
Procedure MakeRed9(Sender:TObject);
begin MakeRed(9); end;
Procedure MakeRed10(Sender:TObject);
begin MakeRed(10); end;
Procedure MakeRed11(Sender:TObject);
begin MakeRed(11); end;
Procedure MakeRed12(Sender:TObject);
begin MakeRed(12); end;
Procedure MakeRed13(Sender:TObject);
begin MakeRed(13); end;
Procedure MakeRed14(Sender:TObject);
begin MakeRed(14); end;
Procedure MakeRed15(Sender:TObject);
begin MakeRed(15); end;
Procedure MakeRed16(Sender:TObject);
begin MakeRed(16); end;
Procedure MakeRed17(Sender:TObject);
begin MakeRed(17); end;
Procedure MakeRed18(Sender:TObject);
begin MakeRed(18); end;
Procedure MakeRed19(Sender:TObject);
begin MakeRed(19); end;
Procedure CreateRow(Sender:TObject);
var currows,t:integer;
begin
currows := GetArrayLength(Button)
if currows < 20 then begin
t := currows + 1
SetArrayLength(TextToType,t)
SetArrayLength(Button,t)
t := t - 1
L.Caption := 'WidgetTalker - '+IntToStr(t+1)+' Lines Open'
WidgetForm.Height := WidgetForm.Height + 20
TextToType[t] := TEdit.Create(WidgetForm);
TextToType[t].Parent := WidgetForm;
TextToType[t].width := 180;
TextToType[t].height := 20;
TextToType[t].left := 5;
TextToType[t].top := 25+20*t;
TextToType[t].color := clBlack;
TextToType[t].font.color := clRed;
TextToType[t].text := TextToType[t-1].text
Button[t] := TButton.Create(WidgetForm);
Button[t].Parent := WidgetForm;
Button[t].width := 50;
Button[t].height := 20;
Button[t].left := 185;
Button[t].top := 25+20*t;
Button[t].caption := 'Type!';
Button[t].font.color := clRed;
if (t=0) then begin
TextToType[0].OnClick := @MakeRed0; end;
if (t=1) then begin
TextToType[1].OnClick := @MakeRed1; end;
if (t=2) then begin
TextToType[2].OnClick := @MakeRed2; end;
if (t=3) then begin
TextToType[3].OnClick := @MakeRed3; end;
if (t=4) then begin
TextToType[4].OnClick := @MakeRed4; end;
if (t=5) then begin
TextToType[5].OnClick := @MakeRed5; end;
if (t=6) then begin
TextToType[6].OnClick := @MakeRed6; end;
if (t=7) then begin
TextToType[7].OnClick := @MakeRed7; end;
if (t=8) then begin
TextToType[8].OnClick := @MakeRed8; end;
if (t=9) then begin
TextToType[9].OnClick := @MakeRed9; end;
if (t=10) then begin
TextToType[10].OnClick := @MakeRed10; end;
if (t=11) then begin
TextToType[11].OnClick := @MakeRed11; end;
if (t=12) then begin
TextToType[12].OnClick := @MakeRed12; end;
if (t=13) then begin
TextToType[13].OnClick := @MakeRed13; end;
if (t=14) then begin
TextToType[14].OnClick := @MakeRed14; end;
if (t=15) then begin
TextToType[15].OnClick := @MakeRed15; end;
if (t=16) then begin
TextToType[16].OnClick := @MakeRed16; end;
if (t=17) then begin
TextToType[17].OnClick := @MakeRed17; end;
if (t=18) then begin
TextToType[18].OnClick := @MakeRed18; end;
if (t=19) then begin
TextToType[19].OnClick := @MakeRed19; end;
if (t=0) then begin
Button[0].OnClick := @Button0; end;
if (t=1) then begin
Button[1].OnClick := @Button1; end;
if (t=2) then begin
Button[2].OnClick := @Button2; end;
if (t=3) then begin
Button[3].OnClick := @Button3; end;
if (t=4) then begin
Button[4].OnClick := @Button4; end;
if (t=5) then begin
Button[5].OnClick := @Button5; end;
if (t=6) then begin
Button[6].OnClick := @Button6; end;
if (t=7) then begin
Button[7].OnClick := @Button7; end;
if (t=8) then begin
Button[8].OnClick := @Button8; end;
if (t=9) then begin
Button[9].OnClick := @Button9; end;
if (t=10) then begin
Button[10].OnClick := @Button10; end;
if (t=11) then begin
Button[11].OnClick := @Button11; end;
if (t=12) then begin
Button[12].OnClick := @Button12; end;
if (t=13) then begin
Button[13].OnClick := @Button13; end;
if (t=14) then begin
Button[14].OnClick := @Button14; end;
if (t=15) then begin
Button[15].OnClick := @Button15; end;
if (t=16) then begin
Button[16].OnClick := @Button16; end;
if (t=17) then begin
Button[17].OnClick := @Button17; end;
if (t=18) then begin
Button[18].OnClick := @Button18; end;
if (t=19) then begin
Button[19].OnClick := @Button19; end;
end;
end;

Procedure DestroyRow(Sender:TObject);
var currows,t:integer;
begin
currows := GetArrayLength(Button)
t := currows -1
if t > 0 then begin
TextToType[t].Hide;
L.Caption := 'WidgetTalker - '+IntToStr(t)+' Lines Open'
if (t=1) then L.Caption := 'WidgetTalker - '+IntToStr(t)+' Line Open'
Button[t].Hide;
SetArrayLength(TextToType,t)
SetArrayLength(Button,t)
WidgetForm.Height := WidgetForm.Height - 20
t := t - 1
end;
end;



// ===========================
// ===== HERE'S THE FORM =====
// ===========================
procedure MakeForm;
begin
SetArrayLength(TextToType,1)
SetArrayLength(Button,1)
WidgetForm := CreateForm;
WidgetForm.Left := 286;
WidgetForm.Top := 212;
WidgetForm.Width := 250;
WidgetForm.Height := 80;
WidgetForm.Caption := 'WidgetTalker, by Widget';
WidgetForm.Color := clBlack;
WidgetForm.Font.Color := clRed;
WidgetForm.Font.Height := -11;
WidgetForm.Font.Name := 'MS Sans Serif';
WidgetForm.Font.Style := [];
WidgetForm.Visible := False;
WidgetForm.PixelsPerInch := 96;
WidgetForm.OnClick := @MakeBlack
WidgetForm.FormStyle := fsStayOnTop;
TextToType[0] := TEdit.Create(WidgetForm);
TextToType[0].Parent := WidgetForm;
TextToType[0].width := 180;
TextToType[0].height := 20;
TextToType[0].left := 5;
TextToType[0].top := 25;
TextToType[0].color := clBlack;
TextToType[0].font.color := clRed;
TextToType[0].text := 'Brought to you by Widget';
TextToType[0].OnClick := @MakeRed0;
Button[0] := TButton.Create(WidgetForm);
Button[0].Parent := WidgetForm;
Button[0].width := 50;
Button[0].height := 20;
Button[0].left := 185;
Button[0].top := 25;
Button[0].caption := 'Type!';
Button[0].OnClick := @Button0;
AddText := TButton.Create(WidgetForm);
AddText.Parent := WidgetForm;
AddText.width := 25;
AddText.height := 20;
AddText.left := 185;
AddText.top := 5;
AddText.caption := '+';
AddText.OnClick := @CreateRow;
DestroyText := TButton.Create(WidgetForm);
DestroyText.Parent := WidgetForm;
DestroyText.width := 25;
DestroyText.height := 20;
DestroyText.left := 210;
DestroyText.top := 5;
DestroyText.caption := '-';
DestroyText.OnClick := @DestroyRow;
L := TLabel.Create(WidgetForm);
L.Parent := WidgetForm;
L.width := 25;
L.height := 20;
L.left := 7;
L.top := 7;
L.caption := 'WidgetTalker - 1 Line Open';
end;



Procedure CallForm; // Load the form without crashing
var tva:TVariantArray;
begin
setarraylength(tva, 0);
ThreadSafeCall('MakeForm', tva);
end;

Function ShowWidget:Boolean; // Make it visible
begin
if (WidgetForm.ShowModal = mrOk) then
Result := True else Result := False;
end;

Function ShowWidgetForm:Boolean; // Makes it visible without crashing
var tva:TVariantArray;
begin
setarraylength(tva, 0);
Result := ThreadSafeCall('ShowWidget', tva) ;
end;
Procedure Form;
Begin
CallForm;
//GetSelf.Visible := False;
if not ShowWidgetForm then begin
WriteLn('Script terminated by user.');
FreeForm(WidgetForm)
GetSelf.Visible := True;
TerminateScript;
end;
GetSelf.Visible := True;
end;

// Big main loop, eh?

begin
Form;
end.

It's maximum length of 20 fields should be fairly obvious ;)

Edit: Don't run this, Freddy screwed up SCAR somewhat since I wrote this =\


OMG! Yours standards are still the S A M E!!

AHAHA.

Worst mistake.. couldn't figure out why a script wouldn't log in. Took about two hours to realist I forgot DeclarePlayers;

Ejjman

2008-12-01 20:15:25


if(not(findcolor(39303, x, y)))then wait 500;
if(not(findcolor(39303, x, y)))then wait 500;
if(not(findcolor(39303, x, y)))then wait 500;
if(not(findcolor(39303, x, y)))then wait 500;
if(not(findcolor(39303, x, y)))then wait 500;
if(not(findcolor(39303, x, y)))then wait 500;
if(not(findcolor(39303, x, y)))then wait 500;


Ehh…Wizzup told me to do a while..do loop and I was like whuh…

Sandstorm

2008-12-01 20:25:08

Lol! Now that's funny Ejjman!

ZephyrsFury

2008-12-01 20:54:53

Left my user/pass in a script and someone decided to play games with more than just my RS accs.

Iron Man

2008-12-01 21:06:57

Mine must be when I was starting out, and I never realized there was a difference between mmx1, mmy1 etc and msx1, msy1 (or other ones). So I made 10+ scripts, each time wondering why it wouldn't find anything; when I was actually, for example, searching for a yew tree with mmx1, msy1, msx2, mmy2 as searching coordinates.

Runescapian321

2008-12-01 21:17:27

My biggest fail = my inability to produce a quality script, even though I'm an SRL Member =\

EDIT: #2 Fail = I didn't know what Iron man posted till I read that :eek:

Kyle Undefined

2008-12-02 08:46:54

My biggest fail was when I forgot to put a repeat in my main loop for cutting a tree :/

Or you could say making a script period…Lol

~Camo

senrath

2008-12-02 08:51:55

Let me see…probably would be developing and testing a script…while on my main…when I had other accounts that could do the job just as well.

DaWu

2008-12-02 08:57:00

When I developed my autofighter, I accidentaly made it look for fight at (x,y) of mouse, took me sometime to figure out where I fucked up haha. :D Also when developing swarm/evil chicken guard, I forgot to put the running part in it, so it only kept detecting the swarms and evil chickens but didn't actually run rofl.

Also I'm bit ashamed that I hardly released any scripts, and if I did I always took them off after a while, because I got fed up with leeching. I'm quite selfish I guess.
Oh and I'm also bit ashamed that I use very nooblooking stuff to do the things, I've never been into hi-tech stuff on scripting, for Me, I've always only cared about the fact how well it performs, not how awsome it looks, hah, my scripts look damn crappy, lol.

Sandstorm

2008-12-02 09:02:40

From: DaWu
When I developed my autofighter, I accidentaly made it look for fight at (x,y) of mouse, took me sometime to figure out where I fucked up haha. :D Also when developing swarm/evil chicken guard, I forgot to put the running part in it, so it only kept detecting the swarms and evil chickens but didn't actually run rofl.

Also I'm bit ashamed that I hardly released any scripts, and if I did I always took them off after a while, because I got fed up with leeching. I'm quite selfish I guess.
Oh and I'm also bit ashamed that I use very nooblooking stuff to do the things, I've never been into hi-tech stuff on scripting, for Me, I've always only cared about the fact how well it performs, not how awsome it looks, hah, my scripts look damn crappy, lol.


I used to do that. Tons of if/thens where a case could be used, etc. I got fed up from the extra typing :P.

The_Shermanator

2008-12-02 11:45:48

Hmm mine was…took me 2 days when I was a young lad, just to find out why RadialWalk wasn't working…guess what the solution was, SetupSRL;


-The_Shermanator

EvilChicken!

2008-12-02 13:04:05

I guess my biggest fail is that I'm a bloody developer, and yet I've only released one single decent script since the time of me being a jr. member. <___>

I have several RS members' scripts that I haven't been able to finish because I've long been lacking a RS member's account, and I've also got heaps of unfinished projects that I just haven't got the time to finish, or because I often get new ideas that I start developing, just to ditch for another idea which I at that moment may concider as better. And so it goes.

Also, the keyboard and other components for my pc which has all my projects on it, keeps getting away from me all the time due to various provocatingy stupid reasons, thus disabling me from working on projects for a long time.

Naum

2008-12-02 13:24:12

My biggest fail is when I submitted this script for SRL Members:

{                /-------------\                  /---------
/ \ / \
/ \ / \
| | | | | |
| | | | | |
| | | | | |
|________| | |______ | |
/ / / /
/ / / /
/ / / / SCRIPT
/ / UPER / /_____
/ / |/ |/ |
/ / | | |
/ / | | |
/ / | | |
/ /________ \ /
| | | \ /
| | | \------------/
| | |
| | |
\ / Instructions: Start script Logged out
\ / Next to ore you want
\ / to mine!!!
\---------/ wield picaxe
}


Program RockMiNer4NDDropper;

{.include srl/srl.scar}

const

RockColour=5076902;{Clay=7186892,Tin=8092553,Copper=5076902,Iron=476274,Silver=10592942}
User=' ';//username here
Pass=' ';//password here

var

x,y:integer;

//___________________________//
// AutoLoGin by ->{Nauman}<- // {Adapted from my first script}
//-----------------------------//
procedure Login1;
begin
SetupSRL;
GetApplication.MINIMIZE;
Wait(300+random(987));
mouse(450, 294,1,1+Random(3),true)
typesend (User)
typesend(Pass)
Mouse(300, 318,1+random(2),2,true)
wait(2900-Random(78))
Mouse(382, 332,1,6-Random(4),true)
end;





procedure Sig;
begin
Writeln(' _________________________ ')
Writeln(' |Thank you for using.... | ')
Writeln(' | AutoMiNer | ')
Writeln(' | By ->{Nauman}<- | ')
Writeln(' |for updates go to srl forums| ')
Writeln(' |__________Enjoy_____________| ')
writeln(' ----- ')
SRLRandomsReport;
end;




Procedure Find1;
Begin
if FindColor(x,y,RockColour,1,1,600,600) then
Mouse(x,y,1,1,true)
wait(8000 +Random(150))
repeat
until(invfull)
end;

procedure Dropinv;
begin
wait(800-RANDOM(3))
writeln ('now dropping ore...')
wait(800-RANDOM(3))
If InvFull then DropAll
wait(800-RANDOM(3))
end;


begin
SetupSRL;
Sig;
login1;
Find1;
dropinv;
end.

RAM's reply :

I think everyone has about covered it…Way to simple..Standards are non-existent, you didn't utilize the player array….Etc…..I'm not trying to sound harsh, but Please check out Tutorial island, and try again in another 7 months…

Good Luck,

~RAM


For my first members app (Note it took me 10 applications to get in). :)

DaWu

2008-12-03 13:27:19

From: sandos
my biggest fail ever, although it has nothing to do with scripting was failing 99% of the way through TTFaF expert guitar hero 3 (google/youtube it) i failed on the last note xD never got that far since ;)



in scripting

red eyes 20

2008-12-05 11:50:26

back in 2004 august sometime, when i got a computer and internets and immediately started playing runescape,. my life has sucked ever since then =p

Dervish

2008-12-11 14:34:58

My SRL biggest fail is probably my first script :

program New;

const
message = '';

procedure type;
begin
writeln(message);//thought this would type
wait(5);//thought this would wait 5 seconds xD
end;

procedure report;
begin
writeln('you ran Dervish auto talker for : '+ TimeRunning);
writeln('post proggies !!!');//LOOOOL
end;

begin
repeat
type;
report
until(false);
end.

HAHAHAHAHAHHhhh ahhh EPIC PHAILZOR !!! xD

My irl screw up was probably getting mad at the wifi thingy and throwing it through the window :/ still regret doing that :/

Laur€ns

2008-12-11 14:39:53

My biggest fail was deleting my SRL Playerform stuff. After that, I taught my mouse to swim in the lake.

Freddy1990

2008-12-11 14:40:21

From: Widget

Edit: Don't run this, Freddy screwed up SCAR somewhat since I wrote this =\


Heh, has nothing to do with me, but thx for the thought :p

Tom_Gower

2008-12-12 13:17:16

No no no, I own you all at failing I mean check this script out and im still no better :P
program Helloworld;
begin
sendenglishwords; HELOO//
end.

The Claw

2008-12-14 03:41:04

Had a failsafe in one of my miners which would occasionally result in the character clicking in the one place on the minimap constantly for hours until it got a random and died. Didn't realise it though lol, a character would die roughly 1 out of 3/4 nights I ran the script. Ran it for 2 months before any bans came, and ended up losing ~5 of my best autoers, a medium level (50+ in all skills) autoer-main and my best mate's level 90 main (which he appealed last week and got unbanned lol). This was back a year and a half ago or so.

Gu3st...

2008-12-14 04:33:24

Never released / maked a working script >.<

StrikerX

2008-12-20 05:17:27

Haha my biggest crew up was when I started scripting i took like 2 weeks making it log in, before realising about SRLPlayerForm

Torrent of Flame

2008-12-20 05:50:19

{//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//
| Draynor Willow Crusher & Banker |
| By Torrent of Flame |
| Scar 3.14 SRL 4.0 Rev 14 |
| Version 1.2 |
| Chops Willows at Draynor and Banks them |
| Start from Draynor Bank or Willow Trees |
| Enter your Pin before you start! |
| Start Logged Out if you start in bank, or in if you start at Willows |
| HAS TO BE SAID: ---> Works (alot) better without a pin <--- |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
| How Many Loads at line 25 |
| Setup Player at lines 39-42 |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\
|Version 1.1 Includes |
| Anti-Ban |
| Anti-Random |
| Working Walking (Lol :D) |
| Complete Revision of Script - Sorted Unnecissary codes and BMP's |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
|Version 1.2 Includes |
| Essential Repairs for Banking - Willow DTM was invalid, WillowBMP added |
| Banking Works! |
| Main Loop Fixed - Repeats after banking |
| |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
|Version 1.3 Includes |
| Multi-Player |
| Fully working Repeat |
| Fully working Tree Cutting |
| Chatting |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\}


Program WillowCrusher;
{.include SRL/SRL.scar}
{.include SRL/SRL/Skill/WoodCutting.scar}


const
//-->Loads<--\\

Loads = 5; //How many loads per player before switching


{-------------------------------------------------------
Player Setup
--------------------------------------------------------}

procedure DeclarePlayers;
begin

HowManyPlayers := 1; //How many Players
NumberOfPlayers(HowManyPlayers);
CurrentPlayer :=0; //Starting Player

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;


end;

{----------------------------Do Not Edit Below This----------------------------}
var x, y: integer;
LoadsNum: integer;
LoadsNum2: integer;


//Signature\\

procedure Signature;
begin
ClearDebug;
wait(250 + random(30));
writeln(' Torrents Willow Crusher&Banker ');
wait(250 + random(30));
writeln(' _____ _ ');
wait(250 + random(30));
writeln('(_ _) ( )_ ');
wait(250 + random(30));
writeln(' | | _ _ __ _ __ __ ___ | ,_)');
wait(250 + random(30));
writeln(' | | / _`\ ( "__)( "__)/"__`\/" _ `\| | ');
wait(250 + random(30));
writeln(' | |( (_) )| | | | ( ___/| ( ) || |_ ');
wait(250 + random(30));
writeln(' (_)`\___/ (_) (_) `\____)(_) (_) \__)');
wait(500 + random(30));
end;

//Torrent Proggy\\

procedure ToFProggy;
begin
ClearDebug;
Writeln(',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,');
Writeln('/\Please Post Progress Reports & Any problems /\ ');
Writeln('/\ From Wherever you got the script /\ ');
Writeln('//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ ');
Writeln('//\\Worked For: ' + TimeRunning + ' //\\');
Writeln('//\\Did: ' + IntToStr(LoadsNum)+ ' Loads //\\');
Writeln('//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ ');
Writeln('//\\ Thanks for Using my Script :D //\\ ');
Writeln('```````````````````````````````````````````````');
end;

//Logging in...\\

procedure Login;
begin
if (not(LoggedIn)) then
LoginPlayer;
end;

//--------------------------------Anti-Ban!!------------------------------------\\
procedure AntiBan;
begin
if (not(LoggedIn)) then
Exit;
case Random(8) of

0: RandomRClick;
1: HoverSkill('Woodcutting', False);
2: RandomMovement;
3: BoredHuman;
4: PickUpMouse;
5: AlmostLogout;
6: DoEmote(100 +Random(90));
7: begin
GameTab(1 +Random(12));
wait(2000 +Random(1000));
GameTab(4);
end;
end;
end;

//------------------------------Anti-Randoms!!------------------------------\\

procedure FindRandoms;
begin
FindTalk;
FindNormalRandoms;
FindLamp('Woodcutting');
SolvePinball;
FindEnt(x, y, true);
end;

//EntFinder\\

procedure EntFinder;
var
EX, EY: integer;
FX, FY: integer;
SafeEntWait: LongInt;
begin
if (not (LoggedIn)) then
Exit;
begin
Status('Ent Checking')
if
(FindObjCustom(EX, EY, ['Willow'], [4690821], 7)) then
begin
MMouse(EX, EY, 0, 0)
if FindColorTolerance(FX, FY, 55769, 85, 15, 115, 15, 20) then
begin
Status('Found Ent');
MarkTime(SafeEntWait)
repeat
FTWait(5)
FindNormalRandoms;
if not (LoggedIn) then
NextPlayer(False);
until TimeFromMark(SafeEntWait) > 20000 + Random(5000);
end;
end;
end;
end;


//---------------------------------ChopTree-----------------------------------\\

Procedure ChopTree;
begin
if not LoggedIn then
Exit;
MakeCompass('S');
EntFinder;
FindEnt(x, y, True);
repeat
if FindObjCustom(x, y, ['Wil', 'low'], [1989969, 3760987, 2844763], 7) then
begin
Mouse(x,y,0,0,false);
repeat
Wait(100 + (random(150)));
ChooseOption('hop')
AntiBan;
until(InvFull)
end;
until(InvFull)
end;


//----------------------Walking from Willows to Bank--------------------------\\

procedure WalkToBank;
begin
if (not(LoggedIn)) then
Exit;
SymbolAccuracy:= 0.2;
Makecompass('N');
if (not(FindSymbol(x, y, 'bank'))) then
begin
NextPlayer(False);
end;
begin
if (FindSymbol(x, y, 'bank')) then
begin
Mouse(x, y, 2, 2, true);
Flag;
Writeln('Got to bank');
end;
end;
end;

//-----------------------------Banking the Willows----------------------------\\

function Banking: Boolean;
begin
if (InvFull) then
begin
MakeCompass('N')
Wait (300 + random(160));
OpenBankQuiet('db');
if(FindColorSpiral(x, y, 1852748, 547, 206, 734, 464))then
begin
Mouse(x, y, 4, 3, false);
ChooseOption('All');
Result := True;
if Result = True then
begin
LoadsNum := LoadsNum + 1;
LoadsNum2 := LoadsNum2 + 1;
end;
end;
CloseBank;
Wait(150 + random (278));
MakeCompass('S');
end;
end;


//-----------------------Walking from Bank to Willows-------------------------\\

procedure WalkToWillow;
var WaterColor : integer;
begin
if (not(LoggedIn)) then
Exit;
MakeCompass('S');
WaterColor := FindWaterColor;
RadialWalk(WaterColor, 225, 351, 64, 2, 2);
Flag;
Writeln('At Willows Now');
end;


//--------------------------->>>Main Loop<<<----------------------------------\\

procedure SetupScript;
begin
if (Loggedin) then Logout;
SetupSRL;
Signature;
DeclarePlayers
if (not (Loggedin)) then Login;
end;

begin
SetupScript;
repeat
WalkToWillow;
repeat
ChopTree;
until (InvFull) or (not LoggedIn)
AntiBan;
WalkToBank;
Banking;
if (LoadsNum2=Loads) then
begin
NextPlayer(True);
LoadsNum2 := 0;
MakeCompass('S')
Writeln('Players Switched successfully')
end;
TofProggy;
SRLRandomsReport;
until (false)
end


First members application, 8 no's and the standards are scarreeeh!


Also, could never get this to work which was mega shit, might work on this and get it to work as there never has been one successful….

{//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//
| Varrock West Bank Potion 3 to 4 Mixer |
| By Torrent of Flame |
| Scar 3.14 SRL 4.0 Rev 14 |
| Version 1.1 |
| Mixes Attack Potions in Varrock West from 3 to 4 |
| Start in Varrock West Bank |
| Start Logged Out |
| Put Potions in FIRST or SECOND Row |
| First of a Kind Script as far as I know! |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
| Setup Player at lines 45 to 77 |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
| Mega thanks to Dude Richard for helping me out! |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
| NOTE: Will ONLY do ATTACK potions (Normal, Not Super!) |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
|Version 1.1 Includes |
| Anti - Ban |
| Anti - Randoms |
| FailSafes |
| Pin Compatible |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
|Version 1.2 Includes |
| It Works! |
//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\}


Program PotionMixer;
{.include SRL/SRL.scar}


const

//---->Loads<-----\\
Loads = 100; //Approximate Amount.

//--->SRL ID<---\\
YourSRLId = '';
YourSRLPassword ='';

//--->Pin - Make same for ALL chars. If no Pin, leave blank<---\\
YourPin = '';


{-------------------------------------------------------
Player Setup
--------------------------------------------------------}

procedure DeclarePlayers;
begin

HowManyPlayers := 1; //How many Players
NumberOfPlayers(HowManyPlayers);
CurrentPlayer :=0; //Starting Player

Players[0].Name := '';
Players[0].Pass := '';
Players[0].Nick := '';
Players[0].Active := True;

{ Players[1].Name := '';
Players[1].Pass := '';
Players[1].Nick := '';
Players[1].Active := False;

Players[2].Name := '';
Players[2].Pass := '';
Players[2].Nick := '';
Players[2].Active := True;

Players[3].Name := '';
Players[3].Pass := '';
Players[3].Nick := '';
Players[3].Active := True;

Players[4].Name := '';
Players[4].Pass := '';
Players[4].Nick := '';
Players[4].Active := True;

Players[5].Name := '';
Players[5].Pass := '';
Players[5].Nick := '';
Players[5].Active := True; }

end;

{----------------------------Do Not Edit Below This----------------------------}
var x, y, LoadsMixed, LoadsMixed2, PotionsMixed, PotionsMixed2, EmptyVial, AttackPotion: integer;

//Signature\\

procedure Signature;
begin
ClearDebug;
wait(250 + random(30));
writeln(' Torrents Potion 3 to 4 Mixer ');
wait(250 + random(30));
writeln(' _____ _ ');
wait(250 + random(30));
writeln('(_ _) ( )_ ');
wait(250 + random(30));
writeln(' | | _ _ __ _ __ __ ___ | ,_)');
wait(250 + random(30));
writeln(' | | / _`\ ( "__)( "__)/"__`\/" _ `\| | ');
wait(250 + random(30));
writeln(' | |( (_) )| | | | ( ___/| ( ) || |_ ');
wait(250 + random(30));
writeln(' (_)`\___/ (_) (_) `\____)(_) (_) \__)');
wait(500 + random(30));
end;

//Torrent Proggy\\

procedure ToFProggy;
begin
ClearDebug;
Writeln(',,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,');
Writeln('/\Please Post Progress Reports & Any problems /\ ');
Writeln('/\ From Wherever you got the script /\ ');
Writeln('//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ ');
Writeln('//\\Worked For: ' + TimeRunning + ' //\\');
Writeln('//\\Mixed: ' + IntToStr(PotionsMixed)+ ' Potions //\\');
Writeln('//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\ ');
Writeln('//\\ Thanks for Using my Script :D //\\ ');
Writeln('```````````````````````````````````````````````');
end;

//------------------------------Anti-Randoms!!------------------------------\\

procedure FindRandoms;
begin
FindTalk;
FindNormalRandoms;
FindLamp('Herblore');
end;


//------------------Attack Potion DTM & Empty Vial DTM-----------------------\\
procedure LoadDTMs;
begin

AttackPotion := DTMFromString('78DA63146660609064400156672F816946289' +
'F510C4870A3AA29AB68C0542385AAC6ECEC455435207B6451D5A8' +
'CF9C83AA06E41E795435FEE72FA3AAE1C534C7E71C163568FE724' +
'757C30324C418D00023AA1A3E20C14B408D00906023A006648F02' +
'AA0ABD0DDB50D5F0030945FCE600007A400FDC');


EmptyVial := DTMFromString('78DA63E4666060106540011919D9609A11CA6' +
'704A9614255131FAA83AA861F4888A0AA7171F1C454238DAA2638' +
'2412D32E3435393979A86AD831D5949494A1AA6101126204D480C' +
'C11445553515189AA861348F0A2AAA9ACAC4255C301245819D000' +
'23AA1A901902A82ABCBD0351D580DC2289AAC6CDDD1B530D9ABFE' +
'CED5D50D580DC2285DFEF0078731064');
end;

//-----------------------------Banking the Potions----------------------------\\

function Banking: Boolean;
begin
Wait (300 + random(160));
OpenBankQuiet('db');
if (PinScreen) then
InPin(YourPin);

if (FindDTM(AttackPotion, x, y, 71, 59, 455, 249))then
begin
Mouse(x, y, 4, 3, false)
ChooseOption('All');
end else

if (not(FindDTM(AttackPotion, x, y, 71, 59, 455, 249))) then
begin
Writeln('Potions NOT found. Make sure they are in the first 3 slots!');
Exit;
end;
CloseBank;
Wait(150 + random (278));
end;

//-----------------------------Mixing the Potions-----------------------------\\

procedure MixingPotions;
begin
if (FindColorTolerance(x, y, 13815094, 564, 209, 728, 464, 10 )) then
begin
if IsUpText('Attack Potion(3)') then
Mouse(x, y, 5, 5, False);
ChooseOption('Use');

if (FindColorTolerance(x, y, 13815094, 564, 209, 728, 464, 10 )) then
begin
Mouse (x, y , 5, 5, true);
begin
PotionsMixed := PotionsMixed + 27;
PotionsMixed2 := PotionsMixed2 + 27;
ReportVars[0] := ReportVars[0] + 27;
LoadsMixed:=LoadsMixed + 1;
LoadsMixed2 := LoadsMixed2 +1;
ReportVars[1] := ReportVars[1] + 1;
SendSRLReport;
end;
end;
end;
end;


//-------------------------------->BankThisShit<------------------------------\\

procedure BankThisShit;
begin
Mouse(692, 364, 724, 397, false);
if IsUpText('(4)') then
OpenBankQuiet('db');
if (FindColorTolerance(x, y, 13815094, 564, 209, 728, 464, 10 )) then
begin
Mouse (x, y , 5, 5, false);
ChooseOption('All')
end;

if (FindColorTolerance(x, y, 6512479, 564, 209, 728, 464, 10)) then
begin
Mouse(x, y, 4, 3, false)
ChooseOption('All');
end;
CloseBank;
Banking;
end;

//----------------------------->>>Main Loop<<<--------------------------------\\

procedure SetupScript;
begin
SRLId := YourSRLId;
SRLPassword:= YourSRLPassword;
if (Loggedin) then Logout;
SetupSRL;
ScriptID:= '700';
Signature;
DeclarePlayers;
LoadDTMs;
LoginPlayer;
end;

begin
SetupScript;
repeat
Banking;
MixingPotions;
BankThisShit;
if (PotionsMixed=Loads) then
begin
NextPlayer(True);
PotionsMixed2 := 0;
Writeln('Players Switched successfully')
end;
until (false)
TofProggy;
SRLRandomsReport;
end.

Sandstorm

2008-12-20 09:50:50

Instead of the mixer, try making a decanter. It's faster and easier. Easily 1.8m + an hour legit to.

Also, to keep this thread going, I'll post one of my more recent ones:

I was working on my duel script, and couldn't figure out why one of the features wasn't working properly. Turns out I forgot a "Not". -.-.

Torrent of Flame

2008-12-20 10:01:18

What is a Decanter?

Sandstorm

2008-12-20 10:04:26

It decants potions at the ge herby dude. Basically he turns the 3's into 4's, and it's much faster.

Torrent of Flame

2008-12-20 11:02:38

Hmm. Sounds like a good idea, and pretty easy at that too.
Might give it a go :)