Jump to content
  • 0

Question

Posted

Hi everyone! Im Argentinian so, sorry my bad english!

 

In one sv that i played some days i've saw a good addon!

 

Its somethink like a Newbie Tutorial, in lv 6 appears a window that offers you a buffer, at lv 10 appears another tutorial offering a teleport to Elven Ruins. Lv 20: Again a popup asking to change class, offering D set, weapon and shots AND ask if u want to teleport another farm zone.

 

Somebody know that addon? I dont want to create all theese for myself, its too much code xD

 

Here one pick:

image.jpg

 

Recommended Posts

  • 0
Posted

I don't remember such thing at the shares section. You have to create the event listener on your own. :lol:

  • 0
Posted (edited)

i think is not java. is html and system , he create a nice html and add custom icon . how to create custom icon? here -> http://www.maxcheaters.com/topic/168739-how-to-create-your-own-icon-how-to-import-it/

and teleport with sql 

Edit : i think u will need java only for the name

Edited by kris131
  • 0
Posted (edited)

Just go at the method that happen when player level up (Search it i dont even remember where it is, no even have eclipse opened),

add a void called checkSupportTutorial(player);  example

and make a simple code like:

 

int lvl = player.getLevel();

switch (lvl)

{

  case 1:

    (inside here put some html ,check other function how to send html packet to player)

   break;

 

  case 10:

    (inside here put some html ,check other function how to send html packet to player)

    break;

}

 

and the action inside html make it like bypass -h supportPlayer 1    for example

and go at RequestByPassToServer.java add it like...

 

if (event.startsWith("supportPlayer")

{
     int endOfId = _command.indexOf(' ', 13);   (13 is the size of command)

     int id  = id = _command.substring(13, endOfId);

    

     switch(id)

     case 1:

          // things that happen inside here when the button pressed, like give items or teleport or buffs or idk...

          // idk maybe player.teleToLocation(x,y,z); 

     case 2:

          // things that happen inside here when the button pressed, like give items or teleport or buffs or idk...

          // idk maybe player.teleToLocation(x,y,z); 

    case 3:

          // things that happen inside here when the button pressed, like give items or teleport or buffs or idk...

          // idk maybe player.teleToLocation(x,y,z); 

   etc

}

 

You can check your source  to see how it send a html packet to player

its simple its like

 

StringBuilder sb = new StringBuilder(200);
sb.append("<html><body>");
sb.append("Some silly things<br1>");
sb.append("More things<br1>");
sb.append("</body></html>");
final NpcHtmlMessage pck = new NpcHtmlMessage(0, 1, sb.toString());
activeChar.sendPacket(pck);
Edited by AccessDenied
  • 0
Posted

also check the case on deleveling a character and allow or dissallow him to use that feature once again

  • 0
Posted (edited)

also check the case on deleveling a character and allow or dissallow him to use that feature once again

thats easy and you dont even need to store to db its useless if it give basic gear or buffs.. 

 

just add a method at L2PcInstance.java

 

private boolean _receivedSupport;

 

public void setReceivedSupport(boolean h)

{

   _receivedSupport = h;

}

 

public boolean isReceivedSupport()

{

   return _receivedSupport;

}

Edited by AccessDenied
  • 0
Posted

thats easy and you dont even need to store to db its useless if it give basic gear or buffs.. 

 

just add a method at L2PcInstance.java

 

private boolean _receivedSupport;

 

public void setReceivedSupport(boolean h)

{

   _receivedSupport = h;

}

 

public int isReceivedSupport()

{

   return _receivedSupport;

}

What happens on re-log? :lol:

  • 0
Posted (edited)

What happens on re-log? :lol:

well as i said is not that important... i mean is basic gear and buffs.. come on..

 

in the worst case you make a map and store objectid of the player and his current state

 

and on enterworld  it check if the map contain his key and  activeChar.setReceivedSupport(true);

Edited by AccessDenied
  • 0
Posted (edited)

Please pest post more exploitable shitcode

Exquse me i dont even use eclipse to check syntax or anything but there you go..

 

static Hashtable<Integer, Integer> _hashTable = new Hashtable<Integer,Integer>(); 
public static HashMap<Integer, Integer> _StartingSupport = new HashMap(_hashTable);
 
 
public static void CheckPlayer(L2PcInstance player)
{
 if (!_StartingSupport .isEmpty() && _StartingSupport .containsKey(player.getObjectId()))
 {
      player.setReceivedSupport(true);
    // or idk what.
 }
}
 
Why no? Avoid store at db and is a  nice solution until server restart.. which again is not needed cause we speak for basic gear and basic buffs.. 
 
the 2nd integer is used to check the current state actualy  1 for the 1st window  2 for the 2nd window 3 for the rd window just to know in which window player is when he login 
Edited by AccessDenied
  • 0
Posted

well as i said is not that important... i mean is basic gear and buffs.. come on..

 

in the worst case you make a map and store objectid of the player and his current state

 

and on enterworld  it check if the map contain his key and  activeChar.setReceivedSupport(true);

Ok, what about server restart then? :D

  • 0
Posted (edited)

Ok, what about server restart then? :D

Fuck me >.>  <.<  

 

go to db then -.- and load the info if you like db con that much >.> <.<

I'm sure afterwards you gonna say

 

Ok, what about earth desctruction?  -.-

Edited by AccessDenied
  • 0
Posted

Fuck me >.>  <.<  

 

go to db then -.- and load the info if you like db con that much >.> <.<

It could be simple column like 'level_reached' in the characters table, which you can load on character login, and update on character logout. No extra performance needed. :lol:

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

    • Hey everyone, I was wondering if anyone knows where the client loads all the .dat files. Is there some kind of manifest or list you can specify which dat files the client loads?
    • 🔥 Welcome to Lineage 2 Haruna x3 – True Classic Interlude Experience 🔥 At Haruna x3, we’re bringing back the true essence of Interlude – slow, meaningful progression where every level matters, every item has value, and PvP is real. We’re not about fast servers, pay-to-win advantages, or fake populations. Our goal is simple: create a fair, stable, and long-term server where players can enjoy real competition, strategic clan warfare, and the thrill of open-world PvP. 💎 What Makes Haruna x3 Special? x3 Rates – Perfect for steady, rewarding progression Classic Interlude Mechanics – Relive the nostalgia of Interlude Stable & Lag-Free Gameplay – Optimized for thousands of players online Fair & Balanced – No pay-to-win, every victory is earned PvP & Clan Warfare Focused – Every battle counts 🌟 Quality of Life Features to Enhance Your Experience We keep the classic feel while adding features that make the game more convenient and enjoyable, including: Shift + Click to view monster droplists Free item mail and buy/sell via Adena Daily login rewards & Stream Rewards ALT+K Skill Panel & Alt+Click buffs removal Offline shop system Captcha for security Donate Coins currency (cannot be traded, dropped, or destroyed) Classic P110 client – no custom interface 🏰 Our Philosophy We believe Lineage 2 is about the journey, not just the destination. Haruna x3 is designed for months and years of growth, not weeks. We provide a community-driven environment where honest gameplay, fair competition, and strategic teamwork are at the forefront. 🌍 Join Our Community Whether you’re a veteran of Interlude or a returning player seeking a true classic experience, Haruna x3 offers a place to fight, trade, and grow alongside dedicated players. Step into the world of Haruna x3 – where every decision matters, every fight counts, and every victory is yours to earn. Discord: https://discord.gg/7DDC9Dsxnh Website : www.l2haruna.com
    • No, the real purpose is cheating and custom  development for games.  I'm building a custom AI moderator specially for checking illegal activity and flag current topica.
    • Hello trying to edit Armorgrp_Classic.dat using L2ClientDat Editor - l2jmobius edition I can normally open a file but can't save, even can't save "clean" version of file (just open and then click save) Other files i can normally open, edit and save. but there is problem with Armorgrp_Classic.dat Anyone find solution, or other Editor for protocol 166 ?   [25/12 15:10:11] --------------------------------------- [25/12 15:10:11] Open file: Armorgrp_Classic.dat [25/12 15:10:11] File Armorgrp_Classic.dat encrypted. Lineage2Ver413 decrypt ... [25/12 15:10:11] Decrypt Armorgrp_Classic.dat file successfully by v413_encdec decrypter. [25/12 15:10:11] Read the file structure ... [25/12 15:10:11] Unpacking [L2GameDataName.dat] [25/12 15:10:11] GameDataName: Load 97534 count. [25/12 15:10:11] Completed. [25/12 15:11:32] Wrong param count for wrapper: fertheia_mesh_add, paramIndex: 1, params: {{{[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11;[none]};{{109;114};{0;-1};{109;114};{0;-1};{109;114}}};{[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None]};[None]} -node: fertheia_mesh_add[WRAPPER][null][null] param: {{{[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11;[none]};{{109;114};{0;-1};{109;114};{0;-1};{109;114}}};{[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None]};[None]} org.l2jmobius.xml.exceptions.PackDataException: Wrong param count for wrapper: fertheia_mesh_add, paramIndex: 1, params: {{{[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11;[none]};{{109;114};{0;-1};{109;114};{0;-1};{109;114}}};{[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None]};[None]} -node: fertheia_mesh_add[WRAPPER][null][null] param: {{{[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11];[None];[LineageAccessory3.fertheia_pvp_Hrm_ad11;[none]};{{109;114};{0;-1};{109;114};{0;-1};{109;114}}};{[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None];[Mantleguild.kingdom.E_elmd_1_t00];[None]};[None]} at org.l2jmobius.xml.DescriptorWriter.packData(DescriptorWriter.java:275) at org.l2jmobius.xml.DescriptorWriter.packData(DescriptorWriter.java:184) at org.l2jmobius.xml.DescriptorWriter.parseData(DescriptorWriter.java:100) at org.l2jmobius.actions.SaveDat.action(SaveDat.java:70) at org.l2jmobius.actions.ActionTask.doInBackground(ActionTask.java:48) at org.l2jmobius.actions.ActionTask.doInBackground(ActionTask.java:27) at java.desktop/javax.swing.SwingWorker$1.call(SwingWorker.java:303) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:328) at java.desktop/javax.swing.SwingWorker.run(SwingWorker.java:340) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1095) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:619) at java.base/java.lang.Thread.run(Thread.java:1447) [25/12 15:11:32] buff == null.  
  • 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