Há algum tempo eu venho estudando sobre os octets do PW (hex strings) para adicionar os detalhes dos itens no visualizador de inventário do meu painel.
Inclusive eu achei esses 2 pdfs que estão anexados nesse post perdidos por aí (Além de outros projetos relacionados), o que me ajudou bastante no começo.
E apartir disso eu construi esse projeto em php chamado PWHexParser que recebe um octet de um item, o tipo do item e retorna um json como resultado, exemplos:
Lendo octets de uma roupa:
<?php
require __DIR__ . '/../vendor/autoload.php';
$decoder = new App\Decoder();
$decoder->setItemType('Fashion'); // Weapon, Armor, Charm, Jewelry, Flight, Card...
$decoder->sethexString('1e00000092470100010a620072007500630065000000'); //Mandarin Silk Gown
$result = $decoder->decodeHexString();
header('Content-Type: application/json');
echo json_encode($result, JSON_PRETTY_PRINT);
Resultado:
{
"level_req": 30,
"color": 18322,
"gender": 1,
"creator_type": 1,
"name_length": 5,
"name": "bruce",
"color_mask": 0
}
Adivinhando o tipo do item (arma nesse caso):
<?php
require __DIR__ . '/../vendor/autoload.php';
$mask = 1; // Weapon
$decoder = new App\Decoder();
$decoder->guessItemType($mask);
$decoder->sethexString('5a00ff001001000031000000b4610000786900002c00040a4200720075006300650000000000090000000b00000000000000930200009b0500000000000000000000180000000000604000000000010000000000000003000000114500009200000001000000f02300004d000000cf2500000e000000');
$result = $decoder->decodeHexString();
header('Content-Type: application/json');
echo json_encode($result, JSON_PRETTY_PRINT);
Resultado:
{
"level": 90,
"class": 255,
"strength": 272,
"vitality": 0,
"dexterity": 49,
"magic": 0,
"min_durability": 250,
"max_durability": 270,
"item_type": 44,
"item_flag": 4,
"name_length": 10,
"name": "Bruce",
"ranged_type": 0,
"weapon_type": 9,
"weapon_grade": 11,
"ammunition_type": 0,
"min_physical_damage": 659,
"max_physical_damage": 1435,
"min_magic_damage": 0,
"max_magic_damage": 0,
"attack_rate": 0.83,
"attack_range": 3.5,
"minimum_range": 0,
"sockets_count": 1,
"sockets": [
0
],
"addons_count": 3,
"addons": {
"special_addons": [
{
"id": 1297,
"value": 146,
"level": 1
}
],
"normal_addons": [
{
"id": 1008,
"value": 77
},
{
"id": 1487,
"value": 14
}
],
"refine_addons": [
],
"socket_addons": [
]
}
}
O projeto está disponível no Github e também é possível instalar via composer:
Ele não está 100% finalizado ainda, mas já da pra utilizar em algum projeto de seu interesse. :)
Hex Data Guide v2T2.pdf Hex Code Guide By Drakaer.pdf