Junior Spellweaver
- Joined
- Mar 2, 2023
- Messages
- 196
- Reaction score
- 326
There is an issue with this quest in Poya Jungle, Heiron (Elyos):
You must be registered to see links
There are several types of NPC you have to kill a few of, but their are no Priests anywhere in the area to finish it. I found three NPCs called Priest on Aion Codex:
You must be registered to see links- I can spawn, but killing does not advance quest
You must be registered to see links- same as first
You must be registered to see links- it says invalid ID when I try to spawn, but I think this is the one the quest needs
Thank you! I found another issue of missing quest mobs, but figured this one out:you need NPC's
1. 212155
2. 212157
3. 211208
4. 211914
I am getting errors with this code. At first it complained about the { missing after the public_class line, and _14024AKrallingSuspicion should have been _14024A_Kralling_Suspicion. Once I fixed that though, I got this:Replace the code in the file "_14024A_Kralling_Suspicion.java" on this code:
<snip>
public class _14024A_Kralling_Suspicion extends QuestHandler
private final static int questId = 14024;
private final static int[] npc_ids = { 203904, 204045, 204004, 204020 };
public _14024AKrallingSuspicion() {
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 47
Column: 44
12:47:04.256 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 56
Column: 26
12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 60
Column: 26
12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 71
Column: 26
12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 75
Column: 26
12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 86
Column: 26
12:47:04.259 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 90
Column: 26
12:47:04.259 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 100
Column: 26
12:47:04.259 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 104
Column: 26
12:47:04.260 ERROR[InstantPool-1]: - Java Compiler ERROR: cannot find symbol
symbol : variable USE_OBJECT
location: class com.aionemu.gameserver.model.DialogAction
Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java
Line: 115
Column: 43
Thank you! I found another issue of missing quest mobs, but figured this one out:
You must be registered to see links- you need to spawn in a few of these around Kishar Village:
219050 - Kishar Assaulter
219051 - Kishar Fighter
219074 - Kishar Healer
I am getting errors with this code. At first it complained about the { missing after the public_class line, and _14024AKrallingSuspicion should have been _14024A_Kralling_Suspicion. Once I fixed that though, I got this:
Code:Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 47 Column: 44 12:47:04.256 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 56 Column: 26 12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 60 Column: 26 12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 71 Column: 26 12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 75 Column: 26 12:47:04.258 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 86 Column: 26 12:47:04.259 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 90 Column: 26 12:47:04.259 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 100 Column: 26 12:47:04.259 ERROR[InstantPool-1]: - Java Compiler ERROR: unqualified enumeration constant name required Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 104 Column: 26 12:47:04.260 ERROR[InstantPool-1]: - Java Compiler ERROR: cannot find symbol symbol : variable USE_OBJECT location: class com.aionemu.gameserver.model.DialogAction Source: /D:/Aion/Aion58-testing/AionServerPlay/AionGameServer/./data/scripts/system/handlers/quest/mission/_14024A_Kralling_Suspicion.java Line: 115 Column: 43
Quest ID 14024, completed the process, unable to talk to the last NPC to complete the quest, which is ID: 204020.
The link to the database quest isYou must be registered to see links
I wonder if this format would help you look up more information about the problem.
Perhaps you could provide a format in which you would like bug return information. A couple of my friends and I are testing getting bugs that can be sent out in this format.
package quest.mission;
import com.aionemu.gameserver.model.gameobjects.player.Player;
import com.aionemu.gameserver.questEngine.handlers.QuestHandler;
import com.aionemu.gameserver.questEngine.model.QuestDialog;
import com.aionemu.gameserver.questEngine.model.QuestEnv;
import com.aionemu.gameserver.questEngine.model.QuestState;
import com.aionemu.gameserver.questEngine.model.QuestStatus;
import com.aionemu.gameserver.services.teleport.TeleportService2;
/****/
/** Author Ghostfur & Unknown (Aion-Unique)
/****/
public class _14024A_Kralling_Suspicion extends QuestHandler
{
private final static int questId = 14024;
private final static int[] npc_ids = {203904, 204045, 204004, 204020};
public _14024A_Kralling_Suspicion() {
super(questId);
}
@Override
public void register() {
for (int npc_id: npc_ids) {
qe.registerQuestNpc(npc_id).addOnTalkEvent(questId);
}
qe.registerOnLevelUp(questId);
qe.registerOnEnterZoneMissionEnd(questId);
}
@Override
public boolean onZoneMissionEndEvent(QuestEnv env) {
return defaultOnZoneMissionEndEvent(env);
}
@Override
public boolean onLvlUpEvent(QuestEnv env) {
return defaultOnLvlUpEvent(env, 14023);
}
@Override
public boolean onDialogEvent(QuestEnv env) {
final Player player = env.getPlayer();
final QuestState qs = player.getQuestStateList().getQuestState(questId);
if (qs == null) {
return false;
}
int targetId = env.getTargetId();
if (qs.getStatus() == QuestStatus.START) {
int var = qs.getQuestVarById(0);
if (targetId == 203904) {
switch (env.getDialog()) {
case START_DIALOG: {
if (var == 0) {
return sendQuestDialog(env, 1011);
}
} case SELECT_ACTION_1012: {
if (var == 0) {
return sendQuestDialog(env, 1012);
}
} case STEP_TO_1: {
if (var == 0) {
changeQuestStep(env, 0, 1, false);
return closeDialogWindow(env);
}
}
}
} if (targetId == 204045) {
switch (env.getDialog()) {
case START_DIALOG: {
if (var == 1) {
return sendQuestDialog(env, 1352);
}
} case SELECT_ACTION_1353: {
if (var == 1) {
return sendQuestDialog(env, 1353);
}
} case STEP_TO_2: {
if (var == 1) {
changeQuestStep(env, 1, 2, false);
return closeDialogWindow(env);
}
}
}
} if (targetId == 204004) {
switch (env.getDialog()) {
case START_DIALOG: {
if (var == 2) {
return sendQuestDialog(env, 2034);
}
} case SELECT_ACTION_2035: {
if (var == 2) {
return sendQuestDialog(env, 2035);
}
} case STEP_TO_4: {
qs.setStatus(QuestStatus.REWARD);
updateQuestStatus(env);
TeleportService2.teleportTo(player, 210020000, 1605.3418f, 1528.9393f, 318.0651f, (byte) 117);
return closeDialogWindow(env);
} case CHECK_COLLECTED_ITEMS: {
return checkQuestItems(env, 2, 3, false, 2120, 2035);
} case FINISH_DIALOG: {
if (var == 3) {
defaultCloseDialog(env, 3, 3);
} else if (var == 2) {
defaultCloseDialog(env, 2, 2);
}
}
}
}
} else if (qs.getStatus() == QuestStatus.REWARD) {
if (targetId == 204020) {
if (env.getDialog() == QuestDialog.USE_OBJECT) {
return sendQuestDialog(env, 2375);
}
return sendQuestEndDialog(env);
}
}
return false;
}
}
the other npc all have a single one that doesn't have it is "211208" then just add it to the file "210040000_Heiron"There is an issue with this quest in Poya Jungle, Heiron (Elyos):
You must be registered to see links
There are several types of NPC you have to kill a few of, but their are no Priests anywhere in the area to finish it. I found three NPCs called Priest on Aion Codex:
You must be registered to see links- I can spawn, but killing does not advance quest
You must be registered to see links- same as first
You must be registered to see links- it says invalid ID when I try to spawn, but I think this is the one the quest needs
<!-- Priest -->
<spawn npc_id="211208" respawn_time="295">
<spot x="469.2" y="777.34" z="140.13376" h="94" walker_id="73CD1E73B630D44DCDC31AD924962219A695A121"/>
<spot x="367.26" y="562.78" z="134.0" h="5" walker_id="8954EAFBDED2679C08FC9C54B5E5905091A20FEC"/>
<spot x="362.6" y="497.47" z="134.0" h="20" walker_id="C953A4BA10F2FF426C92E8662A5A00DC6C33CD22"/>
<spot x="695.74" y="875.53" z="131.625" h="47" walker_id="42EB892ADC59F6D49F6FDDCDE87CD87448759DE9"/>
</spawn>
To better understanding the difference between the two QuestEngines;
Same quest in the left screen and in the right screen, That's the reason that quest ar not compatible. That was a mistake from the
begining that the programmers not respected the few standards by coding and made two incompatible QE,
<collect_item item_id="182215318" count="1"/>
<collect_item item_id="182215319" count="1"/>
<collect_item item_id="182215320" count="1"/>
<collect_item item_id="182215321" count="1"/>
public enum QuestDialog
{
NULL(0),
USE_OBJECT(-1),
SELECTED_QUEST_REWARD1(8),
SELECTED_QUEST_REWARD2(9),
SELECTED_QUEST_REWARD3(10),
SELECTED_QUEST_REWARD4(11),
SELECTED_QUEST_REWARD5(12),
SELECTED_QUEST_REWARD6(13),
SELECTED_QUEST_REWARD7(14),
SELECTED_QUEST_REWARD8(15),
SELECTED_QUEST_REWARD9(16),
SELECTED_QUEST_REWARD10(17),
SELECTED_QUEST_REWARD11(18),
SELECTED_QUEST_REWARD12(19),
SELECTED_QUEST_REWARD13(20),
SELECTED_QUEST_REWARD14(21),
SELECTED_QUEST_REWARD15(22),
SELECT_NO_REWARD(23), //4.3
NO_RIGHTS(27),
START_DIALOG(31), //4.3
CHECK_COLLECTED_ITEMS(39), //4.3
ACCEPT_QUEST(1002),
REFUSE_QUEST(1003),
REFUSE_QUEST_2(1004),
ASK_ACCEPTION(1007),
FINISH_DIALOG(1008),
SELECT_REWARD(1009),
ACCEPT_QUEST_SIMPLE(20000),
REFUSE_QUEST_SIMPLE(20001),
CHECK_COLLECTED_ITEMS_SIMPLE(20002),
SETPRO_NEXT(20003),
CHECK_AP(20004),
CHECK_GOLD(20005),
SELECT_ACTION_1011(1011),
SELECT_ACTION_1012(1012),
SELECT_ACTION_1013(1013),
SELECT_ACTION_1014(1014),
SELECT_ACTION_1034(1034),
SELECT_ACTION_1035(1035),
SELECT_ACTION_1097(1097),
SELECT_ACTION_1098(1098),
SELECT_ACTION_1119(1119),
SELECT_ACTION_1182(1182),
SELECT_ACTION_1183(1183),
SELECT_ACTION_1352(1352),
SELECT_ACTION_1353(1353),
SELECT_ACTION_1354(1354),
SELECT_ACTION_1355(1355),
SELECT_ACTION_1356(1356),
SELECT_ACTION_1375(1375),
SELECT_ACTION_1438(1438),
SELECT_ACTION_1439(1439),
SELECT_ACTION_1609(1609),
SELECT_ACTION_1693(1693),
SELECT_ACTION_1694(1694),
SELECT_ACTION_1695(1695),
SELECT_ACTION_1696(1696),
SELECT_ACTION_1697(1697),
SELECT_ACTION_1698(1698),
SELECT_ACTION_1779(1779),
SELECT_ACTION_2034(2034),
SELECT_ACTION_2035(2035),
SELECT_ACTION_2036(2036),
SELECT_ACTION_2037(2037),
SELECT_ACTION_2038(2038),
SELECT_ACTION_2292(2292),
SELECT_ACTION_2375(2375),
SELECT_ACTION_2376(2376),
SELECT_ACTION_2377(2377),
SELECT_ACTION_2378(2378),
SELECT_ACTION_2379(2379),
SELECT_ACTION_2461(2461),
SELECT_ACTION_2546(2546),
SELECT_ACTION_2717(2717),
SELECT_ACTION_2718(2718),
SELECT_ACTION_2720(2720),
SELECT_ACTION_3057(3057),
SELECT_ACTION_3058(3058),
SELECT_ACTION_3059(3059),
SELECT_ACTION_3143(3143),
SELECT_ACTION_3398(3398),
SELECT_ACTION_3399(3399),
SELECT_ACTION_3400(3400),
SELECT_ACTION_3401(3401),
SELECT_ACTION_3739(3739),
SELECT_ACTION_3740(3740),
SELECT_ACTION_3741(3741),
SELECT_ACTION_4081(4081),
SELECT_ACTION_4166(4166),
SELECT_ACTION_4762(4762),
SELECT_ACTION_4763(4763),
SELECT_ACTION_6501(6501),
SELECT_ACTION_6503(6503),
SELECT_ACTION_6842(6842),
SELECT_ACTION_6844(6844),
SELECT_ACTION_7183(7183),
SELECT_ACTION_7524(7524),
STEP_TO_1(10000),
STEP_TO_2(10001),
STEP_TO_3(10002),
STEP_TO_4(10003),
STEP_TO_5(10004),
STEP_TO_6(10005),
STEP_TO_7(10006),
STEP_TO_8(10007),
STEP_TO_9(10008),
STEP_TO_10(10009),
STEP_TO_11(10010),
STEP_TO_12(10011),
STEP_TO_13(10012),
STEP_TO_14(10013),
STEP_TO_15(10014),
STEP_TO_16(10015),
STEP_TO_17(10016),
STEP_TO_18(10017),
STEP_TO_19(10018),
STEP_TO_20(10019),
STEP_TO_21(10020),
STEP_TO_30(10029),
STEP_TO_31(10030),
STEP_TO_40(10039),
STEP_TO_41(10040),
SET_REWARD(10255),
EXCHANGE_COIN(59); //4.3
private int id;
private QuestDialog(int id) {
this.id = id;
}
public int id() {
return id;
}
}
public enum DialogAction
{
ERROR(-1),
NULL(1),
BUY(2),
SELL(3),
OPEN_STIGMA_WINDOW(4),
CREATE_LEGION(5),
DISPERSE_LEGION(6),
RECREATE_LEGION(7),
RESURRECT_PET(19),
RETRIEVE_CHAR_WAREHOUSE(25),
DEPOSIT_CHAR_WAREHOUSE(26),
RETRIEVE_ACCOUNT_WAREHOUSE(27),
DEPOSIT_ACCOUNT_WAREHOUSE(28),
OPEN_VENDOR(33),
RESURRECT_BIND(34),
RECOVERY(35),
ENTER_PVP(36),
LEAVE_PVP(37),
OPEN_POSTBOX(38),
DIC(40),
GIVE_ITEM_PROC(41),
REMOVE_MANASTONE(42),
CHANGE_ITEM_SKIN(43),
AIRLINE_SERVICE(44),
GATHER_SKILL_LEVELUP(45),
COMBINE_SKILL_LEVELUP(46),
EXTEND_INVENTORY(47),
EXTEND_CHAR_WAREHOUSE(48),
EXTEND_ACCOUNT_WAREHOUSE(49),
LEGION_LEVELUP(50),
LEGION_CREATE_EMBLEM(51),
LEGION_CHANGE_EMBLEM(52),
OPEN_LEGION_WAREHOUSE(53),
OPEN_PERSONAL_WAREHOUSE(54),
BUY_BY_AP(55),
CLOSE_LEGION_WAREHOUSE(56),
PASS_DOORMAN(57),
CRAFT(58),
EXCHANGE_COIN(59),
SHOW_MOVIE(60),
EDIT_CHARACTER(61),
EDIT_GENDER(62),
MATCH_MAKER(63),
MAKE_MERCENARY(64),
INSTANCE_ENTRY(65),
COMPOUND_WEAPON(66),
DECOMPOUND_WEAPON(67),
FACTION_JOIN(68),
FACTION_SEPARATE(69),
BUY_AGAIN(70),
PET_ADOPT(71),
PET_ABANDON(72),
HOUSING_BUILD(73),
HOUSING_DESTRUCT(74),
CHARGE_ITEM_SINGLE(75),
CHARGE_ITEM_MULTI(76),
INSTANCE_PARTY_MATCH(77),
TRADE_IN(78),
GIVEUP_CRAFT_EXPERT(79),
GIVEUP_CRAFT_MASTER(80),
HOUSING_FRIENDLIST(81),
HOUSING_RANDOM_TELEPORT(82),
HOUSING_PERSONAL_INS_TELEPORT(83),
HOUSING_PERSONAL_AUCTION(84),
HOUSING_PAY_RENT(85),
HOUSING_KICK(86),
HOUSING_CHANGE_BUILDING(87),
HOUSING_CONFIG(88),
HOUSING_GIVEUP(89),
HOUSING_CANCEL_GIVEUP(90),
HOUSING_CREATE_PERSONAL_INS(91),
SIDEKICK_ADOPT(92),
SIDEKICK_ABANDON(93),
AUGMENT_ITEM_SINGLE(94),
AUGMENT_ITEM_MULTI(95),
HOUSING_STUDIO(96),
HOUSING_LIKE(97),
HOUSING_SCRIPT(98),
HOUSING_GUESTBOOK(99),
QUEST_BOARD(100),
AP_SELLING(101),
PURCHASE_LIST(103),
TELEPORT_SIMPLE(104),
OPEN_INSTANCE_RECRUIT(105),
MOVE_ITEM_SKIN(106),
TRADE_IN_UPGRADE(107),
AUTO_REWARD(108),
ITEM_UPGRADE(109),
SELECT_BOSS_LEVEL_1(20006),
SELECT_BOSS_LEVEL_2(20007),
SELECT_BOSS_LEVEL_3(20008),
SELECT_BOSS_LEVEL_4(20009),
SELECT_BOSS_LEVEL_5(20010),
QUEST_AUTO_REWARD_1(110),
QUEST_AUTO_REWARD_2(111),
QUEST_AUTO_REWARD_3(112),
QUEST_AUTO_REWARD_4(113),
QUEST_AUTO_REWARD_5(114),
QUEST_AUTO_REWARD_6(115),
QUEST_AUTO_REWARD_7(116),
QUEST_AUTO_REWARD_8(117),
QUEST_AUTO_REWARD_9(118),
QUEST_AUTO_REWARD_10(119),
QUEST_AUTO_REWARD_11(120),
QUEST_AUTO_REWARD_12(121),
QUEST_AUTO_REWARD_13(122),
QUEST_AUTO_REWARD_14(123),
QUEST_AUTO_REWARD_15(124),
OPEN_STIGMA_ENCHANT(125),
ITEM_REPLACE(126),
QUEST_GOLD_REWARD(127),
RECOVERY_2(128),
CHECK_USER_HAS_QUEST_ITEM_REMOTE(129),
RECOVERY_FREE(130);
private int id;
private DialogAction(int id) {
this.id = id;
}
public int id() {
return id;
}
public static DialogAction getActionByDialogId(int id) {
for (DialogAction da: values()) {
if (da.id() == id) {
return da;
}
}
return null;
}
}
There is an issue with this quest in Poya Jungle, Heiron (Elyos):
You must be registered to see links
There are several types of NPC you have to kill a few of, but their are no Priests anywhere in the area to finish it. I found three NPCs called Priest on Aion Codex:
You must be registered to see links- I can spawn, but killing does not advance quest
You must be registered to see links- same as first
You must be registered to see links- it says invalid ID when I try to spawn, but I think this is the one the quest needs
Was it me who did something wrong? Or did you already have this problem? I think I'll have to look ^^``No, the QE are not the same. Quest variable are diferent and stored in diferent files and diferent location.
So, in one of my gameserver the variable "SETPROx" doesn't exist at all. That means, quests that are using the variable "SETPROx"
will not works until you not change it to "STEP_TO_x" and change the import to the proper file that contens the that variable,
in this case the file QuestDialog "\src\com\aionemu\gameserver\questEngine\model\QuestDialog.java
In this QE the file "DialogAction.java" is for quests irelevant and is located in \src\com\aionemu\gameserver\model\DialogAction.java.
Code:public enum QuestDialog { NULL(0), USE_OBJECT(-1), SELECTED_QUEST_REWARD1(8), SELECTED_QUEST_REWARD2(9), SELECTED_QUEST_REWARD3(10), SELECTED_QUEST_REWARD4(11), SELECTED_QUEST_REWARD5(12), SELECTED_QUEST_REWARD6(13), SELECTED_QUEST_REWARD7(14), SELECTED_QUEST_REWARD8(15), SELECTED_QUEST_REWARD9(16), SELECTED_QUEST_REWARD10(17), SELECTED_QUEST_REWARD11(18), SELECTED_QUEST_REWARD12(19), SELECTED_QUEST_REWARD13(20), SELECTED_QUEST_REWARD14(21), SELECTED_QUEST_REWARD15(22), SELECT_NO_REWARD(23), //4.3 NO_RIGHTS(27), START_DIALOG(31), //4.3 CHECK_COLLECTED_ITEMS(39), //4.3 ACCEPT_QUEST(1002), REFUSE_QUEST(1003), REFUSE_QUEST_2(1004), ASK_ACCEPTION(1007), FINISH_DIALOG(1008), SELECT_REWARD(1009), ACCEPT_QUEST_SIMPLE(20000), REFUSE_QUEST_SIMPLE(20001), CHECK_COLLECTED_ITEMS_SIMPLE(20002), SETPRO_NEXT(20003), CHECK_AP(20004), CHECK_GOLD(20005), SELECT_ACTION_1011(1011), SELECT_ACTION_1012(1012), SELECT_ACTION_1013(1013), SELECT_ACTION_1014(1014), SELECT_ACTION_1034(1034), SELECT_ACTION_1035(1035), SELECT_ACTION_1097(1097), SELECT_ACTION_1098(1098), SELECT_ACTION_1119(1119), SELECT_ACTION_1182(1182), SELECT_ACTION_1183(1183), SELECT_ACTION_1352(1352), SELECT_ACTION_1353(1353), SELECT_ACTION_1354(1354), SELECT_ACTION_1355(1355), SELECT_ACTION_1356(1356), SELECT_ACTION_1375(1375), SELECT_ACTION_1438(1438), SELECT_ACTION_1439(1439), SELECT_ACTION_1609(1609), SELECT_ACTION_1693(1693), SELECT_ACTION_1694(1694), SELECT_ACTION_1695(1695), SELECT_ACTION_1696(1696), SELECT_ACTION_1697(1697), SELECT_ACTION_1698(1698), SELECT_ACTION_1779(1779), SELECT_ACTION_2034(2034), SELECT_ACTION_2035(2035), SELECT_ACTION_2036(2036), SELECT_ACTION_2037(2037), SELECT_ACTION_2038(2038), SELECT_ACTION_2292(2292), SELECT_ACTION_2375(2375), SELECT_ACTION_2376(2376), SELECT_ACTION_2377(2377), SELECT_ACTION_2378(2378), SELECT_ACTION_2379(2379), SELECT_ACTION_2461(2461), SELECT_ACTION_2546(2546), SELECT_ACTION_2717(2717), SELECT_ACTION_2718(2718), SELECT_ACTION_2720(2720), SELECT_ACTION_3057(3057), SELECT_ACTION_3058(3058), SELECT_ACTION_3059(3059), SELECT_ACTION_3143(3143), SELECT_ACTION_3398(3398), SELECT_ACTION_3399(3399), SELECT_ACTION_3400(3400), SELECT_ACTION_3401(3401), SELECT_ACTION_3739(3739), SELECT_ACTION_3740(3740), SELECT_ACTION_3741(3741), SELECT_ACTION_4081(4081), SELECT_ACTION_4166(4166), SELECT_ACTION_4762(4762), SELECT_ACTION_4763(4763), SELECT_ACTION_6501(6501), SELECT_ACTION_6503(6503), SELECT_ACTION_6842(6842), SELECT_ACTION_6844(6844), SELECT_ACTION_7183(7183), SELECT_ACTION_7524(7524), STEP_TO_1(10000), STEP_TO_2(10001), STEP_TO_3(10002), STEP_TO_4(10003), STEP_TO_5(10004), STEP_TO_6(10005), STEP_TO_7(10006), STEP_TO_8(10007), STEP_TO_9(10008), STEP_TO_10(10009), STEP_TO_11(10010), STEP_TO_12(10011), STEP_TO_13(10012), STEP_TO_14(10013), STEP_TO_15(10014), STEP_TO_16(10015), STEP_TO_17(10016), STEP_TO_18(10017), STEP_TO_19(10018), STEP_TO_20(10019), STEP_TO_21(10020), STEP_TO_30(10029), STEP_TO_31(10030), STEP_TO_40(10039), STEP_TO_41(10040), SET_REWARD(10255), EXCHANGE_COIN(59); //4.3 private int id; private QuestDialog(int id) { this.id = id; } public int id() { return id; } }
Code:public enum DialogAction { ERROR(-1), NULL(1), BUY(2), SELL(3), OPEN_STIGMA_WINDOW(4), CREATE_LEGION(5), DISPERSE_LEGION(6), RECREATE_LEGION(7), RESURRECT_PET(19), RETRIEVE_CHAR_WAREHOUSE(25), DEPOSIT_CHAR_WAREHOUSE(26), RETRIEVE_ACCOUNT_WAREHOUSE(27), DEPOSIT_ACCOUNT_WAREHOUSE(28), OPEN_VENDOR(33), RESURRECT_BIND(34), RECOVERY(35), ENTER_PVP(36), LEAVE_PVP(37), OPEN_POSTBOX(38), DIC(40), GIVE_ITEM_PROC(41), REMOVE_MANASTONE(42), CHANGE_ITEM_SKIN(43), AIRLINE_SERVICE(44), GATHER_SKILL_LEVELUP(45), COMBINE_SKILL_LEVELUP(46), EXTEND_INVENTORY(47), EXTEND_CHAR_WAREHOUSE(48), EXTEND_ACCOUNT_WAREHOUSE(49), LEGION_LEVELUP(50), LEGION_CREATE_EMBLEM(51), LEGION_CHANGE_EMBLEM(52), OPEN_LEGION_WAREHOUSE(53), OPEN_PERSONAL_WAREHOUSE(54), BUY_BY_AP(55), CLOSE_LEGION_WAREHOUSE(56), PASS_DOORMAN(57), CRAFT(58), EXCHANGE_COIN(59), SHOW_MOVIE(60), EDIT_CHARACTER(61), EDIT_GENDER(62), MATCH_MAKER(63), MAKE_MERCENARY(64), INSTANCE_ENTRY(65), COMPOUND_WEAPON(66), DECOMPOUND_WEAPON(67), FACTION_JOIN(68), FACTION_SEPARATE(69), BUY_AGAIN(70), PET_ADOPT(71), PET_ABANDON(72), HOUSING_BUILD(73), HOUSING_DESTRUCT(74), CHARGE_ITEM_SINGLE(75), CHARGE_ITEM_MULTI(76), INSTANCE_PARTY_MATCH(77), TRADE_IN(78), GIVEUP_CRAFT_EXPERT(79), GIVEUP_CRAFT_MASTER(80), HOUSING_FRIENDLIST(81), HOUSING_RANDOM_TELEPORT(82), HOUSING_PERSONAL_INS_TELEPORT(83), HOUSING_PERSONAL_AUCTION(84), HOUSING_PAY_RENT(85), HOUSING_KICK(86), HOUSING_CHANGE_BUILDING(87), HOUSING_CONFIG(88), HOUSING_GIVEUP(89), HOUSING_CANCEL_GIVEUP(90), HOUSING_CREATE_PERSONAL_INS(91), SIDEKICK_ADOPT(92), SIDEKICK_ABANDON(93), AUGMENT_ITEM_SINGLE(94), AUGMENT_ITEM_MULTI(95), HOUSING_STUDIO(96), HOUSING_LIKE(97), HOUSING_SCRIPT(98), HOUSING_GUESTBOOK(99), QUEST_BOARD(100), AP_SELLING(101), PURCHASE_LIST(103), TELEPORT_SIMPLE(104), OPEN_INSTANCE_RECRUIT(105), MOVE_ITEM_SKIN(106), TRADE_IN_UPGRADE(107), AUTO_REWARD(108), ITEM_UPGRADE(109), SELECT_BOSS_LEVEL_1(20006), SELECT_BOSS_LEVEL_2(20007), SELECT_BOSS_LEVEL_3(20008), SELECT_BOSS_LEVEL_4(20009), SELECT_BOSS_LEVEL_5(20010), QUEST_AUTO_REWARD_1(110), QUEST_AUTO_REWARD_2(111), QUEST_AUTO_REWARD_3(112), QUEST_AUTO_REWARD_4(113), QUEST_AUTO_REWARD_5(114), QUEST_AUTO_REWARD_6(115), QUEST_AUTO_REWARD_7(116), QUEST_AUTO_REWARD_8(117), QUEST_AUTO_REWARD_9(118), QUEST_AUTO_REWARD_10(119), QUEST_AUTO_REWARD_11(120), QUEST_AUTO_REWARD_12(121), QUEST_AUTO_REWARD_13(122), QUEST_AUTO_REWARD_14(123), QUEST_AUTO_REWARD_15(124), OPEN_STIGMA_ENCHANT(125), ITEM_REPLACE(126), QUEST_GOLD_REWARD(127), RECOVERY_2(128), CHECK_USER_HAS_QUEST_ITEM_REMOTE(129), RECOVERY_FREE(130); private int id; private DialogAction(int id) { this.id = id; } public int id() { return id; } public static DialogAction getActionByDialogId(int id) { for (DialogAction da: values()) { if (da.id() == id) { return da; } } return null; } }
Someone was dealing with the mission with id 14023?
It seems to me that this mission was different on 5.8, or am I wrong?
XML:<collect_item item_id="182215318" count="1"/> <collect_item item_id="182215319" count="1"/> <collect_item item_id="182215320" count="1"/> <collect_item item_id="182215321" count="1"/>
But these items are not used in 5.8 ?
View attachment 240038
accordingly, they are not counted for the mission, is this being corrected?
NO, we just discussing that we have two different QE which use two different variables, with the negative effect that quests using one sort of variables are not compatible with quests using the other variables.You must be registered to see linksthis solves the problem. added the spawn.
npc_id="211208" npc_id="219074" npc_id="219051" npc_id="219050" added the ones that didn't spawn and added a few more.
Was it me who did something wrong? Or did you already have this problem? I think I'll have to look ^^``
No, the QE are not the same. Quest variable are diferent and stored in diferent files and diferent location.
So, in one of my gameserver the variable "SETPROx" doesn't exist at all. That means, quests that are using the variable "SETPROx"
will not works until you not change it to "STEP_TO_x" and change the import to the proper file that contens the that variable,
in this case the file QuestDialog "\src\com\aionemu\gameserver\questEngine\model\QuestDialog.java
In this QE the file "DialogAction.java" is for quests irelevant and is located in \src\com\aionemu\gameserver\model\DialogAction.java.
Code:public enum QuestDialog { NULL(0), USE_OBJECT(-1), SELECTED_QUEST_REWARD1(8), SELECTED_QUEST_REWARD2(9), SELECTED_QUEST_REWARD3(10), SELECTED_QUEST_REWARD4(11), SELECTED_QUEST_REWARD5(12), SELECTED_QUEST_REWARD6(13), SELECTED_QUEST_REWARD7(14), SELECTED_QUEST_REWARD8(15), SELECTED_QUEST_REWARD9(16), SELECTED_QUEST_REWARD10(17), SELECTED_QUEST_REWARD11(18), SELECTED_QUEST_REWARD12(19), SELECTED_QUEST_REWARD13(20), SELECTED_QUEST_REWARD14(21), SELECTED_QUEST_REWARD15(22), SELECT_NO_REWARD(23), //4.3 NO_RIGHTS(27), START_DIALOG(31), //4.3 CHECK_COLLECTED_ITEMS(39), //4.3 ACCEPT_QUEST(1002), REFUSE_QUEST(1003), REFUSE_QUEST_2(1004), ASK_ACCEPTION(1007), FINISH_DIALOG(1008), SELECT_REWARD(1009), ACCEPT_QUEST_SIMPLE(20000), REFUSE_QUEST_SIMPLE(20001), CHECK_COLLECTED_ITEMS_SIMPLE(20002), SETPRO_NEXT(20003), CHECK_AP(20004), CHECK_GOLD(20005), SELECT_ACTION_1011(1011), SELECT_ACTION_1012(1012), SELECT_ACTION_1013(1013), SELECT_ACTION_1014(1014), SELECT_ACTION_1034(1034), SELECT_ACTION_1035(1035), SELECT_ACTION_1097(1097), SELECT_ACTION_1098(1098), SELECT_ACTION_1119(1119), SELECT_ACTION_1182(1182), SELECT_ACTION_1183(1183), SELECT_ACTION_1352(1352), SELECT_ACTION_1353(1353), SELECT_ACTION_1354(1354), SELECT_ACTION_1355(1355), SELECT_ACTION_1356(1356), SELECT_ACTION_1375(1375), SELECT_ACTION_1438(1438), SELECT_ACTION_1439(1439), SELECT_ACTION_1609(1609), SELECT_ACTION_1693(1693), SELECT_ACTION_1694(1694), SELECT_ACTION_1695(1695), SELECT_ACTION_1696(1696), SELECT_ACTION_1697(1697), SELECT_ACTION_1698(1698), SELECT_ACTION_1779(1779), SELECT_ACTION_2034(2034), SELECT_ACTION_2035(2035), SELECT_ACTION_2036(2036), SELECT_ACTION_2037(2037), SELECT_ACTION_2038(2038), SELECT_ACTION_2292(2292), SELECT_ACTION_2375(2375), SELECT_ACTION_2376(2376), SELECT_ACTION_2377(2377), SELECT_ACTION_2378(2378), SELECT_ACTION_2379(2379), SELECT_ACTION_2461(2461), SELECT_ACTION_2546(2546), SELECT_ACTION_2717(2717), SELECT_ACTION_2718(2718), SELECT_ACTION_2720(2720), SELECT_ACTION_3057(3057), SELECT_ACTION_3058(3058), SELECT_ACTION_3059(3059), SELECT_ACTION_3143(3143), SELECT_ACTION_3398(3398), SELECT_ACTION_3399(3399), SELECT_ACTION_3400(3400), SELECT_ACTION_3401(3401), SELECT_ACTION_3739(3739), SELECT_ACTION_3740(3740), SELECT_ACTION_3741(3741), SELECT_ACTION_4081(4081), SELECT_ACTION_4166(4166), SELECT_ACTION_4762(4762), SELECT_ACTION_4763(4763), SELECT_ACTION_6501(6501), SELECT_ACTION_6503(6503), SELECT_ACTION_6842(6842), SELECT_ACTION_6844(6844), SELECT_ACTION_7183(7183), SELECT_ACTION_7524(7524), STEP_TO_1(10000), STEP_TO_2(10001), STEP_TO_3(10002), STEP_TO_4(10003), STEP_TO_5(10004), STEP_TO_6(10005), STEP_TO_7(10006), STEP_TO_8(10007), STEP_TO_9(10008), STEP_TO_10(10009), STEP_TO_11(10010), STEP_TO_12(10011), STEP_TO_13(10012), STEP_TO_14(10013), STEP_TO_15(10014), STEP_TO_16(10015), STEP_TO_17(10016), STEP_TO_18(10017), STEP_TO_19(10018), STEP_TO_20(10019), STEP_TO_21(10020), STEP_TO_30(10029), STEP_TO_31(10030), STEP_TO_40(10039), STEP_TO_41(10040), SET_REWARD(10255), EXCHANGE_COIN(59); //4.3 private int id; private QuestDialog(int id) { this.id = id; } public int id() { return id; } }
Code:public enum DialogAction { ERROR(-1), NULL(1), BUY(2), SELL(3), OPEN_STIGMA_WINDOW(4), CREATE_LEGION(5), DISPERSE_LEGION(6), RECREATE_LEGION(7), RESURRECT_PET(19), RETRIEVE_CHAR_WAREHOUSE(25), DEPOSIT_CHAR_WAREHOUSE(26), RETRIEVE_ACCOUNT_WAREHOUSE(27), DEPOSIT_ACCOUNT_WAREHOUSE(28), OPEN_VENDOR(33), RESURRECT_BIND(34), RECOVERY(35), ENTER_PVP(36), LEAVE_PVP(37), OPEN_POSTBOX(38), DIC(40), GIVE_ITEM_PROC(41), REMOVE_MANASTONE(42), CHANGE_ITEM_SKIN(43), AIRLINE_SERVICE(44), GATHER_SKILL_LEVELUP(45), COMBINE_SKILL_LEVELUP(46), EXTEND_INVENTORY(47), EXTEND_CHAR_WAREHOUSE(48), EXTEND_ACCOUNT_WAREHOUSE(49), LEGION_LEVELUP(50), LEGION_CREATE_EMBLEM(51), LEGION_CHANGE_EMBLEM(52), OPEN_LEGION_WAREHOUSE(53), OPEN_PERSONAL_WAREHOUSE(54), BUY_BY_AP(55), CLOSE_LEGION_WAREHOUSE(56), PASS_DOORMAN(57), CRAFT(58), EXCHANGE_COIN(59), SHOW_MOVIE(60), EDIT_CHARACTER(61), EDIT_GENDER(62), MATCH_MAKER(63), MAKE_MERCENARY(64), INSTANCE_ENTRY(65), COMPOUND_WEAPON(66), DECOMPOUND_WEAPON(67), FACTION_JOIN(68), FACTION_SEPARATE(69), BUY_AGAIN(70), PET_ADOPT(71), PET_ABANDON(72), HOUSING_BUILD(73), HOUSING_DESTRUCT(74), CHARGE_ITEM_SINGLE(75), CHARGE_ITEM_MULTI(76), INSTANCE_PARTY_MATCH(77), TRADE_IN(78), GIVEUP_CRAFT_EXPERT(79), GIVEUP_CRAFT_MASTER(80), HOUSING_FRIENDLIST(81), HOUSING_RANDOM_TELEPORT(82), HOUSING_PERSONAL_INS_TELEPORT(83), HOUSING_PERSONAL_AUCTION(84), HOUSING_PAY_RENT(85), HOUSING_KICK(86), HOUSING_CHANGE_BUILDING(87), HOUSING_CONFIG(88), HOUSING_GIVEUP(89), HOUSING_CANCEL_GIVEUP(90), HOUSING_CREATE_PERSONAL_INS(91), SIDEKICK_ADOPT(92), SIDEKICK_ABANDON(93), AUGMENT_ITEM_SINGLE(94), AUGMENT_ITEM_MULTI(95), HOUSING_STUDIO(96), HOUSING_LIKE(97), HOUSING_SCRIPT(98), HOUSING_GUESTBOOK(99), QUEST_BOARD(100), AP_SELLING(101), PURCHASE_LIST(103), TELEPORT_SIMPLE(104), OPEN_INSTANCE_RECRUIT(105), MOVE_ITEM_SKIN(106), TRADE_IN_UPGRADE(107), AUTO_REWARD(108), ITEM_UPGRADE(109), SELECT_BOSS_LEVEL_1(20006), SELECT_BOSS_LEVEL_2(20007), SELECT_BOSS_LEVEL_3(20008), SELECT_BOSS_LEVEL_4(20009), SELECT_BOSS_LEVEL_5(20010), QUEST_AUTO_REWARD_1(110), QUEST_AUTO_REWARD_2(111), QUEST_AUTO_REWARD_3(112), QUEST_AUTO_REWARD_4(113), QUEST_AUTO_REWARD_5(114), QUEST_AUTO_REWARD_6(115), QUEST_AUTO_REWARD_7(116), QUEST_AUTO_REWARD_8(117), QUEST_AUTO_REWARD_9(118), QUEST_AUTO_REWARD_10(119), QUEST_AUTO_REWARD_11(120), QUEST_AUTO_REWARD_12(121), QUEST_AUTO_REWARD_13(122), QUEST_AUTO_REWARD_14(123), QUEST_AUTO_REWARD_15(124), OPEN_STIGMA_ENCHANT(125), ITEM_REPLACE(126), QUEST_GOLD_REWARD(127), RECOVERY_2(128), CHECK_USER_HAS_QUEST_ITEM_REMOTE(129), RECOVERY_FREE(130); private int id; private DialogAction(int id) { this.id = id; } public int id() { return id; } public static DialogAction getActionByDialogId(int id) { for (DialogAction da: values()) { if (da.id() == id) { return da; } } return null; } }
Yes, there are many things that are different ahau ahau, it's very confusing, but for me, I don't understand anything. It's going slower, I don't know if I'm doing it right, but I'm trying and you guys are helping me a lot by reporting the missions that are having problems, as I can't even play with my character to find them.NO, we just discussing that we have two different QE which use two different variables, with the negative effect that quests using one sort of variables are not compatible with quests using the other variables.
There is no problem if you need to fix one or two quets. The issues ist wenn you ar missing a lot of quests and the quests you need are using a different variables.
As I already wrote, there is no problem to change the quest to other variables, if they are just a few, But whan are so like in post #62I knew about packages, why you can't add this enum into emu?)
Just add this enum in proper package and you don't need to change all time enums in script
/**
* @author Balthazar
*/
public class _1162AltenosWeddingRing extends QuestHandler {
private final static int questId = 1162;
public _1162AltenosWeddingRing() {
super(questId);
}
@Override
public void register() {
qe.registerQuestNpc(203095).addOnQuestStart(questId);
qe.registerQuestNpc(203095).addOnTalkEvent(questId);
qe.registerQuestNpc(203093).addOnTalkEvent(questId);
qe.registerQuestNpc(700005).addOnTalkEvent(questId);
}
@Override
public boolean onDialogEvent(final QuestEnv env) {
final Player player = env.getPlayer();
int targetId = 0;
if (env.getVisibleObject() instanceof Npc) {
targetId = ((Npc) env.getVisibleObject()).getNpcId();
}
QuestState qs = player.getQuestStateList().getQuestState(questId);
if (qs == null || qs.getStatus() == QuestStatus.NONE) {
if (targetId == 203095) {
if (env.getDialog() == QuestDialog.START_DIALOG)
return sendQuestDialog(env, 1011);
else {
return sendQuestStartDialog(env);
}
}
}
if (qs == null) {
return false;
}
if (qs.getStatus() == QuestStatus.START) {
switch (targetId) {
case 700005: {
switch (env.getDialog()) {
case USE_OBJECT: {
if (player.getInventory().getItemCountByItemId(182200563) == 0) {
if (!giveQuestItem(env, 182200563, 1)) {
return true;
}
}
qs = player.getQuestStateList().getQuestState(questId);
qs.setQuestVarById(0, qs.getQuestVarById(0) + 1);
updateQuestStatus(env);
PacketSendUtility.broadcastPacket(player.getTarget(), new SM_EMOTION((Creature) player.getTarget(), EmotionType.DIE, 128, 0)); // wtf ?
return true;
}
default:
break;
}
}
case 203093:
case 203095: {
if (qs.getQuestVarById(0) == 1) {
qs.setStatus(QuestStatus.REWARD);
updateQuestStatus(env);
removeQuestItem(env, 182200563, 1);
PacketSendUtility.sendPacket(player, new SM_DIALOG_WINDOW(env.getVisibleObject().getObjectId(), 10));
return true;
}
}
return false;
}
}
else if (qs.getStatus() == QuestStatus.REWARD) {
if (targetId == 203095) {
if (env.getDialogId() == 1009) {
return sendQuestDialog(env, 5);
}
else {
return sendQuestEndDialog(env);
}
}
}
return false;
}
}
<quest id="14050" name="Orders from Heiron Fortress" nameId="1129908" minlevel_permitted="36" max_repeat_count="1" cannot_share="true" cannot_giveup="true" race_permitted="ELYOS" category="MISSION">
<rewards exp="4272047">
<selectable_reward_item item_id="125004165" count="1"/>
<selectable_reward_item item_id="125004166" count="1"/>
<selectable_reward_item item_id="125004167" count="1"/>
<selectable_reward_item item_id="125004168" count="1"/>
<reward_item item_id="188053408" count="3"/>
<reward_item item_id="162000050" count="20"/>
</rewards>
<class_permitted>GLADIATOR TEMPLAR ASSASSIN RANGER SORCERER SPIRIT_MASTER CHANTER CLERIC GUNSLINGER SONGWEAVER TECHNIST AETHERTECH</class_permitted>
</quest>
package quest.heiron;
import com.aionemu.gameserver.model.DialogAction;
import com.aionemu.gameserver.model.gameobjects.Npc;
import com.aionemu.gameserver.model.gameobjects.player.Player;
import com.aionemu.gameserver.questEngine.QuestEngine;
import com.aionemu.gameserver.questEngine.handlers.QuestHandler;
import com.aionemu.gameserver.questEngine.model.QuestEnv;
import com.aionemu.gameserver.questEngine.model.QuestState;
import com.aionemu.gameserver.questEngine.model.QuestStatus;
import com.aionemu.gameserver.world.zone.ZoneName;
public class _14050OrdersFromHeironFortress extends QuestHandler {
private final static int questId = 14050;
public _14050OrdersFromHeironFortress() {
super(questId);
}
@Override
public void register() {
qe.registerQuestNpc(204500).addOnTalkEvent(questId);
qe.registerOnEnterZone(ZoneName.get("NEW_HEIRON_GATE_210040000"), questId);
}
@Override
public boolean onDialogEvent(QuestEnv env) {
final Player player = env.getPlayer();
final QuestState qs = player.getQuestStateList().getQuestState(questId);
if (qs == null) {
return false;
}
int targetId = 0;
if (env.getVisibleObject() instanceof Npc) {
targetId = ((Npc) env.getVisibleObject()).getNpcId();
}
if (targetId != 204500) {
return false;
}
if (qs.getStatus() == QuestStatus.START) {
if (env.getDialog() == DialogAction.QUEST_SELECT) {
return sendQuestDialog(env, 10002);
}
else if (env.getDialogId() == 1009) {
qs.setStatus(QuestStatus.REWARD);
qs.setQuestVarById(0, 1);
updateQuestStatus(env);
return sendQuestDialog(env, 5);
}
return false;
}
else if (qs.getStatus() == QuestStatus.REWARD) {
if (env.getDialogId() == 23) {
int[] ids = { 14051, 14052, 14053, 14054 };
for (int id : ids) {
QuestEngine.getInstance().onEnterZoneMissionEnd(new QuestEnv(env.getVisibleObject(), env.getPlayer(), id, env.getDialogId()));
}
}
return sendQuestEndDialog(env);
}
return false;
}
@Override
public boolean onEnterZoneEvent(QuestEnv env, ZoneName zoneName) {
return defaultOnEnterZoneEvent(env, zoneName, ZoneName.get("NEW_HEIRON_GATE_210040000"));
}
}
That quest works fine in the Encom package we are using. You can download it from the first page to compare those files, as there are differences in them from what you are showing.I have an interesting question, am I the only one who didn't have a quest from Heiron (14050)?
Very strange this problem, i confess i haven't come across it yet. lolI faced a situation where I am unsure where to look for the solution. When you check out items for sale in the private shop, one of your accounts is logged out of the game. I'm not sure if this is due to me using two accounts, but if I use one admin account and the other doesn't, the disconnect doesn't happen. However, another problem arises: when you set a value, such as 1 kinah or more, no matter the amount, it always comes up with an exorbitant value of 8,0000000000000000. and this problem already comes from the old "svn"