spyros23 Posted July 15, 2015 Share Posted July 15, 2015 var item: TL2Item; function buffCheck: Boolean; var buff: TL2Buff; begin if not User.Buffs.ByID(1388, buff) then begin Result:=true; Print('Buffs are needed. Buffing...'); Engine.MoveTo(81909, 148285, -3464); Delay(500); Engine.SetTarget('Horadrim'); // NPC ID Delay(500); Engine.DlgOpen; Delay(500); Engine.DlgSel('farm'); Delay(500); Print('Buffed.'); Engine.MoveTo(83378, 147917, -3400); end; Result:=false; end; function deadCheck: Boolean; begin Result := false; if User.Dead then begin Print('Dead. Pressing to village.'); Delay(1000); Engine.FaceControl(0,false); Engine.GoHome; Delay(10000); end; end; procedure all; begin while true do begin delay(150); if User.Dead then begin deadCheck; end; if User.inrange(131369,114436,-3713, 250, 1000) then begin Engine.MoveTo(134874,114441,-3720); Engine.FaceControl(0,true); Delay(20000); Engine.MoveTo(135968,114977,-3720); Delay(20000); Engine.MoveTo(137824,114366,-3720); Engine.MoveTo(139808,114388,-3720); //close to entrance Delay(20000); Engine.MoveTo(141847,114428,-3720); Engine.MoveTo(142725,113730,-3720); Engine.MoveTo(144446,114477,-3720); Engine.MoveTo(146443,112252,-3720); end; if user.inrange(81940, 148398, -3469, 10000) then begin buffCheck; end; if user.inrange(83378, 147917, -3400, 500) and User.Buffs.ByID(1388, buffCheck) then begin Engine.SetTarget('Mystra'); delay(500); Engine.DlgOpen; delay(500); Engine.DlgSel('High Level Hunting Areas'); delay(500); Engine.DlgSel('Dragon Valley Cave'); delay(500); Engine.DlgSel('Confirm'); end; end; end; procedure weapons; var meele, range, lowHP, highHP:cardinal; item:tl2item; begin lowHP := 40; //change HP count in % meele := 6592; //weapon ID highHP := 80; //change HP count in % range := 7577; //weapon ID while true do begin delay(500); if (user.hp<lowHP) and inventory.user.byid(meele, item) and not(item.equipped) then begin engine.useitem(meele); end; if (user.hp>highHP) and inventory.user.byid(range, item) and not(item.equipped) then begin engine.useitem(range); end; end; end; begin Script.NewThread(@all); Script.NewThread(@weapons); end. example how merge scripts procedure script1; begin while true do begin delay(1000); print('Here is script1.'); end; end; procedure script2; begin while true do begin delay(1000); print('Here is script2.'); end; end; begin Script.NewThread(@script1); Script.NewThread(@script2); end. thanks a ton!!! Quote Link to comment Share on other sites More sharing options...
kaloudis94 Posted July 17, 2015 Share Posted July 17, 2015 Switching weapons when im low hp e.g When im 40% low(or under 5k hp) switch to duals and when im 40%+ switch to bow can we do that? XD Quote Link to comment Share on other sites More sharing options...
adr.bot Posted July 17, 2015 Share Posted July 17, 2015 Switching weapons when im low hp e.g When im 40% low(or under 5k hp) switch to duals and when im 40%+ switch to bow can we do that? XD check 10 page Quote Link to comment Share on other sites More sharing options...
palanch0 Posted July 17, 2015 Share Posted July 17, 2015 adr.bot mate could You make a script to check buffs, if no buffs to stop attacking alt + b and return to fight? Thx in advance! Ps. Botting on Dragon Knight and Dragon Knight Warriors in LOA. Quote Link to comment Share on other sites More sharing options...
adr.bot Posted July 17, 2015 Share Posted July 17, 2015 (edited) adr.bot mate could You make a script to check buffs, if no buffs to stop attacking alt + b and return to fight? Thx in advance! Ps. Botting on Dragon Knight and Dragon Knight Warriors in LOA. or maybe try learn some basics? xd var buff:tl2buff; buffID,seconds:cardinal; begin buffID:= 1036; //change buff id seconds:= 30; //buff end time seconds while true do begin if not user.buffs.byid(buffID, buff) or (buff.endtime < seconds*1000) then begin if (user.target.dead) or (user.target = nil) then begin engine.facecontrol(0,false); while user.incombat do delay(1000); engine.bypasstoserver('_bbshome'); //use alt and b change for your server delay(1000); engine.bypasstoserver('_bbsbuffer'); delay(1000); engine.bypasstoserver('_bbscastgroupbuff 1 Player'); delay(1000); engine.facecontrol(0,true); end; end; end; end. Edited July 18, 2015 by adr.bot Quote Link to comment Share on other sites More sharing options...
FreeTech Posted July 19, 2015 Share Posted July 19, 2015 Can you make a script for sending items from one char to another with mail with SendMail() fun? I got stucked with cardinal array for 2 hours and not working. :'( Quote Link to comment Share on other sites More sharing options...
adr.bot Posted July 19, 2015 Share Posted July 19, 2015 (edited) Can you make a script for sending items from one char to another with mail with SendMail() fun? I got stucked with cardinal array for 2 hours and not working. :'( if rly, that script useless for me, i dont know, maybe when i have free time then i try make that, but also not 100% to i can make that, and say what that script must do,send all items or only 1?tell me more EDIT: if dont know how use send mail here example engine.sendmail('Nick', 'Theme','text', [57, 1]) // 57 aden id, 1 adena count Edited July 19, 2015 by adr.bot Quote Link to comment Share on other sites More sharing options...
palanch0 Posted July 19, 2015 Share Posted July 19, 2015 (edited) or maybe try learn some basics? xd var buff:tl2buff; buffID,seconds:cardinal; begin buffID:= 1036; //change buff id seconds:= 30; //buff end time seconds while true do begin if not user.buffs.byid(buffID, buff) or (buff.endtime < seconds*1000) then begin if (user.target.dead) or (user.target = nil) then begin engine.facecontrol(0,false); while user.incombat do delay(1000); engine.bypasstoserver('_bbshome'); //use alt and b change for your server delay(1000); engine.bypasstoserver('_bbsbuffer'); delay(1000); engine.bypasstoserver('_bbscastgroupbuff 1 Player'); delay(1000); engine.facecontrol(0,true); end; end; end; end. BIG THX adr.bot This one works for my server: var buff:tl2buff; buffID,seconds:cardinal; begin buffID:= 1036; //change buff id seconds:= 30; //buff end time seconds while true do begin if not user.buffs.byid(buffID, buff) or (buff.endtime < seconds*1000) then begin if (user.target.dead) or (user.target = nil) then begin engine.facecontrol(0,false); while user.incombat do delay(1000); engine.bypasstoserver('_bbshome'); //use alt and b change for your server delay(1000); engine.bypasstoserver('_bbsgetfav'); delay(1000); engine.bypasstoserver('04'); delay(1000); engine.bypasstoserver('02'); delay(1000); engine.facecontrol(0,true); end; end; end; end. U R GOD ;) THX adr.bot this script is trying to rebuff when buff fades and is less than 30 s to fade? Couse it works but seems to rebuff to often. Any help? EDIT: You are semi- god; couse it works very good in solo playing but in bot pt its ruin: bots don't follow, to often don't use skills, don't protect etc. :( Maybe You could write some script using it in pt. Big THX. Edited July 19, 2015 by palanch0 Quote Link to comment Share on other sites More sharing options...
hukin Posted July 19, 2015 Share Posted July 19, 2015 hello there . I'm begging at learning some scripting and trying to set my auto farm system correctly. begin Engine.SetTarget('Herald of Light'); delay(100); Engine.DlgOpen; delay(100); Engine.Dlgsel('Get Buff'); delay(100); Engine.Dlgsel('Ok'); delay(100); Engine.Dlgsel('Get Player's Buffs'); end. Everything worked fine until i tried to make the last lane. The text on the NPC use the ' which close the code before i can place the full txt. I dunno if there is a way to include the ' into txt without closing the code. (i have a lot of that in my server...so this might be a problem). Quote Link to comment Share on other sites More sharing options...
adr.bot Posted July 19, 2015 Share Posted July 19, 2015 try engine.dlgsel(1); and etc change 2 ,3 or what ever you need press, if still doesnt work then use engine.bypasstoserver Quote Link to comment Share on other sites More sharing options...
hukin Posted July 19, 2015 Share Posted July 19, 2015 Wow so simple, yet it worked. Thank you Mister Adr.bot ! Quote Link to comment Share on other sites More sharing options...
FreeTech Posted July 20, 2015 Share Posted July 20, 2015 if rly, that script useless for me, i dont know, maybe when i have free time then i try make that, but also not 100% to i can make that, and say what that script must do,send all items or only 1?tell me more EDIT: if dont know how use send mail here example engine.sendmail('Nick', 'Theme','text', [57, 1]) // 57 aden id, 1 adena count Thank you man, i just want to make safer the bot by sending the items every time going to town incase of punishment :) i got trouble with cardinal and i use the array outside like this: var items : array[0..1] of cardinal; items := {57,1}; begin engine.sendmail('name','title','text',items); end. and i got error at cardinal array initialiaztion and sendmail fun(). xD thank you again. Quote Link to comment Share on other sites More sharing options...
adr.bot Posted July 20, 2015 Share Posted July 20, 2015 Thank you man, i just want to make safer the bot by sending the items every time going to town incase of punishment :) i got trouble with cardinal and i use the array outside like this: var items : array[0..1] of cardinal; items := {57,1}; begin engine.sendmail('name','title','text',items); end. and i got error at cardinal array initialiaztion and sendmail fun(). xD thank you again. i newer used array so cant help with this xd Quote Link to comment Share on other sites More sharing options...
lunkerd Posted July 20, 2015 Share Posted July 20, 2015 Thank you man, i just want to make safer the bot by sending the items every time going to town incase of punishment :) i got trouble with cardinal and i use the array outside like this: var items : array[0..1] of cardinal; items := {57,1}; begin engine.sendmail('name','title','text',items); end. and i got error at cardinal array initialiaztion and sendmail fun(). xD thank you again. Try using this var items : array[0..1] of integer; items[0] := 57; items[1] := 1; begin engine.sendmail('name','title','text',[items[0],items[1]]); end. Quote Link to comment Share on other sites More sharing options...
hukin Posted July 20, 2015 Share Posted July 20, 2015 Hello there ! My farming setting are close to be working ! but i have a small question. I use to parameter all the farming settings on the "self-buffs/attacks/target' ect on the main options (on thus not on the script). Is what Engine.Facecontrol stand for ? which means when it is set to true, your character begins his routine setting from the main Menu ? Or i'm completlty mistaken and you'll have to program Everything in the code box? (like where to stand, IP from target in the area to attack and such)? Dunno if i'm clear enough though Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.