SRL Archive - First Scripts

DudesMagicAlcher


[D]ude

2012-04-11 12:57:29

]Hey everyone.


MOST UP TO DATE VERSION IS KEPT HERE!!


Made an alcher to share. Hope everyone enjoys it. The low alch does not work currently, but I will be adding that soon. Its my first script I am releasing so give me your feedback.

Here's a proggy that I made

////////DUDES_MAGIC_ALCHER\\\\\\\\
TIME RAN: 16 Minutes and 50 Seconds
XP GAIN: 20215
XP/H: 72040.3411655698
Casting High Levelled Alchemy

—Set Up—

Place Nature Runes in any slot but 2nd or 3rd
Put the Item you want to alch in third slot
Declare players and press play

[D]ude

2012-04-11 13:04:49

Reserved for proggies and does anyone know how you get a download link for your script?

blother

2012-04-11 13:08:07

From: dude1994
Reserved for proggies and does anyone know how you get a download link for your script?


You have to add an attachment. Edit your first post and switch it to advanced settings. This will change the ui to the way you have it when you do a regular post. Click on the paperclip then upload the script.

[D]ude

2012-04-11 13:18:29

Thanks man! It works lolz

blother

2012-04-11 13:20:22

From: dude1994
Thanks man! It works lolz


Haha no problem. Figured out myself the other day :p

J J

2012-04-11 13:28:01

Looks good, but I have some suggestions :P


procedure antiban();
begin
FindNormalRandoms;
case random(200) of
1: MakeCompass(RandomRange(100,180));
2: PickUpMouse;
3: RandomAngle(True);
4: HoverSkill(skill_Magic,false);
end;
end;

Work on your standards with this one. Remember that a case starts at 0(zero) and not at 1

procedure Antiban;
begin
FindNormalRandoms;
case Random(200) of
0: MakeCompass(RandomRange(100, 180));
1: PickUpMouse;
2: RandomAngle(True);
3: HoverSkill(skill_Magic, False);
end;
end;

Also, for your alching pattern
MMouse(647, 230, 7, 7);
Wait(1150 + Random(35));

This means the random amount of wait time is extremely low, 35/1150*100%=3% is random. Which means that 97% is the exact same time every time. It also means that you move the mouse every time you click which is something that I personally don't do when I'm alching. I've actually never really alched legimately in my life, but when I did, I did a couple alchs without moving and mainly used mousekeys. I would play around with this and make a case with different waiting times like this:

[ Part of one of the test scripts I've made: ]
procedure Alching;
{===============================================================================
This part handles the alching
===============================================================================}
var
X, Y, CurrentAlchs: Integer;

begin
Talking;
CurrentAlchs:=0
if not(GameTab(tab_Magic)) then
begin
WriteLn('Current tab is not the magic tab, switching!');
FTab(28);
end;
Mousebox(608, 289, 631, 312, 2); // The exact box around High-Alchemy
GetMousePos(X, Y);
Wait(25 + Random(50));
repeat
begin
Talking;
Mouse(X, Y, 0, 0, 1);
case Random(10) of
0: Wait(700 + Random(200));
1: Wait(600 + Random(300));
2: Wait(500 + Random(400));
3: Wait(400 + Random(500));
4: Wait(300 + Random(600));
5: Wait(700 + Random(100));
6: Wait(600 + Random(200));
7: Wait(500 + Random(300));
8: Wait(400 + Random(400));
9: Wait(1000 + Random(500));
end;
Mouse(X, Y, 0, 0, 1);
Inc(CurrentAlchs);
Inc(Alch);
case Random(10) of
0: Wait(700 + Random(200));
1: Wait(600 + Random(300));
2: Wait(500 + Random(400));
3: Wait(400 + Random(500));
4: Wait(300 + Random(600));
5: Wait(700 + Random(100));
6: Wait(600 + Random(200));
7: Wait(500 + Random(300));
8: Wait(400 + Random(400));
9: Wait(1000 + Random(500));
end;
end;
until(CurrentAlchs>=RandomRange(10, 50)) or not(LoggedIn); // Every 10-50 alchs it moves the mouse a bit
end;

Other then that it looks well made for a first script :)

[D]ude

2012-04-11 13:46:56

Alright. I'll look into it and change it in a while. Thanks. Also I'm going to add a low alch option sometime when I get around to it too, but I'm really busy with school currently and can't take twenty minutes out of my day right now, haha.

*edit* changed and updated or w/e

[D]ude

2012-04-13 16:23:58

No other comments?

Sockz

2012-04-13 19:33:41

Looks pretty good to me. The main thing I always see is that you needa put your antiban procedure in your mainloop, it's no use just declaring it. Maybe call upon it whilst your waiting for it to alch, I'd put it somewhere in that case statement.

Other than that good work. Maybe a failsafe to check if your alching would be a good feature… like this

procedure ProgressReport(var startXP: integer);
var gain: integer;
begin
if gain = GetXPBarTotal- startXP then
begin
Logout;
Writeln('No experience was being gained')
TerminateScript;
end;
gain := GetXPBarTotal- startXP;
{$IFDEF DEBUG}
{$ENDIF}

writeln('////////DUDES_MAGIC_ALCHER\\\\\\\\');
writeln('TIME RAN: ' + TimeRunning);
writeln('XP GAIN: ' + IntToStr(gain));
writeln('XP/H: ' + floatToStr(3600000 * 1.0 / GetTimeRunning * gain));
end;

Pee.ess it wasn't 97% it would be the same time it was (1/35 * 100)% which is just below 3% roughly the exact same time. But yeah it was still not very much randomized :P

[D]ude

2012-04-14 16:05:45

Okay. I'll try adding a failsafe. I took the antiban off because it would move the mouse when it checked for randoms, and then it would mess up. I'm working on adding dtms for the script, so maybe it won't do that then.

Yeah I looked into the random thing and changed it a while ago. I don't think you have the new one. Now its like randomize God haha. Jking, maybe its not that great, but still a ton better. I've gained around 1m magic xp with my script so far.

[D]ude

2012-04-16 14:09:46

For the most up to date version with the most options please go to—Dude'sHigh/LowAlcher