Ru-MaNGOS

Вернуться   Ru-MaNGOS > Дополнения > Tools

Важная информация

Tools Обсуждение программ для MaNGOS

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.05.2011, 16:47   #1
TOM_RUS
MaNGOS Dev
 
Регистрация: 11.03.2010
Сообщений: 468
Сказал(а) спасибо: 0
Поблагодарили 514 раз(а) в 163 сообщениях
TOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небесTOM_RUS Как свет с небес
По умолчанию WoW Packet Viewer

Т.к. моя утилита по моему мнению недостаточно популярна, я решил создать данную тему

Проэкт на github (googlecode).

Скриншот:
http://ru-mangos.ru/attachment.php?a...3&d=1305724957

Возможности:
- парсинг пакетов любой сложности;
- возможность динамической компиляции парсеров / подгрузка уже скомпилированных сборок;
- простейший поиск по названию опкода;
- экспорт в текстовый формат (hexlike или распарсенный текст);
- ручной парсинг варден пакетов (только расшифрованных);

Пример простейшего парсера:
Код:
using WowTools.Core;

[Parser(OpCodes.SMSG_MOTD)]
class SMSG_MOTD : Parser
{
    public override void Parse()
    {
        For(ReadInt32("Lines count: {0}"), i => ReadCString("Line {0} text: {1}", i));
    }
}
Что-то более сложное:
Код:
using WowTools.Core;

[Parser(OpCodes.SMSG_CHAR_ENUM)]
class SMSG_CHAR_ENUM : Parser
{
    public override void Parse()
    {
        const int INVENTORY_SLOT_BAG_END = 23;

        For(ReadUInt8("Characters count: {0}"), i =>
            {
                ReadUInt64("Character {0} GUID: {1:X16}", i);
                ReadCString("Character {0} Name: {1}", i);
                ReadUInt8("Character {0} Race: {1}", i);
                ReadUInt8("Character {0} Class: {1}", i);
                ReadUInt8("Character {0} Gender: {1}", i);
                ReadUInt8("Character {0} Skin: {1}", i);
                ReadUInt8("Character {0} Face: {1}", i);
                ReadUInt8("Character {0} Hair Style: {1}", i);
                ReadUInt8("Character {0} Hair Color: {1}", i);
                ReadUInt8("Character {0} Facial Hair: {1}", i);
                ReadUInt8("Character {0} Level: {1}", i);
                ReadUInt32("Character {0} Zone: {1}", i);
                ReadUInt32("Character {0} Map: {1}", i);
                ReadSingle("Character {0} X: {1}", i);
                ReadSingle("Character {0} Y: {1}", i);
                ReadSingle("Character {0} Z: {1}", i);
                ReadUInt32("Character {0} Guild Id: {1}", i);
                ReadUInt32("Character {0} Flags: 0x{1:X8}", i);
                ReadUInt32("Character {0} Customize Flags: 0x{1:X8}", i);
                ReadUInt8("Character {0} First Login?: {1}", i);
                ReadUInt32("Character {0} Pet Display Id: {1}", i);
                ReadUInt32("Character {0} Pet Level: {1}", i);
                ReadUInt32("Character {0} Pet Family: {1}", i);

                For(INVENTORY_SLOT_BAG_END, j =>
                    {
                        ReadUInt32("Character {0} Item {1} Display Id: {2}", i, j);
                        ReadUInt8("Character {0} Item {1} Inventory Type: {2}", i, j);
                        ReadUInt32("Character {0} Item {1} Enchant Aura: {2}", i, j);
                    });
            });
    }
}
Для запуска требуется Microsoft .NET Framework 4.0.
Миниатюры
Нажмите на изображение для увеличения
Название: pv3.jpg
Просмотров: 1327
Размер:	406.6 Кб
ID:	983  
Вложения
Тип файла: rar wpv.rar (477.4 Кб, 652 просмотров)

Последний раз редактировалось TOM_RUS; 18.05.2011 в 22:22.
TOM_RUS вне форума   Ответить с цитированием
14 пользователя(ей) сказали cпасибо:
ANTOMA (30.05.2011), Chameleon (14.07.2011), Den (20.05.2011), Dragon (20.05.2011), Fedia22 (18.05.2011), HuntsMan (22.05.2011), KiriX (18.05.2011), Konctantin (18.05.2011), partizanes (05.06.2013), Ranger (25.08.2011), SeT (18.05.2011), srv38 (18.05.2011), sven (19.05.2011)
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
DBC Viewer TOM_RUS Tools 10 05.08.2011 11:11
[разработка]Wow Packet Parser alien Tools 78 21.06.2011 23:37
PKT v3.0 Viewer Йоха Tools 103 21.05.2011 11:04
C#, DBC Viewer и компания LordJZ Флудильня 13 02.11.2010 11:44
Fixed SMSG_BATTLEFIELD_STATUS packet. newsbot CMaNGOS Commits 0 12.07.2010 22:50


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


ru-mangos.ru - Русское сообщество MaNGOS
Главная цель проекта MaNGOS - обучающая, поэтому разрешается использовать исходный код и собранную программу только для образовательных целей.
Вы не можете использовать MaNGOS в коммерческих целях, а также не разрешается устанавливать публичные серверы на базе MaNGOS.
Любое копирование материалов, информации в любом виде без указания источника - форума Ru-MaNGOS будет считаться нарушением авторских прав и нарушением Уголовного Кодекса РФ, ст. 146 ст. 147.
Перевод vBulletin: zCarot