Рейтинг темы:
  • 0 Голос(ов) - 0 в среднем
  • 1
  • 2
  • 3
  • 4
  • 5
community
#11
Мда, вообщем решил я проблему. Если кто читать будет. Все было просто очень просто, а я перерыл каждую строчку которая уходит на метод, сравнивал с mobius вот это была жопа... Столько всего я еще не видалBig Grin а нужно было просто разрешить загрузку multisel ncp -1 так как multisell.xsd их не пропускал, т.к там идет проверка а именно
Код:
                                    <xs:restriction base="xs:positiveInteger">
                                        <xs:minInclusive value="1" />
                                        <xs:maxInclusive value="65535" />
                                    </xs:restriction>
после замены на
Код:
<xs:sequence minOccurs="1" maxOccurs="1">
                            <xs:element name="npc" minOccurs="1" maxOccurs="unbounded">
                                <xs:simpleType>
                                    <xs:restriction base="xs:integer" />
                                </xs:simpleType>
                            </xs:element>
                        </xs:sequence>
все успешно прогрузилось, и заработало...

Правдо как я понимаю сейчас только админ может открыть. буду сейчас проверять, в любом случае останется поправить проверку и все. Ну еще найти ее)))
p/s хороший такой урок для меня читать консоль и эксепшены в ней... там все было написанно, а я лазил в коде и искал не зная сам что;D

p/s/s Все замечательно, и не админ может спокойно покупать, замечательно! буду переписывать бафера телепорт, а потом займусь сервисами... Только вот когда я открою закрою мультисел пару раз на 3 он уже не открывается, но не всегда.. Сервер глючит я думаю, на пк всего 4 гига еще и куча вкладок и т.д
Ответ
#12
Задержка происходила из за того что не обновлялась страница в комьюнити, и клиент ждал информацию. Тоесть просто вис на какое то определенное время (около 5 секунд) а если вручную перезагружал комьюньку то все работало. Решал очень долго. Пришлось пройти от методов
Код:
final String html = HtmCache.getInstance().getHtm(activeChar.getHtmlPrefix(), "html/CommunityBoard/Custom/" + page + ".html");
            CommunityBoardHandler.separateAndSend(html, activeChar);
по всему коду. и вставлять свои логи да-бы понять где ошибка. Как окозалось у меня выполнялся не тот if в методе sendCBHtml класса Util т.к обьект html передавался как null а нул банально получался из за путей.... Толи у мобиуса ошибка, толи я не заметил где они ComunityBoard/Custom/ добавили... Хотя в вызове _home он есть. Смотрите сами их код https://www.assembla.com/spaces/l2jmobiu...Board.java

А именно:
Код:
if (command.equals("_bbshome") || command.equals("_bbstop"))
final String customPath = Config.CUSTOM_CB_ENABLED ? "Custom/" : "";
String html = HtmCache.getInstance().getHtm(activeChar.getHtmlPrefix(), "html/CommunityBoard/" + customPath + "home.html");

А вот тут
Код:
else if (Config.CUSTOM_CB_ENABLED && Config.COMMUNITYBOARD_ENABLE_MULTISELLS && command.startsWith("_bbsmultisell"))
final String html = HtmCache.getInstance().getHtm(activeChar.getHtmlPrefix(), "html/CommunityBoard/Custom/" + page + ".html");

Ничего подобного уже нет.. А ведь страница то находится все там же.. В папке Custom. Вообщем магия какая то с их исходниками и как только у них это рабоет..

После поправки на
Код:
else if (Config.CUSTOM_CB_ENABLED && Config.COMMUNITYBOARD_ENABLE_MULTISELLS && command.startsWith("_bbsmultisell"))
        {
            LOG.warning("MULTISEL COMAND nachalo");
            final String fullBypass = command.replace("_bbsmultisell;", "");
            final String[] buypassOptions = fullBypass.split(",");
            final int multisellId = Integer.parseInt(buypassOptions[0]);
            final String page = buypassOptions[1];
            final String html = HtmCache.getInstance().getHtm(activeChar.getHtmlPrefix(), "data/html/CommunityBoard/Custom/merchant/main.html");
            LOG.warning(html+" 1");
            LOG.warning(page);
            CommunityBoardHandler.separateAndSend(html, activeChar);
            MultisellData.getInstance().separateAndSend(multisellId, activeChar, null, false);
            LOG.warning("MULTISEL COMAND OK");
            return true;
        }

и кучи нерв, времени. Все успешно заработало. Как перенесу бафера выложу патч(Но только если получится сделать, не когда не пробовалBig Grin) или залью исходники, вдруг кому пригодится свежая лыжа с CB.

p/s Уважаемые, подскажите где искать проверку открытия мультиселов. Дело в том что открытие мультисела происходит так: bypass _bbsmultisell;600027,merchant/main и это работает у обычных игроков. А вот bypass _bbssell;merchant/main у обычных игроков работать отказывается. Реализация _bbssell следующая
Код:
else if (Config.CUSTOM_CB_ENABLED && Config.COMMUNITYBOARD_ENABLE_MULTISELLS && command.startsWith("_bbssell"))
        {
            final String page = command.replace("_bbssell;", "");
            final String html = HtmCache.getInstance().getHtm(activeChar.getHtmlPrefix(), "data/html/CommunityBoard/Custom/" + page + ".html");
            CommunityBoardHandler.separateAndSend(html, activeChar);
            activeChar.sendPacket(new BuyList(BuyListData.getInstance().getBuyList(423), activeChar.getAdena(), 0));
            activeChar.sendPacket(new ExBuySellList(activeChar, false));
            return true;
        }
Ответ
#13
Узнал что мобиус исправил продажу в 303 ревизии, можно как ни буть посмотреть изменения с 302----303 ревизию?



Все, в tortoise svn в reposytory browser можно смотреть логи за конкретную ревизию, там даже классы есть. Блин очень удобноSmile
/trunk/java/com/l2jserver/gameserver/network/clientpackets/RequestBuyItem.java
/trunk/java/com/l2jserver/gameserver/network/clientpackets/RequestSellItem.java

Пойду смотреть что там поменялось)

Хех, получается очень удобно смотреть где в какой стрчке произошли изменения, даже желтым подсвечиваетсяSmile

Кто занимается сборками, вот вы же за основу берете определенную сборку, и пилите в ней все что не работает, там предметы, рб, классы, Скилы,

Вы ведь не все переписываете с нуля, а просто правите, а чего нет, берете из шары сурсов других команд. Дак вот. Там ведь нет git и svn каким образом делается совмещение. Вручную просматривая классы(Когда знаешь что ищешь наверное проще) Или как то можно синхронизировать, просто слышал где то что сборки между собой синхронизируют, как это происходит?
Ответ


Возможно похожие темы ...
Тема Автор Ответы Просмотры Последний пост
  Community Server YuLs 8 3,840 01-22-2016, 08:09 PM
Последний пост: Yakuza
  Community Board задержка mego4el 6 1,654 12-01-2015, 07:19 PM
Последний пост: Zubastic
  Lineage 2 community oshadow 2 1,239 10-14-2015, 12:43 AM
Последний пост: demort
  Community Board fghk 64 19,115 07-27-2015, 02:58 PM
Последний пост: Disenchanted
  Community Board like Steam for Lineage communityboard 25 8,114 05-01-2015, 10:50 PM
Последний пост: PowerLife
  Нужна помощь с Community Board 0neTwo 10 3,977 12-11-2014, 03:34 PM
Последний пост: 0neTwo
  Ошибка Community тп Saikor 9 2,883 01-18-2014, 12:35 AM
Последний пост: Saikor
  Community board kekeIIIka 1 1,901 01-06-2014, 01:22 AM
Последний пост: DRIAD
  Как Открыть Диалог С Нпс Из Community Board ? Xample 0 1,695 11-18-2013, 01:23 AM
Последний пост: Xample
  Запрет телепорта во время боя Community Board the2fantasy 3 2,483 11-16-2013, 04:07 PM
Последний пост: the2fantasy

Перейти к форуму:


Пользователи, просматривающие эту тему: 1 Гость(ей)