appleopple 1 Опубликовано 8 февраля, 2015 (изменено) Доброго времени суток, столкнулся с такой проблемой, пытаюсь перенести квэст на сборку пв, кв самописный, вроде бы все перенес, в гс пишет все квэсты имортированы, но при попытке взять квэст ничего не происходит просто закрывается диалог, и в гс ошибка . Изменено 8 февраля, 2015 пользователем appleopple Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Yellow 30 Опубликовано 8 февраля, 2015 быть может ошибки в коде квеста есть,на предыдущей сборке адекватно себя ведет ? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
appleopple 1 Опубликовано 8 февраля, 2015 быть может ошибки в коде квеста есть,на предыдущей сборке адекватно себя ведет ? да на другой сборке норм, но сборка другая, и он прописывался в sborka/config/scripts.cfg а на этой нужно в /sborka/data/jscript/quest/ini.py Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Naik 419 Опубликовано 8 февраля, 2015 Правь квест. Скорее всего неправильно стадию квеста присваивает. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
appleopple 1 Опубликовано 8 февраля, 2015 Правь квест. Скорее всего неправильно стадию квеста присваивает. Поэтому и нужна помощь, квэст писал не я, и даже не знаю что где править в нем Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 8 февраля, 2015 Поэтому и нужна помощь, квэст писал не я, и даже не знаю что где править в нем Что за квест? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
appleopple 1 Опубликовано 8 февраля, 2015 (изменено) Что за квест? На крылья, и на шмот, из шары la2onix Там сборка l2j-evo(eonsw) Изменено 8 февраля, 2015 пользователем appleopple Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 Квест перепиши! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 На крылья, и на шмот, из шары la2onix Там сборка l2j-evo(eonsw) Дай фаил я тебе поправлю Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 1.квест import sys from net.sf.l2j import Config from net.sf.l2j.gameserver.model.quest import State from net.sf.l2j.gameserver.model.quest import QuestState from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest qn = "q902_FeatherGathering" ## нпц NPC = 77777 ## Мобы MOBS = [22126,22124,22123] #босс BOSS = 70020 ## Дроп #id перьев с мобов в мос FEATHER = 9983 #сколько нужно? FEATHER_NEED = 300 #шанс дропа, % FEATHER_CHANCE = 50 #id итема с босса BOSS_ITEM = 9984 ##Награда #id крыльев WINGS = 9996 class Quest (JQuest) : def __init__(self,id,name,descr) : JQuest.__init__(self,id,name,descr) def onEvent (self,event,st) : htmltext = event if event == "accept.htm": st.setState(State.STARTED) st.playSound("ItemSound.quest_accept") st.set("cond","1") elif event == "finish.htm": if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: st.takeItems(FEATHER, -1) st.takeItems(BOSS_ITEM, -1) st.giveItems(WINGS, 1) st.set("cond","0") st.playSound("ItemSound.quest_finish") st.setState(State.COMPLETED) else: htmltext = "mobs.htm" return htmltext def onTalk (self,npc,player): st = player.getQuestState(qn) if not st: return "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>" npcId = npc.getNpcId() idd = st.getState() cond = st.getInt("cond") if npcId == NPC: if idd == State.COMPLETED : htmltext = "completed.htm" if idd == State.CREATED : htmltext = "hello1.htm" elif cond == 1: if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: htmltext = "mobs2.htm" else: htmltext = "mobs.htm" return htmltext def onKill(self,npc,player,isPet): st = player.getQuestState(qn) if not st or st.getInt("cond") != 1: return npcId = npc.getNpcId() reward = 0 limit = 1 chance = 100 if npcId in MOBS: reward = FEATHER limit = FEATHER_NEED chance = FEATHER_CHANCE if npcId == BOSS: reward = BOSS_ITEM limit = 1 if reward > 0: party = player.getParty() if party: for member in party.getPartyMembers(): if not member.isAlikeDead(): st = member.getQuestState("q902_FeatherGathering") if st and st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") if st.getQuestItemsCount(reward) >= limit: st.playSound("ItemSound.quest_middle") else: if st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") return QUEST = Quest(902, qn, "Feather Gathering") QUEST.addStartNpc(NPC) QUEST.addTalkId(NPC) QUEST.addKillId(BOSS) for m in MOBS: QUEST.addKillId(m) 2. квест import sys from net.sf.l2j import Config from net.sf.l2j.gameserver.model.quest import State from net.sf.l2j.gameserver.model.quest import QuestState from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest qn = "q903_FeatherGathering" ## нпц NPC = 77778 ## Мобы MOBS = [21377,21652,21376,21378,21394] #босс BOSS = 70021 ## Дроп #id сплавов с мобов в мос FEATHER = 10596 #сколько нужно? FEATHER_NEED = 1000 #шанс дропа, % FEATHER_CHANCE = 100 #id итема с босса BOSS_ITEM = 10598 ##Награда #id крыльев VESPER = 10599 class Quest (JQuest) : def __init__(self,id,name,descr) : JQuest.__init__(self,id,name,descr) def onEvent (self,event,st) : htmltext = event if event == "accept.htm": st.setState(State.STARTED) st.playSound("ItemSound.quest_accept") st.set("cond","1") elif event == "finish.htm": if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: st.takeItems(FEATHER, -1) st.takeItems(BOSS_ITEM, -1) st.giveItems(VESPER, 5) st.set("cond","0") st.playSound("ItemSound.quest_finish") st.setState(State.COMPLETED) else: htmltext = "mobs.htm" return htmltext def onTalk (self,npc,player): st = player.getQuestState(qn) if not st: return "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>" npcId = npc.getNpcId() idd = st.getState() cond = st.getInt("cond") if npcId == NPC: if idd == State.COMPLETED : htmltext = "completed.htm" if idd == State.CREATED : htmltext = "hello1.htm" elif cond == 1: if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: htmltext = "mobs2.htm" else: htmltext = "mobs.htm" return htmltext def onKill(self,npc,player,isPet): st = player.getQuestState(qn) if not st or st.getInt("cond") != 1: return npcId = npc.getNpcId() reward = 0 limit = 1 chance = 100 if npcId in MOBS: reward = FEATHER limit = FEATHER_NEED chance = FEATHER_CHANCE if npcId == BOSS: reward = BOSS_ITEM limit = 1 if reward > 0: party = player.getParty() if party: for member in party.getPartyMembers(): if not member.isAlikeDead(): st = member.getQuestState("q903_FeatherGathering") if st and st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") if st.getQuestItemsCount(reward) >= limit: st.playSound("ItemSound.quest_middle") else: if st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") return QUEST = Quest(903, qn, "Feather Gathering") QUEST.addStartNpc(NPC) QUEST.addTalkId(NPC) QUEST.addKillId(BOSS) for m in MOBS: QUEST.addKillId(m) Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 1.квест import sys from net.sf.l2j import Config from net.sf.l2j.gameserver.model.quest import State from net.sf.l2j.gameserver.model.quest import QuestState from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest qn = "q902_FeatherGathering" ## нпц NPC = 77777 ## Мобы MOBS = [22126,22124,22123] #босс BOSS = 70020 ## Дроп #id перьев с мобов в мос FEATHER = 9983 #сколько нужно? FEATHER_NEED = 300 #шанс дропа, % FEATHER_CHANCE = 50 #id итема с босса BOSS_ITEM = 9984 ##Награда #id крыльев WINGS = 9996 class Quest (JQuest) : def __init__(self,id,name,descr) : JQuest.__init__(self,id,name,descr) def onEvent (self,event,st) : htmltext = event if event == "accept.htm": st.setState(State.STARTED) st.playSound("ItemSound.quest_accept") st.set("cond","1") elif event == "finish.htm": if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: st.takeItems(FEATHER, -1) st.takeItems(BOSS_ITEM, -1) st.giveItems(WINGS, 1) st.set("cond","0") st.playSound("ItemSound.quest_finish") st.setState(State.COMPLETED) else: htmltext = "mobs.htm" return htmltext def onTalk (self,npc,player): st = player.getQuestState(qn) if not st: return "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>" npcId = npc.getNpcId() idd = st.getState() cond = st.getInt("cond") if npcId == NPC: if idd == State.COMPLETED : htmltext = "completed.htm" if idd == State.CREATED : htmltext = "hello1.htm" elif cond == 1: if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: htmltext = "mobs2.htm" else: htmltext = "mobs.htm" return htmltext def onKill(self,npc,player,isPet): st = player.getQuestState(qn) if not st or st.getInt("cond") != 1: return npcId = npc.getNpcId() reward = 0 limit = 1 chance = 100 if npcId in MOBS: reward = FEATHER limit = FEATHER_NEED chance = FEATHER_CHANCE if npcId == BOSS: reward = BOSS_ITEM limit = 1 if reward > 0: party = player.getParty() if party: for member in party.getPartyMembers(): if not member.isAlikeDead(): st = member.getQuestState("q902_FeatherGathering") if st and st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") if st.getQuestItemsCount(reward) >= limit: st.playSound("ItemSound.quest_middle") else: if st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") return QUEST = Quest(902, qn, "Feather Gathering") QUEST.addStartNpc(NPC) QUEST.addTalkId(NPC) QUEST.addKillId(BOSS) for m in MOBS: QUEST.addKillId(m) 2. квест import sys from net.sf.l2j import Config from net.sf.l2j.gameserver.model.quest import State from net.sf.l2j.gameserver.model.quest import QuestState from net.sf.l2j.gameserver.model.quest.jython import QuestJython as JQuest qn = "q903_FeatherGathering" ## нпц NPC = 77778 ## Мобы MOBS = [21377,21652,21376,21378,21394] #босс BOSS = 70021 ## Дроп #id сплавов с мобов в мос FEATHER = 10596 #сколько нужно? FEATHER_NEED = 1000 #шанс дропа, % FEATHER_CHANCE = 100 #id итема с босса BOSS_ITEM = 10598 ##Награда #id крыльев VESPER = 10599 class Quest (JQuest) : def __init__(self,id,name,descr) : JQuest.__init__(self,id,name,descr) def onEvent (self,event,st) : htmltext = event if event == "accept.htm": st.setState(State.STARTED) st.playSound("ItemSound.quest_accept") st.set("cond","1") elif event == "finish.htm": if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: st.takeItems(FEATHER, -1) st.takeItems(BOSS_ITEM, -1) st.giveItems(VESPER, 5) st.set("cond","0") st.playSound("ItemSound.quest_finish") st.setState(State.COMPLETED) else: htmltext = "mobs.htm" return htmltext def onTalk (self,npc,player): st = player.getQuestState(qn) if not st: return "<html><body>You are either not on a quest that involves this NPC, or you don't meet this NPC's minimum quest requirements.</body></html>" npcId = npc.getNpcId() idd = st.getState() cond = st.getInt("cond") if npcId == NPC: if idd == State.COMPLETED : htmltext = "completed.htm" if idd == State.CREATED : htmltext = "hello1.htm" elif cond == 1: if st.getQuestItemsCount(FEATHER) >= FEATHER_NEED and st.getQuestItemsCount(BOSS_ITEM) >= 1: htmltext = "mobs2.htm" else: htmltext = "mobs.htm" return htmltext def onKill(self,npc,player,isPet): st = player.getQuestState(qn) if not st or st.getInt("cond") != 1: return npcId = npc.getNpcId() reward = 0 limit = 1 chance = 100 if npcId in MOBS: reward = FEATHER limit = FEATHER_NEED chance = FEATHER_CHANCE if npcId == BOSS: reward = BOSS_ITEM limit = 1 if reward > 0: party = player.getParty() if party: for member in party.getPartyMembers(): if not member.isAlikeDead(): st = member.getQuestState("q903_FeatherGathering") if st and st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") if st.getQuestItemsCount(reward) >= limit: st.playSound("ItemSound.quest_middle") else: if st.getQuestItemsCount(reward) < limit and st.getRandom(100) <= chance: st.giveItems(reward, 1) st.playSound("ItemSound.quest_itemget") return QUEST = Quest(903, qn, "Feather Gathering") QUEST.addStartNpc(NPC) QUEST.addTalkId(NPC) QUEST.addKillId(BOSS) for m in MOBS: QUEST.addKillId(m) Попробуй вот Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 Те же ошибки ( Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 (изменено) Те же ошибки ( Ты скорей что то не правильно делаешь....Хочешь кинь кв я переделаю под pw Изменено 9 февраля, 2015 пользователем kama 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 Куда скинуть? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Artur_xD 403 Опубликовано 9 февраля, 2015 Попробуй http://rghost.ru/6rnRtF7JKкидать в data/scripts/quests/ Чтобы добавить в прогрузку пропиши в data/scripts.cfg : quests/Wings/Wings.java quests/Vesper/Vesper.java Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 теперь пишет "на данный момент у меня для вас ничего нет" Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 теперь пишет "на данный момент у меня для вас ничего нет" Скинь квесты куда можешь без разницы Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 http://rghost.ru/7y4wZv24h Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 http://rghost.ru/7y4wZv24h Ты куда кидаешь эти квесты? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 D:\pw\pw\gameserver\data\jscript Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 Кидай сюда gameserver\data\jscript\custom И не забудь их прописать! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Mihailvrn 4 Опубликовано 9 февраля, 2015 Кидаю в кастом и пишет что у меня для вас ничего нет Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
appleopple 1 Опубликовано 9 февраля, 2015 Кидай сюда gameserver\data\jscript\custom И не забудь их прописать! Та же ошибка в ГСе Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
appleopple 1 Опубликовано 9 февраля, 2015 Кидай сюда gameserver\data\jscript\custom И не забудь их прописать! Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
kama 3 Опубликовано 9 февраля, 2015 Да как так??? Кинь мне папку jscript и фаил scripts.cfg Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты