Форум администраторов игровых серверов

Форум администраторов игровых серверов (https://forum.zone-game.info/TT.php)
-   Серверная часть (https://forum.zone-game.info/forumdisplay.php?f=148)
-   -   Взлом Ап Очков (https://forum.zone-game.info/showthread.php?t=10988)

Wolfas 10.11.2010 15:17

Re: Взлом Ап Очков
 
{Xo_Wind_oX} А вы можете выложить, патчик, хотя-бы от дюпа ап

MetaWind 10.11.2010 16:20

Re: Взлом Ап Очков
 
Это часть сборки, сборка приватная, увы нет) Используйте энджин, они говорят тоже это пофиксили)

Wolfas 10.11.2010 21:56

Re: Взлом Ап Очков
 
В енджине посмотрю, вы не можете подсказать в каком файле заплатка
или как вы и говорили она в CM_ENTER_WORLD?

Знаю что ещё на 1900+ сборке уников стоял фикс, можно и там поискать..

Wolfas 14.11.2010 03:23

Re: Взлом Ап Очков
 
Да, был закрыт баг, но в al-go его не пофиксели, никто не знает в каком файле стоял фикс?

Добавлено через 13 часов 52 минуты
SM_ABYSS_RANK.java

Код:

/**
 * @author Nemiroff
 *                Date: 25.01.2010
 */
public class SM_ABYSS_RANK extends AionServerPacket
{
        private AbyssRank rank;
        private int currentRankId;
       
        public SM_ABYSS_RANK(AbyssRank rank)
        {
                this.rank = rank;
                this.currentRankId = rank.getRank().getId();
        }

        @Override
        protected void writeImpl(AionConnection con, ByteBuffer buf)
        {
                writeQ(buf, rank.getAp()); //curAP
                writeD(buf, currentRankId); //curRank
                writeD(buf, rank.getTopRanking()); //curRating

                int nextRankId = currentRankId < AbyssRankEnum.values().length ? currentRankId + 1 : currentRankId;
                writeD(buf, 100 * rank.getAp()/AbyssRankEnum.getRankById(nextRankId).getRequired()); //exp %

                writeD(buf, rank.getAllKill()); //allKill
                writeD(buf, rank.getMaxRank()); //maxRank

                writeD(buf, rank.getDailyKill()); //dayKill
                writeQ(buf, rank.getDailyAP()); //dayAP

                writeD(buf, rank.getWeeklyKill()); //weekKill
                writeQ(buf, rank.getWeeklyAP()); //weekAP

                writeD(buf, rank.getLastKill()); //laterKill
                writeQ(buf, rank.getLastAP()); //laterAP

                writeC(buf, 0x00); //unk
        }
}

Если использовать строчку такого вида:

writeQ(buf, rank.getWeeklyAP() < 2000000 ? rank.getWeeklyAP() : 0); //weekAP

Если не на путал с синтаксиом, должно работать как обнулитель


Текущее время: 02:06. Часовой пояс GMT +3.

Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2022, Jelsoft Enterprises Ltd. Перевод: zCarot