quest крашит клиент - Форум администраторов игровых серверов
Форум администраторов игровых серверов StormWall - Защита от DDos атак
Регистрация Мнения Справка Пользователи Календарь Все разделы прочитаны
Вернуться   Форум администраторов игровых серверов > MMO > Lineage II > Работа со скриптами

Работа со скриптами Помощь в редактировании и написании квестов к Java серверам, а так же эвентов.

Ответ
Опции темы
Непрочитано 24.04.2016, 16:03   #1
Заинтересовавшийся

Автор темы (Топик Стартер) quest крашит клиент

Всем привет. Подскажите по проблеме.
Сборка L2open 690rev. Gracia Final
Квест 152_ShardsOfGolem
не правильно были прописаны ссылки <a action="bypass -h ...>
я поправил. Квест заработал. Прошел квест. Сдаю. Как только выдается награда сразу игра останавливается и намертво виснет. Кое-как снял задачу. Подумал совпадение. Прошел другим чаром квест, результат тот же. Что может быть и как править?
CABA вне форума Ответить с цитированием
Непрочитано 24.04.2016, 16:31   #2
Изгнанные

По умолчанию Re: quest крашит клиент

Цитата:
Сообщение от CABA Посмотреть сообщение
Всем привет. Подскажите по проблеме.
Сборка L2open 690rev. Gracia Final
Квест 152_ShardsOfGolem
не правильно были прописаны ссылки <a action="bypass -h ...>
я поправил. Квест заработал. Прошел квест. Сдаю. Как только выдается награда сразу игра останавливается и намертво виснет. Кое-как снял задачу. Подумал совпадение. Прошел другим чаром квест, результат тот же. Что может быть и как править?
Функцию выдачи награды сюда. Были ли подобные проблемы с другими квестами?
GenCloud вне форума Отправить сообщение для GenCloud с помощью Skype™ Ответить с цитированием
Непрочитано 24.04.2016, 16:35   #3
Пользователь

По умолчанию Re: quest крашит клиент

Ну очевидно что на моменте выдачи крашит. Значит проблема именно там.
Emperor вне форума Ответить с цитированием
Непрочитано 24.04.2016, 17:07   #4
Заинтересовавшийся

Автор темы (Топик Стартер) Re: quest крашит клиент

Цитата:
Сообщение от GenCloud Посмотреть сообщение
Функцию выдачи награды сюда.
C другими проблем не замечал.
Скрипт:
http://pastebin.com/qda1zFZU
CABA вне форума Ответить с цитированием
Непрочитано 24.04.2016, 17:30   #5
Изгнанные

По умолчанию Re: quest крашит клиент

Цитата:
Сообщение от CABA Посмотреть сообщение
C другими проблем не замечал.
Скрипт:
http://pastebin.com/qda1zFZU
1) переведите этот кусок говна на Java
2) вот говнопример этого квеста
Код:
public class ShardsOfGolem extends Quest
{
    private static final String qn = "152_ShardsOfGolem";
    private final int HARRYS_RECEIPT1_ID = 1008;
    private final int HARRYS_RECEIPT2_ID = 1009;
    private final int GOLEM_SHARD_ID = 1010;
    private final int TOOL_BOX_ID = 1011;
    private final int WOODEN_BP_ID = 23;
    private final int HARRIS = 30035;
    private final int ALTRAN = 30283;
    private final int[] questItems;
    private final QuestHolder[] _qArray;
    
    public ShardsOfGolem() {
        super(152, "152_ShardsOfGolem", "Ремонт храма");
        questItems = new int[] { 1008, 1009, 1010, 1011 };
        addStartNpc(30035);
        addTalkId(30035);
        addTalkId(30283);
        addKillId(20016);
        questItemIds = questItems;
        _qArray = getQuestDrop(getQuestIntId());
    }
    
    @Override
    public String onAdvEvent(final String event, final L2NpcInstance npc, final L2PcInstance player) {
        final QuestState st = player.getQuestState("152_ShardsOfGolem");
        if (st == null) {
            return null;
        }
        final int id = st.getState();
        final int cond = st.getInt("cond");
        if (id != 2) {
            if (event.equalsIgnoreCase("30035-04.htm") && cond == 0) {
                st.set("cond", "1");
                st.setState((byte)1);
                st.playSound("ItemSound.quest_accept");
                st.giveItems(1008, 1);
            }
            else if (event.equalsIgnoreCase("30283-02.htm") && cond == 1 && st.getQuestItemsCount(1008) != 0) {
                st.takeItems(1008, -1L);
                st.giveItems(1009, 1);
                st.set("cond", "2");
            }
        }
        return event;
    }
    
    @Override
    public String onTalk(final L2NpcInstance npc, final L2PcInstance player) {
        String htmltext = "<html><body>Вы не взяли квест для этого NPC или просто не соответствуете его минимальным требованиям!</body></html>";
        final QuestState st = player.getQuestState("152_ShardsOfGolem");
        if (st == null) {
            return htmltext;
        }
        final int id = st.getState();
        if (id == 2) {
            htmltext = "<html><body>Данный квест уже Вами пройден.</body></html>";
        }
        final int npcId = npc.getNpcId();
        final int cond = st.getInt("cond");
        final int receipt1 = st.getQuestItemsCount(1008);
        final int receipt2 = st.getQuestItemsCount(1009);
        final int toolbox = st.getQuestItemsCount(1011);
        if (npcId == 30035) {
            if (cond == 0) {
                if (player.getLevel() >= 10 && player.getLevel() <= 17) {
                    htmltext = "30035-03.htm";
                }
                else {
                    htmltext = "30035-02.htm";
                    st.exitQuest(true);
                }
            }
            else if (cond == 1 && receipt1 != 0 && toolbox == 0) {
                htmltext = "30035-05.htm";
            }
            else if (cond == 3 && toolbox != 0) {
                st.takeItems(1011, -1L);
                st.takeItems(1009, -1L);
                st.unset("cond");
                st.exitQuest(false);
                st.playSound("ItemSound.quest_finish");
                st.giveItems(23, 1);
                st.addExpAndSp(5000, 0);
                htmltext = "30035-06.htm";
            }
        }
        else if (npcId == 30283 && id == 1) {
            final int shards = st.getQuestItemsCount(1010);
            if (cond == 1 && receipt1 != 0) {
                htmltext = "30283-01.htm";
            }
            else if (cond == 2 && receipt2 != 0 && shards < 5 && toolbox == 0) {
                htmltext = "30283-03.htm";
            }
            else if (cond == 3 && receipt2 != 0 && shards >= 5 && toolbox == 0) {
                st.takeItems(1010, -1L);
                st.giveItems(1011, 1);
                htmltext = "30283-04.htm";
            }
            else if (cond == 3 && receipt2 != 0 && toolbox != 0) {
                htmltext = "30283-05.htm";
            }
        }
        return htmltext;
    }
    
    @Override
    public String onKill(final L2NpcInstance npc, final L2PcInstance player, final boolean isPet) {
        final QuestState st = player.getQuestState("152_ShardsOfGolem");
        if (st == null) {
            return null;
        }
        if (st.getState() != 1) {
            return null;
        }
        if (player.getLevel() < 10 && player.getLevel() > 17) {
            return null;
        }
        if (st.getInt("cond") == 2 && st.getQuestItemsCount(1010) < 5 && _qArray != null) {
            final int chance = st.getRandom(100);
            for (int i = 0; i < _qArray.length; ++i) {
                if (chance < _qArray[i].getChance()) {
                    st.giveQuestItems(_qArray[i].getId(), 1 * _qArray[i].getRate(), _qArray[i].useRate());
                    if (st.getQuestItemsCount(1010) >= 5) {
                        st.playSound("ItemSound.quest_middle");
                        st.set("cond", "3");
                    }
                    else {
                        st.playSound("ItemSound.quest_itemget");
                    }
                }
            }
        }
        return super.onKill(npc, player, isPet);
    }
}
GenCloud вне форума Отправить сообщение для GenCloud с помощью Skype™ Ответить с цитированием
Непрочитано 24.04.2016, 17:45   #6
Заинтересовавшийся

Автор темы (Топик Стартер) Re: quest крашит клиент

Цитата:
Сообщение от GenCloud Посмотреть сообщение
1) переведите этот кусок говна на Java
[/CODE]
я так понимаю просто так не перевести. это же в движке зашито, как он квесты воспринимает. и если вместо jyphon будет ява, он просто его не загрузит
CABA вне форума Ответить с цитированием
Ответ

Метки
crash, quest


Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 
Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Quest на щит zerp Lineage II 2 22.09.2015 03:26
Quest.java kloni1 Работа со скриптами 3 25.09.2012 13:29
Quest'Ы эпик рб Machine Lineage II 4 06.06.2010 14:24
Classmaster quest Navakasi Lineage II 4 28.08.2009 16:18
Quest Editor Fugunsk World of WarCraft 0 24.01.2009 18:25


© 2007–2024 «Форум администраторов игровых серверов»
Защита сайта от DDoS атак — StormWall
Работает на Булке неизвестной версии с переводом от zCarot
Текущее время: 17:09. Часовой пояс GMT +3.

Вверх