SRL Archive - OSR Script Requests

Nightmare zone?


evolutionist

2014-01-20 05:25:55

Name - NMZ Trainer?
Script would use melee prayer and just drink pray pots.
Trains combat skills
P2P
Difficulty… (Hard)?

Hoodz

2014-01-20 05:45:48

i got one but all it does is drinking ovl when needed and drinking pray pots when needed. it doesnt enter new games and doesnt turn prayer on!

evolutionist

2014-01-20 06:19:29

So its pretty much good for babysitting it? Can u send me it :D

Hoodz

2014-01-20 06:26:37

From: evolutionist
So its pretty much good for babysitting it? Can u send me it :D


yes ill check it asap but there are now some include issues so i have to fix that first

evolutionist

2014-01-20 06:35:59

From: hoodz
yes ill check it asap but there are now some include issues so i have to fix that first


Does it have anti-ban? This will be good for watching movies :P

Hoodz

2014-01-20 06:41:09

From: evolutionist
Does it have anti-ban? This will be good for watching movies :P


yes, and if you have a high prayer level you can easily afk for 1-2 hours :)

evolutionist

2014-01-20 06:44:38

From: hoodz
yes, and if you have a high prayer level you can easily afk for 1-2 hours :)


I got to go to school ill message u when i get home.

Hoodz

2014-01-20 07:10:18

From: evolutionist
I got to go to school ill message u when i get home.


do that.

DangerDan

2014-02-10 22:43:46

Hey Im very interested in finding a script for NMZ as well. Im new to macroing but have an engineers programming background so if you could list any compiler or such needed I would really appreciate it.

DangerDan

2014-02-11 05:27:34

Never mind, Ive gotten simba working and found everything i need. Thanks a ton hoodz, youre awesome. Nice to join the community :D

Hoodz

2014-02-11 06:39:37

One sec.. :p

you need: srl-osr include, al_functions, reflection include: http://villavu.com/forum/showthread.php?t=107479
before you start the script you need to enable melee protection!
edit:


program NMZAfker;
{$DEFINE SMART8}
{$I SRL-OSR/SRL.simba}
{$I SRL-OSR/SRL/misc/SmartGraphics.simba}
{$I SRL-OSR/SRL/misc/Al_functions.simba}
{$i SRL-OSR/SRL/Reflection/Reflection.simba}

var
DrinkPray, DrinkOvl1, DrinkOvl2, x, y, IP, IO, Drink1, Drink2: integer;
StartXPAttack, StartXPStrength, StartXPDefence, StartXPHitpoints: Integer;
Pray1, Pray2, Pray3, Pray4: integer;
Ovl1, Ovl2, Ovl3, Ovl4: integer;
Pray, Ovl: TIntegerarray;

const
ANTIBANTRAININGMODE = Skill_Defence;
LOGOUTSET = false; {true if you want to logout if you are out of pots (takes ~40 seconds to be sure you are not in combat)}

procedure OnEnd;
begin
FreeDTM(Pray1);
FreeDTM(Pray2);
FreeDTM(Pray3);
FreeDTM(Pray4);
FreeDTM(Ovl1);
FreeDTM(Ovl2);
FreeDTM(Ovl3);
FreeDTM(Ovl4);
end;

procedure ArraySetup;
begin

Pray1 := DTMFromString('mWAAAAHicY2FgYLjLxMDwFIivAfF9INZgZGBQg2IDEN7eBVTFCMdsDKiAEQ2DAACFtgWq'); {1 dose}
Pray2 := DTMFromString('mWAAAAHicY2FgYGBjYmDgAmJ+IGYAYg1GBgYTINaCYvnKGKAEIxxzMaACRjQMAgBrxQHl');
Pray3 := DTMFromString('mWAAAAHicY2FgYGhlYmBoB+JGIO4DYg1GBgYzRgitB8QWl+YDVTHCMTsDKmBEwyAAACq5BJc=');
Pray4 := DTMFromString('mWAAAAHicY2FgYIhmYmCIAuIUIA4FYjVGBgYzINYFYi0gTr26BqiKEY65GFABIxoGAQACtAQp'); {4 dose}

Ovl1 := DTMFromString('mggAAAHicY2NgYNjHxMCwH4iPAfEBIN4FxNuA+A1Q7iUQPwPiz0D8lAEiJiIoyFBWVg5kMaJgfiAJwuiAEQeGAACEaQvG');
Ovl2 := DTMFromString('mggAAAHicY2NgYHBkYmBwAWJ7IPYEYhsgtgJibkYIFgdiXiDmBGJRIBYRFGQIj4gB6mREwfxAEoTRASMODAEAPiQDXQ==');
Ovl3 := DTMFromString('mlwAAAHicY2dgYMhmYmDIA+IMIC5jgvBTgTgFiDkZGRjYgZgDiIWAWByIuYFYFIgF+fgYfP2CGXJz84GmMKJgfiAJw+iAEQ+GAgCWawYF');
Ovl4 := DTMFromString('mbQAAAHicY2VgYJjKxMAwDYj7gHg+EM8GYnZGBgZxIOYBYgEgFgNiQT4+oGpGFMzPgAkYsWAwAABMWwOd');

Pray := [Pray1, Pray2, Pray3, Pray4];
Ovl := [Ovl1, Ovl2, Ovl3, Ovl4];

AddOnTerminate('OnEnd');
end;

procedure RandomPot;
begin
Drink1 := R_GetMaxSkillLevel(Skill_Prayer) / 3;
Drink2 := R_GetMaxSkillLevel(Skill_Prayer) / 2;
DrinkPray := Randomrange(Drink1, Drink2);
Writeln('Generated drink pot at: ' + IntToStr(DrinkPray));
end;

procedure AntiBan;
begin
case random(900) of
0..1:
begin
Al_HoverSkill(ANTIBANTRAININGMODE, False);
Sleep(800 + Random(500));
end;
2..3:
begin
Al_HoverSkill(Skill_Hitpoints, False);
Sleep(800 + Random(500));
end;
4..10:
begin
makecompass(randomrange(0, 360));
sleep(800 + random(500));
end;
11..26:
begin
AL_HumanRandomMouse;
sleep(800 + random(500));
end;
18:
begin
adjustmousespeed(2, 10, 20);
sleep(800 + random(500));
end;
19:
begin
randomRClick;
sleep(800 + random(500))
end;
20:
begin
hovermovingobject;
sleep(800 + random(500))
end;
21:
begin
MMouseOffClient('top');
sleep(800 + random(500))
end;
22:
begin
MMouseOffClient('left');
sleep(800 + random(500))
end;
23:
begin
MMouseOffClient('right');
sleep(800 + random(500))
end;
24:
begin
MMouseOffClient('bottom');
sleep(800 + random(500))
end;
25..26:
begin
if IsRunOn(false) then
begin
SetRun(true);
end
end;
29..31:
begin
randomtab(false);
sleep(1000 + random(500));
al_GameTab(tab_inv);
end;
end;
Exit;
end;

procedure OvlProcedure;
begin
DrinkOvl1 := R_GetMaxSkillLevel(Skill_Attack);
DrinkOvl2 := R_GetSkillLevel(Skill_Attack);
if (DrinkOvl2 <= DrinkOvl1) then
begin
for IO := 0 to High(Ovl) do
begin
if (FindDTM(Ovl[IO], x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
Al_MissMouse(point(x, y), randomrange(-5, 5), randomrange(-5, 5));
Sleep(150 + random(50));
Al_FastClick(Mouse_Left);
Exit;
end
else
begin
Writeln('out of Ovl pots');
end;
end;
end
else
AntiBan;
end;

procedure PrayerProcedure;
begin
if (R_GetSkillLevel(Skill_Prayer) < DrinkPray) then
begin
for IP := 0 to High(Pray) do
begin
if (FindDTM(Pray[IP], x, y, MIX1, MIY1, MIX2, MIY2)) then
begin
Al_MissMouse(point(x, y), randomrange(-5, 5), randomrange(-5, 5));
Sleep(150 + random(50));
Al_FastClick(Mouse_Left);
RandomPot;
Exit;
end
else
begin
Writeln('out of pray pots');
if (LOGOUTSET) then
begin
repeat
if (R_NearTile(Point(2608, 3115), 15)) then
repeat
LogOut;
Sleep(2000 + random(100));
if (Not LoggedIn) then
TerminateScript;
until (not LoggedIn);
until (not LoggedIn);
LogOut;
TerminateScript;
end;
end;
end;
end
else
OvlProcedure;
end;

procedure SetXP;
begin
StartXPAttack := Round(R_GetSkillExp(Skill_Attack));
StartXPStrength := Round(R_GetSkillExp(Skill_Strength));
StartXPDefence := Round(R_GetSkillExp(Skill_Defence));
StartXPHitpoints := Round(R_GetSkillExp(Skill_Hitpoints));
end;

procedure TheStatus(Status, StatusDebug: string);
var
GainedXPAttack, GainedXPHitpoints, GainedXPStrength, GainedXPDefence: integer;
GainedXPHitpointsHour, GainedXPStrengthHour, GainedXPAttackHour, GainedXPDefenceHour: integer;
begin
GainedXPAttack := Round(R_GetSkillExp(Skill_Attack) - StartXPAttack);
GainedXPAttackHour := Round((GainedXPAttack) / (gettimerunning / 3600000.0));
GainedXPHitpoints := Round(R_GetSkillExp(Skill_Hitpoints) - StartXPHitpoints);
GainedXPHitpointsHour := Round((GainedXPHitpoints) / (gettimerunning / 3600000.0));
GainedXPStrength := Round(R_GetSkillExp(Skill_Strength) - StartXPStrength);
GainedXPStrengthHour := Round((GainedXPStrength) / (gettimerunning / 3600000.0));
GainedXPDefence := Round(R_GetSkillExp(Skill_Defence) - StartXPDefence);
GainedXPDefenceHour := Round((GainedXPDefence) / (gettimerunning / 3600000.0));
ClearDebug;
Writeln('XP information');
Writeln('Hp xp: ' + IntToStr(GainedXPHitpoints));
Writeln('Hp xp/hour: ' + IntToStr(GainedXPHitpointsHour));
Writeln('Attack xp: ' + IntToStr(GainedXPAttack));
Writeln('Attack xp/hour: ' + IntToStr(GainedXPAttackHour));
Writeln('Strength xp: ' + IntToStr(GainedXPStrength));
Writeln('Strength xp/hour: ' + IntToStr(GainedXPStrengthHour));
Writeln('Defence xp: ' + IntToStr(GainedXPDefence));
Writeln('Defence xp/hour: ' + IntToStr(GainedXpDefenceHour));
end;

begin
Smart_World := 1;
SetupSRL();
SetupReflection;
ArraySetup;
RandomPot;
SetXp;
repeat
PrayerProcedure;
Sleep(3000 + Random(1000));
TheStatus('', '');
until (false)
end.

DangerDan

2014-02-11 19:08:29

thanks, looks great!