SRL Archive - Archive

me_ntal - SRL Member Application Form


me_ntal

2007-04-14 05:15:29

<!– BEGIN TEMPLATE: formanswers –>
me_ntal - SRL Member Application Form
me_ntal

What is the meaning to life?


Where you Referred to SRL? If yes, by whom?
yes
In a way starblaster

Programming Knowledge
vb javascript html

Other Communitys
was on sythe

How Long have You Played Runescape
3 years

Are you affilated in anyway with Jagex LTD?
No
—————————————————–
Please write down a paragraph about Yourself.

Im from australia and a 17 year bloke. Im here to advance my knowledge and find a community worth contributing to unlike sythe.
I try my best to help and dont flame down leechers and rather just point in the direction and hope they decide to stick around and help out.
Im still learning to scar script and have tried to learn everything and anything from the use of forms and failsafe to srl developed functions.
IM willing to try beta and script and help any scripter with anything possible.
I dont believe in flaming or fighting because in the long run this is just a hobby.

——————————————————
Please Post a Sample of your Work. Only SCAR Scripts Accepted

{
__________________________________________________________
|| Me_ntals Willow Cutter ||
|| Soon to be Banker/Power cutter ||
|| Suggestion? Post it! ||
|| Thanks the SRL team ||
|| Espically starblaster ||
||_______________________________________________________||

}

{.include srl/srl.scar}
{.include SRL/SRL/Skill/WoodCutting.scar}
var
DX, DY, LogDTM, BigXDTM, cUser, willows, i, LoadNumber:integer;
StartScript: Boolean;
frmDesign : TForm;
CPlayer , PPlayer , BeginScript , Cancel , NPlayer, DPlayer : TButton;
GroupBox1 : TGroupBox;
Label1 , Label2 , Label3 , Label4 , Label5 : TLabel;
UName , Pword , Loads : TEdit;
Activity : TComboBox;
EdgeWillowCutterFileName: String;
SkipItems: Array[1..21] of String;

const
ShopkeeperColor = 2971004;
WillowColor = 3160112;

procedure DeclareDTM;
begin

LogDTM := DTMFromString('78DA632C66626078CA8002527D75191E02694' +
'620FE0F048CC94035CF18D000231209A4F3806AEE10505343A49A' +
'3744D8F511BF1A00056F0DE4');
BigXDTM := DTMFromString('78DA63E4626060006114C0C8F01F4C3230FC0' +
'7024661208309554541A21B54255407480D0FAA1A676B6D54351C' +
'404218554D88A739AA1A903D1CA86AB2639D51D5B001096654351' +
'35BF251D508E0B78B15880100130BA0');
end;

{ ---------------------------------------------------------------------------- ]
[ >> procedure LoadNullWords; ]
[ >> Loads Words which cannot be your Nickname - by Mad Cow ]
[ ---------------------------------------------------------------------------- }

procedure LoadNullWords;
begin
SkipItems[1] := 'the';
SkipItems[2] := 'but';
SkipItems[3] := 'yes';
SkipItems[4] := 'lol';
SkipItems[5] := 'brb';
SkipItems[6] := 'gtg';
SkipItems[7] := 'cya';
SkipItems[8] := 'how';
SkipItems[9] := 'hey';
SkipItems[10] := 'wat';
SkipItems[11] := 'umm';
SkipItems[12] := 'him';
SkipItems[13] := 'she';
SkipItems[14] := 'man';
SkipItems[15] := 'wow';
SkipItems[16] := 'god';
SkipItems[17] := 'nub';
SkipItems[18] := 'nop';
SkipItems[19] := 'did';
SkipItems[20] := 'you';
SkipItems[21] := 'ing';
end;

{ ---------------------------------------------------------------------------- ]
[ >> function CreateNick(Username : String) : String; ]
[ >> Creates your Nickname from your Username - by Mad Cow ]
[ ---------------------------------------------------------------------------- }

function CreateNick(Username : String) : String;
var
UserLength, NickStart, INick, A : Integer;
Nicks, Temp : String;
BadNick : Boolean;
begin
UserLength := Length(Username);
INick := 0;
LoadNullWords;
repeat
BadNick := False;
NickStart := 2 + INick;
Nicks := Nicks + Copy(Username, NickStart, 3);
for A := 1 to 3 do
begin
Temp := Copy(Nicks, A, 1);
if(Temp = ' ') or (Temp = '_')then
begin
INick := INick + 1;
Nicks := '';
BadNick := True;
end;
end;
for A := 1 to 21 do
begin
if(Nicks = SkipItems[A]) then
begin
INick := INick + 1;
Nicks := '';
BadNick := True;
end;
end;
until((not(BadNick)) or (NickStart >= 15))
Result := Nicks;
end;

{ ---------------------------------------------------------------------------- ]
[ >> Procedure GenerateNickNames; ]
[ >> Saves Nicknames, and Sets Default Locations, by Mad Cow Edited by Star ]
[ ---------------------------------------------------------------------------- }

Procedure GenerateNickNames;
Begin

For X := 0 to HowManyPlayers - 1 do
begin
if(Players[X].Nick = '') then
begin
Players[X].Nick := CreateNick(Players[X].Name);
end;
end;
end;

{__________________________________________
| Loading |
|__________________________________________|}

Procedure SavePlayersInForm(No: Integer);
Begin
Players[no].Name := UName.Text;
Players[no].Pass := Pword.Text;
Players[no].Active := StrToBool(Activity.Text);
Players[no].Integer1 := StrToIntDef(Loads.Text, 0);
end;

Procedure LoadPlayersInForm(no: Integer);
Begin
try
UName.Text := Players[no].Name;
Pword.Text := Players[no].Pass;
Activity.Text := BoolToStr(Players[no].Active);
Loads.Text := IntToStr(Players[no].Integer1);
except
end;
end;

procedure SaveUs2;
var
f, CharsFile: Integer;
begin
If (EdgeWillowCutterFileName = '') then EdgeWillowCutterFileName := 'Characters'
CharsFile := RewriteFile(ScriptPath + EdgeWillowCutterFileName + '.dat', False)
For f := 0 to GetArrayLength(players) - 1 do
begin
WriteFileString(CharsFile, 'name' +IntToStr(f)+ '=' +players[f].Name+ Chr(13))
WriteFileString(CharsFile, 'pass' +IntToStr(f)+ '=' +players[f].Pass+ Chr(13))
WriteFileString(CharsFile, 'active' +IntToStr(f)+ '=' +BoolToStr(players[f].Active)+ Chr(13))
WriteFileString(CharsFile, 'load' +IntToStr(f)+ '=' +IntToStr(players[f].Integer1)+ Chr(13))
end;
CloseFile(charsfile)
end;

procedure LoadUs2;
var
f, CharsFile, Temp: Integer;
begin
if (EdgeWillowCutterFileName = '') then EdgeWillowCutterFileName := 'Characters';
CharsFile := OpenFile(ScriptPath + EdgeWillowCutterFileName + '.dat', False)
if (CharsFile < 0) then
begin
SaveUs2;
CharsFile := OpenFile(AppPath + filename + '.dat', False)
if (CharsFile < 0) then
begin
WriteLn('Error Loading Chars');
Exit;
end
end
ReadFileString(CharsFile, CharsFileString, FileSize(CharsFile))
CloseFile(CharsFile)
Temp := CountPlayers;
If (Temp <= 0) then Temp:= 1;
SetArrayLength(players, Temp);
HowManyPlayers := GetArrayLength(players)
for f := 0 to HowManyPlayers - 1 do
begin
players[f].Name := GetFileData(f, 'name')
players[f].Pass := GetFileData(f, 'pass')
players[f].Active := StrToBool(GetFileData(f, 'active'))
players[f].Integer1 := StrToIntDef(GetFileData(f, 'load'), 0)
//Writeln('Loading Player: '+IntToStr(f));
end
CloseFile(CharsFile);
end;

{__________________________________________
| Form |
|__________________________________________|}
procedure Inititate(Sender: TObject);
begin
label5.Caption := 'Player '+IntToStr(cUser);
Players[cUser].Name := UName.Text;
Players[cUser].Pass := Pword.Text;
if (activity.Text = 'True') then
Players[cUser].Active := True
else
Players[cUser].Active := False;
cUser := GetArrayLength(Players) - 1;
end;


procedure LeftPlayer(sender: TObject);
begin
try
players[currentplayer + 1].name := players[currentplayer + 1].name
except
Exit;
end
SavePlayersInForm(CurrentPlayer);
CurrentPlayer := CurrentPlayer + 1;
label5.caption := 'Player '+IntToStr(CurrentPlayer);
LoadPlayersInForm(CurrentPlayer);
end;

procedure RightPlayer(sender: TObject);
begin
if (Currentplayer <> 0) then
begin
SavePlayersInForm(CurrentPlayer);
CurrentPlayer := CurrentPlayer - 1;
label5.caption := 'Player '+IntToStr(CurrentPlayer);
LoadPlayersInForm(CurrentPlayer);
end
end;

procedure Backspace(sender: TObject);
Begin
repeat
if (GetArrayLength(players) = 1) then break
SetArrayLength(players, GetArrayLength(players) - 1)
CurrentPlayer := GetArrayLength(Players) - 1;
label5.caption := 'Player '+IntToStr(CurrentPlayer);
LoadPlayersInForm(CurrentPlayer);
until (True)
end;

procedure AddUser(sender: TObject);
begin
SavePlayersInForm(CurrentPlayer);
SetArrayLength(Players, GetArrayLength(Players) + 1);
CurrentPlayer := GetArrayLength(Players) - 1;
Players[GetArrayLength(Players) - 1].Active := True;
label5.caption := 'Player '+IntToStr(CurrentPlayer);
LoadPlayersInForm(CurrentPlayer);
end;

procedure CancelScript(sender: TObject);
var
v: TVariantArray;
begin
SavePlayersInForm(CurrentPlayer);
SetArrayLength ( V, 0);
Writeln('Script Cancelled');
SaveUs2;
frmDesign.ModalResult:= mrOk;
StartScript := False;
end;

procedure FormClose2(sender: TObject; var CanClose: Boolean);
begin
SavePlayersInForm(CurrentPlayer);
SaveUs2;
HowManyPlayers := GetArrayLength(players)
CanClose := True
end;

Procedure BScript(Sender: TObject);
var
v: TVariantArray;
begin
SavePlayersInForm(CurrentPlayer);
SaveUs2;
SetArrayLength ( V, 0);
frmDesign.ModalResult:= mrOk;
StartScript := True;
Label5.Caption := 'Player '+IntToStr(cUser);
end;

procedure InitForm;
Begin
LoadUs2;

frmDesign := CreateForm;
frmDesign.Left := 262;
frmDesign.Top := 167;
frmDesign.BorderStyle := bsSingle;
frmDesign.Caption := 'Edge Cutter';
frmDesign.ClientHeight := 293;
frmDesign.ClientWidth := 377;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -13;
frmDesign.Font.Name := 'Comic Sans MS';
frmDesign.Font.Style := [];
frmDesign.KeyPreview := True;
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;

NPlayer := TButton.Create(frmDesign);
NPlayer.OnClick:= @LeftPlayer;
NPlayer.Parent := frmDesign;
NPlayer.Left := 255;
NPlayer.Top := 28;
NPlayer.Width := 75;
NPlayer.Height := 25;
NPlayer.Caption := 'Next';
NPlayer.Font.Color := clWindowText;
NPlayer.Font.Height := -13;
NPlayer.Font.Name := 'Comic Sans MS';
NPlayer.Font.Style := [];
NPlayer.ParentFont := False;
NPlayer.TabOrder := 0;

CPlayer := TButton.Create(frmDesign);
CPlayer.OnClick:= @AddUser;
CPlayer.Parent := frmDesign;
CPlayer.Left := 186;
CPlayer.Top := 28;
CPlayer.Width := 67;
CPlayer.Height := 25;
CPlayer.Caption := 'Create';
CPlayer.Font.Color := clWindowText;
CPlayer.Font.Height := -13;
CPlayer.Font.Name := 'Comic Sans MS';
CPlayer.Font.Style := [];
CPlayer.ParentFont := False;
CPlayer.TabOrder := 1;

DPlayer := TButton.Create(frmDesign);
DPlayer.OnClick:= @Backspace;
DPlayer.Parent := frmDesign;
DPlayer.Left := 116;
DPlayer.Top := 29;
DPlayer.Width := 68;
DPlayer.Height := 25;
DPlayer.Caption := 'Delete';
DPlayer.Font.Color := clWindowText;
DPlayer.Font.Height := -13;
DPlayer.Font.Name := 'Comic Sans MS';
DPlayer.Font.Style := [];
DPlayer.ParentFont := False;
DPlayer.TabOrder := 2;

PPlayer := TButton.Create(frmDesign);
PPlayer.OnClick:= @RightPlayer;
PPlayer.Parent := frmDesign;
PPlayer.Left := 39;
PPlayer.Top := 29;
PPlayer.Width := 75;
PPlayer.Height := 25;
PPlayer.Caption := 'Previous';
PPlayer.Font.Color := clWindowText;
PPlayer.Font.Height := -13;
PPlayer.Font.Name := 'Comic Sans MS';
PPlayer.Font.Style := [];
PPlayer.ParentFont := False;
PPlayer.TabOrder := 3;

Cancel := TButton.Create(frmDesign);
Cancel.OnClick:= @CancelScript;
Cancel.Parent := frmDesign;
Cancel.Left := 200;
Cancel.Top := 258;
Cancel.Width := 75;
Cancel.Height := 25;
Cancel.Caption := 'Cancel';
Cancel.Font.Color := clWindowText;
Cancel.Font.Height := -13;
Cancel.Font.Name := 'Comic Sans MS';
Cancel.Font.Style := [];
Cancel.ParentFont := False;
Cancel.TabOrder := 4;

BeginScript := TButton.Create(frmDesign);
BeginScript.OnClick:= @BScript;
BeginScript.Parent := frmDesign;
BeginScript.Left := 90;
BeginScript.Top := 258;
BeginScript.Width := 75;
BeginScript.Height := 25;
BeginScript.Caption := 'Ok';
BeginScript.TabOrder := 6;

GroupBox1 := TGroupBox.Create(frmDesign);
GroupBox1.Parent := frmDesign;
GroupBox1.Left := 43;
GroupBox1.Top := 61;
GroupBox1.Width := 285;
GroupBox1.Height := 190;
GroupBox1.Color := clActiveCaption;
GroupBox1.DragMode := dmAutomatic;
GroupBox1.Font.Color := clWindowText;
GroupBox1.Font.Height := -13;
GroupBox1.Font.Name := 'Comic Sans MS';
GroupBox1.Font.Style := [];
GroupBox1.ParentColor := False;
GroupBox1.ParentFont := False;
GroupBox1.TabOrder := 5;

Label1 := TLabel.Create(GroupBox1);
Label1.Parent := GroupBox1;
Label1.Left := 42;
Label1.Top := 43;
Label1.Width := 70;
Label1.Height := 18;
Label1.Caption := 'User Name:';
Label1.Font.Color := clWindowText;
Label1.Font.Height := -13;
Label1.Font.Name := 'Comic Sans MS';
Label1.Font.Style := [];
Label1.ParentFont := False;

Label2 := TLabel.Create(GroupBox1);
Label2.Parent := GroupBox1;
Label2.Left := 50;
Label2.Top := 73;
Label2.Width := 61;
Label2.Height := 18;
Label2.Caption := 'Password:';
Label2.Font.Color := clWindowText;
Label2.Font.Height := -13;
Label2.Font.Name := 'Comic Sans MS';
Label2.Font.Style := [];
Label2.ParentFont := False;

Label3 := TLabel.Create(GroupBox1);
Label3.Parent := GroupBox1;
Label3.Left := 68;
Label3.Top := 103;
Label3.Width := 42;
Label3.Height := 18;
Label3.Caption := 'Active:';
Label3.Font.Color := clWindowText;
Label3.Font.Height := -13;
Label3.Font.Name := 'Comic Sans MS';
Label3.Font.Style := [];
Label3.ParentFont := False;

Label4 := TLabel.Create(GroupBox1);
Label4.Parent := GroupBox1;
Label4.Left := 69;
Label4.Top := 133;
Label4.Width := 39;
Label4.Height := 18;
Label4.Caption := 'Loads:';

Label5 := TLabel.Create(GroupBox1);
Label5.Parent := GroupBox1;
Label5.Left := 112;
Label5.Top := 8;
Label5.Width := 46;
Label5.Height := 23;
Label5.Caption := 'Player '+IntToStr(cUser);
Label5.Font.Color := clWindowText;
Label5.Font.Height := -16;
Label5.Font.Name := 'Comic Sans MS';
Label5.Font.Style := [];
Label5.ParentFont := False;

UName := TEdit.Create(GroupBox1);
UName.Parent := GroupBox1;
UName.Left := 118;
UName.Top := 40;
UName.Width := 121;
UName.Height := 26;
UName.ParentShowHint := False;
UName.ShowHint := True;
UName.TabOrder := 4;
UName.Text := Players[0].Name;

Pword := TEdit.Create(GroupBox1);
Pword.Parent := GroupBox1;
Pword.Left := 117;
Pword.Top := 70;
Pword.Width := 121;
Pword.Height := 26;
Pword.Hint := 'Password';
Pword.ParentShowHint := False;
Pword.PasswordChar := '*';
Pword.ShowHint := True;
Pword.TabOrder := 1;
Pword.Text := Players[0].Pass;

Loads := TEdit.Create(GroupBox1);
Loads.Parent := GroupBox1;
Loads.Left := 118;
Loads.Top := 130;
Loads.Width := 121;
Loads.Height := 26;
Loads.OEMConvert := True;
Loads.ParentShowHint := False;
Loads.ShowHint := True;
Loads.TabOrder := 2;
Loads.Text := IntToStr(Players[0].Integer1);

Activity := TComboBox.Create(GroupBox1);
Activity.Parent := GroupBox1;
Activity.Left := 117;
Activity.Top := 100;
Activity.Width := 122;
Activity.Height := 26;
Activity.ItemHeight := 18;
Activity.ParentShowHint := False;
Activity.ShowHint := True;
Activity.TabOrder := 3;
Activity.Text := BoolToStr(Players[0].Active);
Activity.Items.Add('True');
Activity.Items.Add('False');

end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('InitForm', v);
end;

procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;

{__________________________________________
| Sigantures |
|__________________________________________|}
Procedure Siganture;
Begin
Writeln('_______________________________');
Writeln('| Me_ntal"s |');
Writeln('| Edgeville |');
Writeln('| Willow Cutter |');
Writeln('|______________________________|');
end;

procedure Report;
begin
ClearDebug;
Writeln('_______________________________');
Writeln('| |');
Writeln('| Me_ntal"s |');
Writeln('| Edgeville |');
Writeln('| Willow Cutter |');
Writeln('|______________________________|');
Writeln('')
Writeln(' Total Running Time : ' +TimeRunning);
Writeln('')
Writeln(Players[CurrentPlayer].Name);
Writeln('Willows Cut :'+IntToStr(Willows));
Writeln('Exp Gained :'+FloatToStr(Willows*62.5));
Writeln(Players[CurrentPlayer].Nick);
end;

procedure Summary;
begin
AddToReport('');
AddToReport(Players[CurrentPlayer].Name)
AddToReport('');
AddToReport('Worked for : '+IntToStr(Players[CurrentPlayer].Worked));
AddToReport('Willows Cut :'+IntToStr(Willows));
AddToReport('Exp Gained :'+FloatToStr(Willows*62.5));
AddToReport('Wc level :'+IntToStr(Players[CurrentPlayer].Level[20]));
AddToReport('Nickname :'+Players[CurrentPlayer].Nick);
AddToReport('');
end;


{__________________________________________
| Randoms |
|__________________________________________|}
Function FindFastRandoms:Boolean; //By WT-Fakawi.
begin
for i := 1 to 16 do
begin
case I of
1: CloseWindow;
2: if FindTalk then
Result := True;
3: if FindDead then
Result := True;
4: if FindMod then
Result := True;
5: if FindMime then
Result := True;
6: if FindMaze then
Result := True;
7: if FindQuiz then
Result := True;
8: if FindDemon then
Result := True;
9: if FindScapeRune then
Result := True;
10: if FindTalk then
Result := True;
11: if FindLamp(LampSkill) then
Result := True;
12: if (FindNewBox) then
begin
Result := True;
if (UseBoxSolver) then
SolveBox
else
GambleNewBox;
end;

14:
begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
16: if RC then
Result := True;
end;
Wait(1);
end;
end;

{__________________________________________
| AntiBan |
|__________________________________________|}
Procedure WereHuman;
Begin
If not(LoggedIn) then Exit;
Begin
Case Random(20) of
0: RandomRClickEvery(2 + Random(8));
1: HoverSkill('random', false);
2: RotateEvery(20 + Random(10));
3: LeaveScreenEvery(5 + Random(5));
4: HoverSkill('Woodcutting', false);
5: BoredEvery(9 + Random(24));
6: Begin
GameTab(1 + Random(12));
Wait(1500 + Random(500));
GameTab(4);
end;
7: SleepAndMoveMouse(1000 + Random(1000));
8: MMouse(Random(MIX2), Random(MIY2), 0, 0);
end;
end
end;

procedure Randomfind;
begin
FindFastRandoms;
FindNormalRandoms;
end;

{__________________________________________
| Selling |
|__________________________________________|}
procedure fromshop;
begin
{Shop to Witch}
RadialWalkEx( DX, DY, MMCX, MMCY, RoadColor, 30, 120, 130, 50)
mouse(DX,DY,0,0,true);
Flag;
RadialWalkEx( DX, DY, MMCX, MMCY, 1784915, 30, 145, 175, 60)
mouse(DX,DY,0,0,true);
Flag;
end;

procedure selllogs;
begin
if (FindColorSpiralTolerance(x,y, ShopkeeperColor, msx1,msy1,msx2,msy2, 5)) then
Begin
MMouse(x, y, 3, 3);
if(IsUpTextMulti('hop', 'eep', 'per'))then
begin
Wait(100 + Random(100));
Mouse(x,y,3,3, false);
Wait(50 + Random(35));
ChooseOption(x, y, 'Trade');
Wait(50 + Random(100));
repeat
if(FindDTM(LogDTM, x, y, 552, 203, 742, 469))then
begin
Mouse(x, y, 2, 2, False);
ChooseOption(x, y, 'Sell 10');
Wait(100 + Random(100));
end;
until(Not(FindDTM(LogDTM, x, y, 552, 203, 742, 469)));
Willows := Willows + 27;
Report;
if(FindDTM(BigXDTM, x, y, 552, 203, 742, 469))then
begin
Mouse(x, y, 2, 2, True);
Wait(100 + Random(100));
end;
Wait(100 + Random(100));
fromshop;
end;
end;
end;

procedure tooshop;
begin
{Willow to dead}
RadialWalkEx( DX, DY, MMCX, MMCY, 1256738, 30, 345, 366, 45)
mouse(DX,DY,0,0,true);
Flag;
RadialWalkEx( DX, DY, MMCX, MMCY, 232, 30, 300, 303, 60)
mouse(DX,DY,0,0,true);
Flag;
RadialWalkEx( DX, DY, MMCX, MMCY, 602204, 30, 300, 225, 15)
mouse(DX,DY,0,0,true);
Flag;
Wait(100 + Random(100));

end;



procedure DropLogs;
begin
if (InvFull) then
begin
repeat
if(FindDTM(LogDTM, x, y, 552, 203, 742, 469))then
begin
Mouse(x, y, 2, 2, False);
ChooseOption(x, y, 'Drop');
Randomfind;
Willows := Willows + 1;
Report;
end;
until(Not(FindDTM(LogDTM, x, y, 552, 203, 742, 469)));
end else
exit;
end;

procedure bankreq;
begin
if (InvFull) then
begin
tooshop;
Wait(50 + Random(100));
selllogs;
Wait(50 + Random(100));
fromshop;
end else
exit;
end;



{__________________________________________
| Main Loop |
|__________________________________________|}
Procedure Doload;
Var
cx, cy: Integer;
begin
if (InvFull) then bankreq;
repeat
begin
If not(LoggedIn)then Exit;
If (FindColorSpiralTolerance(x,y, WillowColor, msx1,msy1,msx2,msy2, 5))and
not(FindColorSpiralTolerance(cx, cy, 515029, MSX1, MSY1, 180, 25, 20))and
not(FindColorSpiralTolerance(cx, cy, 122333, MSX1, MSY1, 123, 15, 10))and
not(FindColorSpiralTolerance(cx, cy, 65535, MSX1, MSY1, 180, 25, 20))then
Begin
MMouse(x, y, 3, 3);
if(IsUpTextMulti('hop', 'own', 'illo'))then
begin
Wait(100 + Random(100));
Mouse(x,y,3,3, false);
Wait(50 + Random(35));
ChooseOption(x, y, 'Chop');
Wait(50 + Random(100));
end;
repeat
begin
If (InvFull) then bankreq;
MMouse(x, y, 3, 3);
wait(500+Random(1000));
FindEnt(3160112);
FindHead;
WereHuman;
end;
until (not(IsUpText('hop')));
Randomfind;
end;
end;
until (InvFull)
end;

{__________________________________________
| Setups |
|__________________________________________|}

Procedure SetupPlayer;
begin
NickNameBMP := CreateBitmapMaskFromText(Players[CurrentPlayer].Nick, UpChars);
GetAllLevels;
HighestAngle;
MakeCompass('N');
FindAxeHeadColor;
Report;
end;

{__________________________________________
| Main Loop |
|__________________________________________|}
begin
setupsrl;
LoadUs;
DeclareDTM;
SafeInitForm;
SafeShowFormModal;
ActivateClient;
cUser := 0;
Willows := 0;
ClearDebug;
Siganture;
If not(StartScript) then TerminateScript;
repeat
If (Not(LoggedIn)) then LoginPlayer;
SetupPlayer;
GenerateNickNames;
repeat
Doload;
bankreq;
Report;
until (Willows >= Players[CurrentPlayer].Integer1)
if(Willows >= Players[CurrentPlayer].Integer1)then
begin
Summary;
LogOut;
NextPlayer(True);
Willows := 0;
SetupPlayer;
end;
until False;
end.


Without form

{
__________________________________________________________
|| Me_ntals Willow Cutter ||
|| Soon to be Banker/Power cutter ||
|| Suggestion? Post it! ||
|| Thanks the SRL team ||
|| Espically starblaster ||
||_______________________________________________________||

}

{.include srl/srl.scar}
{.include SRL/SRL/Skill/WoodCutting.scar}
var
DX, DY, LogDTM, BigXDTM, cUser, willows, i, LoadNumber:integer;
StartScript: Boolean;
frmDesign : TForm;
CPlayer , PPlayer , BeginScript , Cancel , NPlayer, DPlayer : TButton;
GroupBox1 : TGroupBox;
Label1 , Label2 , Label3 , Label4 , Label5 : TLabel;
UName , Pword , Loads : TEdit;
Activity : TComboBox;
EdgeWillowCutterFileName: String;
SkipItems: Array[1..21] of String;

const
ShopkeeperColor = 2971004;
WillowColor = 3160112;

procedure DeclareDTM;
begin

LogDTM := DTMFromString('78DA632C66626078CA8002527D75191E02694' +
'620FE0F048CC94035CF18D000231209A4F3806AEE10505343A49A' +
'3744D8F511BF1A00056F0DE4');
BigXDTM := DTMFromString('78DA63E4626060006114C0C8F01F4C3230FC0' +
'7024661208309554541A21B54255407480D0FAA1A676B6D54351C' +
'404218554D88A739AA1A903D1CA86AB2639D51D5B001096654351' +
'35BF251D508E0B78B15880100130BA0');
end;

Procedure DeclarePlayers;
begin
HowManyPlayers:= 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;

Players[0].Name :='username ';
Players[0].Pass :='password';
Players[0].Nick :='rnam'; {3 or 4 letters of your name}
Players[0].Active :=True;


end;


{__________________________________________
| Sigantures |
|__________________________________________|}
Procedure Siganture;
Begin
Writeln('_______________________________');
Writeln('| Me_ntal"s |');
Writeln('| Edgeville |');
Writeln('| Willow Cutter |');
Writeln('|______________________________|');
end;

procedure Report;
begin
ClearDebug;
Writeln('_______________________________');
Writeln('| |');
Writeln('| Me_ntal"s |');
Writeln('| Edgeville |');
Writeln('| Willow Cutter |');
Writeln('|______________________________|');
Writeln('')
Writeln(' Total Running Time : ' +TimeRunning);
Writeln('')
Writeln(Players[CurrentPlayer].Name);
Writeln('Willows Cut :'+IntToStr(Willows));
Writeln('Exp Gained :'+FloatToStr(Willows*62.5));
Writeln(Players[CurrentPlayer].Nick);
end;

procedure Summary;
begin
AddToReport('');
AddToReport(Players[CurrentPlayer].Name)
AddToReport('');
AddToReport('Worked for : '+IntToStr(Players[CurrentPlayer].Worked));
AddToReport('Willows Cut :'+IntToStr(Willows));
AddToReport('Exp Gained :'+FloatToStr(Willows*62.5));
AddToReport('Wc level :'+IntToStr(Players[CurrentPlayer].Level[20]));
AddToReport('Nickname :'+Players[CurrentPlayer].Nick);
AddToReport('');
end;


{__________________________________________
| Randoms |
|__________________________________________|}
Function FindFastRandoms:Boolean; //By WT-Fakawi.
begin
for i := 1 to 16 do
begin
case I of
1: CloseWindow;
2: if FindTalk then
Result := True;
3: if FindDead then
Result := True;
4: if FindMod then
Result := True;
5: if FindMime then
Result := True;
6: if FindMaze then
Result := True;
7: if FindQuiz then
Result := True;
8: if FindDemon then
Result := True;
9: if FindScapeRune then
Result := True;
10: if FindTalk then
Result := True;
11: if FindLamp(LampSkill) then
Result := True;
12: if (FindNewBox) then
begin
Result := True;
if (UseBoxSolver) then
SolveBox
else
GambleNewBox;
end;

14:
begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
16: if RC then
Result := True;
end;
Wait(1);
end;
end;

{__________________________________________
| AntiBan |
|__________________________________________|}
Procedure WereHuman;
Begin
If not(LoggedIn) then Exit;
Begin
Case Random(20) of
0: RandomRClickEvery(2 + Random(8));
1: HoverSkill('random', false);
2: RotateEvery(20 + Random(10));
3: LeaveScreenEvery(5 + Random(5));
4: HoverSkill('Woodcutting', false);
5: BoredEvery(9 + Random(24));
6: Begin
GameTab(1 + Random(12));
Wait(1500 + Random(500));
GameTab(4);
end;
7: SleepAndMoveMouse(1000 + Random(1000));
8: MMouse(Random(MIX2), Random(MIY2), 0, 0);
end;
end
end;

procedure Randomfind;
begin
FindFastRandoms;
FindNormalRandoms;
end;

{__________________________________________
| Selling |
|__________________________________________|}
procedure fromshop;
begin
{Shop to Witch}
RadialWalkEx( DX, DY, MMCX, MMCY, RoadColor, 30, 120, 130, 50)
mouse(DX,DY,0,0,true);
Flag;
RadialWalkEx( DX, DY, MMCX, MMCY, 1784915, 30, 145, 175, 60)
mouse(DX,DY,0,0,true);
Flag;
end;

procedure selllogs;
begin
if (FindColorSpiralTolerance(x,y, ShopkeeperColor, msx1,msy1,msx2,msy2, 5)) then
Begin
MMouse(x, y, 3, 3);
if(IsUpTextMulti('hop', 'eep', 'per'))then
begin
Wait(100 + Random(100));
Mouse(x,y,3,3, false);
Wait(50 + Random(35));
ChooseOption(x, y, 'Trade');
Wait(50 + Random(100));
repeat
if(FindDTM(LogDTM, x, y, 552, 203, 742, 469))then
begin
Mouse(x, y, 2, 2, False);
ChooseOption(x, y, 'Sell 10');
Wait(100 + Random(100));
end;
until(Not(FindDTM(LogDTM, x, y, 552, 203, 742, 469)));
Willows := Willows + 27;
Report;
if(FindDTM(BigXDTM, x, y, 552, 203, 742, 469))then
begin
Mouse(x, y, 2, 2, True);
Wait(100 + Random(100));
end;
Wait(100 + Random(100));
fromshop;
end;
end;
end;

procedure tooshop;
begin
{Willow to dead}
RadialWalkEx( DX, DY, MMCX, MMCY, 1256738, 30, 345, 366, 45)
mouse(DX,DY,0,0,true);
Flag;
RadialWalkEx( DX, DY, MMCX, MMCY, 232, 30, 300, 303, 60)
mouse(DX,DY,0,0,true);
Flag;
RadialWalkEx( DX, DY, MMCX, MMCY, 602204, 30, 300, 225, 15)
mouse(DX,DY,0,0,true);
Flag;
Wait(100 + Random(100));

end;



procedure DropLogs;
begin
if (InvFull) then
begin
repeat
if(FindDTM(LogDTM, x, y, 552, 203, 742, 469))then
begin
Mouse(x, y, 2, 2, False);
ChooseOption(x, y, 'Drop');
Randomfind;
Willows := Willows + 1;
Report;
end;
until(Not(FindDTM(LogDTM, x, y, 552, 203, 742, 469)));
end else
exit;
end;

procedure bankreq;
begin
if (InvFull) then
begin
tooshop;
Wait(50 + Random(100));
selllogs;
Wait(50 + Random(100));
fromshop;
end else
exit;
end;



{__________________________________________
| Main Loop |
|__________________________________________|}
Procedure Doload;
Var
cx, cy: Integer;
begin
if (InvFull) then bankreq;
repeat
begin
If not(LoggedIn)then Exit;
If (FindColorSpiralTolerance(x,y, WillowColor, msx1,msy1,msx2,msy2, 5))and
not(FindColorSpiralTolerance(cx, cy, 515029, MSX1, MSY1, 180, 25, 20))and
not(FindColorSpiralTolerance(cx, cy, 122333, MSX1, MSY1, 123, 15, 10))and
not(FindColorSpiralTolerance(cx, cy, 65535, MSX1, MSY1, 180, 25, 20))then
Begin
MMouse(x, y, 3, 3);
if(IsUpTextMulti('hop', 'own', 'illo'))then
begin
Wait(100 + Random(100));
Mouse(x,y,3,3, false);
Wait(50 + Random(35));
ChooseOption(x, y, 'Chop');
Wait(50 + Random(100));
end;
repeat
begin
If (InvFull) then bankreq;
MMouse(x, y, 3, 3);
wait(500+Random(1000));
FindEnt(3160112);
FindHead;
WereHuman;
end;
until (not(IsUpText('hop')));
Randomfind;
end;
end;
until (InvFull)
end;

{__________________________________________
| Setups |
|__________________________________________|}

Procedure SetupPlayer;
begin
GetAllLevels;
HighestAngle;
MakeCompass('N');
FindAxeHeadColor;
Report;
end;

{__________________________________________
| Main Loop |
|__________________________________________|}
begin
setupsrl;
DeclareDTM;
DeclarePlayers;
ActivateClient;
Willows := 0;
ClearDebug;
Siganture;
If not(StartScript) then TerminateScript;
repeat
If (Not(LoggedIn)) then LoginPlayer;
SetupPlayer;
repeat
Doload;
bankreq;
Report;
until (Willows >= Players[CurrentPlayer].Integer1)
if(Willows >= Players[CurrentPlayer].Integer1)then
begin
Summary;
LogOut;
NextPlayer(True);
Willows := 0;
SetupPlayer;
end;
until False;
end.

——————————————————
<!– END TEMPLATE: formanswers –>

YoHoJo

2007-04-14 05:29:44

Log DTM
http://www.villavu.com/forum/showthread.php?t=7830

function CreateNick(Username : String) : String;
MadCows (CREDITED)

Procedure GenerateNickNames;
Madcows (CREDITED)

Procedure SavePlayersInForm(No: Integer);
Procedure LoadPlayersInForm(no: Integer);
procedure SaveUs2;
procedure LeftPlayer(sender: TObject)
procedure RightPlayer(sender: TObject);
procedure Backspace(sender: TObject);
procedure AddUser(sender: TObject);
procedure CancelScript(sender: TObject);
procedure FormClose2(sender: TObject; var CanClose: Boolean);
Procedure BScript(Sender: TObject);
http://www.sythe.org/showthread.php?t=156019

Forum is all starblasters
DTM is stolen (lol no biggie)

Idk if starblaster gave you permission to use the foum, its pretty advanced so i bet he let you and you got help/permission.

But looking at the parts that you obviously did by yourself and the meat of the script i see nothing too special.

Ill just wait and look it over again, but all im seeing is simple chop and drop.
You obviously got tons of help making/implementing that form.

me_ntal

2007-04-14 06:05:32

Scar giving me permision to use his forms as a template. I tried to alter them as much as i could but it pretty much had all i want.


Quote:
Originally Posted by me_ntal
Evening Starblaster

Sorry to bother you but i noticed that your powerskills had an excellent form set up. I was wondering if you could help me with installing forms on to my script.

I need to understand about
- Loading and saving character details
- going to next player and creating and deleting old ones

Thanks my script is below

jacob

ScarScript: By Drunkenoldma

{.include srl/srl.scar}
var
willows,i:integer;
StartXP, EndXP, TotalXP, WillowLoads, LoadNumber:integer;
StartScript: Boolean;
frmDesign : TForm;
CPlayer : TButton;
PPlayer : TButton;
BeginScript : TButton;
Cancel : TButton;
NPlayer : TButton;
DPlayer : TButton;
GroupBox1 : TGroupBox;
Label1 : TLabel;
Label2 : TLabel;
Label3 : TLabel;
Label4 : TLabel;
Label5 : TLabel;
Edit3 : TEdit;
Edit1 : TEdit;
Edit2 : TEdit;
Edit4 : TEdit;
ComboBox1 : TComboBox;

procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer:= 0;

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


{__________________________________________
| Form |
|__________________________________________|}
procedure LeftPlayer(sender: TObject);
begin
Writeln('Button pressed!');
frmDesign.Caption:= frmDesign.Caption + '.';
end;

procedure RightPlayer(sender: TObject);
begin
Writeln('Button pressed!');
frmDesign.Caption:= frmDesign.Caption + '.';
end;

procedure Backspace(sender: TObject);
begin
Writeln('Button pressed!');
frmDesign.Caption:= frmDesign.Caption + '.';
end;

procedure NewPlayer(sender: TObject);
begin
Writeln('Button pressed!');
frmDesign.Caption:= frmDesign.Caption + '.';
end;

procedure CancelScript(sender: TObject);
var
v: TVariantArray;
begin
SetArrayLength ( V, 0);
Writeln('Script Cancelled');
frmDesign.ModalResult:= mrOk;
StartScript := False;
end;

Procedure BScript(Sender: TObject);
var
v: TVariantArray;
begin
SetArrayLength ( V, 0);
frmDesign.ModalResult:= mrOk;
StartScript := True;
end;

procedure InitForm;
Begin
frmDesign := CreateForm;
frmDesign.Left := 262;
frmDesign.Top := 167;
frmDesign.BorderStyle := bsSingle;
frmDesign.Caption := 'Edge Cutter';
frmDesign.ClientHeight := 293;
frmDesign.ClientWidth := 377;
frmDesign.Color := clCream;
frmDesign.Font.Color := clWindowText;
frmDesign.Font.Height := -13;
frmDesign.Font.Name := 'Comic Sans MS';
frmDesign.Font.Style := [];
frmDesign.KeyPreview := True;
frmDesign.Visible := False;
frmDesign.PixelsPerInch := 96;

NPlayer := TButton.Create(frmDesign);
NPlayer.OnClick:= @LeftPlayer;
NPlayer.Parent := frmDesign;
NPlayer.Left := 255;
NPlayer.Top := 28;
NPlayer.Width := 75;
NPlayer.Height := 25;
NPlayer.Caption := 'Next';
NPlayer.Font.Color := clWindowText;
NPlayer.Font.Height := -13;
NPlayer.Font.Name := 'Comic Sans MS';
NPlayer.Font.Style := [];
NPlayer.ParentFont := False;
NPlayer.TabOrder := 0;

CPlayer := TButton.Create(frmDesign);
CPlayer.OnClick:= @NewPlayer;
CPlayer.Parent := frmDesign;
CPlayer.Left := 186;
CPlayer.Top := 28;
CPlayer.Width := 67;
CPlayer.Height := 25;
CPlayer.Caption := 'Create';
CPlayer.Font.Color := clWindowText;
CPlayer.Font.Height := -13;
CPlayer.Font.Name := 'Comic Sans MS';
CPlayer.Font.Style := [];
CPlayer.ParentFont := False;
CPlayer.TabOrder := 1;

DPlayer := TButton.Create(frmDesign);
DPlayer.OnClick:= @Backspace;
DPlayer.Parent := frmDesign;
DPlayer.Left := 116;
DPlayer.Top := 29;
DPlayer.Width := 68;
DPlayer.Height := 25;
DPlayer.Caption := 'Delete';
DPlayer.Font.Color := clWindowText;
DPlayer.Font.Height := -13;
DPlayer.Font.Name := 'Comic Sans MS';
DPlayer.Font.Style := [];
DPlayer.ParentFont := False;
DPlayer.TabOrder := 2;

PPlayer := TButton.Create(frmDesign);
PPlayer.OnClick:= @RightPlayer;
PPlayer.Parent := frmDesign;
PPlayer.Left := 39;
PPlayer.Top := 29;
PPlayer.Width := 75;
PPlayer.Height := 25;
PPlayer.Caption := 'Previous';
PPlayer.Font.Color := clWindowText;
PPlayer.Font.Height := -13;
PPlayer.Font.Name := 'Comic Sans MS';
PPlayer.Font.Style := [];
PPlayer.ParentFont := False;
PPlayer.TabOrder := 3;

Cancel := TButton.Create(frmDesign);
Cancel.OnClick:= @CancelScript;
Cancel.Parent := frmDesign;
Cancel.Left := 200;
Cancel.Top := 258;
Cancel.Width := 75;
Cancel.Height := 25;
Cancel.Caption := 'Cancel';
Cancel.Font.Color := clWindowText;
Cancel.Font.Height := -13;
Cancel.Font.Name := 'Comic Sans MS';
Cancel.Font.Style := [];
Cancel.ParentFont := False;
Cancel.TabOrder := 4;

BeginScript := TButton.Create(frmDesign);
BeginScript.OnClick:= @BScript;
BeginScript.Parent := frmDesign;
BeginScript.Left := 90;
BeginScript.Top := 258;
BeginScript.Width := 75;
BeginScript.Height := 25;
BeginScript.Caption := 'Ok';
BeginScript.TabOrder := 6;

GroupBox1 := TGroupBox.Create(frmDesign);
GroupBox1.Parent := frmDesign;
GroupBox1.Left := 43;
GroupBox1.Top := 61;
GroupBox1.Width := 285;
GroupBox1.Height := 190;
GroupBox1.Color := clActiveCaption;
GroupBox1.DragMode := dmAutomatic;
GroupBox1.Font.Color := clWindowText;
GroupBox1.Font.Height := -13;
GroupBox1.Font.Name := 'Comic Sans MS';
GroupBox1.Font.Style := [];
GroupBox1.ParentColor := False;
GroupBox1.ParentFont := False;
GroupBox1.TabOrder := 5;

Label1 := TLabel.Create(GroupBox1);
Label1.Parent := GroupBox1;
Label1.Left := 42;
Label1.Top := 43;
Label1.Width := 70;
Label1.Height := 18;
Label1.Caption := 'User Name:';
Label1.Font.Color := clWindowText;
Label1.Font.Height := -13;
Label1.Font.Name := 'Comic Sans MS';
Label1.Font.Style := [];
Label1.ParentFont := False;

Label2 := TLabel.Create(GroupBox1);
Label2.Parent := GroupBox1;
Label2.Left := 50;
Label2.Top := 73;
Label2.Width := 61;
Label2.Height := 18;
Label2.Caption := 'Password:';
Label2.Font.Color := clWindowText;
Label2.Font.Height := -13;
Label2.Font.Name := 'Comic Sans MS';
Label2.Font.Style := [];
Label2.ParentFont := False;

Label3 := TLabel.Create(GroupBox1);
Label3.Parent := GroupBox1;
Label3.Left := 68;
Label3.Top := 103;
Label3.Width := 42;
Label3.Height := 18;
Label3.Caption := 'Active:';
Label3.Font.Color := clWindowText;
Label3.Font.Height := -13;
Label3.Font.Name := 'Comic Sans MS';
Label3.Font.Style := [];
Label3.ParentFont := False;

Label4 := TLabel.Create(GroupBox1);
Label4.Parent := GroupBox1;
Label4.Left := 69;
Label4.Top := 133;
Label4.Width := 39;
Label4.Height := 18;
Label4.Caption := 'Loads:';

Label5 := TLabel.Create(GroupBox1);
Label5.Parent := GroupBox1;
Label5.Left := 112;
Label5.Top := 8;
Label5.Width := 46;
Label5.Height := 23;
Label5.Caption := 'Player';
Label5.Font.Color := clWindowText;
Label5.Font.Height := -16;
Label5.Font.Name := 'Comic Sans MS';
Label5.Font.Style := [];
Label5.ParentFont := False;

Edit3 := TEdit.Create(GroupBox1);
Edit3.Parent := GroupBox1;
Edit3.Left := 118;
Edit3.Top := 40;
Edit3.Width := 121;
Edit3.Height := 26;
Edit3.ParentShowHint := False;
Edit3.ShowHint := True;
Edit3.TabOrder := 4;
Edit3.Text := 'Username';

Edit2 := TEdit.Create(GroupBox1);
Edit2.Parent := GroupBox1;
Edit2.Left := 117;
Edit2.Top := 70;
Edit2.Width := 121;
Edit2.Height := 26;
Edit2.Hint := 'Password';
Edit2.ParentShowHint := False;
Edit2.PasswordChar := '*';
Edit2.ShowHint := True;
Edit2.TabOrder := 1;
Edit2.Text := 'Password';

Edit4 := TEdit.Create(GroupBox1);
Edit4.Parent := GroupBox1;
Edit4.Left := 118;
Edit4.Top := 130;
Edit4.Width := 121;
Edit4.Height := 26;
Edit4.OEMConvert := True;
Edit4.ParentShowHint := False;
Edit4.ShowHint := True;
Edit4.TabOrder := 2;
Edit4.Text := 'How Many Loads?';

ComboBox1 := TComboBox.Create(GroupBox1);
ComboBox1.Parent := GroupBox1;
ComboBox1.Left := 117;
ComboBox1.Top := 100;
ComboBox1.Width := 122;
ComboBox1.Height := 26;
ComboBox1.ItemHeight := 18;
ComboBox1.ParentShowHint := False;
ComboBox1.ShowHint := True;
ComboBox1.TabOrder := 3;
ComboBox1.Text := 'True';
ComboBox1.Items.Add('True');
ComboBox1.Items.Add('False');

end;

procedure SafeInitForm;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('InitForm', v);
end;

procedure ShowFormModal;
begin
frmDesign.ShowModal;
end;

procedure SafeShowFormModal;
var
v: TVariantArray;
begin
setarraylength(V, 0);
ThreadSafeCall('ShowFormModal', v);
end;

{__________________________________________
| Sigantures |
|__________________________________________|}
Procedure Siganture;
Begin
Writeln('_______________________________');
Writeln('| Me_ntal"s |');
Writeln('| Edgeville |');
Writeln('| Willow Cutter |');
Writeln('|______________________________|');
end;

procedure Report;
begin
ClearDebug;
Writeln('_______________________________');
Writeln('| |');
Writeln('| Me_ntal"s |');
Writeln('| Edgeville |');
Writeln('| Willow Cutter |');
Writeln('|______________________________|');
Writeln('')
Writeln('Willows Cut:'+IntToStr(Willows));
Writeln('Exp Gained:'+IntToStr(TotalXP));
end;


{__________________________________________
| Randoms |
|__________________________________________|}
Function FindFastRandoms:Boolean;
begin
for i := 1 to 16 do
begin
case I of
1: CloseWindow;
2: if FindTalk then
Result := True;
3: if FindDead then
Result := True;
4: if FindMod then
Result := True;
5: if FindMime then
Result := True;
6: if FindMaze then
Result := True;
7: if FindQuiz then
Result := True;
8: if FindDemon then
Result := True;
9: if FindScapeRune then
Result := True;
10: if FindTalk then
Result := True;
11: if FindLamp(LampSkill) then
Result := True;
12: if (FindNewBox) then
begin
Result := True;
if (UseBoxSolver) then
SolveBox
else
GambleNewBox;
end;

14:
begin
if NoGameTab then
begin
Result := True;
Players[CurrentPlayer].loc := 'No GameTab';
Logout;
Exit;
end;
end;
16: if RC then
Result := True;
end;
Wait(1);
end;
end;

{__________________________________________
| AntiBan |
|__________________________________________|}
Procedure WereHuman;

begin

wait(10)

end;

{__________________________________________
| tree clicking |
|__________________________________________|}
Procedure Fallen;
Begin
repeat
FindFastRandoms;
WereHuman;
FindNormalRandoms;
wait(1000+Random(1000));
Report;
If (InvFull) then
exit;
until (not(IsUpText('hop')));
end;


{__________________________________________
| Main Loop |
|__________________________________________|}
Procedure Doload;
begin
repeat
If (FindColorTolerance(x,y, 3160112, msx1,msy1,msx2,msy2, 3)) or
(FindColorTolerance(x,y, 3043424, msx1,msy1,msx2,msy2, 3)) then
begin
repeat
Wait(100 + Random(500));
MMouse(x,y,3,3);
if(IsUpText('hop'))or(IsUpText('own'))then
begin
if IsUpTextMulti('ree', 'ak', 'ew') then
Exit;
if IsUpText('illow') then
begin
Report;
Wait(100 + Random(500));
Mouse(x, y, 3, 3, true);
FindFastRandoms;
FindNormalRandoms;
Fallen;
end;
end;
until (not(IsUpText('hop')));
end;
Until (InvFull)
end;

{__________________________________________
| Once Setup |
|__________________________________________|}
Procedure SetupScript;
Begin
ClearDebug;
Wait(500)
Siganture;
rs_DeleteUID;
ActivateClient;
DeclarePlayers;
LoginPlayer;
If (Not(LoggedIn)) then
Begin
Loginplayer;
end;
end;

{__________________________________________
| Main Loop |
|__________________________________________|}
begin
setupsrl;
SafeInitForm;
SafeShowFormModal;
If not(StartScript) then TerminateScript;
SetupScript;
repeat
repeat
HighestAngle;
MakeCompass('E');
StartXP := GetXp('Woodcutting')
Report;
DoLoad
until (LoadNumber >= WillowLoads)
EndXP := GetXp('Woodcutting')
TotalXP := (EndXP - StartXP)
Report;
SRLRandomsReport;
LogOut;
NextPlayer(True);
LoadNumber := 0
until False;
end.


Well I suggest looking over my script form and trying to modify it so it fits your needs. That way, you will understand how everything works much better

The DTM was given to me by another srl forum user "alex" mine didnt work.

Yes the meat of the script is completely mine if you look at the help forums you can see the general chanegs to the scripts. I credit starblaster at the start of the script and madcow as i felt necessary.

The future of the script will be to make it a multi-city willow cutter/banker/shop seller.

neG

2007-04-14 08:36:04

Multiplayer, Antiban, Randoms, Standards..
Yes from me :)

JuKKa

2007-04-14 08:48:36

nice script :) i just got all my chars to 60 wc :(

the script doesent compile..

me_ntal

2007-04-14 09:50:34

sorry jukka but if you did use the script in 2.03 it would screw up. But i removed the troublesome line try again please. It was a problem with form colouring

eddie

2007-04-14 10:56:42

Script looks good to me :) You'll be useful to have around, you know what's what and you've helped several people already-Yes from me

JAD

2007-04-14 11:23:15

No from me for the reasons that you did not make much of this script. The forms played a big part in it, and you didn't even make those, along with the DTM. Sorry, no for now though.

YoHoJo

2007-04-14 15:02:25

YEah after looking though you didnt even take the time to learn how to make your own dtm.

The meat of the script is simple and everything else you got lots of help on.
I like your effort though and its good.

Id say try making ANOTHER one without a form, make your own DTM, and see how well you can make a powerchopper yourself.

me_ntal

2007-04-14 18:56:01

YoHoJo i have created a new dtm.

LogDTM := DTMFromString('78DA6314656060106640016EF6120CFF81342' +
'310FF0702462120838B010D302291405A0648081050230F242451' +
'55D8988AA2AAE1051272A86A62821450D530030931FC760100DF3' +
'407E8');

YoHoJo

2007-04-14 18:58:19

Congrats! =)

me_ntal

2007-04-14 20:12:52

If i redid the script in the next few days so instead of it being a powercutter it was a powerseller and sold to a shop instead could i reapply? I really do like my form but and yes it is mostly starblasters but i credited him and im not removing it from the script.

JAD

2007-04-14 23:10:34

You could like somebody's chopping procedure, somebody's dropping procedure, somebody's form, somebody's anti randoms, somebody's anti ban, somebody's progress report, somebody's DTM and somebody's signature. But, if you were to put all those in your script of other peoples, would the script really be yours? Doesn't matter if you credited or not, the point is, to put something in your script you should get how it works and then once you do, you should make your own. You say your not going to remove somebody else's form, when you don't know if you know 100% how they work, and how to make your own. A little self indulgent if you ask me..

me_ntal

2007-04-15 02:52:42

Jad i can understand strict rules to get into but honestly dont shoot me down. Ok so you wanna know how the form works? alrite heres my conception of it


procedure LeftPlayer(sender: TObject);
begin
try
players[currentplayer + 1].name := players[currentplayer + 1].name {checks if their is another person to go to}
except
Exit; {exits if there isnt}
end
SavePlayersInForm(CurrentPlayer); {svaes the current character}
CurrentPlayer := CurrentPlayer + 1; {increases the player count making the current player the next player}
label5.caption := 'Player '+IntToStr(CurrentPlayer); {changes the title from player x to player x + 1}
LoadPlayersInForm(CurrentPlayer); { loads the details on the new current player}
end;

Correct? And well for my script being bits and pieces of others. Why go and create another wheel? Madcow made a perfectly good autonick name maker and i credited correctly. I have seen this in many srl scripts why cant i use it?

After being told by yohojo to use my own dtm i went and created a log dtm and when updating i made my own cross dtm to close shop windows. Its my fourth script so yeah its a little dodgy but werent yours. I tried to display knowledge for everything that everyone wants in a script , forms, saving and loading characters, autocoloring and radial walking.

JAD

2007-04-15 11:15:56

When you apply, does it not say 90% of the script has to be yours? When I applied actually, it was with my first script and I made sure I did 90%+ on it. The reason I said that was indulgent was because you like the form, but thats not what we want, thats what you want. Your not trying to please yourself with the form because you like it, your trying to please us by showing us 90% or more of the script is done by you.. credited or not, thats still the rules, correct me if I'm wrong.

me_ntal

2007-04-15 12:14:16

Yes your right. If i removed the form and replaced it with a simple declare players and login players procedure would you be pleased. there fore i would remove the gen nick from madcow and the form from starblaster hence increasing the percentage of the script that is mine?

Both a non form and a form script is present. You cant say i havent got detertenation i have met every please presented from making new dtms and explaining how something works to completing removing a feature.

eddie

2007-04-15 12:21:32

Personally I think he should be allowed-Even if 90% isnt his, he is still going to be very helpful to the comunity-He already has been

And please dont flame me if you don't agree this is just my opinion

YoHoJo

2007-04-15 14:19:00

Is he just takes parts from other peoples scripts and makes his own how is that helpful -.-.
People can just use the origial owners script instead of his.

SRL member is for people who know how to script
NOT copy and paste.

Not saying you dont know how to script me_ntal, just replying to eddie.

eddie

2007-04-15 15:18:36

He knows whats what- he's helped people with their scripts and stuff and i havent seen any posts by him that were completely useless, Unlike you Yoho :p j/k

JAD

2007-04-15 15:24:49

Sorry mental, I'm not trying to be mean, though I may sound like I am being mean :p You are a good scripter, you don't need to copy all these people's things. Next time you apply, you will be a lot better (If you don't get in this time) and then you will most likely be accepted. Keep at it, I already voted anyways so you can't really change my vote.

me_ntal

2007-04-15 19:30:39

Yoho Do you mind just do a copy buster on my script so i can see what i have to rewrite. Its ok guys i can understand why you are strict. Thanks eddie yeah i do try and help out anyone i can.