nickerder 21 Опубликовано 22 марта, 2016 Ошибка заключается вХХХХХ: Attempt to add invalid item to TradeList!Когда садишь игрока на торг, в базе данных сохраняется итем_ид;количество;цена Вот и есть ошибка.. я ставлю на продажу итем 1868. А в базе сохраняется восьмизначное число какое то вместо итем_ид.при выключеном сервере я вручную заменил итем_ид на нормальный. И трейд заработал.Если в ручную не менять то выдает вот ошибку:ХХХХХ: Attempt to add invalid item to TradeList!GameServer [ERROR]: Failed to restore offline traders. Reason: nulljava.lang.NumberFormatException: nullat java.lang.Integer.parseInt(Integer.java:454)at java.lang.Integer.parseInt(Integer.java:527)at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.restore(L2PcInstance.java:6517)at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.load(L2PcInstance.java:817)at net.sf.l2j.gameserver.network.L2GameClient.loadCharFromDisk(L2GameClient.java:418)at net.sf.l2j.gameserver.datatables.CustomServerData$1.run(CustomServerData.java:670)at java.lang.Thread.run(Thread.java:745)И это логично учитывая что итема 16865458 не существует Кто знает как это исправить? Хотя бы подскажите куда лезть. Сборка Pwsoft Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
LifeGame32 312 Опубликовано 22 марта, 2016 Ошибка заключается в ХХХХХ: Attempt to add invalid item to TradeList! Когда садишь игрока на торг, в базе данных сохраняется итем_ид;количество;цена Вот и есть ошибка.. я ставлю на продажу итем 1868. А в базе сохраняется восьмизначное число какое то вместо итем_ид. при выключеном сервере я вручную заменил итем_ид на нормальный. И трейд заработал. Если в ручную не менять то выдает вот ошибку: ХХХХХ: Attempt to add invalid item to TradeList! GameServer [ERROR]: Failed to restore offline traders. Reason: null java.lang.NumberFormatException: null at java.lang.Integer.parseInt(Integer.java:454) at java.lang.Integer.parseInt(Integer.java:527) at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.restore(L2PcInstance.java:6517) at net.sf.l2j.gameserver.model.actor.instance.L2PcInstance.load(L2PcInstance.java:817) at net.sf.l2j.gameserver.network.L2GameClient.loadCharFromDisk(L2GameClient.java:418) at net.sf.l2j.gameserver.datatables.CustomServerData$1.run(CustomServerData.java:670) at java.lang.Thread.run(Thread.java:745) И это логично учитывая что итема 16865458 не существует Кто знает как это исправить? Хотя бы подскажите куда лезть. Сборка Pwsoft не какое то восьмизначное число а объект ид. так и должно быть по нормальному. во 2х там говорят есть дюп с включенным офлайн трейдом Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ginex 1 Опубликовано 22 марта, 2016 Ну если посмотреть с другой стороны на данную ошибку у тебя работает дюп через офлайн трейд, правка через ядро. соль в tradelist.java и её надо ковырять. больше не знаю чем тебе помочь, больше 2 лет не работал с pwsoft. 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
whаtever 203 Опубликовано 22 марта, 2016 Любой вопрос вы можете задать со статусом клиента самому разработчику http://pwsoft.ru/staff/ Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Ginex 1 Опубликовано 22 марта, 2016 Любой вопрос вы можете задать со статусом клиента самому разработчику http://pwsoft.ru/staff/ более чем уверен шара Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
nickerder 21 Опубликовано 22 марта, 2016 (изменено) не какое то восьмизначное число а объект ид. так и должно быть по нормальному. во 2х там говорят есть дюп с включенным офлайн трейдом На дюп сейчас не обращаю внимания. В данный момент хочу запустить просто оффлайн трейд что бы сел, и пережил рестарт. Ну если посмотреть с другой стороны на данную ошибку у тебя работает дюп через офлайн трейд, правка через ядро. соль в tradelist.java и её надо ковырять. больше не знаю чем тебе помочь, больше 2 лет не работал с pwsoft. Этот ответ полезный, хоть знаю что ковырять. Спасибо с меня +. Любой вопрос вы можете задать со статусом клиента самому разработчику http://pwsoft.ru/staff/ более чем уверен шара У меня шара. сборка давно завалялась, сейчас решил поковырять ее) Изменено 22 марта, 2016 пользователем nickerder Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
nickerder 21 Опубликовано 25 марта, 2016 На дюп сейчас не обращаю внимания. В данный момент хочу запустить просто оффлайн трейд что бы сел, и пережил рестарт. Этот ответ полезный, хоть знаю что ковырять. Спасибо с меня +. У меня шара. сборка давно завалялась, сейчас решил поковырять ее) Тема офф. Теперь работает ошибка была в TradeList.java и MMOCore.java Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
lames 0 Опубликовано 7 мая, 2020 (изменено) Если кому-то еще актуально в L2PcInstance.java заменить 3 строки в методе saveTradeList tb.append(i.getItem().getItemId() + ";" + i.getCount() + ";" + i.getPrice() + ":"); на tb.append(i.getItem().getItemId() + ";" + i.getCount() + ";" + i.getPrice() + ";" + i.getEnchant() + ":"); в методе restoreTradeList if (values.length < 3) { continue; } _buyList.addItem(Integer.parseInt(values[0]), Integer.parseInt(values[1]), Integer.parseInt(values[2])); на if (values.length < 4) { continue; } _buyList.addItemByItemId(Integer.parseInt(values[0]), Integer.parseInt(values[1]), Integer.parseInt(values[2]), Integer.parseInt(values[3])); Изменено 7 мая, 2020 пользователем lames Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
doloto 7 Опубликовано 8 апреля, 2023 (изменено) В 07.05.2020 в 12:52, lames сказал: Если кому-то еще актуально в L2PcInstance.java заменить 3 строки в методе saveTradeList tb.append(i.getItem().getItemId() + ";" + i.getCount() + ";" + i.getPrice() + ":"); на tb.append(i.getItem().getItemId() + ";" + i.getCount() + ";" + i.getPrice() + ";" + i.getEnchant() + ":"); в методе restoreTradeList if (values.length < 3) { continue; } _buyList.addItem(Integer.parseInt(values[0]), Integer.parseInt(values[1]), Integer.parseInt(values[2])); на if (values.length < 4) { continue; } _buyList.addItemByItemId(Integer.parseInt(values[0]), Integer.parseInt(values[1]), Integer.parseInt(values[2]), Integer.parseInt(values[3])); сделал все как написали... всеравно не работает...... Изменено 8 апреля, 2023 пользователем doloto Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты