SRL Archive - News and General

2nd competition for the scripters 12m for the winner


print

2012-12-19 14:27:44

okay guys im make a second competition for the script makers of srl=)
the script that must be made to do bonfire in this location
http://gyazo.com/a7d0287549c7f70273489704ff5541cc just like the character is doing in the image and must bank and have a anti ban and must be human like
and must be able to use eoc hot keys the logs must be binded to hot key (1)(add to current bonfire thats been made using this method )(after bonfire is made make sure it adds to the one you made not a whole new bonfire)<—-hope thats clear

ask questions about this competition in this thread and this competition will be from 19-25 the winner wins 12m rsgp=)
here is picture of money for both competitions http://gyazo.com/233573bf0c76e42dff5a17d9dd39a7a5

please tell me if time should be extended idk how long a script like this will take
and it must be flawless guys no errors.

im doing these competitions becouse i want to give back to community in a fair way=)i guess if you dont want to participate you dont have to=)

the winner will be picked the 25th

update rezozo and dannyrs will be helping me chose the winning script if they choose to help me pm asap both of you=)

DannyRS

2012-12-19 14:35:28

meh, why not, I'll have a crack at it

___

2012-12-19 14:40:06

I'll do it too. But isn't this sort of like buying scripts in a sense? You pay 1 person 12M and get to pick the best one?
Ashaman pwns this one. But I'll try too.

The Killer

2012-12-19 14:41:27

From: ___
I'll do it too. But isn't this sort of like buying scripts in a sense? You pay 1 person 12M and get to pick the best one?
Ashaman pwns this one. But I'll try too.


Sort of, but hes sort of donating rather than buying as the script is going to be posted in public. But yeah it is sort of buying a script…

print

2012-12-19 14:43:52

nope the maker of the script will decide if they want to realease it and make it public or keep it to himself . i am 99 fm and after hosting 2 competitions i will be left broke =) good luck doe=)

DannyRS

2012-12-19 14:45:31

the eoc bar cant be used for FM?

print

2012-12-19 14:47:34

umm yes it can put a log in it and stand on place to put a bonfire and click the bind and a interface will show up with 3 options one is fletching craft and bonfire im sure edit———–> make sure it adds to bonfire useing that method

Rezozo

2012-12-19 15:15:17

Lol, I already made this script :p

When the EOC update came, the first day, made this so as not to use Master Chopper in PB. My ChopNBurn came from that :P

Submitted something very similar for the Junior Mems Competition.
~Rez

Might participate. Still pretty loaded, don't really need cash.

Is this a 'whoever does it first wins' competition or a 'whoever does it better wins' competition? As the second one makes no sense, as almost everyone would do the same thing. No creativity involved.
~Rez

print

2012-12-19 15:16:30

'whoever does it better wins' competition

DannyRS

2012-12-19 16:01:18

Removed my entry as going to help judge instead, goodluck everyone :)

Rezozo

2012-12-19 16:03:15

From: DannyRS
Taken out. Requested By Danny.

Plus, don't want any of you rascals to cheat now do we?


-Good call Danny
~Rez

print

2012-12-19 16:11:43

looks great dannyrs your in 1st place technically

DannyRS

2012-12-19 16:13:03

From: Rezozo
That is a bit intense don't you think? :D Plus, we have time :p
~Rez


intense, how you mean?


From: print
looks great dannyrs your in 1st place technically


not really bothered about winning, just want to join in the fun :) - also why i wont keep anything secret

Kyle Undefined

2012-12-19 18:15:30

If I had the time, I'd enter just to show you people how it's done :p

riwu

2012-12-19 18:48:27

Uhm so you are the only judge?
This means that the script will be judged solely based on how long & fast it can run, and how human it is? How are you going to test them? Just let them run 1hr each?

Slashed

2012-12-19 19:09:09

If I may have a say in this, I wouldn't really call this a competition. In between the lines, I only see " Will pay 12M to the guy who makes the best script". I would like to understand how this differs from paying someone to make a script for you? :confused:

Rezozo

2012-12-19 19:48:42

From: Slashed
If I may have a say in this, I wouldn't really call this a competition. In between the lines, I only see " Will pay 12M to the guy who makes the best script". I would like to understand how this differs from paying someone to make a script for you? :confused:


Technically, you are right. However, in this case, think of it as he wants to add a little fun in making a script that is currently(?) not there.

At least, that is how I see it. 12M is kinda like throwing cash in this case.
~Rez

Slashed

2012-12-19 20:37:18

From: Rezozo
Technically, you are right. However, in this case, think of it as he wants to add a little fun in making a script that is currently(?) not there.

At least, that is how I see it. 12M is kinda like throwing cash in this case.
~Rez


Perhaps, but as he is the only judge and he previously said that the winner may or may not release it to public ( leaving the choice to the owner ), leaves him as the only person who will 100% sure get his hands on the code. It's still too fishy for me. It's my opinion and should not be taken as a depreciative comment if possible. :bart:

DannyRS

2012-12-19 20:40:11

From: Slashed
Perhaps, but as he is the only judge and he previously said that the winner may or may not release it to public ( leaving the choice to the owner ), leaves him as the only person who will 100% sure get his hands on the code. It's still too fishy for me. It's my opinion and should not be taken as a depreciative comment if possible. :bart:


If it bothers you guys this much, I'll drop out my entry, and act as a second judge?

What you think print?

Just as fun for me either way, maybe more so to spend more time looking what others come up with

Slashed

2012-12-19 20:47:45

From: DannyRS
If it bothers you guys this much, I'll drop out my entry, and act as a second judge?

What you think print?

Just as fun for me either way, maybe more so to spend more time looking what others come up with


My commentary was not to be meant in that way. Since I'm not participating I was just giving my two cents. Sorry for the trouble.

___

2012-12-19 20:53:47

From: DannyRS
If it bothers you guys this much, I'll drop out my entry, and act as a second judge?

What you think print?

Just as fun for me either way, maybe more so to spend more time looking what others come up with


yes it bothers me so bad I can't sleep. Drop out plz.
Mine's almost done

DannyRS

2012-12-19 20:54:44

From: Slashed
My commentary was not to be meant in that way. Since I'm not participating I was just giving my two cents. Sorry for the trouble.


Yea not aimed at your post specifically, just in general of where this thread is going,

Honestly, print is 99FM, he's done other competitions, i think everyone should consider this is not a "Zomgzor can someone make me a dice bot for Moneyz?" Thread,

If you always look at it like that, then we can never have any fun with competitions, or atleast never offer prizes, personally full support to Print for trying to host a competition :)

Ian

2012-12-19 21:02:31

Yeah, we definitely could use some more scripting competitions. Maybe a rule about always having the winning script go public after or something would help. (Note I have not thought it through much so I'm not proposing it as a solution)

Hobbit

2012-12-19 21:04:19

The competition will continue, seeing as he has 99FM, and there is already a public bonfire script I don't see any motive behind him trying to subversively buy one.

However, it would be nice if you could find an additional judge print.

Goodluck everyone :)

Slashed

2012-12-19 21:14:44

From: DannyRS
Yea not aimed at your post specifically, just in general of where this thread is going,

Honestly, print is 99FM, he's done other competitions, i think everyone should consider this is not a "Zomgzor can someone make me a dice bot for Moneyz?" Thread,

If you always look at it like that, then we can never have any fun with competitions, or atleast never offer prizes, personally full support to Print for trying to host a competition :)


Yes, I understand your point. My apologies to print.

Rezozo

2012-12-19 21:44:55

May I be a judge? Also, I think we should give this competition more time, or not many people would join.

Also think its a bit unfair that I would have to re-edit my old script to match this :p
~Rez

print

2012-12-19 22:38:57

i have added 2 judges as you guys requested=)

riwu

2012-12-19 22:51:46

From: print
i have added 2 judges as you guys requested=)

Who's the second judge? Preferably an SSRL+?
Also what are the judging criteria? (eg. the score system?)

DannyRS

2012-12-19 23:19:30

From: riwu
Who's the second judge? Preferably an SSRL+?
Also what are the judging criteria? (eg. the score system?)


Cant speak for the official end system yet, but i would imagine something along the lines of taking the following into account when picking a winner,

Good Coding Standards and Comment (//) Documentation Help,
Credit All Code not written by you (should be a majority of your own work)
Anti-Ban / Human Likeness
Efficiency and How Well it Completes the Task
How stable the script is, and How good any failsafes are

Obviously some are more important than others, i dont like the idea of an actual point system, but picking a winner taking those things into account?

Let me know if i missed anything important in that list? I'd like to get a decent baseline system for future contest stuff,

I'm aware I didnt list anything about advanced functions, personally i dont believe that should give you any points over people using basic stuff, should be based on the task itself not the method, if you can use advanced stuff to do the task better than without, all the better

Ashaman88

2012-12-19 23:26:34

Well there are standard eval forms for the official comps - just depends on how big of a deal you want to make it.

DannyRS

2012-12-19 23:36:24

From: Ashaman88
Well there are standard eval forms for the official comps - just depends on how big of a deal you want to make it.


Added a few things to my list from previous officials,

Does it seem a fair way to judge it?

print

2012-12-19 23:50:57

^^dannyrs you coverd mostly all of it the scoring system (since im not much of a coder myself i wont know how to rate that area )

Rezozo

2012-12-20 15:31:11

From: Ashaman88
Well there are standard eval forms for the official comps - just depends on how big of a deal you want to make it.


This^^^


  • Good Coding Standards and Comment (//) Documentation Help
  • Credit All Code not written by you (should be a majority of your own work)
  • Anti-Ban / Human Likeness
  • Efficiency and How Well it Completes the Task
  • How stable the script is, and How good any failsafes are
  • All requirements are met.
  • Simplest route vs Hardest route. (Whichever is more human in this case)
  • The layout of the script (tab'in ;), line breaks, how short etc.)
  • Speed of the script.
  • Also, most important to me, the adaptability and functions/additions of the script! What makes your script different and special.

Just added a bit to your list. ^^^

print

2012-12-22 19:40:31

i need more people to participate on this competition to make it more interesting=)

DannyRS

2012-12-22 21:53:16

From: print
i need more people to participate on this competition to make it more interesting=)


Indeed :spongebob:

print

2012-12-25 15:43:05

lol dannyrs won since he was the only one who participated in competition !!gratz dannyrs
you win teh 12m

DannyRS

2012-12-25 16:03:42

From: print
lol dannyrs won since he was the only one who participated in competition !!gratz dannyrs
you win teh 12m


well i could use some gp for testing scripts, but if you need it just keep it ;)

Prometheus

2012-12-25 16:20:19

Gratz Danny! I bet it was good :)

print

2012-12-25 16:43:21

danny i dont need the money i will be quitting =) afte rmy lol game ill pm you okay

DannyRS

2012-12-25 16:45:21

From: [PRO]metheus
Gratz Danny! I bet it was good :)


leaving this for archive then, decide for yourself ;)


From: print
danny i dont need the money i will be quitting =) afte rmy lol game ill pm you okay


cant get on rs right now :(



program DraynorBonFires;
{$Define SMART}
{$I SRL/SRL.Simba}
{$I SRL/SRL/Misc/Debug.Simba}
{$I SRL/SRL/Misc/SmartGraphics.Simba}

//Setup
const
Debug = True; //enable if having problems

ScriptVersion = 'V1.0'; //proggy, no need to touch

//LOGIN NOT SUPPORTED ATM
Procedure DeclarePlayers;
begin
HowManyPlayers := 1;
NumberOfPlayers(HowManyPlayers);
CurrentPlayer := 0;
Players[0].Name :='';
Players[0].Pass :='';
Players[0].Pin := '';
Players[0].Nick :='';
Players[0].Active:=True;
end;


var
LogDTM,AshDTM: Integer;


{*******************************************************************************

All of these mouse movements and typing are credited to benland100 and flight.
thanks to Ashaman88 for his awesome scripts, i used his as a template

*******************************************************************************}



//By Bandland100, modified by Ashaman88 to shift mouse speeds after every step
//
procedure SuperWindMouse(xs, ys, xe, ye, gravity, wind, minWait, maxWait, maxStep, targetArea: extended);
var
veloX,veloY,windX,windY,veloMag,dist,randomDist,lastDist,step: extended;
lastX,lastY,MSP,W: integer;
sqrt2,sqrt3,sqrt5: extended;
begin
MSP := MouseSpeed;
sqrt2:= sqrt(2);
sqrt3:= sqrt(3);
sqrt5:= sqrt(5);
while hypot(xs - xe, ys - ye) > 1 do
begin
dist:= hypot(xs - xe, ys - ye);
wind:= minE(wind, dist);
if dist >= targetArea then
begin
windX:= windX / sqrt3 + (random(round(wind) * 2 + 1) - wind) / sqrt5;
windY:= windY / sqrt3 + (random(round(wind) * 2 + 1) - wind) / sqrt5;
end else
begin
windX:= windX / sqrt2;
windY:= windY / sqrt2;
if (maxStep < 3) then
begin
maxStep:= random(3) + 3.0;
end else
begin
maxStep:= maxStep / sqrt5;
end;
end;
veloX:= veloX + windX;
veloY:= veloY + windY;
veloX:= veloX + gravity * (xe - xs) / dist;
veloY:= veloY + gravity * (ye - ys) / dist;
if hypot(veloX, veloY) > maxStep then
begin
randomDist:= maxStep / 2.0 + random(round(maxStep) div 2);
veloMag:= sqrt(veloX * veloX + veloY * veloY);
veloX:= (veloX / veloMag) * randomDist;
veloY:= (veloY / veloMag) * randomDist;
end;
lastX:= Round(xs);
lastY:= Round(ys);
xs:= xs + veloX;
ys:= ys + veloY;

case Random(50) of
1..25: W := (MSP + (Random((MSP/4))));
26..50: W := (MSP - (RandomRange((MSP/2), MSP-1)));
end;
if (W < 1) then
W := 1;

if (lastX <> Round(xs)) or (lastY <> Round(ys)) then
MoveMouse(Round(xs), Round(ys));

step:= hypot(xs - lastX, ys - lastY);
//W := round((maxWait - minWait) * (step / maxStep) + minWait);
wait(W);
lastdist:= dist;
end;

if (Round(xe) <> Round(xs)) or (Round(ye) <> Round(ys)) then
MoveMouse(Round(xe), Round(ye));

MouseSpeed := MSP;
end;

Procedure HumanMMouse(eX, eY, ranX, ranY: Integer);
var
randSpeed: extended;
X,Y,X2,Y2,j,Dist,MP: integer;
begin
j := MouseSpeed;
GetMousePos(X, Y);
Dist := Distance(X, Y, eX, eY);
MP := Round(Dist/150);
if MP < 0 then
MP := 1;

randSpeed := (random(MouseSpeed) / 2.0 + MouseSpeed) / 10.0;
X2 := RandomRange(eX-(j*MP), eX+(j*MP));
Y2 := RandomRange(eY-(j*MP), eY+(j*MP));
SuperWindMouse(X, Y, X2, Y2, 11, 8, 10.0 / randSpeed, 12.0 / randSpeed, 10.0 * randSpeed, 10.0 * randSpeed);
GetMousePos(X, Y);
MMouse(eX, eY, ranX, ranY);
MouseSpeed := j;
end;

Procedure HumanMouseBox(X1, Y1, X2, Y2: Integer);
Var
FX, FY: Integer;
Begin
GaussBox(FX,FY,X1,Y1,X2,Y2);
HumanMMouse(FX,FY,0,0)
End;

{*******************************************************************************
procedure FastClick(button: Integer);
By: Flight
Description: Quickly click the mouse.
*******************************************************************************}
procedure FastClick(button: variant);
var
x, y: integer;
ibutton: Integer;
begin
if VariantIsBoolean(button) then
begin
if (button) then
iButton := mouse_left
else
iButton := mouse_right;
end else
iButton := button;

if (iButton = mouse_move) then Exit;
GetMousePos(x, y);
HoldMouse(x, y, iButton);

Wait(RandomRange(60, 150));

GetMousePos(x, y);
ReleaseMouse(x, y, iButton);
end;

Procedure OffMM(RedTu, LeWait, rWait: Integer);
Var
W,H,RX,RY,T,RT: Integer;
Begin
GetClientDimensions(W,H);
H:=H+50;
RX := RandomRange(0, W);
RY := RandomRange(0, H);
Case (RedTu) Of
0..1: HumanMMouse(W/2, RandomRange(-110,-60), RX, 0);
2: HumanMMouse(RandomRange(-50,-10), H/2, 0, RY);
3: HumanMMouse(W/2, h+RandomRange(10,50), RX, 0);
4: HumanMMouse(W+RandomRange(10,50), H/2, 0, RY);
End;
RT:=(Random(rWait));
MarkTime(T);
Repeat
Wait(Random(100));
Until TimeFromMark(T)>(LeWait+RT);
End;

Procedure TypeFast(Text: String);
Var
I: Integer;
Begin
For I:=1 to Length(Text) Do
SendKeys(Text[I],RandomRange(90,140),RandomRange(90,140));
Wait(RandomRange(10,50));
End;
//
{*******************************************************************************

DannyRS's Part

*******************************************************************************}

Procedure LeftClickSpot(X1, Y1, X2, Y2: Integer);
var Y1NOBanner, Y2NOBanner: Integer;
Begin
Y1NOBanner:=Y1 - 50; Y2NOBanner:=Y2 - 50;
HumanMMouse(RandomRange(X1,X2),RandomRange(Y1NOBanner,Y2NOBanner),0,0);
Wait(9+Random(37));
FastClick(true);
Wait(124+Random(193));
End;

Procedure DragMouseSpot(X1, Y1, X2, Y2: Integer);
var Y1NOBanner, Y2NOBanner: Integer;
Begin
Y1NOBanner:=Y1 - 50; Y2NOBanner:=Y2 - 50;
HumanMMouse(RandomRange(X1,X2),RandomRange(Y1NOBanner,Y2NOBanner),0,0);
Wait(9+Random(37));
End;

Procedure ClickCurrent(ToDo: Boolean);
Begin
Wait(9+Random(37));

if ToDo = True then
begin FastClick(True); end
else if ToDo = False then
begin FastClick(False); end;

Wait(124+Random(193));
End;

Procedure RightClickSpot(X1, Y1, X2, Y2: Integer);
var Y1NOBanner, Y2NOBanner: Integer;
Begin
Y1NOBanner:=Y1 - 50; Y2NOBanner:=Y2 - 50;
HumanMMouse(RandomRange(X1,X2),RandomRange(Y1NOBanner,Y2NOBanner),0,0);
Wait(9+Random(37));
FastClick(false);
Wait(124+Random(193));
End;

Procedure MinimizeEoCBar(ToDo: Boolean);
Var x, y: Integer;
Begin
If ToDo = True Then
Begin
If (FindColorTolerance(x, y, 13224393, 517, 263, 517, 263, 5)) Then
LeftClickSpot(505,318,510,324);
End Else
If ToDo = False Then
Begin
If (Not FindColorTolerance(x, y, 13224393, 517, 263, 517, 263, 5)) Then
LeftClickSpot(505,382,510,385);
End;
End;

Procedure CloseBankUp;
Var
x,y: Integer;
Begin
if(FindColorSpiralTolerance(x, y, 4106994, 196, 33, 200, 38, 15))then
begin
//Close Bank
if(Debug)then begin Writeln('Closing Bank'); end;
HumanMMouse(RandomRange(482,494),RandomRange(28,41),0,0);
Wait(9+Random(37));
FastClick(true);
Wait(327+Random(283));
end;
End;

Procedure WaitBurning;
Var
x,y,LogCount,Timer: Integer;

Begin
LogCount := InvCount;
MarkTime(Timer);

Repeat Begin
if(Debug)then begin Writeln('Waiting Till Idle : ' + IntToStr(TimeFromMark(Timer)) + ' / 8000'); end;
Wait(57+Random(57));

If InvCount < LogCount Then
Begin
if(Debug)then begin Writeln('We Burned a Log'); end;
MarkTime(Timer);
LogCount := InvCount;
End;

End; Until (TimeFromMark(Timer) > 8000) Or (InvCount < 1)

End;

procedure MainLoop;
var x, y: Integer;
var Done: Boolean;
var Timer: Integer;

begin
Writeln('Welcome to DraynorBonFires ' + ScriptVersion + ' by DannyRS');
Done := False;

Repeat Begin
Done := False;

If (Not LoggedIn) Or LobbyScreen Then
Exit;

IF (PinScreen) Then Begin InPin(Players[0].Pin); Continue; End;

CloseBankUp;

If(Not FindColorSpiralTolerance(x, y, 5293044, 307, 145, 330, 165, 20))then
Begin
LeftClickSpot(310, 200, 320, 210);
Wait(4224+Random(193));
if FindDTM(LogDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
begin
if(Debug)then begin Writeln('LogDTM SEEN lighting'); end;
HumanMMouse(RandomRange(x-6,x+6),RandomRange(y-4,y+4),0,0);
ClickCurrent(False);
ChooseOptionMulti(['Light','ight']);
Wait(3445+Random(357));
end
End Else
Begin
LeftClickSpot(314, 180, 320, 185);
Wait(4224+Random(193));
End;

if(Debug)then begin Writeln('Pressing 1'); end;
TypeFast('1');
Wait(1345+Random(357));

If(FindColorSpiralTolerance(x, y, 16449021, 360, 236, 364, 242, 10))then
Begin
LeftClickSpot(340, 211, 379, 252);
End;

Wait(445+Random(357));

if(Debug)then begin Writeln('waiting till done'); end;
WaitBurning;

DragMouseSpot(182, 240, 187, 245);
If (WaitUptextMulti(['Bank', 'ank'], RandomRange(70,250))) Then
Begin
ClickCurrent(True);
End Else
Begin
DragMouseSpot(182, 212, 187, 217);
If (WaitUptextMulti(['Bank', 'ank'], RandomRange(70,250))) Then
Begin
ClickCurrent(True);
End Else
Begin
DragMouseSpot(255, 190, 264, 195);
If (WaitUptextMulti(['Bank', 'ank'], RandomRange(70,250))) Then
Begin
ClickCurrent(True);
End Else
Begin
TerminateScript;
End;
End;
End;

Wait(3645+Random(357));

If FindDTM(AshDTM, x, y, MIX1, MIY1, MIX2, MIY2) then
Begin
if(Debug)then begin Writeln('AshDTM SEEN banking'); end;
HumanMMouse(RandomRange(x-6,x+6),RandomRange(y-4,y+4),0,0);
ClickCurrent(True);
Wait(445+Random(157));
End;

RightClickSpot(438, 146, 458, 160);
if (ChooseOptionMulti(['Withdraw-All','ithdraw-All'])) then begin end;
Wait(185+Random(257));

CloseBankUp;

//Exit; //DeBugging
if(Debug)then begin Writeln('End of Main Loop Reached'); end;
end;
Until (Done);
end;

Procedure SetMyDTM;
begin
if(Debug)then begin
Writeln('loading DTMs'); end;

LogDTM := DTMFromString('mAAEAAHiclc0xDkBAAETR2a0UCifRuQ4S0ZAtFDRuIiHRKBGu5gC+aJRrktdMMplQkrNSgRYlGvRIkaNGhwoZFiNNGHBiM2/3mDFixYEdSRzxYr1dbAL5Mz99cwMSng7r');
AshDTM := DTMFromString('mbQAAAHicY2VgYEhnYmBIYoLQ2UCcBcSpUJwBxGlAHAfEc6ZOZZg1eTLD6iWLGSb39jDMmz6NgQOoHx0zYsFgAABfAA0x');

end;

Procedure FreeMyDTM;
begin
FreeDTM(LogDTM);
FreeDTM(AshDTM);

end;

Procedure Setup;

Begin
{$IFDEF SIMBAMAJOR980}
SMART_SERVER := 10;
SMART_MEMBERS := TRUE;
SMART_SIGNED := TRUE;
SMART_SUPERDETAIL := FALSE;
{$ELSE}
SRL_SIXHOURFIX := TRUE;
SMART_FIXSPEED := TRUE;
{$ENDIF}

SetupSRL;

ClearDebug;

DeclarePlayers;

If (Not LoggedIn) Or LobbyScreen Then
TerminateScript;

ClickNorth(SRL_ANGLE_HIGH);
MakeCompass('W');
MinimizeEoCBar(False);

SetMyDTM;
AddOnTerminate('FreeMyDTM');

SmartSetRefresh(90);
End;

begin
Setup;
ActivateClient;
ClearDebug;
MainLoop;
end.