Prince* Posted April 5, 2011 Posted April 5, 2011 hallo all.. i search for this fix in forum and i don't have see this.. Exploit: [English]: http://maxcheaters.com/forum/index.php?topic=2826.0 [Greek]: http://maxcheaters.com/forum/index.php?topic=176746.0 The Fix Code: Index: /trunk/Gameserver/java/net/sf/l2j/gameserver/clientpackets/RequestHennaEquip.java =================================================================== --- /trunk/Gameserver/java/net/sf/l2j/gameserver/clientpackets/RequestHennaEquip.java (revision 14) +++ /trunk/Gameserver/java/net/sf/l2j/gameserver/clientpackets/RequestHennaEquip.java (revision 18) @@ -19,5 +19,7 @@ package net.sf.l2j.gameserver.clientpackets; +import net.sf.l2j.Config; import net.sf.l2j.gameserver.datatables.HennaTable; +import net.sf.l2j.gameserver.datatables.HennaTreeTable; import net.sf.l2j.gameserver.model.L2HennaInstance; import net.sf.l2j.gameserver.model.L2ItemInstance; @@ -27,4 +29,5 @@ import net.sf.l2j.gameserver.serverpackets.SystemMessage; import net.sf.l2j.gameserver.templates.L2Henna; +import net.sf.l2j.gameserver.util.Util; /** @@ -69,4 +72,22 @@ L2HennaInstance temp = new L2HennaInstance(template); int _count = 0; + + /** + * Prevents henna drawing exploit: + * 1) talk to L2SymbolMakerInstance + * 2) RequestHennaList + * 3) Don't close the window and go to a GrandMaster and change your subclass + * 4) Get SymbolMaker range again and press draw + * You could draw any kind of henna just having the required subclass... + */ + boolean cheater = true; + for (L2HennaInstance h : HennaTreeTable.getInstance().getAvailableHenna(activeChar.getClassId())) + { + if (h.getSymbolId() == temp.getSymbolId()) + { + cheater = false; + break; + } + } try{ @@ -75,5 +96,5 @@ catch(Exception e){} - if ((_count >= temp.getAmountDyeRequire())&& (activeChar.getAdena()>= temp.getPrice()) && activeChar.addHenna(temp)) + if (!cheater && (_count >= temp.getAmountDyeRequire())&& (activeChar.getAdena()>= temp.getPrice()) && activeChar.addHenna(temp)) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_DISAPPEARED); @@ -98,4 +119,6 @@ { activeChar.sendPacket(new SystemMessage(SystemMessageId.CANT_DRAW_SYMBOL)); + if ((!activeChar.isGM()) && (cheater)) + Util.handleIllegalPlayerAction(activeChar, "Exploit attempt: Character "+activeChar.getName()+" of account "+activeChar.getAccountName()+" tryed to add a forbidden henna.",Config.DEFAULT_PUNISH); } } Credits: Fafoukas
Prince* Posted April 5, 2011 Author Posted April 5, 2011 hallo all.. i search for this fix in forum and i don't have see this.. Exploit: [English]: http://maxcheaters.com/forum/index.php?topic=2826.0 [Greek]: http://maxcheaters.com/forum/index.php?topic=176746.0 The Fix Code: Index: /trunk/Gameserver/java/net/sf/l2j/gameserver/clientpackets/RequestHennaEquip.java =================================================================== --- /trunk/Gameserver/java/net/sf/l2j/gameserver/clientpackets/RequestHennaEquip.java (revision 14) +++ /trunk/Gameserver/java/net/sf/l2j/gameserver/clientpackets/RequestHennaEquip.java (revision 18) @@ -19,5 +19,7 @@ package net.sf.l2j.gameserver.clientpackets; +import net.sf.l2j.Config; import net.sf.l2j.gameserver.datatables.HennaTable; +import net.sf.l2j.gameserver.datatables.HennaTreeTable; import net.sf.l2j.gameserver.model.L2HennaInstance; import net.sf.l2j.gameserver.model.L2ItemInstance; @@ -27,4 +29,5 @@ import net.sf.l2j.gameserver.serverpackets.SystemMessage; import net.sf.l2j.gameserver.templates.L2Henna; +import net.sf.l2j.gameserver.util.Util; /** @@ -69,4 +72,22 @@ L2HennaInstance temp = new L2HennaInstance(template); int _count = 0; + + /** + * Prevents henna drawing exploit: + * 1) talk to L2SymbolMakerInstance + * 2) RequestHennaList + * 3) Don't close the window and go to a GrandMaster and change your subclass + * 4) Get SymbolMaker range again and press draw + * You could draw any kind of henna just having the required subclass... + */ + boolean cheater = true; + for (L2HennaInstance h : HennaTreeTable.getInstance().getAvailableHenna(activeChar.getClassId())) + { + if (h.getSymbolId() == temp.getSymbolId()) + { + cheater = false; + break; + } + } try{ @@ -75,5 +96,5 @@ catch(Exception e){} - if ((_count >= temp.getAmountDyeRequire())&& (activeChar.getAdena()>= temp.getPrice()) && activeChar.addHenna(temp)) + if (!cheater && (_count >= temp.getAmountDyeRequire())&& (activeChar.getAdena()>= temp.getPrice()) && activeChar.addHenna(temp)) { SystemMessage sm = new SystemMessage(SystemMessageId.S1_DISAPPEARED); @@ -98,4 +119,6 @@ { activeChar.sendPacket(new SystemMessage(SystemMessageId.CANT_DRAW_SYMBOL)); + if ((!activeChar.isGM()) && (cheater)) + Util.handleIllegalPlayerAction(activeChar, "Exploit attempt: Character "+activeChar.getName()+" of account "+activeChar.getAccountName()+" tryed to add a forbidden henna.",Config.DEFAULT_PUNISH); } } Credits: Fafoukas
allanalcantara Posted April 5, 2011 Posted April 5, 2011 perfect share. thx you are tested? thi is work?
allanalcantara Posted April 5, 2011 Posted April 5, 2011 perfect share. thx you are tested? thi is work?
Kràtos Posted April 5, 2011 Posted April 5, 2011 this fix was on l2jarchid... i remember it wen i fix it... rofl p.s: booter get lost ... :)
Kràtos Posted April 5, 2011 Posted April 5, 2011 this fix was on l2jarchid... i remember it wen i fix it... rofl p.s: booter get lost ... :)
xAddytzu Posted April 6, 2011 Posted April 6, 2011 this fix was on l2jarchid... i remember it wen i fix it... rofl p.s: booter get lost ... :) Sure..Also I remember when you C/P from L2JServer oO
xAddytzu Posted April 6, 2011 Posted April 6, 2011 this fix was on l2jarchid... i remember it wen i fix it... rofl p.s: booter get lost ... :) Sure..Also I remember when you C/P from L2JServer oO
Kяaσh Posted April 6, 2011 Posted April 6, 2011 I don't know who make it but on l2essiel fakoykas fix it.
Kяaσh Posted April 6, 2011 Posted April 6, 2011 I don't know who make it but on l2essiel fakoykas fix it.
Reptant_ Posted April 6, 2011 Posted April 6, 2011 I don't know who make it but on l2essiel fakoykas fix it. ye, credits 'fafoukas' (?)
Reptant_ Posted April 6, 2011 Posted April 6, 2011 I don't know who make it but on l2essiel fakoykas fix it. ye, credits 'fafoukas' (?)
Kràtos Posted April 6, 2011 Posted April 6, 2011 Sure..Also I remember when you C/P from L2JServer oO Rofl? you remember that day? p.s: i dont couse i was bussy with you moma. :)
Kràtos Posted April 6, 2011 Posted April 6, 2011 Sure..Also I remember when you C/P from L2JServer oO Rofl? you remember that day? p.s: i dont couse i was bussy with you moma. :)
eKo Posted April 6, 2011 Posted April 6, 2011 Sure..Also I remember when you C/P from L2JServer oO sure allso i remember you c/p from L2JFree oO :D Rofl? you remember that day? p.s: i dont couse i was bussy with you moma. :) shoe fetish?!? http://www.zalando.de/boots-poncho-maya-mo312h003-701.html?cg=03&ch=03&wmc=AFF_7801&wt_cc1=148030
Recommended Posts
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 accountSign in
Already have an account? Sign in here.
Sign In Now