Всем привет. Такой вопрос, как правильно можно задать тот или иной стат на перо, чтобы стат отображался в игре на пере, к примеру чтобы после заточки на +25 появлялся стат на пвп защиту? Сам стат пера я прописал в статах и в сервисе заточки, при исп команды //info стат отображается, а вот на самом пере не виден. Так же нашел пакет статов пера в файле ManaStoneInfoBlobEntry , но не знаю как именно правильно прописать эти write. Может кто помочь.
у тебя будет кличка СМАЙЛИК , ведь половина твоих сообщений тупо смайлики не несущие ни какой инфы ))
так.. чисто порассуждать (возможно натолкну на мысли) к какому виду экипировки относится перо ?(ты это должен знать), на каком конкретном пере/браслете(они тоже разные) не отображаются статы ? и да, желательно
сборка 4.9 перо относится к виду брони, если брать конкретное перо, то это Особое перо Кайсинеля (физ. атака) Please login or register to view links п.с помню на клизме такое было, что при +30 давались доп статы в виде СИ.
перо это та же бижа по сути и реализация там та же самая (если конечно у тебя реализованы пвп статы у бижи). чет думал ты про такое Please login or register to view links у которого есть конкретные статы. Про +30 ... разбери клиент и посмотри есть там такой параметр или нет, может это собственная модификация предмета была.
блин( Ну короче есть пакет отображающий статы. Перу применяешь по иду в пакете другие статы - например СИ и делаешь отображение если итем ид == перу все довольно просто. Ну и в енчант хмл указываешь значение
Этот? Спойлер Код: private void writePlumeStats(ByteBuffer buf) { Item item = ownerItem; if (item.getItemTemplate().isPlume()) { writeD(buf, 0);//unk plume stat writeD(buf, 0);//value writeD(buf, 0);//unk plume stat writeD(buf, 0);//value writeD(buf, 42); writeD(buf, item.getAuthorize() * 150); //HP Boost for Tempering Solution if (item.getItemTemplate().getAuthorizeName() == 10051 || item.getItemTemplate().getAuthorizeName() == 10063) { writeD(buf, 30); writeD(buf, item.getAuthorize() * 4);//Physical Attack writeD(buf, 0);//New Plume Stat 4.7.5.6 (NcSoft will implement it at future) writeD(buf, 0); } else if (item.getItemTemplate().getAuthorizeName() == 10052 || item.getItemTemplate().getAuthorizeName() == 10064){ writeD(buf, 35); writeD(buf, item.getAuthorize() * 20); //Magic Boost writeD(buf, 0);//New Plume Stat 4.7.5.6 (NcSoft will implement it at future) writeD(buf, 0); } else if (item.getItemTemplate().getAuthorizeName() == 10056 || item.getItemTemplate().getAuthorizeName() == 10065){ writeD(buf, 33); writeD(buf, item.getAuthorize() * 12); //Physical Critical writeD(buf, 0);//New Plume Stat 4.7.5.6 (NcSoft will implement it at future) writeD(buf, 0); } else if (item.getItemTemplate().getAuthorizeName() == 10057 || item.getItemTemplate().getAuthorizeName() == 10066) { writeD(buf, 36); writeD(buf, item.getAuthorize() * 8); //Magical Accuracy writeD(buf, 0);//New Plume Stat 4.7.5.6 (NcSoft will implement it at future) writeD(buf, 0); } //Some Padding for future. writeD(buf, 0);//unk plume stat writeD(buf, 0);//value writeD(buf, 0);//unk plume stat writeD(buf, 0);//value writeD(buf, 0);//unk plume stat writeD(buf, 0);//value } else { writeB(buf, new byte[64]); } }
Все есть в клиенте. Статы, параметры, типы. Пишите парсер и паристе. По байтам это ищите верный снифф пакетов. Каждому модифаеру была своя таблица присвоена со своим ид и параметрами. Вам лишь надо спарсить ее и запилить под сборку.
Код: <item_template id="187100023" name="Особое перо Кайсинеля (физ. атака)" desc="1696653" name_desc="master_tshirt_l_physical_01" level="10" mask="4158" category="NONE" armor_type="TSHIRT_SPECIAL" max_stack_count="1" item_type="NORMAL" quality="MYTHIC" price="25" race="ELYOS" restrict="10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10,10" slot="524288" equipment_type="ARMOR" tempering_table_id="10063" max_tempering="255"> <modifiers> <add name="PHYSICAL_ATTACK" value="1" bonus="true"/> </modifiers> </item_template> Код: <item_tempering id="10109" name="tshirt_sub_physical_critical"> <tempering level="1"> <modifiers> <add name="MAXHP" value="175" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="15" bonus="true"/> </modifiers> </tempering> <tempering level="2"> <modifiers> <add name="MAXHP" value="350" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="30" bonus="true"/> </modifiers> </tempering> <tempering level="3"> <modifiers> <add name="MAXHP" value="525" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="45" bonus="true"/> </modifiers> </tempering> <tempering level="4"> <modifiers> <add name="MAXHP" value="700" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="60" bonus="true"/> </modifiers> </tempering> <tempering level="5"> <modifiers> <add name="MAXHP" value="875" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="75" bonus="true"/> </modifiers> </tempering> <tempering level="6"> <modifiers> <add name="MAXHP" value="1050" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="90" bonus="true"/> </modifiers> </tempering> <tempering level="7"> <modifiers> <add name="MAXHP" value="1225" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="105" bonus="true"/> </modifiers> </tempering> <tempering level="8"> <modifiers> <add name="MAXHP" value="1400" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="120" bonus="true"/> </modifiers> </tempering> <tempering level="9"> <modifiers> <add name="MAXHP" value="1575" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="135" bonus="true"/> </modifiers> </tempering> <tempering level="10"> <modifiers> <add name="MAXHP" value="1750" bonus="true"/> <add name="PHYSICAL_CRITICAL" value="150" bonus="true"/> </modifiers> </tempering> </item_tempering>
Если у тебя есть как скинул Dision спарсенные хмл то оно будет прямо из xml работать. Если конечно реализовано. А если не реализовано - то в пакете делать Вроде пакет тот
writeD(buf, 30); //Тут выставляем номер стата который вы хотите чтоб перо отображало <-- главное тут знать номер стата, 30 это Физическая атака Physical Attack writeD(buf, item.getAuthorize() * 4);// тут ставим количество которое вы хотите чтоб перо отображало writeD(buf, 0);/ writeD(buf, 0); ну и само ссобой добавляем персонажу стат который вы тут рисуете и не надо нах гдето чего-то менять добавлять