• Unfortunately, we have experienced significant hard drive damage that requires urgent maintenance and rebuilding. The forum will be a state of read only until we install our new drives and rebuild all the configurations needed. Please follow our Facebook page for updates, we will be back up shortly! (The forum could go offline at any given time due to the nature of the failed drives whilst awaiting the upgrades.) When you see an Incapsula error, you know we are in the process of migration.

Aion 5.8 emulator improvement community project

Junior Spellweaver
Joined
Sep 12, 2022
Messages
168
Reaction score
206
this one has been discontinued look "level 999" quest id="1056" name="Lepharist Poison Research" nameId="1102105" minlevel_permitted="999"
It will be discontinued but even so the npc has the arrow above his head saying "take me", and he has it in the list of available missions, I don't know how to proceed with this fix, any way to make it not show the 999 missions then as " take me"?
 
Newbie Spellweaver
Joined
Sep 6, 2015
Messages
60
Reaction score
112
For the quest Price of Goodwill when you are on the Steel Rake, there is nothing in Haorunerk's bag. Adding a teleport scroll will allow you to continue, but I haven't figured out to put one in the bag.

Change from:
XML:
<npc_template npc_id="700522" level="1" name="haorunerk's bag" name_id="371261" npc_type="NON_ATTACKABLE" height="2" rank="DISCIPLINED" rating="NORMAL" tribe="FIELD_OBJECT_ALL" type="GENERAL" ai="quest_use_item" attack_delay="2000" hpgauge_level="3">
        <stats maxHp="172" maxXp="100" main_hand_attack="20" main_hand_accuracy="187" pdef="100" mresist="187" power="23" evasion="187" accuracy="93"/>
        <bound_radius front="0.25" side="0.35" upper="2"/>
        <talk_info distance="5" delay="3"/>
    </npc_template>

to:
XML:
<npc_template npc_id="700522" level="1" name="haorunerk's bag" name_id="371261" npc_type="NON_ATTACKABLE" height="2" rank="DISCIPLINED" rating="NORMAL" tribe="FIELD_OBJECT_ALL" type="GENERAL" ai="chest" attack_delay="2000" hpgauge_level="3">
        <stats maxHp="172" maxXp="100" main_hand_attack="20" main_hand_accuracy="187" pdef="100" mresist="187" power="23" evasion="187" accuracy="93"/>
        <bound_radius front="0.25" side="0.35" upper="2"/>
        <talk_info distance="5" delay="3"/>
    </npc_template>

Add to chest_templates.xml
XML:
    <chest npcid="700522">
        <keyitem id="1" itemid="0" quantity="1"/>
    </chest>

and this code in quest_data.xml ensures that the scroll really drops if you have the quest and loot the chest / bag

XML:
<quest_drop npc_id="700522" item_id="182209082" drop_each_member="1" collecting_step="2"/>

Thats how you get the scroll in to the bag

I am trying to do this campaign quest called A Krall-ing suspicion [14024] But I can't collect my reward from Mabangtah. 😟

Maybe this Quest Code can help you (untestet because i don't use encom files)

Java:
/*
 * =====================================================================================*
 * This file is part of Aion-Unique (Aion-Unique Home Software Development)             *
 * Aion-Unique Development is a closed Aion Project that use Old Aion Project Base      *
 * Like Aion-Lightning, Aion-Engine, Aion-Core, Aion-Extreme, Aion-NextGen, ArchSoft,   *
 * Aion-Ger, U3J, Encom And other Aion project, All Credit Content                      *
 * That they make is belong to them/Copyright is belong to them. And All new Content    *
 * that Aion-Unique make the copyright is belong to Aion-Unique                         *
 * You may have agreement with Aion-Unique Development, before use this Engine/Source   *
 * You have agree with all of Term of Services agreement with Aion-Unique Development   *
 * =====================================================================================*
 */
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()) {
                    if (var == 0) {
                        case START_DIALOG: {
                            return sendQuestDialog(env, 1011);
                        }
                        case SELECT_ACTION_1012: {
                            return sendQuestDialog(env, 1012);
                        }
                        case STEP_TO_1: {
                            changeQuestStep(env, 0, 1, false);
                            return closeDialogWindow(env);
                        }
                        default:
                            break;
                    }
                }
            } if (targetId == 204045) {
                switch (env.getDialog()) {
                    if (var == 1) {
                        case START_DIALOG: {
                            return sendQuestDialog(env, 1352);
                        }
                        case SELECT_ACTION_1353: {
                            return sendQuestDialog(env, 1353);
                        }
                        case STEP_TO_2: {
                            changeQuestStep(env, 1, 2, false);
                            return closeDialogWindow(env);
                        }
                        default:
                            break;
                    }
                }
            } 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 CHECK_COLLECTED_ITEMS: {
                        return checkQuestItems(env, 2, 3, false, 2120, 2035);
                    }
                    case STEP_TO_4: {
                        TeleportService2.teleportTo(player, 210020000, 1605.3418f, 1528.9393f, 318.0651f, (byte) 117);
                        changeQuestStep(env, 3, 3, true);
                        return true;
                    }
                    case FINISH_DIALOG: {
                        return closeDialogWindow(env);
                    }
                    default:
                        break;
                }
            }
        } else if (qs.getStatus() == QuestStatus.REWARD) {
            if (targetId == 204020) {
                if (env.getDialog() == QuestDialog.USE_OBJECT) {
                    return sendQuestDialog(env, 2375);
                }
                return sendQuestEndDialog(env);
            }
        }
        return false;
    }
}
 
Last edited:
Joined
Oct 5, 2018
Messages
774
Reaction score
1,144
Change from:
XML:
<npc_template npc_id="700522" level="1" name="haorunerk's bag" name_id="371261" npc_type="NON_ATTACKABLE" height="2" rank="DISCIPLINED" rating="NORMAL" tribe="FIELD_OBJECT_ALL" type="GENERAL" ai="quest_use_item" attack_delay="2000" hpgauge_level="3">
        <stats maxHp="172" maxXp="100" main_hand_attack="20" main_hand_accuracy="187" pdef="100" mresist="187" power="23" evasion="187" accuracy="93"/>
        <bound_radius front="0.25" side="0.35" upper="2"/>
        <talk_info distance="5" delay="3"/>
    </npc_template>

to:
XML:
<npc_template npc_id="700522" level="1" name="haorunerk's bag" name_id="371261" npc_type="NON_ATTACKABLE" height="2" rank="DISCIPLINED" rating="NORMAL" tribe="FIELD_OBJECT_ALL" type="GENERAL" ai="chest" attack_delay="2000" hpgauge_level="3">
        <stats maxHp="172" maxXp="100" main_hand_attack="20" main_hand_accuracy="187" pdef="100" mresist="187" power="23" evasion="187" accuracy="93"/>
        <bound_radius front="0.25" side="0.35" upper="2"/>
        <talk_info distance="5" delay="3"/>
    </npc_template>

Add to chest_templates.xml
XML:
    <chest npcid="700522">
        <keyitem id="1" itemid="0" quantity="1"/>
    </chest>

and this code in quest_data.xml ensures that the scroll really drops if you have the quest and loot the chest / bag

XML:
<quest_drop npc_id="700522" item_id="182209082" drop_each_member="1" collecting_step="2"/>

Thats how you get the scroll in to the bag



Maybe this Quest Code can help you (untestet because i don't use encom files)

Java:
/*
 * =====================================================================================*
 * This file is part of Aion-Unique (Aion-Unique Home Software Development)             *
 * Aion-Unique Development is a closed Aion Project that use Old Aion Project Base      *
 * Like Aion-Lightning, Aion-Engine, Aion-Core, Aion-Extreme, Aion-NextGen, ArchSoft,   *
 * Aion-Ger, U3J, Encom And other Aion project, All Credit Content                      *
 * That they make is belong to them/Copyright is belong to them. And All new Content    *
 * that Aion-Unique make the copyright is belong to Aion-Unique                         *
 * You may have agreement with Aion-Unique Development, before use this Engine/Source   *
 * You have agree with all of Term of Services agreement with Aion-Unique Development   *
 * =====================================================================================*
 */
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()) {
                    if (var == 0) {
                        case START_DIALOG: {
                            return sendQuestDialog(env, 1011);
                        }
                        case SELECT_ACTION_1012: {
                            return sendQuestDialog(env, 1012);
                        }
                        case STEP_TO_1: {
                            changeQuestStep(env, 0, 1, false);
                            return closeDialogWindow(env);
                        }
                        default:
                            break;
                    }
                }
            } if (targetId == 204045) {
                switch (env.getDialog()) {
                    if (var == 1) {
                        case START_DIALOG: {
                            return sendQuestDialog(env, 1352);
                        }
                        case SELECT_ACTION_1353: {
                            return sendQuestDialog(env, 1353);
                        }
                        case STEP_TO_2: {
                            changeQuestStep(env, 1, 2, false);
                            return closeDialogWindow(env);
                        }
                        default:
                            break;
                    }
                }
            } 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 CHECK_COLLECTED_ITEMS: {
                        return checkQuestItems(env, 2, 3, false, 2120, 2035);
                    }
                    case STEP_TO_4: {
                        TeleportService2.teleportTo(player, 210020000, 1605.3418f, 1528.9393f, 318.0651f, (byte) 117);
                        changeQuestStep(env, 3, 3, true);
                        return true;
                    }
                    case FINISH_DIALOG: {
                        return closeDialogWindow(env);
                    }
                    default:
                        break;
                }
            }
        } else if (qs.getStatus() == QuestStatus.REWARD) {
            if (targetId == 204020) {
                if (env.getDialog() == QuestDialog.USE_OBJECT) {
                    return sendQuestDialog(env, 2375);
                }
                return sendQuestEndDialog(env);
            }
        }
        return false;
    }
}
FrozenKiller thank you so much bro it worked now you can add it to "github" working for everyone. "Price of Goodwill" ID: 3200 and another thing that helped me a lot was Robyson version 4.3 code I had to create a character to understand how it works.

this mission requires you to be level 35 to deliver. ID: 14024
The Krall-ing Suspicion is just like that because I noticed that the NPC "Mabangtah" has level 35 and the mission is level 28, it only releases to deliver at level 35, I can't say if it's supposed to be like that, its functioning is right nothing is wrong, but even so, I'm going to put the writing that FrozenKiller sent us on "github", with some changes due to incompatibility with encom.
 
Last edited:
Skilled Illusionist
Joined
Nov 8, 2019
Messages
307
Reaction score
302
Change from:
XML:
<npc_template npc_id="700522" level="1" name="haorunerk's bag" name_id="371261" npc_type="NON_ATTACKABLE" height="2" rank="DISCIPLINED" rating="NORMAL" tribe="FIELD_OBJECT_ALL" type="GENERAL" ai="quest_use_item" attack_delay="2000" hpgauge_level="3">
        <stats maxHp="172" maxXp="100" main_hand_attack="20" main_hand_accuracy="187" pdef="100" mresist="187" power="23" evasion="187" accuracy="93"/>
        <bound_radius front="0.25" side="0.35" upper="2"/>
        <talk_info distance="5" delay="3"/>
    </npc_template>

to:
XML:
<npc_template npc_id="700522" level="1" name="haorunerk's bag" name_id="371261" npc_type="NON_ATTACKABLE" height="2" rank="DISCIPLINED" rating="NORMAL" tribe="FIELD_OBJECT_ALL" type="GENERAL" ai="chest" attack_delay="2000" hpgauge_level="3">
        <stats maxHp="172" maxXp="100" main_hand_attack="20" main_hand_accuracy="187" pdef="100" mresist="187" power="23" evasion="187" accuracy="93"/>
        <bound_radius front="0.25" side="0.35" upper="2"/>
        <talk_info distance="5" delay="3"/>
    </npc_template>

Add to chest_templates.xml
XML:
    <chest npcid="700522">
        <keyitem id="1" itemid="0" quantity="1"/>
    </chest>

and this code in quest_data.xml ensures that the scroll really drops if you have the quest and loot the chest / bag

XML:
<quest_drop npc_id="700522" item_id="182209082" drop_each_member="1" collecting_step="2"/>

Thats how you get the scroll in to the bag



Maybe this Quest Code can help you (untestet because i don't use encom files)

Java:
/*
 * =====================================================================================*
 * This file is part of Aion-Unique (Aion-Unique Home Software Development)             *
 * Aion-Unique Development is a closed Aion Project that use Old Aion Project Base      *
 * Like Aion-Lightning, Aion-Engine, Aion-Core, Aion-Extreme, Aion-NextGen, ArchSoft,   *
 * Aion-Ger, U3J, Encom And other Aion project, All Credit Content                      *
 * That they make is belong to them/Copyright is belong to them. And All new Content    *
 * that Aion-Unique make the copyright is belong to Aion-Unique                         *
 * You may have agreement with Aion-Unique Development, before use this Engine/Source   *
 * You have agree with all of Term of Services agreement with Aion-Unique Development   *
 * =====================================================================================*
 */
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()) {
                    if (var == 0) {
                        case START_DIALOG: {
                            return sendQuestDialog(env, 1011);
                        }
                        case SELECT_ACTION_1012: {
                            return sendQuestDialog(env, 1012);
                        }
                        case STEP_TO_1: {
                            changeQuestStep(env, 0, 1, false);
                            return closeDialogWindow(env);
                        }
                        default:
                            break;
                    }
                }
            } if (targetId == 204045) {
                switch (env.getDialog()) {
                    if (var == 1) {
                        case START_DIALOG: {
                            return sendQuestDialog(env, 1352);
                        }
                        case SELECT_ACTION_1353: {
                            return sendQuestDialog(env, 1353);
                        }
                        case STEP_TO_2: {
                            changeQuestStep(env, 1, 2, false);
                            return closeDialogWindow(env);
                        }
                        default:
                            break;
                    }
                }
            } 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 CHECK_COLLECTED_ITEMS: {
                        return checkQuestItems(env, 2, 3, false, 2120, 2035);
                    }
                    case STEP_TO_4: {
                        TeleportService2.teleportTo(player, 210020000, 1605.3418f, 1528.9393f, 318.0651f, (byte) 117);
                        changeQuestStep(env, 3, 3, true);
                        return true;
                    }
                    case FINISH_DIALOG: {
                        return closeDialogWindow(env);
                    }
                    default:
                        break;
                }
            }
        } else if (qs.getStatus() == QuestStatus.REWARD) {
            if (targetId == 204020) {
                if (env.getDialog() == QuestDialog.USE_OBJECT) {
                    return sendQuestDialog(env, 2375);
                }
                return sendQuestEndDialog(env);
            }
        }
        return false;
    }
}
Thank you FrozenKiller, but where should I put this Java code? Bit confused, sorry.
 
Skilled Illusionist
Joined
Nov 8, 2019
Messages
307
Reaction score
302
Read the description window for Nimble. He is only around at a certain time.
I've done that quest many times before and I always managed to find Nimble. Thanks Pressure, I will check that out.
 
Joined
Dec 6, 2013
Messages
391
Reaction score
813
I've done that quest many times before and I always managed to find Nimble. Thanks Pressure, I will check that out.
Any time you are having trouble finding a mob, check their description window. Their appearance might be conditional. If that doesn't help, you can also check the spawn xml for the zone to ensure it's in there and if there are conditions:
Code:
        <!-- Nimble Aramis -->
        <spawn npc_id="213797" respawn_time="1800">
            <temporary_spawn spawn_time="21.*.*" despawn_time="4.*.*"/>
            <spot x="583.41" y="1723.98" z="238.09062" h="79" walker_id="5E214B2F2016FA251780B543B81E4B078D52E536"/>
        </spawn>
 
Joined
Oct 5, 2018
Messages
774
Reaction score
1,144
While boring in free time I decided a bit test some quests and this one look like be a bit broken https://aioncodex.com/us/quest/10521/
Can't receive items after finish from Wanda.
Someone can check as well it's only gladiator problem or all classes.
Regarding.
I was unable to complete quest ID: 10505, called 'Sneeze Attack', due to an issue preventing quest delivery. I need to resolve the previous quest to be able to move forward and investigate the issue in quest ID: 10521 titled 'Memories of Eternity'. However, I still don't understand why I had problems with the '10505' quest. And you?
 
Master Summoner
Joined
May 25, 2020
Messages
537
Reaction score
240
I was unable to complete quest ID: 10505, called 'Sneeze Attack', due to an issue preventing quest delivery. I need to resolve the previous quest to be able to move forward and investigate the issue in quest ID: 10521 titled 'Memories of Eternity'. However, I still don't understand why I had problems with the '10505' quest. And you?
same
 
Joined
Dec 6, 2013
Messages
391
Reaction score
813
This quest is shown but not obtainable. Is it because it doesn't have objectives?
Code:
    <quest id="1668" name="Draconute Weapon" nameId="1102859" minlevel_permitted="44" max_repeat_count="1" cannot_share="true" race_permitted="ELYOS" category="IMPORTANT">
        <rewards exp="5895626">
            <reward_item item_id="186000005" count="20"/>
        </rewards>
    </quest>


It is given by Javlantia

-------------------------------------------------------------

Getting this in Sanctum when trying to teleport to Inggison:
1694104084583 - Aion 5.8 emulator improvement community project - RaGEZONE Forums


There is no file called teleporter_templates.xml, but here is the entry in teleport_location.xml:
Code:
    <teleloc_template loc_id="313" mapid="210130000" name="Outer Port Of Inggison" name_id="403989" posX="1369.6293" posY="360.29944" posZ="589.57605" heading="17"/>
 
Last edited:
Skilled Illusionist
Joined
Nov 8, 2019
Messages
307
Reaction score
302
When my inventory gets full, I cannot attack. Is there a way to disable that?
 
Newbie Spellweaver
Joined
Sep 6, 2015
Messages
60
Reaction score
112
Getting this in Sanctum when trying to teleport to Inggison:
View attachment 241387

There is no file called teleporter_templates.xml, but here is the entry in teleport_location.xml:
Code:
    <teleloc_template loc_id="313" mapid="210130000" name="Outer Port Of Inggison" name_id="403989" posX="1369.6293" posY="360.29944" posZ="589.57605" heading="17"/>

data/static_data/npc_teleporter.xml
 
Back
Top