Jump to content

Recommended Posts

  • 3 weeks later...
Posted

Nice one! I didnt test it but im sure 99% that its working cuz i played a few servers and some players had unlimited vote/farm items etc.

They said that they hack it but i didnt believe them ( cuz i thought they cant hack database).

Well thanks i will try it soon!

  • 1 month later...
Posted

Hello guys , I'd like to share with you one intresting dupe.

 

 

In what we need? (In offline trade)

1 – Windows XP(better)

2 – Hide toolz (in some case)

3- Kill GGuard (also if you have the problems)

Items dupe

What to do?

 

Run l2phx , run game. For dupe we need in 2 la2 boxes.

We will dupe counting items, in my case Donate coins.

 

IMPORTANT!!! We must have at least  5 items!!!

 

1)Char №1 must give trade to char №2 , and give him 1 donate coin.

2)Char N1 must sit on selling, char №2 must buy 1 donate coin.

 

Catch packet like this

 

79 46 92 03 10 01 00 00 00 66 B8 04 10 01 00 00 00 01 00 00 00

 

,where

46 92 03 10 - ОID char

66 B8 04 10 - OID item

01 00 00 00 - price! 

3) Char №2 give back to char №1 1 boughted item.

(it’s look like char  №1 - 4 items, and char №2 – 1 item)

 

Next, char №1 make relog till the window , where we can choose character by which one we would like to login.

 

NOW! For dupe we need in script.

 

begin
if FromClient and (pck[1]=#$03) then pck:=#$30
end.
Open ph, "automatisation" - "scripts", and add script.

When you complete it, tick it. And log in by character  №1 in game.

Yoy must see something like this.

a99a45b3aef8.jpg

 

Char officially not in game. But we online.There is 1 minus – we couldn’t move , but we could sit on selling and write to PM.

 

Stay to selling Donate Coins, and together you mus add any item  (for exaple Tutorial Guide book). Sit down to offline trade.

 

Open new window of Lineage 2. Log in to charecter №1. Enter till CHOOSING OF CHAR! Turn off the script in L2phx. And log in game. (After log in you will get invisible + antitarget)

 

Now let’s configurate catched  packet(On chars on which I make test , I have  char №1 - 8199 Don.Coin, char  №2 – 1 Don.Coin)

 

Was:

 

79 46 92 03 10 01 00 00 00 66 B8 04 10 01 00 00 00 01 00 00 00

 

Will  be

79 46 92 03 10 01 00 00 00 66 B8 04 10 06 20 00 00 01 00 00 00

 

06 20 00 00 - 8198 Donate Coins

 

We will buy all items -1 !

 

Send it , and we will seen:

c70362547821.jpg

Char  №2purchase  items from char№1) but in window with char  №2 we wouldn’t see that we bought something…

width=626 height=768http://i003.radikal.ru/1108/9b/5af525b85dd8.jpg[/img]

------------------------------------------------------------------------------------------------------------------------------------

 

Washing off:

 

On every char we must delete by  1 item and Importand! 1stly by char №1 , and after by char №2 make relog.

Enter in game , and we will see that items - DUPED.

d4c4823873ce.jpg

 

------------------------------------------------------------------------------------------------------------------------------------

 

By this way you can dupe - items, which can be traded. Weapon (tide off :drawing CA- drawing out СА), and parts of А armor (Seald – unseald )

 

------------------------------------------------------------------------------------------------------------------------------------

 

Bypassing FIX, if on server offline trade with command .offline or smt. else:

 

1 - Char №2 must write in game (NOT sitting in trading!!!!) command of offline selling. Catch packet(for example such packet 74 00 00 00 00 01 00 00 00 25 11 0B 10 01 00 00 00 01 00 00 00 )

2 Char №1 enter in game with script. And sit on selling. But instead of writing command of offline trade , we must send PACKET!

Also we could use it, if for offline trade on server used scrolls. Catch packe and..by steps.

************************************************** ******************************

**************************

Adena dupe

Meaning the same.Also this script and other.

BUT! In this case we will sit on offline BUYING! NOT SELLING!!

We have :

Char A and Char

On char А --- 1кк adena +++ 1к of arrows

On char  Б --- minimum adena and 2 orrows

Char А must sit on buying ARROWS (ON BUYING!!!!) 999к999 aden

Char B sell him  1 arrow.

Char Б give back 999к999 aden to char  А

Char А make relog, enter in game with script. Sit on offline trade buying 1 arrow per 999к999. Next enter to the game by fake char.

Char B send packet .

Washing off by the same way. Char А delete 1 adena, and char B delete 1 adena.

RELOG and voila –adena is duped!!.

 

(Working everywhere , where offline trade!!!!! 99% of server is work!)

 

(In case , when you enter in game with this script , you get black window, what to do?

Solution:

Send the packet on buying\selling

 

74 00 00 00 00 01 00 00 00 68 62 18 40 01 00 00 00 01 00 00 00

 

 

 

 

Tested on lin2crazy.ru online 1к

 

There is video : http://adf.ly/4Qjqb

 

this is not how dupe is going on :)

  • 2 weeks later...
Posted

For admins who have custom shits to trade items, you're still vulnerable to this.

 

There are 2 different fixes to that, only 1 should be enough but of course I applied both:

 

Part 1:

This works only with stackable items, and that's because when someone trades all of one stackable item to someone who doesn't have it, the item instance is just moved. That's error-prone, up to the point in which someone can cheat the server and make it believe that the same item exists in 2 different inventories. For stackable items that's too risky, so let's just avoid it.

Look for a line of code like this in ItemContainer.java:

			// If possible, move entire item object
			if (sourceitem.getCount() == count && targetitem == null)

and change it to:

			// If possible, move entire item object
			if (sourceitem.getCount() == count && targetitem == null && !sourceitem.isStackable())

That way we will always destroy the original item and create a new one (only if it's stackable), which makes sure that the object id is "refreshed" and cannot be used afterwards, so even if you don't apply the part 2 fix nothing bad should be happening.

 

Part 2:

This depends entirely on your custom code. Just make sure to check every single item movement with the l2j function L2PcInstance.checkItemManipulation(int objectId, long count, String action). If it returns null that means that the player who is trying to use the item with the given object id shouldn't be able to, so just abort the code (log cheat attempt and return).

So even if someone got to make our server believe that the same item is in 2 different inventories, every single item knows who is its owner, so one of both cannot be its owner, so this checks returns null and he's detected ;)

 

I hope that helps!

  • 1 month later...
  • 2 weeks later...
  • 2 months later...
Posted (edited)

For admins who have custom shits to trade items, you're still vulnerable to this.

 

There are 2 different fixes to that, only 1 should be enough but of course I applied both:

 

Part 1:

This works only with stackable items, and that's because when someone trades all of one stackable item to someone who doesn't have it, the item instance is just moved. That's error-prone, up to the point in which someone can cheat the server and make it believe that the same item exists in 2 different inventories. For stackable items that's too risky, so let's just avoid it.

Look for a line of code like this in ItemContainer.java:

			// If possible, move entire item object
			if (sourceitem.getCount() == count && targetitem == null)

and change it to:

			// If possible, move entire item object
			if (sourceitem.getCount() == count && targetitem == null && !sourceitem.isStackable())

That way we will always destroy the original item and create a new one (only if it's stackable), which makes sure that the object id is "refreshed" and cannot be used afterwards, so even if you don't apply the part 2 fix nothing bad should be happening.

 

Part 2:

This depends entirely on your custom code. Just make sure to check every single item movement with the l2j function L2PcInstance.checkItemManipulation(int objectId, long count, String action). If it returns null that means that the player who is trying to use the item with the given object id shouldn't be able to, so just abort the code (log cheat attempt and return).

So even if someone got to make our server believe that the same item is in 2 different inventories, every single item knows who is its owner, so one of both cannot be its owner, so this checks returns null and he's detected ;)

 

I hope that helps!

Your fix works and thank you!

Edited by Ayami-
  • 1 month later...
  • 2 weeks later...
  • 2 weeks later...
  • 1 month later...
  • 2 months later...
  • 6 months later...
  • 2 months later...
Guest
This topic is now closed to further replies.



  • Posts

    • Hello everyone,   A quick update from the Emerge team. The official launch of Emerge Eclipse x10 is just around the corner and we are currently finishing the final preparations to ensure a smooth and stable opening for all players. Our team has been working on performance improvements, network optimizations, and additional infrastructure to provide the best possible experience from day one.   🚀 Launch Date: 7 June 2026 🕕 Launch Time: 18:00 CET We would like to invite everyone to join our Discord community where all announcements, updates, events, and support information are posted first. 🌐 Website: https://l2emerge.com 💬 Discord: https://discord.gg/l2emerge Thank you for all the support and feedback during the preparation phase. We look forward to seeing both new and veteran Lineage II players on launch day. See you soon on Emerge!
    • Added an enchant NPC ( more infos on test server)     - remade autofarm system, more clever , more humanlike steps, catacomb mode in route farm and rewrite of route farming   - Updated Antibot to defend even more from more advanced adrenaline users ( not gonna write how 😂 )   - now dll of antibot will not be flagged from antivirus or defenders   - Updated some more the AI based Agent     Our discord https://discord.gg/acvqx9rbhy   L2R Off files / monthly subscription
    • Interlude will never be the same again. To celebrate our first 3 months online, L2 Detona proudly presents League of Lineage.   A brand-new game mode inspired by the world's biggest MOBAs, bringing lane battles, minions, towers, strategic objectives, and epic team fights into the world of Lineage 2. All of this while preserving the essence that made Interlude one of the most beloved chronicles in Lineage 2 history.   ⚔️ Destroy enemy towers. 🛡️ Defend your base. 👑 Lead your team to victory.   📅 Officially launching on June 12, 2026. 🔥 Jump into the action right now through System_Test and become one of the first players to experience League of Lineage. Server Rates XP: 500x SP: 500x Adena: 200x Server Features Full Official Interlude gameplay with custom modifications Exclusive MOBA Arena 3 Hour Buffs for comfortable gameplay No Class Change Quests Website: https://www.l2detona.com Images of project: https://imgur.com/a/Lajn9Ag
    • Remove google ads from site , will be perfect without this.. we do a vote and we get 2-3 google ads, its nervus. i just give feedback you do ofc what you want 🙂
  • Topics

×
×
  • Create New...

Important Information

This community uses essential cookies to function properly. Non-essential cookies and third-party services are used only with your consent. Read our Privacy Policy and We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue..