elevator
-
Posts
3 -
Credits
0 -
Joined
-
Last visited
-
Feedback
0%
Content Type
Articles
Profiles
Forums
Store
Posts posted by elevator
-
-
After 2-3 houres the script crashes with this message: "script error stack overflow". Somebody got it and found any solution ?
-
uses SysUtils;
const
buff_ID:integer = 1204;var
loggedIn:boolean;
function ShellExecuteW(hwnd: integer; lpOperation, lpFile, lpParameters, lpDirectory: PChar; nShowCmd:integer): integer; stdcall;
external 'Shell32.dll';
function keybd_event(bVk, bScan: byte; dwFlags, dwExtraInfo: integer): integer; stdcall;
external 'user32.dll';function ShowWindow(hwnd:cardinal; action:integer):boolean; stdcall;
external 'user32.dll';
procedure disconnectMonitor;
const
login = 'lgn';
password = 'psw';
gamePath = 'D:\LINEAGE2INTERLUDE\L2INT5\systemORG\l2.exe';
begin
while engine.Delay(3000) do begin
if (Engine.Status = lsOffline) or (Engine.Status = lsOff) then begin
loggedIn:=true;
print('dc');
Engine.FaceControl(0, false);
Delay(1000);
Engine.GameClose;
Delay(1000);
ShellExecuteW(0, 'open', PChar(gamePath), nil, nil, 0);
Delay(15000);
enterText(login);
Engine.UseKey('Tab');
Delay(300);
enterText(password);
Delay(300);
Engine.UseKey('Enter');
Delay(2000);
Engine.UseKey('Enter');
Delay(2000);
Engine.UseKey('Enter');
Delay(2000);
Engine.UseKey('Enter');
Delay(10000);
ShowWindow(engine.gamewindow, 6);
end;
end;
end;
procedure enterText(const text: string);
var
i: cardinal;
upperCase: boolean;
begin
for i:= 1 to length(text) do begin
if isDigit(text) then
Engine.UseKey(text)
else begin
upperCase:= text = UpCase(text);
if upperCase then begin
keybd_event(20, 0, 1, 0);
keybd_event(20, 0, 2, 0);
Engine.UseKey(text);
delay(10);
keybd_event(20, 0, 1, 0);
keybd_event(20, 0, 2, 0);
end else
Engine.UseKey(text);
end;
Delay(50);
end;
end;
function isDigit(ch: char): boolean;
const
digits = '013456789';
var
i: cardinal;
begin
result:= false;
for i:= 0 to length(digits) do
if digits = ch then begin
result:= true;
exit;
end;
end;function buffCheck: Boolean;
var buff: TL2Buff;
begin
Result:=false;
if not User.Buffs.ByID(buff_ID, buff) then begin
Result:=true;
Print('Buffs are needed...');
if Engine.SetTarget(31600) then begin //NPC ID
delay(1111);
Engine.DlgOpen;
Delay(1000);
Engine.DlgSel(9);
Delay(1000);
Print('Buffed.');
Engine.BypassToServer('custom_dobuff ProfBuffs FARM');
delay(7000);
Engine.CancelTarget;
delay(1000);
Print('Buffed.');
end else begin
if (user.target.valid) and (user.target.attackable) then
while not user.target.dead do delay(50);
Engine.FaceControl(0, false);
print('No buffer - doing soe...');
if engine.entertext('/unstuck') and engine.delay(1111) then
while user.cast.endtime <> 0 do delay(2222);
delay(5555);
end;
end;
end;function deadCheck: Boolean;
begin
Result:=false;
if User.Dead then begin
Result:=true;
Print('Dead. Pressing to village.');
Delay(1000);
Engine.FaceControl(0,false);
Engine.GoHome;
Delay(5555);
end;
end;
procedure farmAndBack;
begin
while true do begin
delay(1111);
if not loggedIn then begin
if engine.status = lsonline then begin
//---------------------------------------------------
// Goddard
//---------------------------------------------------
if User.InRange(146272, -58176, -2976, 250, 150) then begin // Near storage
Print ('11');
Engine.MoveTo(147221, -58386, -2980);
Engine.MoveTo(147653, -58034, -2980);
Engine.MoveTo(147936, -55368, -2760); //near GK
end;
if User.InRange(145264, -57680, -2976, 250, 150) then begin // Near storage 2
Print ('12');
Engine.MoveTo(145588, -56926, -3007);
Engine.MoveTo(146673, -56095, -2807);
Engine.MoveTo(147543, -56054, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(145696, -57696, -2976, 250, 150) then begin // Near storage 3
Print ('13');
Engine.MoveTo(145510, -56930, -3007);
Engine.MoveTo(146499, -56202, -2807);
Engine.MoveTo(147481, -56031, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(144944, -55392, -2976, 250, 150) then begin // The very edge
Print ('14');
Engine.MoveTo(145153, -56813, -3007);
Engine.MoveTo(145569, -56855, -3007);
Engine.MoveTo(146467, -56271, -2807);
Engine.MoveTo(147566, -56034, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(144752, -56752, -2976, 250, 150) then begin // The very edge
Print ('15');
Engine.MoveTo(145534, -56884, -3007);
Engine.MoveTo(146265, -56418, -2807);
Engine.MoveTo(147407, -56063, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
// East stairs
if User.InRange(149872, -57424, -2976, 250, 150) then begin
Print ('16');
Engine.MoveTo(149897, -56910, -2979);
Engine.MoveTo(149230, -56412, -2779);
Engine.MoveTo(147939, -55999, -2772);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(149120, -58064, -2976, 250, 150 )then begin // score
Print ('17');
Engine.MoveTo(147706, -58107, -3007);
Engine.MoveTo(147751, -56737, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(150400, -56752, -2976, 250, 150) then begin // The very edge
Print ('18');
Engine.MoveTo(149935, -56870, -3007);
Engine.MoveTo(149139, -56390, -2807);
Engine.MoveTo(147929, -56063, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(150704, -55744, -2976, 250, 150) then begin // The very edge 2
Print ('19');
Engine.MoveTo(149935, -56870, -3007);
Engine.MoveTo(149139, -56390, -2807);
Engine.MoveTo(147929, -56063, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(147700, -58400, -2976, 500, 150) then begin
Print ('20');
Engine.MoveTo(147727, -57141, -2807);
Print ('Climbing the stairs')
end;
if User.InRange(147727, -57141, -2807, 250, 150) then begin
Print ('21');
Engine.MoveTo(147757, -55301, -2759);
Print ('Moving to the church');
end;
if User.InRange(148288, -58304, -2976, 250, 150) then begin // Bottom center stairs slightly to the right
Print ('22');
Engine.MoveTo(147738, -58050, -3007);
Engine.MoveTo(147727, -57141, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(147232, -58480, -2976, 250, 150) then begin // Bottom center stairs to the left
Print ('23');
Engine.MoveTo(147677, -58063, -3007);
Engine.MoveTo(147727, -57141, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(149088, -56256, -2776, 250, 150) then begin
Print ('24');
Engine.MoveTo(147854, -56054, -2807);
Engine.MoveTo(147934, -55354, -2760);
end;
// Area
if User.InRange(146832, -55904, -2776, 250, 150) then begin // Area to the left of the stairs
Print ('25');
Engine.MoveTo(147529, -56046, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(146368, -56256, -2776, 250, 150) then begin // Area to the left of the stairs 2
Print ('26');
Engine.MoveTo(147529, -56046, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(147664, -56464, -2776, 250, 150) then begin // Center area
Print ('27');
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(147680, -56928, -2776, 250, 150) then begin // Center area 2
Print ('28');
Engine.MoveTo(147810, -56110, -2807);
Engine.MoveTo(147936, -55368, -2760);
end;
if User.InRange(148560, -55904, -2776, 250, 150) then begin // Area to the right of the stairs
Print ('29');
Engine.MoveTo(147908, -55980, -2773);
Engine.MoveTo(147936, -55368, -2760); //near GK
end;
// East
if User.InRange(150200, -57100, -2976, 600, 200) then begin
Print ('30');
Engine.MoveTo(149897, -56910, -2979); // go to the base of the stairs
Engine.MoveTo(149230, -56412, -2779); // climb the stairs
Engine.MoveTo(147637, -56074, -2776); // go to the center
Engine.MoveTo(147728, -55332, -2728); // go to the gatekeeper
end;
if User.InRange(144960, -56224, -2976, 250, 150) then begin
Print ('31');
Engine.MoveTo(145458, -56853, -2979);
Engine.MoveTo(146343, -56326, -2779);
Engine.MoveTo(147625, -55995, -2772);
Engine.MoveTo(147936, -55368, -2760); // Move near gk
end;
if User.InRange(144496, -55088, -2976, 250, 150) then begin
Print ('32');
Engine.MoveTo(145327, -56873, -2979);
Engine.MoveTo(146337, -56445, -2779);
Engine.MoveTo(147533, -55963, -2766);
Engine.MoveTo(147936, -55368, -2760); // Move near gk
end;
if User.InRange(145392, -56960, -2976, 250, 150) then begin
Print ('33');
Engine.MoveTo(146347, -56305, -2779);
Engine.MoveTo(147514, -56003, -2772);
Engine.MoveTo(147936, -55368, -2760); // Move near gk
end;if user.inrange(147963, -55257, -2736, 500) then begin
buffCheck;
end;
if user.inrange(147963, -55257, -2736, 150) and User.Buffs.ByID(buff_ID, buffCheck) then begin
//teleport
engine.settarget(31275);
delay(1111);
engine.dlgopen;
delay(1111);
engine.dlgsel(1);
delay(1111);
engine.dlgsel(4);
Delay(5000);
engine.settarget(31320);
delay(1111);
engine.dlgopen;
delay(1111);
engine.dlgsel(1);
delay(1111);
engine.dlgsel(13);
delay(1111);
end;
if User.InRange(123756, -75015, -2897, 250, 150) then begin // Near storage
Print ('WoA');
Engine.MoveTo(122794, -74830, -2883);
Engine.MoveTo(122042, -74800, -3073); //example
Engine.MoveTo(120707, -74865, -3268);
Engine.MoveTo(120821, -76343, -3268);
Engine.MoveTo(120018, -76400, -3268);
Engine.MoveTo(119010, -76415, -3396);
engine.useskill(337);
delay(1000);
Engine.Facecontrol(0,True);
while (not (deadCheck or buffCheck)) and (engine.status = lsonline) do delay(2000);
end;
end;
end else begin
if engine.status = lsonline then begin
if engine.entertext('/unstuck') and engine.delay(1111) then
while user.cast.endtime <> 0 do delay(2222);
delay(5555);
loggedIn:=false;
end;
end;
end;
end;begin
if engine.status <> lsonline then loggedIn:= true else loggedIn:= false;
Script.NewThread(@disconnectMonitor);
Script.NewThread(@farmAndBack);
deadCheck;
end.==========================================================================
After a few deads the char doesnt come back to the town. Can you tell me where is the problem ? Sometimes runs 4 houres sometimes 1h. The char is dead and dont comes back to the town.
L2 Adrenaline Scripts.
in Request Botting [English]
Posted · Edited by elevator
I have a problem with auto login script posted here in this topic. The script works fine on cracked version 1.71. I bought yesterday licence for newest adrenaline and the script doesnt work :/. Somebody had the same problem ? When the login and password should be entered nothing happens. Somebody can help me ?
===========================================================================================================================
uses SysUtils;
const
buff_ID:integer = 1204;
var
loggedIn:boolean;
function ShellExecuteW(hwnd: integer; lpOperation, lpFile, lpParameters, lpDirectory: PChar; nShowCmd: integer): integer; stdcall;
external 'Shell32.dll';
function keybd_event(bVk, bScan: byte; dwFlags, dwExtraInfo: integer): integer; stdcall;
external 'user32.dll';
function ShowWindow(hwnd:cardinal; action:integer):boolean; stdcall;
external 'user32.dll';
procedure disconnectMonitor;
const
login = 'LGN';
password = 'PSW';
gamePath = 'D:\LINEAGE2INTERLUDE\L2INT5\systemORG\l2.exe';
begin
while engine.Delay(3000) do begin
if (Engine.Status = lsOffline) or (Engine.Status = lsOff) then begin
loggedIn:=true;
print('dc');
Engine.GameClose;
Delay(1000);
ShellExecuteW(0, 'open', PChar(gamePath), nil, nil, 0);
Delay(15000);
enterText(login);
Engine.UseKey('Tab');
Delay(300);
enterText(password);
Delay(300);
Engine.UseKey('Enter');
Delay(2000);
Engine.UseKey('Enter');
Delay(2000);
Engine.UseKey('Enter');
Delay(2000);
Engine.UseKey('Enter');
Delay(10000);
ShowWindow(engine.gamewindow, 6);
end;
end;
end;
procedure enterText(const text: string);
var
i: cardinal;
upperCase: boolean;
begin
for i:= 1 to length(text) do begin
if isDigit(text) then
Engine.UseKey(text)
else begin
upperCase:= text = UpCase(text);
if upperCase then begin
keybd_event(20, 0, 1, 0);
keybd_event(20, 0, 2, 0);
Engine.UseKey(text);
delay(10);
keybd_event(20, 0, 1, 0);
keybd_event(20, 0, 2, 0);
end else
Engine.UseKey(text);
end;
Delay(50);
end;
end;
function isDigit(ch: char): boolean;
const
digits = '013456789';
var
i: cardinal;
begin
result:= false;
for i:= 0 to length(digits) do
if digits = ch then begin
result:= true;
exit;
end;
end;
begin
if engine.status <> lsonline then loggedIn:= true else loggedIn:= false;
Script.NewThread(@disconnectMonitor);
end.