Jump to content

Recommended Posts

Posted

Hello, 

I'd like to have an script for l2 classic to extract fragments at a determined level. 

What it would need is, when you hit the desired level, you need to be out of combat, extract fragment and then start attacking again. 

Capture-1.PNG

  • 2 weeks later...
Posted

I am trying to unravel this mystery by creating an alt + b buff script, I am stuck with this situation, according to the lines below in HTML I can see the other alt + b icons but when creating my scheme buff what is detected in the HTML is only two ('') empty and soon after action = "bypass 1874409986" ... being that the number after the bypass always changes I'm using the RegExp system is working correctly.

Bypass ('Mage') this command I find the Set Mage made by the server, but my 'Scheme Buff' is in this problem, with only the '' empty.
 I tried using the bypass command ('') but it had no effect whatsoever.

 

Quote

<table border=0 cellspacing=0 cellpadding=2 width=550>
                <tr>
                    <td width=115 align=left valign=top>
                        <table>
                        <tr>
                        <td width=115 align=left valign=top>
                        <font name="hs12" color="LEVEL">Personal buffs:</font>
                    </td>
                    <td width=300 align=center valign=top>
                        <button value="Create Scheme" action="bypass 1492358313" width=150 height=25 back="L2UI_CT1.Button_DF_Down" fore="L2UI_CT1.Button_DF">
                    </td>
                </tr>
            </table>
            </td>
            </tr>
            <tr>
                <td width=265 align=left valign=top>
                    <table>
                    <tr>
                    <center>
                    <td width=120 height=30 valign=top align=center>
                    <table border=0 width=110 height=40 cellspacing=4 cellpadding=3 bgcolor=10100E>
                    <tr>
                    <td align=right valign=top>
                    <table border=0 cellspacing=0 cellpadding=0 width=32 height=32 background=Icon.skill1527>
                    <tr>
                    <td width=32 height=32 align=center valign=top>
                    <button value="  " action="bypass 1612491900" width=34 height=34 back=L2UI_CT1.ItemWindow_DF_Frame_Down fore=L2UI_CT1.ItemWindow_DF_Frame />
                </td>
            </tr>
            </table>
            </td>
            <td width=110 valign=top>
                <font name=hs9 color=FFFFFF>Mago</font>

            </td>
            <td width=30 align=center>
                <br>
                <button value="  " action="bypass 1874409986" width=32 height=32 back=L2UI_CT1.RadarMap_DF_OptionBtn_Down fore=L2UI_CT1.RadarMap_DF_OptionBtn />
            </td>
            </tr>
            </table>
            <br>
            </td>
            <td width=110 height=40 valign=top align=center></td>
            <td width=110 height=40 valign=top align=center></td>

 

  • 4 weeks later...
Posted
4 hours ago, GreenNigga said:

@adr.bothello ... im trying to make adrena use my f12 key but this  engine.usekey('123');  dont work... any idea ?

you can try 

engine.usekey('F12');

 

  • Like 1
  • 2 weeks later...
Posted (edited)

a14fcd21fc9ae3e165d8eb987db704a7925.png

can someone give me this bot protection script? most of them are black one and i need to pick colorful one. if everyone works i could give a little bit of money. waiting for answers

@adr.bot

Edited by rageN1x
  • 4 weeks later...
Posted

HI @adr.bot gn. I've managed to set a script for alarm captcha in the server i'm playing:

 

uses
  SysUtils, Classes;
  
function SetForegroundWindow(hwnd: integer):boolean; stdcall; external 'user32.dll';


const
  // words / phrase to detect
  CaptchaTexts: array of string = ['=', 'Question:', '=', '?'];
  // play sound when detected (true - yes / false - no)
  CaptchaSound = true;
  // sound file name (in the Sounds folder)
  CaptchaSoundName = 'hp.wav';
  // highlight the desired window on the taskbar (true - yes / false - no)
  CaptchaFlashWindow = true;
  // move the window to the foreground (true - yes / false - no)
  CaptchaSetForegroundWindow = true;

procedure CaptchaThread(CaptchaTexts: array of string);
var
  a1, a2: integer;
  s1, s2: integer;
  EngineCustom: TL2Control;
  i, j: integer;
  Have: boolean;
  L: TStringList; 
  SoundPath: string;
begin
  SoundPath:= ExePath + 'Sounds\' + CaptchaSoundName;
  if (CaptchaSound) and (not FileExists(SoundPath)) then
  begin
    print('No sound file found. Path: ' + SoundPath);
    Script.Stop;
  end;

  while (true) do
  begin
    delay(1000);
    for i:= 0 to 100 do
    begin
      EngineCustom:= GetControlByIndex(i);    

      if (EngineCustom = nil) then
        break;
      if (EngineCustom.Status <> lsOnline) then
        continue;
        
      Have:= false;
      //print(EngineCustom.hlpText);
      //print(EngineCustom.CBTime);
      print(GetTickCount());
      print(EngineCustom.HlpTime);
      s1:=GetTickCount();
      s2:=EngineCustom.HlpTime;
      print(s1-s2);
       //engine.dlgtext.contains
       
      L:= TStringList.Create; // Create an object (list for strings) 
      L.Add(EngineCustom.hlpText);//(EngineCustom.hlpText); // Add the line to the
      L.Sort;
      //L.SaveToFile('C:/1.html'); // Save the list to the file 
      //L.Free;
      
      if (Pos('Question:', L.Text) > 0) and ((s1-s2) < 19000)then//L.Find('Question:', i) then//EngineCustom.hlpText.contains('Question:') then
        begin
          Have:= true;
          if (Have) then      
          begin
            L.Free;
            PlaySound(exepath+'\sounds\'+'PlayerAlarm'+'.wav');
            delay(5000);
          end;
          //PlaySound(exepath+'\sounds\'+'PlayerAlarm'+'.wav');
           if (user.target.dead) then begin
    while user.incombat do
    delay(1000);
    engine.autosoulshot(5789, true);
    engine.autotarget(2500);
    engine.attack;
    engine.pickup;
  end;
engine.restart; //restart to char select screen;
              engine.gamestart(0); //0 is char id
end
            
              
            end;
          end;
        end;


  
begin
  Script.NewThread(@CaptchaThread(CaptchaTexts));
end.

 

 

 

 

 

 

 

---------

 

 

Alarm works fine. And i added the last 2 lines (engine.restart) since once captcha window appears (tutorial window), if i relog the char, the captcha wont kick me and i can continue playing normally.

But what i dont know how to do, is once alarm sounds (something like...   if (Pos('Question:', L.Text) > 0) and ((s1-s2) < 19000)then//L.Find('Question:', i) ????

Make the char finish aggro mobs and once out of combat relog.

Posted
13 hours ago, iselladena said:

HI @adr.bot gn. I've managed to set a script for alarm captcha in the server i'm playing:

 

uses
  SysUtils, Classes;
  
function SetForegroundWindow(hwnd: integer):boolean; stdcall; external 'user32.dll';


const
  // words / phrase to detect
  CaptchaTexts: array of string = ['=', 'Question:', '=', '?'];
  // play sound when detected (true - yes / false - no)
  CaptchaSound = true;
  // sound file name (in the Sounds folder)
  CaptchaSoundName = 'hp.wav';
  // highlight the desired window on the taskbar (true - yes / false - no)
  CaptchaFlashWindow = true;
  // move the window to the foreground (true - yes / false - no)
  CaptchaSetForegroundWindow = true;

procedure CaptchaThread(CaptchaTexts: array of string);
var
  a1, a2: integer;
  s1, s2: integer;
  EngineCustom: TL2Control;
  i, j: integer;
  Have: boolean;
  L: TStringList; 
  SoundPath: string;
begin
  SoundPath:= ExePath + 'Sounds\' + CaptchaSoundName;
  if (CaptchaSound) and (not FileExists(SoundPath)) then
  begin
    print('No sound file found. Path: ' + SoundPath);
    Script.Stop;
  end;

  while (true) do
  begin
    delay(1000);
    for i:= 0 to 100 do
    begin
      EngineCustom:= GetControlByIndex(i);    

      if (EngineCustom = nil) then
        break;
      if (EngineCustom.Status <> lsOnline) then
        continue;
        
      Have:= false;
      //print(EngineCustom.hlpText);
      //print(EngineCustom.CBTime);
      print(GetTickCount());
      print(EngineCustom.HlpTime);
      s1:=GetTickCount();
      s2:=EngineCustom.HlpTime;
      print(s1-s2);
       //engine.dlgtext.contains
       
      L:= TStringList.Create; // Create an object (list for strings) 
      L.Add(EngineCustom.hlpText);//(EngineCustom.hlpText); // Add the line to the
      L.Sort;
      //L.SaveToFile('C:/1.html'); // Save the list to the file 
      //L.Free;
      
      if (Pos('Question:', L.Text) > 0) and ((s1-s2) < 19000)then//L.Find('Question:', i) then//EngineCustom.hlpText.contains('Question:') then
        begin
          Have:= true;
          if (Have) then      
          begin
            L.Free;
            PlaySound(exepath+'\sounds\'+'PlayerAlarm'+'.wav');
            delay(5000);
          end;
          //PlaySound(exepath+'\sounds\'+'PlayerAlarm'+'.wav');
           if (user.target.dead) then begin
    while user.incombat do
    delay(1000);
    engine.autosoulshot(5789, true);
    engine.autotarget(2500);
    engine.attack;
    engine.pickup;
  end;
engine.restart; //restart to char select screen;
              engine.gamestart(0); //0 is char id
end
            
              
            end;
          end;
        end;


  
begin
  Script.NewThread(@CaptchaThread(CaptchaTexts));
end.

 

 

 

 

 

 

 

---------

 

 

Alarm works fine. And i added the last 2 lines (engine.restart) since once captcha window appears (tutorial window), if i relog the char, the captcha wont kick me and i can continue playing normally.

But what i dont know how to do, is once alarm sounds (something like...   if (Pos('Question:', L.Text) > 0) and ((s1-s2) < 19000)then//L.Find('Question:', i) ????

Make the char finish aggro mobs and once out of combat relog.

function AggroCheck():boolean;
var
	i : integer;
begin
	result := false;
	if npclist.count = 0 then exit;
	for i := 0 to npclist.count -1 do
	begin
		if (npclist(i).target = user) or (npclist(i).atkoid = user.oid) then
		begin
			result := true;
			exit;
		end;
	end;
end;

 

Posted
12 minutes ago, iselladena said:

@adr.bot thank u very much. Should i add that part to the end keeping the "relog" part intact? or add a new function for relog affter aggrocheck?

My knowledge is pretty limited, but i'm trying lol.

ur alarm makes no sense, u need chose if u doing one script for all windows, or only for single window, now is half with get control, half with engine (current control)

  • 1 month later...
Posted

Hi guys,

 

Im trying to setup auto bishop res but its proving impossible, ive been able to have everything working on my bot bp in the party apart  from res/mass res, to use this skill do I need to write a script? Im confused

 

Thanks,

Posted
10 hours ago, fAkeN said:

Party heal-buff > Condition for target 1 > target dead

 

Hello,

 

Its not giving me a "dead" option it gives me "dead <" and "dead>", ive tried a few variations in  the value section next to the option but it doesnt seem to work, am i missing something?

 

Thanks

Posted (edited)

Hi Guys, 

 

Im now trying to configure my own scripts and figured starting with auto buffs and teleporting is a good place to start!!

 

With Gatekeeper it was easy to find the numbers needed to go in the DlgSel

 

Im having a problem with the buffer and the macro section, im able to open dlgesl 12 which is macro buffs but

my problem now is how do i select "Use on me" at the mage setting? is there a way of figuring what dlgsel I need to 

allocate or is it guesswork? or am I going the wrong way about this?

 

Pictures attached, 

 

Thanks, 

 

Screenshot_1.png

Screenshot_2.png

Edited by Zimoki

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now



  • Posts

    • Hello community, I’d like to share an improved version of the L2smr editor for StaticMeshes, focused on solving some workflow issues I found in the original tool. CreditsThis project is based on the original acmi/L2smr repository https://github.com/acmi/L2smr , created by acmi, and I updated it to Java 17 with some additional features. Issues in the original L2smr Too many windows: each StaticMesh opened in a new one → cluttered desktop. No search: navigating through hundreds of StaticMeshActors was slow and tedious. Added improvements Flexible views Single Window Mode: reuse one window instead of opening new ones. Multiple Window Mode: still available for those who prefer having several views open simultaneously. Real-time Search Field Instant filtering as you type. Case-insensitive search. “Reset” button to quickly clear the search.     Installation and Execution: Clone the repository: git clone https://github.com/Jeep12/l2smr.git cd l2smr        2.Build the project:   ./gradlew build        3. Run the application:     ./run.bat      Or simply double-click on run.bat.     The run.bat script automatically extracts JavaFX from the included javafx-17.0.2.zip file in the javafx/ directory, sets up the required libraries, and launches the application. You don’t    need to install JavaFX separately.      Repository: https://github.com/Jeep12/l2smr     Maybe these features already existed in another version or fork, and they might not be very big changes, but since I didn’t know about them and found them necessary, I decided to          implement them myself and wanted to share them.      
    • no....Mobius L2Clientdat and L2FileEditor can do that...but still cant works with TaiWanese Grand Crusade ,especially Armorgrp.dat and Armorgrp-Classic.dat
    • L2GOLD - Halcyon x45 Project Classic Interlude   C6 - Classic Interlude: Protocol 110     Is a complete copy of L2Gold in Classic [110 Protocol] with L2OFF files.   Fully L2Gold Features - Daily Quest - Daily Mining Quest - Ancient Weapons -Refine System  -Rebirth System -Fully configurable everything you want -Gold stats/Gold skills/Gold items working 100% -Zones 100% alike  -Unique donations system (npc or voicedcommand .donate) - On Enchant success announcement ( if +16 for weapon, 8 for armor , 7 for jewel) - Announce of Castle Lord - Announce of Hero  - Olympiad Max A grade - Olympiad Buffs on matches changed to Gold Alike - Working fully Dreadbane   - AI Mods: Static Time for RB   Automated Events: Squash Watermelon RB Event High rate  (those are fully automated)   Server is running a Test Server: Online to anyone can test it.   Game Client: https://www.mediafire.com/file/1d8xe18rvgi04lx/L2_Classic_Interlude_Client_V2.rar/file   Game Patch: https://www.mediafire.com/file/3z4b8ezy93h2z1g/L2Halcyon+Gold+Patch.rar/file   GM Accounts: ID: root pass root [ accounts go from  root1 until root20 ]   Regular Accounts Registrations: http://84.247.164.27/?page=register   Some Screenshots: https://imgur.com/a/o7TxzTN   Contact me here via PM (only serious buyers).    Price of the product: Fully Server Pack + Source ( 250 Euros )
    • ✨ A Service with Vibes  Vibe SMS ✨   Vibe SMS is not just a platform for working with numbers. We’ve built it to be simple, convenient, and stress-free, so your tasks get done without hassle. We value real communication: we listen to your ideas, provide support, and make sure everyone feels calm and confident. With us, you’re not just a client  you’re part of a space built on trust, support, and a human touch. Vibe SMS is a place where people matter and where we create an atmosphere you’ll want to stay in.   Website link — https://vibe-sms.net/ Our Telegram channel — https://t.me/vibe_sms
  • Topics

×
×
  • Create New...

AdBlock Extension Detected!

Our website is made possible by displaying online advertisements to our members.

Please disable AdBlock browser extension first, to be able to use our community.

I've Disabled AdBlock