Secret Experience

Secret Experience (https://secretexperience.net/index.php)
-   [Lineage] Java Mods (https://secretexperience.net/forumdisplay.php?f=636)
-   -   [L2JFree] Anti-Phx para l2jfree rev.2741 (https://secretexperience.net/showthread.php?t=1656)

christiand 22-12-2008 07:27 PM

Anti-Phx para l2jfree rev.2741
 
1 Anexo(s)
Quem tem problema com hacker enchantando armas em seu server aqui tem uma ótima solução.

Coloque um anti-phx em seu server q nunca mais vc vai ter problemas com esses engraçadinhos, sem contar q quem usar irá aparecer uma mensagem para todos ler "tried to use phx and got BANED! Peace :-h".

O q é Phx?
Phx é uma abreviação do nome de um haker q quem sabe usar coloca tudo full em um servidor l2j q naum seja protegido de alguma forma.

phx = Haplex

O código abaixo só pode ser colocado em um servidor l2jfree rev.2741, não adianta q não funciona em outro servidor e nem em outra revisão do l2jfree.


no caminho net.sf.l2j.gameserver.clientpackets edite o arquivo SendWareHouseDepositList.java
Código:

import net.sf.l2j.gameserver.util.IllegalPlayerAction;
import net.sf.l2j.gameserver.util.Util;


na linha mais abaixo...
Código:

        if (player.getActiveEnchantItem() != null)
        {
          Util.handleIllegalPlayerAction(player,"Mofo "+player.getName()+" tried to use phx and got BANED! Peace :-h", IllegalPlayerAction.PUNISH_KICKBAN);
          return;
        }


como vai ficar o arquivo java ja editado...
Código:

// Decompiled by DJ v3.10.10.93 Copyright 2007 Atanas Neshkov  Date: 22/12/2008 19:41:01
// Home Page: http://members.fortunecity.com/neshkov/dj.html  http://www.neshkov.com/dj.html - Check often for new version!
// Decompiler options: packimports(3)
// Source File Name:  SendWareHouseDepositList.java

package net.sf.l2j.gameserver.clientpackets;

import java.nio.ByteBuffer;
import net.sf.l2j.Config;
import net.sf.l2j.gameserver.Shutdown;
import net.sf.l2j.gameserver.model.*;
import net.sf.l2j.gameserver.model.actor.instance.L2PcInstance;
import net.sf.l2j.gameserver.network.L2GameClient;
import net.sf.l2j.gameserver.network.SystemMessageId;
import net.sf.l2j.gameserver.serverpackets.*;
import net.sf.l2j.gameserver.templates.L2EtcItemType;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import net.sf.l2j.gameserver.util.IllegalPlayerAction;
import net.sf.l2j.gameserver.util.Util;

// Referenced classes of package net.sf.l2j.gameserver.clientpackets:
//            L2GameClientPacket

public class SendWareHouseDepositList extends L2GameClientPacket
{

    public SendWareHouseDepositList()
    {
    }

    protected void readImpl()
    {
        _count = readD();
        if(_count < 0 || _count * 8 > _buf.remaining() || _count > Config.MAX_ITEM_IN_PACKET)
            _count = 0;
        _items = new int[_count * 2];
        for(int i = 0; i < _count; i++)
        {
            int objectId = readD();
            _items[i * 2 + 0] = objectId;
            long cnt = readD();
            if(cnt > 0x7fffffffL || cnt < 0L)
            {
                _count = 0;
                _items = null;
                return;
            }
            _items[i * 2 + 1] = (int)cnt;
        }

    }

    protected void runImpl()
    {
        L2PcInstance player = ((L2GameClient)getClient()).getActiveChar();
        if(player == null)
            return;
        ItemContainer warehouse = player.getActiveWarehouse();
        if(warehouse == null)
            return;
        net.sf.l2j.gameserver.model.actor.instance.L2FolkInstance manager = player.getLastFolkNPC();
        if(Config.SAFE_REBOOT && Config.SAFE_REBOOT_DISABLE_TRANSACTION && Shutdown.getCounterInstance() != null && Shutdown.getCounterInstance().getCountdown() <= Config.SAFE_REBOOT_TIME)
        {
            player.sendMessage("Transactions are not allowed during restart/shutdown.");
            sendPacket(new ActionFailed());
            return;
        }
        if((manager == null || !player.isInsideRadius(manager, 150, false, false)) && !player.isGM())
            return;
        if((warehouse instanceof ClanWarehouse) && Config.GM_DISABLE_TRANSACTION && player.getAccessLevel() >= Config.GM_TRANSACTION_MIN && player.getAccessLevel() <= Config.GM_TRANSACTION_MAX)
        {
            player.sendMessage("Transactions are disabled for your access level.");
            sendPacket(new ActionFailed());
            return;
        }
        if(!Config.ALT_GAME_KARMA_PLAYER_CAN_USE_WAREHOUSE && player.getKarma() > 0)
            return;
       
        if (player.getActiveEnchantItem() != null)
        {
          Util.handleIllegalPlayerAction(player,"Mofo "+player.getName()+" tried to use phx and got BANED! Peace :-h", IllegalPlayerAction.PUNISH_KICKBAN);
          return;
        }
        int fee = _count * 30;
        int currentAdena = player.getAdena();
        int slots = 0;
        for(int i = 0; i < _count; i++)
        {
            int objectId = _items[i * 2 + 0];
            int count = _items[i * 2 + 1];
            L2ItemInstance item = player.checkItemManipulation(objectId, count, "deposit");
            if(item == null)
            {
                _log.warn((new StringBuilder()).append("Error depositing a warehouse object for char ").append(player.getName()).append(" (validity check)").toString());
                _items[i * 2 + 0] = 0;
                _items[i * 2 + 1] = 0;
                continue;
            }
            if(Config.ALT_STRICT_HERO_SYSTEM && item.isHeroitem())
                continue;
            if((warehouse instanceof ClanWarehouse) && !item.isTradeable() || item.getItemType() == L2EtcItemType.QUEST)
                return;
            if(item.getItemId() == 57)
                currentAdena -= count;
            if(!item.isStackable())
            {
                slots += count;
                continue;
            }
            if(warehouse.getItemByItemId(item.getItemId()) == null)
                slots++;
        }

        if(!warehouse.validateCapacity(slots))
        {
            sendPacket(new SystemMessage(SystemMessageId.YOU_HAVE_EXCEEDED_QUANTITY_THAT_CAN_BE_INPUTTED));
            return;
        }
        if(currentAdena < fee || !player.reduceAdena("Warehouse", fee, player.getLastFolkNPC(), false))
        {
            sendPacket(new SystemMessage(SystemMessageId.YOU_NOT_ENOUGH_ADENA));
            return;
        }
        InventoryUpdate playerIU = Config.FORCE_INVENTORY_UPDATE ? null : new InventoryUpdate();
        for(int i = 0; i < _count; i++)
        {
            int objectId = _items[i * 2 + 0];
            int count = _items[i * 2 + 1];
            if(objectId == 0 && count == 0)
                continue;
            L2ItemInstance oldItem = player.getInventory().getItemByObjectId(objectId);
            if(oldItem == null)
            {
                _log.warn((new StringBuilder()).append("Error depositing a warehouse object for char ").append(player.getName()).append(" (olditem == null)").toString());
                continue;
            }
            if(Config.ALT_STRICT_HERO_SYSTEM && oldItem.isHeroitem())
                continue;
            L2ItemInstance newItem = player.getInventory().transferItem((warehouse instanceof ClanWarehouse) ? "ClanWarehouse" : "Warehouse", objectId, count, warehouse, player, player.getLastFolkNPC());
            if(newItem == null)
            {
                _log.warn((new StringBuilder()).append("Error depositing a warehouse object for char ").append(player.getName()).append(" (newitem == null)").toString());
                continue;
            }
            if(playerIU == null)
                continue;
            if(oldItem.getCount() > 0 && oldItem != newItem)
                playerIU.addModifiedItem(oldItem);
            else
                playerIU.addRemovedItem(oldItem);
        }

        if(playerIU != null)
            player.sendPacket(playerIU);
        else
            player.sendPacket(new ItemList(player, false));
        StatusUpdate su = new StatusUpdate(player.getObjectId());
        su.addAttribute(14, player.getCurrentLoad());
        player.sendPacket(su);
    }

    public String getType()
    {
        return "[C] 31 SendWareHouseDepositList";
    }

    private static final String _C__31_SENDWAREHOUSEDEPOSITLIST = "[C] 31 SendWareHouseDepositList";
    private static final Log _log = LogFactory.getLog(net/sf/l2j/gameserver/clientpackets/SendWareHouseDepositList.getName());
    private int _count;
    private int _items[];

}

Para q seja feito isso ou pegue o fonte do l2jfree rev.2741 modifique e subistitua o q vc tem ou vc terá q decompilar o arquivo l2j-gameserver-1.0.0.jar, modificar e compilar de novo.

créditos
KidZoR (pelo código)
ChristianD (pelo exemplo e explicação)

crazyshock 01-02-2009 01:53 PM

agora vem a duvida poderia nos mostrar como decompila esse arquivo e como compila ele di novo
?

Regencio 01-02-2009 06:29 PM

Tipo... Já coloquei esse arquivo... Agora tenho q decompilar o q?

fil0594 01-02-2009 07:40 PM

mto bom + n seria melhor usar backice? ow n funfa em l2jfree?

Tony_RadeoN 01-02-2009 07:57 PM

Bake ice nao pega em l2java amigo somente em l2off at+

cleberhills 02-02-2009 11:44 PM

Anti-Phx para l2jfree gracia alguem sabe editar??

Pickopata 05-02-2009 09:59 AM

Tenho um l2jfree na versao 2741 e n acho o arquivo.

christiand 05-02-2009 11:25 AM

vamos tirar duvida na area de duvidas.

marllonkl 15-02-2009 07:08 PM

alguem sabe dizer de a versão 3 do server free de christiand ja esta incluido essa correção ai ??? obrigado

xxxvalterxxx 15-02-2009 11:12 PM

Citação:

Postado Originalmente por crazyshock (Post 10967)
agora vem a duvida poderia nos mostrar como decompila esse arquivo e como compila ele di novo
?

Use o botão procurar antes de sair postando:
[Somente Usuários Registrados Podem Visualizar os Links Desta PáginaClique aqui para se Registrar]

Citação:

Postado Originalmente por Regencio (Post 11072)
Tipo... Já coloquei esse arquivo... Agora tenho q decompilar o q?

no caminho net.sf.l2j.gameserver.clientpackets edite o arquivo SendWareHouseDepositList.java

Citação:

Postado Originalmente por fil0594 (Post 11104)
mto bom + n seria melhor usar backice? ow n funfa em l2jfree?

BackIce só em L2OFF

Citação:

Postado Originalmente por cleberhills (Post 11504)
Anti-Phx para l2jfree gracia alguem sabe editar??

Nas versões mais novas ele já vem embutido.

Citação:

Postado Originalmente por Pickopata (Post 12030)
Tenho um l2jfree na versao 2741 e n acho o arquivo.

no caminho net.sf.l2j.gameserver.clientpackets edite o arquivo SendWareHouseDepositList.java

Citação:

Postado Originalmente por marllonkl (Post 14003)
alguem sabe dizer de a versão 3 do server free de christiand ja esta incluido essa correção ai ??? obrigado

Não.

Galera como o Cristiand disse vamos postar na área de dúvidas!!!!!!!

KetChup 16-02-2009 06:28 AM

ei mano eu uso o seu server o seu server nao vem com ant phx ? me ensina a usa phx pra ve se tem

MUHera 16-02-2009 05:32 PM

Porque vc nao posta feito pra Galeraa eu uso teu Pack =)
Pra quem Naum Sabe Compilar e Naum Consegue Aprender ! :daydreaming:

marllonkl 17-02-2009 03:30 PM

ninguem tem esse arquivo ja editado para esta versãp não ? obrigado e ficaria muito agradecido!!!! thx...( com o tuto do marven consigo fazer isso?)

willysgt 17-03-2009 03:06 PM

mano se nao pode entregar pronto???
 
pow mano nao tem como vc deixa o arkivo p/ download pronto?????

cleberhills 20-03-2009 10:05 AM

ChistianD,
Nos que usamos essa versão, não podemos pegar ele ja pronto e colocar???

Se7eN 19-04-2009 11:27 AM

usei o cavaj pra descompilar, fiz as alteraçoes so q nao consigo recopilar o arquivo, to tentando tentando pelo javac e pelo eclipse e ele nao reconhece as instancias:

private static final String _C__31_SENDWAREHOUSEDEPOSITLIST = "[C] 31 SendWareHouseDepositList";
private static final Log _log = LogFactory.getLog(net/sf/l2j/gameserver/clientpackets/SendWareHouseDepositList.getName());
private int _count;
private int _items[];

paulomal 11-05-2009 02:24 PM

rsrs sou nobb nessas coisas ond tenho que jogar esse arquivo??
nao sei como faço.. se alguem poder me ajudar..postando vlew

Pinguço 14-05-2009 03:01 AM

Galera tem varios posts com Ant Phx postado ai ... Vamus dar uma conferidinha ne?

quem não sabe compilar temos tutoriais ensinando certinho.. podem ver q varios agradeceram e falaram q CONSEGUIU portando e POSSIVEL compilar e descompilar. Intão não se preocupem com esse Erro do java pois tem solução e elas podem ser encontradas aqui no forum.

HeadShot 02-07-2009 03:10 PM

Seria melhor postar o arquivo do java ja pronto pois muita gente não tem uma certa sabedoria em java !!!

strike 18-11-2009 08:09 PM

Ei galera o meu serve é essa mesma rev mais nao tou achando esse lugar aqui nao: achonet.sf.l2j.gameserver.clientpackets
O meu pack que eu tou usando é aquele que vc postou l2jfree 2741 limpo.

Slave 02-12-2009 02:57 PM

Tem como postar o arquivo .class ? para essa REV ?

Obrigado!!!!!!!!

AiramCruZ 22-02-2010 06:49 AM

Nao COnsigo Baixar o Anexo


Horários baseados na GMT -3. Agora são 01:07 AM.

Powered by vBulletin® Version 3.8.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.