Сообщений: 6,450
Тем: 262
Зарегистрирован: Nov 2007
Репутация:
44,165
?????? - выводит если уровень не соответствует (у квеста установлен флаг LOCKED), в данном случае он установлен потому что нет самого квеста, даже если вручную проставить флаг START, то Бомеронд вам ничем не поможет, у него откроется диалог квеста, но там только "кнопка", обработчика еще нет.
В quest_data.xml находятся только правила получения квеста и его окончания. А вот уже в quest_script_data\ название_территории.xml находятся действия, которые выполняем для прохождения того или иного квеста.
В общем на данный момент "миссии" от 2001 - 2006 не работают, но если есть желание что-то поковырять, то советую изучить как реализованы эти квесты у Элийцев (1001 - 1006), и их обработчики.
Цитата:gameserver\data\scripts\system\handlers\quest
Сообщений: 99
Тем: 2
Зарегистрирован: Dec 2009
Репутация:
0
ViAl Написал:Правка рабочих квестов понятна. Хотелось бы разобраться с нерабочими.
Например миссия для асмодиан 3 лвл Охрана припасов разбойников. Изначально миссия недоступна для выполнения, при открытии в клиенте окна "Миссии" в описании квеста мы видим символы "??????","Выполнение задания доступно по достижении 1го уровня". Стартовый НПС дающий миссию Бомеронд. Подхожу к Бомеронду персонажем 3+ уровня, однако квест он не даёт.
Открываю quest_data.xml и нахожу в нём описание квеста:
т.е. вроде бы всё нормально, однако квест не работает.
есть ещё файлик quest_script_data.xml он за что отвечает?
Где что править ? 
Такое ощущение либо все знают и молчат, либо никто не знает
В самом коде не прописано у кого брать и кому оттдавать...
Код: start_npc_id="ид нпц у кого берёш"
end_npc_id="ид нпц у кого здаёш"
а пишется он в этой строке
Цитата:<quest race_permitted="ASMODIANS" cannot_giveup="true" cannot_share="true" max_repeat_count="1" minlevel_permitted="1" name="Thinking Ahead" Здесь id="2001">
и теперь он имеет вид:
Код: <quest race_permitted="ASMODIANS" cannot_giveup="true" cannot_share="true" max_repeat_count="1" minlevel_permitted="1" name="Thinking Ahead" start_npc_id="203518" end_npc_id="203518" id="2001">
<collect_items>
<collect_item count="4" item_id="182203002"/>
</collect_items>
<rewards exp="2250">
<selectable_reward_item count="1" item_id="114100794"/>
<selectable_reward_item count="1" item_id="114300804"/>
<selectable_reward_item count="1" item_id="114500766"/>
</rewards>
</quest>
теперь попробуй его проверить
Только тот добивается цели, кто её видит. 
Остальные - живут только иллюзиями!:o
Тот цель видит! Остальное - илюзии!
Сообщений: 376
Тем: 27
Зарегистрирован: Feb 2010
Репутация:
770
02-09-2010, 05:29 PM
(Сообщение последний раз редактировалось: 02-09-2010, 05:29 PM ViAl.)
BeLiX Написал:В самом коде не прописано у кого брать и кому оттдавать...
Код: start_npc_id="ид нпц у кого берёш"
end_npc_id="ид нпц у кого здаёш"
а пишется он в этой строке
......
теперь попробуй его проверить Тов.BeLiX!
Не совсем понял Вашу мысль. В коде как раз таки прописано у кого брать и кому "отдавать". Что вы изменили в вышеприведенном коде? Как было так и осталось. Что пробовать проверять если изменений в коде не было?
Добавлено через 39 секунд
Поясните пожалуйста Вашу мысль
Сообщений: 99
Тем: 2
Зарегистрирован: Dec 2009
Репутация:
0
02-09-2010, 05:33 PM
(Сообщение последний раз редактировалось: 02-09-2010, 05:43 PM BeLiX.)
ViAl Написал:Тов.BeLiX!
Не совсем понял Вашу мысль. В коде как раз таки прописано у кого брать и кому "отдавать". Что вы изменили в вышеприведенном коде? Как было так и осталось. Что пробовать проверять если изменений в коде не было?
Добавлено через 39 секунд
Поясните пожалуйста Вашу мысль 
был код:
Цитата:<quest race_permitted="ASMODIANS" cannot_giveup="true" cannot_share="true" max_repeat_count="1" minlevel_permitted="1" name="Thinking Ahead" id="2001">
стал:
Цитата:<quest race_permitted="ASMODIANS" cannot_giveup="true" cannot_share="true" max_repeat_count="1" minlevel_permitted="1" name="Thinking Ahead" start_npc_id="203518" end_npc_id="203518" id="2001">
добавлено всего чуть чуть, а квест начинает работать
Добавлено через 4 минуты
ViAl Написал:Тов.BeLiX!
Не совсем понял Вашу мысль.
Поясните пожалуйста Вашу мысль  Объясняю...
Сервер не знает у кого должен браться квест, и кем он должен заканчиваться... именно поэтому там где должна быть миссия стоят "??????"
так как он не может найти этот квест.
для того чтобы оно нашло и можно было пройти его
я и добавил 2 команды.
Добавлено через 9 минут
я больше недели сидел и разбирался что написано,
и еще 2 недели практиковал пока винда не слетела.
теперь больше недели мучаюсь с клиентом. и надеюсь до меня дошло с моими проблемами
Только тот добивается цели, кто её видит. 
Остальные - живут только иллюзиями!:o
Тот цель видит! Остальное - илюзии!
Сообщений: 376
Тем: 27
Зарегистрирован: Feb 2010
Репутация:
770
Ооо =) Теперь вижу разницу =) Сейчас последняя ревизия скачается и буду пробовать =) А как же тогда слова PROGRAMMATOR об отсутствии обработчиков в scripts/system/data?
У вас этот квест заработал после внесения вышеприведенных поправок?
Сообщений: 99
Тем: 2
Зарегистрирован: Dec 2009
Репутация:
0
ViAl Написал:Ооо =) Теперь вижу разницу =) Сейчас последняя ревизия скачается и буду пробовать =) А как же тогда слова PROGRAMMATOR об отсутствии обработчиков в scripts/system/data?
У вас этот квест заработал после внесения вышеприведенных поправок?
больше недели назад работал) щас аион дообновляю изменю bin32 и буду испытывать опять.
а слова PROGRAMMATOR верны но не для данного случая...
Только тот добивается цели, кто её видит. 
Остальные - живут только иллюзиями!:o
Тот цель видит! Остальное - илюзии!
Сообщений: 376
Тем: 27
Зарегистрирован: Feb 2010
Репутация:
770
BeLiX Написал:был код:
стал:
добавлено всего чуть чуть, а квест начинает работать 
Добавлено через 4 минуты
Объясняю...
Сервер не знает у кого должен браться квест, и кем он должен заканчиваться... именно поэтому там где должна быть миссия стоят "??????"
так как он не может найти этот квест.
для того чтобы оно нашло и можно было пройти его
я и добавил 2 команды.
Добавлено через 9 минут
я больше недели сидел и разбирался что написано,
и еще 2 недели практиковал пока винда не слетела.
теперь больше недели мучаюсь с клиентом. и надеюсь до меня дошло с моими проблемами
сделал как ты написал, в итоге ГС перестал запускаться, консоль пишет следующее:
Код: Starting Aion-Unique Game Server.
[INFO 2010-02-09 23-46-00] com.aionemu.commons.database.DatabaseFactory:134 - Su
ccessfully connected to database
[INFO 2010-02-09 23-46-03] com.aionemu.commons.database.dao.DAOManager:70 - Load
ed 13 DAO implementations.
[INFO 2010-02-09 23-46-05] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
[ERROR 2010-02-09 23-46-13] com.aionemu.gameserver.dataholders.loadingutils.XmlD
ataLoader:133 - Error while merging xml files,e
[INFO 2010-02-09 23-46-13] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
[ERROR 2010-02-09 23-46-20] com.aionemu.gameserver.dataholders.loadingutils.XmlD
ataLoader:133 - Error while merging xml files,e
[INFO 2010-02-09 23-46-20] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
[ERROR 2010-02-09 23-46-27] com.aionemu.gameserver.dataholders.loadingutils.XmlD
ataLoader:133 - Error while merging xml files,e
[INFO 2010-02-09 23-46-27] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
не работает
Сообщений: 99
Тем: 2
Зарегистрирован: Dec 2009
Репутация:
0
02-09-2010, 09:46 PM
(Сообщение последний раз редактировалось: 02-09-2010, 10:23 PM BeLiX.)
ViAl Написал:сделал как ты написал, в итоге ГС перестал запускаться, консоль пишет следующее:
Код: Starting Aion-Unique Game Server.
[INFO 2010-02-09 23-46-00] com.aionemu.commons.database.DatabaseFactory:134 - Su
ccessfully connected to database
[INFO 2010-02-09 23-46-03] com.aionemu.commons.database.dao.DAOManager:70 - Load
ed 13 DAO implementations.
[INFO 2010-02-09 23-46-05] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
[ERROR 2010-02-09 23-46-13] com.aionemu.gameserver.dataholders.loadingutils.XmlD
ataLoader:133 - Error while merging xml files,e
[INFO 2010-02-09 23-46-13] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
[ERROR 2010-02-09 23-46-20] com.aionemu.gameserver.dataholders.loadingutils.XmlD
ataLoader:133 - Error while merging xml files,e
[INFO 2010-02-09 23-46-20] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
[ERROR 2010-02-09 23-46-27] com.aionemu.gameserver.dataholders.loadingutils.XmlD
ataLoader:133 - Error while merging xml files,e
[INFO 2010-02-09 23-46-27] com.aionemu.gameserver.dataholders.DataManager:125 -
##### STATIC DATA [section beginning] #####
не работает 
 у меня тоже с новыми ревизиями перестало  буду опять пробовать
Добавлено через 36 минут
Залез по адресу \Aion(клиент)\data\Quest распаковал pak файл, а там Xml файлы открываю их а они закодированы... никто не подскажет как их раскодировать. кажись я понял как квесты свои добавлять
Только тот добивается цели, кто её видит. 
Остальные - живут только иллюзиями!:o
Тот цель видит! Остальное - илюзии!
Сообщений: 376
Тем: 27
Зарегистрирован: Feb 2010
Репутация:
770
02-11-2010, 02:34 PM
(Сообщение последний раз редактировалось: 02-11-2010, 03:37 PM ViAl.)
Хотелось бы узнать от гуру для каких из квестов на данный момент не реализованы обработчики, и как это отмечено в *.xml ?
Для нереализованных квестов пока что увидел два типа описаний:
<!-- TODO: Bolverk's Secret Request -->
- я так понимаю для этих квестов отсутсвуют обработчики? Хотя смотрю на таймлайн, люди успешно их добавляют без явакодерства )
<!-- Order of the Captain handled by script -->
- "нуждается в скрипте" ? или для этих ещё не созданы обработчики?
P.S.: под обработчиками понимаю \aion\gameserver\data\scripts\system\handlers\quest\*.java файлы
PROGRAMMATOR  Отзовись!
Добавлено через 1 час 3 минуты
BeLiX Написал: у меня тоже с новыми ревизиями перестало буду опять пробовать
Добавлено через 36 минут
Залез по адресу \Aion(клиент)\data\Quest распаковал pak файл, а там Xml файлы открываю их а они закодированы... никто не подскажет как их раскодировать. кажись я понял как квесты свои добавлять AionDisAsm тебе в помощь, юный падаван
Сообщений: 5
Тем: 2
Зарегистрирован: May 2012
Репутация:
0
Добрый день. может кто сможет подскзать:
Открыть спойлер
'Квест _2106VanarsFlattery.java'package quest.ishalgen;
import gameserver.model.EmotionType;
import gameserver.model.gameobjects.Npc;
import gameserver.model.gameobjects.player.Player;
import gameserver.network.aion.serverpackets.;
import gameserver.questEngine.handlers.QuestHandler;
import gameserver.questEngine.model.QuestCookie;
import gameserver.questEngine.model.QuestState;
import gameserver.questEngine.model.QuestStatus;
import gameserver.services.InstanceService;
import gameserver.services.QuestService;
import gameserver.services.TeleportService;
import gameserver.skillengine.SkillEngine;
import gameserver.skillengine.effect.EffectId;
import gameserver.utils.PacketSendUtility;
import gameserver.utils.ThreadPoolManager;
import gameserver.world.WorldMapInstance;
public class _2106VanarsFlattery extends QuestHandler
{
private final static int questId = 2106;
public _2106VanarsFlattery()
{
super(questId);
}
@Override public void register()
{
qe.setNpcQuestData(203502).addOnTalkEvent(questId);
qe.setNpcQuestData(203517).addOnTalkEvent(questId);
}
@Override public boolean onDialogEvent(final QuestCookie env)
{
if(!super.defaultQuestOnDialogInitStart(env)) return false;
final Player player = env.getPlayer();
final QuestState qs = player.getQuestStateList().getQuestState(questId);
int var = qs.getQuestVarById(0);
if(qs.getStatus() == QuestStatus.START)
{
switch(env.getTargetId())
{
case 203502:
switch(env.getDialogId())
{
case 26:
if(var == 1)
return sendQuestDialog(env, 1011);
PacketSendUtility.sendPacket(player, new SM_EMOTION(player, EmotionType.START_FLYTELEPORT, 1008, 0));
ThreadPoolManager.getInstance().schedule(new Runnable()
{
@Override public void run()
{
qs.setQuestVar(1);
updateQuestStatus(env);
PacketSendUtility.sendPacket(player, new SM_TELEPORT_LOC(220010000, 565.9267f, 2541.9456f, 270.97827f, 100));
TeleportService.teleportTo(player, 220010000, 1, 565.9267f, 2541.9456f, 270.97827f, (byte) 43);
}
}, 38000);
case 10000:
return defaultCloseDialog(env, 1, 2);
}
break;
}
}
return defaultQuestRewardDialog(env, 203517, 0);
}
}
Делал по подобию другого квеста.
Квест берется у первого НиПиСи и после принятия квеста телепортирует к городу.
В городе второй НиПиСи заканчивает квест.
На данном этапе сложность в том что, стартовый НиПиСи не предлагает квест.
(код кривой - я знаю)
|