Перейти к содержанию
Авторизация  
nickerder

Offline Trade PWsoft

Рекомендуемые сообщения

Ошибка заключается в
ХХХХХ: 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 не существует xbiggrin.png.pagespeed.ic.yJVH25T4ne.png
Кто знает как это исправить? 

Хотя бы подскажите куда лезть. Сборка Pwsoft

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ошибка заключается в

ХХХХХ: 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 не существует xbiggrin.png.pagespeed.ic.yJVH25T4ne.png

Кто знает как это исправить? 

Хотя бы подскажите куда лезть. Сборка Pwsoft

не какое то восьмизначное число а объект ид.  так и должно быть по нормальному. во 2х там говорят  есть дюп с включенным офлайн трейдом

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну если посмотреть с другой стороны на данную ошибку у тебя работает дюп через офлайн трейд, правка через ядро.

 

соль в tradelist.java и её надо ковырять.

 

больше не знаю чем тебе помочь, больше 2 лет не работал с pwsoft.

  • Upvote 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Любой вопрос вы можете задать со статусом клиента самому разработчику http://pwsoft.ru/staff/

более чем уверен шара :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

не какое то восьмизначное число а объект ид.  так и должно быть по нормальному. во 2х там говорят  есть дюп с включенным офлайн трейдом

На дюп сейчас не обращаю внимания. В данный момент хочу запустить просто оффлайн трейд что бы сел, и пережил рестарт.

 

Ну если посмотреть с другой стороны на данную ошибку у тебя работает дюп через офлайн трейд, правка через ядро.

 

соль в tradelist.java и её надо ковырять.

 

больше не знаю чем тебе помочь, больше 2 лет не работал с pwsoft.

Этот ответ полезный, хоть знаю что ковырять. Спасибо с меня +.

 

Любой вопрос вы можете задать со статусом клиента самому разработчику http://pwsoft.ru/staff/

 

более чем уверен шара :)

У меня шара. сборка давно завалялась, сейчас решил поковырять ее)

Изменено пользователем nickerder

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На дюп сейчас не обращаю внимания. В данный момент хочу запустить просто оффлайн трейд что бы сел, и пережил рестарт.

 

Этот ответ полезный, хоть знаю что ковырять. Спасибо с меня +.

 

 

У меня шара. сборка давно завалялась, сейчас решил поковырять ее)

Тема офф. Теперь работает ошибка была в TradeList.java и MMOCore.java

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Если кому-то еще актуально в 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]));
Изменено пользователем lames

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
В 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]));

сделал все как написали... всеравно не работает......

 

 

2023-04-08_11-26-32.png

Изменено пользователем doloto

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!

Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.

Войти
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×
×
  • Создать...