До кучи, мини апдейт бонуксовского ExNpcInfo.
Насчёт формата полей не уверен
Код:
writeD(_npcObjId);
writeC(0x00);
writeH(37);
writeB(new byte[]{(byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF, (byte) 0xFF});
writeC(7 + _title.length() * 2); // Динамический блок
writeC(_isAttackable ? 1 : 0);
writeD(0x00);//UNK
writeCutS(_title);
writeH(0x00);
writeH(143); // статичный блок
writeD(_npcId + 1000000);
writeD(_loc.x);
writeD(_loc.y);
writeD(_loc.z + Config.CLIENT_Z_SHIFT);
writeD(_loc.h);
writeD(0x00);
writeD(_mAtkSpd);
writeD(_pAtkSpd);
writeF(_runSpdMul);
writeF(_atkSpdMul);
writeC(incombat);//Чек Анимации При нападении
writeC(0x00);//UNK
writeC(0x00);//UNK
writeC(0x00);//UNK
writeC(_isNameAbove ? 1 : 0);//Визуализирует нпц.
writeC(0x00);//UNK
writeC(0x00);//UNK
writeC(_team.ordinal());// Team - red/blue/none
writeD(0x00); //UNK
writeD(0x00); //UNK
writeD(_transformId); //Предположительно
writeD(0x00); //UNK
writeD(0x00); //UNK
writeD(0x00);
writeD(_HP);
writeD(_MP);
writeD(_maxHP);
writeD(_maxMP);
writeD(0x00); //UNK
writeD(0x00); //UNK
writeH(0x00); //UNK
writeC(0x00); //UNK
writeD(_nameNpcString.getId());
writeD(_titleNpcString.getId());
writeD(_titleColor);
writeD(0x00); //меняет цвет ника оО
writeD(0x00); //UNK
writeD(0x00); //UNK
writeD(0x00); //UNK
writeD(0x00); //UNK
writeC(0x00); //UNK
writeC(12); //UNK
writeC(0); //UNK
writeC(0); //UNK
Если есть инфа по анкноун полям, буду рад выслушать.