Welcome!

Join our community of MMO enthusiasts and game developers! By registering, you'll gain access to discussions on the latest developments in MMO server files and collaborate with like-minded individuals. Join us today and unlock the potential of MMO server development!

Join Today!

[Detailed Guide] Custom Quests

Joined
Feb 4, 2010
Messages
2,204
Reaction score
1,012
I AM CURRENTLY FIXING THIS UP, AND ADDING ONTO IT. EXPECT A NEW AND BETTER ONE SOON(Will just edit post :p)


Custom Quests really are quite easy to make in GunZ to an extent if you're just using MAIET models, and in this thread I will go over what you are going to need to edit to create your own custom quest.


Files to Edit:

npc.xml
zskill.xml
zitem.xml
zquestitem.xml
scenerio.xml
droptable.xml


NPC.xml​

Fairly straight forward if you have a good example of ijji NPC's I'll provide you with a translated and commented NPC.xml I have done up.
Code:
<?xml version="1.0" encoding="UTF-8" ?>
<XML id="npccatalogue">

<!--
////////////////////////////////////////////////////////////////////////////////////////////////////////

 AI
  
////////////////////////////////////////////////////////////////////////////////////////////////////////
-->
<AI_VALUE>
  <SHAKING pathfinding_update="0.1" attack_update="0.1" speed="0.2" />
  <INTELLIGENCE>
    <TIME step="1">0.4</TIME>			<!-- Level 1 : 가장 영리함 -->
    <TIME step="2">0.6</TIME>			<!-- Level 2 : 영리함 -->
    <TIME step="3">1</TIME>				<!-- Level 3 : 보통 -->
    <TIME step="4">2</TIME>				<!-- Level 4 : 덜떨어짐 -->
    <TIME step="5">3</TIME>				<!-- Level 5 : 매우 덜떨어짐 -->
  </INTELLIGENCE>
  <AGILITY>
    <TIME step="1">0.2</TIME>			<!-- Level 1 : 가장 민첩함 -->
    <TIME step="2">0.5</TIME>			<!-- Level 2 : 민첩함 -->
    <TIME step="3">1</TIME>				<!-- Level 3 : 보통 -->
    <TIME step="4">2</TIME>				<!-- Level 4 : 둔함 -->
    <TIME step="5">3</TIME>				<!-- Level 5 : 가장 둔함 -->
  </AGILITY>
</AI_VALUE>



<!--
////////////////////////////////////////////////////////////////////////////////////////////////////////

 고블린
         
////////////////////////////////////////////////////////////////////////////////////////////////////////
-->
<!-- Goblin -->
<NPC id="11"
	 name="STR:NPC_NAME_11"
	 desc="STR:NPC_DESC_11"
	 meshname="goblin"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="30"
	 max_ap="50"
	 int="4"
	 agility="4"
	 view_angle="15"
	 dc="5"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="110" />
	 <ATTACK type="melee" range="150" weaponitem_id="300011" />
	 <SPEED default="300" />
	 <DROP table="G11" />
</NPC>

<!-- Goblin Rifle -->
<NPC id="12"
	 name="STR:NPC_NAME_12"
	 desc="STR:NPC_DESC_12"
	 meshname="goblinG"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="30"
	 max_ap="30"
	 int="4"
	 agility="4"
	 view_angle="25"
	 dc="5"
	 offensetype="2"
	 dyingtime="5">
	 <COLLISION radius="30" height="110" />
	 <ATTACK type="melee" range="110" weaponitem_id="300012" />
	 <SPEED default="230" />
	 <SKILL id="121" />          <!--- Gun --->
	 <DROP table="G12" />
</NPC>

<!-- Goblin Mage -->
<NPC id="13"
	 name="STR:NPC_NAME_13"
	 desc="STR:NPC_DESC_13"
	 meshname="goblinW"
	 scale="1.0 1.0 1.0"
	 grade="veteran"
	 max_hp="40"
	 max_ap="40"
	 int="4"
	 agility="4"
	 view_angle="25"
	 dc="6"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="120" />
	 <ATTACK type="melee" range="130" weaponitem_id="300013" />
	 <SPEED default="400" />
	 <SKILL id="131" />         <!--- Massive Swing --->
	 <SKILL id="132" />         <!--- Lesser Heal --->
	 <DROP table="G13" />
</NPC>

<!-- ??? Goblin -->
<NPC id="14"
	 name="STR:NPC_NAME_14"
	 desc="STR:NPC_DESC_14"
	 meshname="goblinH"
	 scale="1.0 1.0 1.0"
	 grade="veteran"
	 max_hp="50"
	 max_ap="100"
	 int="4"
	 agility="2"
	 view_angle="40"
	 dc="7"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="35" height="140" />
	 <FLAG never_pushed="true" />
	 <ATTACK type="melee" range="170" weaponitem_id="300014" />
	 <SPEED default="360" />
	 <DROP table="G14" />
</NPC>

<!-- Goblin Mage -->
<NPC id="15"
	 name="STR:NPC_NAME_15"
	 desc="STR:NPC_DESC_15"
	 meshname="goblinC"
	 scale="1.2 1.2 1.2"
	 grade="elite"
	 max_hp="200"
	 max_ap="100"
	 int="4"
	 agility="4"
	 view_angle="15"
	 dc="8"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="35" height="160" />
	 <ATTACK type="melee" range="270" weaponitem_id="300015" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="320" />
	 <SKILL id="151" />        <!--- Slow --->
	 <SKILL id="152" />        <!--- Fire --->
	 <DROP table="G15" />
</NPC>

<!-- Goblin King -->
<NPC id="16"
	 name="STR:NPC_NAME_16"
	 desc="STR:NPC_DESC_16"
	 meshname="goblinK"
	 scale="2.5 2.5 2.5"
	 grade="boss"
	 max_hp="7000"
	 max_ap="7000"
	 int="3"
	 agility="5"
	 view_angle="20"
	 dc="50"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="50" height="200" tremble="5" />
	 <ATTACK type="melee" range="450" weaponitem_id="300016" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="400" rotate="4.712" />
	 <SKILL id="161" />      <!--- Mass Swing --->
	 <SKILL id="162" />      <!--- GK's FireM --->
	 <DROP table="G16" />
</NPC>

<!-- Fake Goblin King -->
<NPC id="17"
	 name="STR:NPC_NAME_17"
	 desc="STR:NPC_DESC_17"
	 meshname="goblinK"
	 scale="2.1 2.1 2.1"
	 grade="boss"
	 max_hp="5000"
	 max_ap="5000"
	 int="4"
	 agility="5"
	 view_angle="20"
	 dc="50"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="50" height="200" tremble="5" />
	 <ATTACK type="melee" range="450" weaponitem_id="300016" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="400" rotate="4.712" />
	 <SKILL id="161" />      <!--- Mass Swing --->
	 <SKILL id="162" />      <!--- GK's FireM --->
	 <DROP table="G17" />
</NPC>

<!-- ??? Goblin King -->
<NPC id="18"
	 name="STR:NPC_NAME_18"
	 desc="STR:NPC_DESC_18"
	 meshname="goblinKB"
	 scale="2.8 2.8 2.8"
	 grade="boss"
	 max_hp="9000"
	 max_ap="9000"
	 int="3"
	 agility="5"
	 view_angle="20"
	 dc="50"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="50" height="200" tremble="5" />
	 <ATTACK type="melee" range="450" weaponitem_id="300017" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="400" rotate="4.712" />
	 <SKILL id="163" />     <!--- Mass Swing --->
	 <SKILL id="164" />     <!--- GK's FireM --->
	 <SKILL id="166" />     <!--- Less  Heal --->
	 <DROP table="G18" />
</NPC>

<!-- Thunder GK(?) -->
<NPC id="181"
	 name="STR:NPC_NAME_181"
	 desc="STR:NPC_DESC_181"
	 meshname="goblinKB"
	 scale="1.2 1.2 1.2"
	 grade="elite"
	 max_hp="150"
	 max_ap="150"
	 int="3"
	 agility="2"
	 view_angle="20"
	 dc="30"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="50" height="200" tremble="5" />
	 <ATTACK type="melee" range="450" weaponitem_id="300018" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="450" rotate="4.712" />
	 <SKILL id="171" />     <!--- Massi Swing --->
	 <SKILL id="172" />     <!--- Magic Flash --->
	 <DROP table="G181" />
</NPC>

<!-- Dwaf Goblin King -->
<NPC id="19"
	 name="STR:NPC_NAME_19"
	 desc="STR:NPC_DESC_19"
	 meshname="goblinK"
	 scale="1.2 1.2 1.2"
	 grade="boss"
	 max_hp="5000"
	 max_ap="5000"
	 int="3"
	 agility="5"
	 view_angle="20"
	 dc="50"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="50" height="200" tremble="5" />
	 <ATTACK type="melee" range="450" weaponitem_id="300017" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="450" rotate="4.712" />
	 <SKILL id="167" />     <!--- Mass Swing --->
	 <SKILL id="168" />     <!--- GK's FBall --->
	 <SKILL id="169" />     <!--- Less  Heal --->
	 <SKILL id="174" />     <!--- Magic Fire --->
	 <DROP table="G19" />
</NPC>

<!-- Dward Goblin King(Event) -->
<NPC id="191"
	 name="STR:NPC_NAME_191"
	 desc="STR:NPC_DESC_191"
	 meshname="goblinK"
	 scale="1.2 1.2 1.2"
	 grade="elite"
	 max_hp="150"
	 max_ap="150"
	 int="3"
	 agility="2"
	 view_angle="20"
	 dc="30"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="50" height="200" tremble="5" />
	 <ATTACK type="melee" range="450" weaponitem_id="300018" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="450" rotate="4.712" />
	 <SKILL id="173" />    <!--- Massive Swing --->
	 <DROP table="G191" />
</NPC>


<!--
////////////////////////////////////////////////////////////////////////////////////////////////////////

 리쟈드

////////////////////////////////////////////////////////////////////////////////////////////////////////
-->
<!-- Kobolt -->
<NPC id="21"
	 name="STR:NPC_NAME_21"
	 desc="STR:NPC_DESC_21"
	 meshname="kobolt"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="50"
	 max_ap="50"
	 int="2"
	 agility="2"
	 view_angle="25"
	 dc="5"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="35" height="150" />
	 <ATTACK type="melee" range="165" weaponitem_id="300021" />
	 <FLAG never_attack_cancel="true" />
	 <SPEED default="300" />
	 <DROP table="K21" />
</NPC>

<!-- Kobold Shaman -->
<NPC id="22"
	 name="STR:NPC_NAME_22"
	 desc="STR:NPC_DESC_22"
	 meshname="kobold_shaman"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="40"
	 max_ap="40"
	 int="2"
	 agility="4"
	 view_angle="25"
	 dc="5"
	 offensetype="2"
	 dyingtime="5">
	 <COLLISION radius="33" height="130" />
	 <ATTACK type="melee" range="135" weaponitem_id="300022" />
	 <FLAG never_attack_cancel="true" />
	 <SPEED default="250" />
	 <SKILL id="221" />    <!--- Posion Nail --->
	 <SKILL id="222" />    <!--- Posion Ball --->
	 <DROP table="K22" />
</NPC>

<!-- Bigger Kobold -->
<NPC id="23"
	 name="STR:NPC_NAME_23"
	 desc="STR:NPC_DESC_23"
	 meshname="koboltC"
	 scale="1.3 1.3 1.3"
	 grade="veteran"
	 max_hp="90"
	 max_ap="90"
	 int="2"
	 agility="1"
	 view_angle="15"
	 dc="6"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="38" height="150" />
	 <ATTACK type="melee" range="230" weaponitem_id="300023" />
	 <FLAG never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="400" />
	 <DROP table="K23" />
</NPC>

<!-- Mini Boss Kobold -->
<NPC id="24"
	 name="STR:NPC_NAME_24"
	 desc="STR:NPC_DESC_24"
	 meshname="koboltK"
	 scale="1.0 1.0 1.0"
	 grade="elite"
	 max_hp="160"
	 max_ap="160"
	 int="2"
	 agility="2"
	 view_angle="15"
	 dc="7"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="60" height="250" />
	 <ATTACK type="melee" range="370" weaponitem_id="300024" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="300" rotate="4.0" />
	 <SKILL id="241" />   <!--- Posion Storm --->
	 <DROP table="K24" />
</NPC>

<!-- Kobold King -->
<NPC id="25"
	 name="STR:NPC_NAME_25"
	 desc="STR:NPC_DESC_25"
	 meshname="koboltK"
	 scale="1.8 1.8 1.8"
	 grade="boss"
	 max_hp="5000"
	 max_ap="7000"
	 int="2"
	 agility="3"
	 view_angle="15"
	 dc="50"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="60" height="250" pick="true" tremble="10" />
	 <ATTACK type="melee" range="550" weaponitem_id="300025" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="300" rotate="3.0" />
	 <SKILL id="251" />     <!--- Poison Ball --->
	 <SKILL id="252" />     <!--- Healing --->
	 <DROP table="K25" />
</NPC>

<!-- Broken Golem -->
<NPC id="26"
	 name="STR:NPC_NAME_26"
	 desc="STR:NPC_DESC_26"
	 meshname="golem"
	 scale="1.7 1.7 1.7"
	 grade="boss"
	 max_hp="7000"
	 max_ap="8000"
	 int="1"
	 agility="2"
	 view_angle="25"
	 dc="60"
	 offensetype="2"
	 dyingtime="5">
	 <COLLISION radius="50" height="305" pick="true" tremble="10" />
	 <ATTACK type="melee" range="400" weaponitem_id="300026" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="350" rotate="4.712" />
	 <SKILL id="261" />    <!--- Fire Ball --->
	 <SKILL id="262" />    <!--- Poison --->
	 <SKILL id="263" />    <!--- Poison Nova --->
	 <DROP table="K26" />
</NPC>


<!--
////////////////////////////////////////////////////////////////////////////////////////////////////////

 스켈레톤

////////////////////////////////////////////////////////////////////////////////////////////////////////
-->
<!-- Skeleton -->
<NPC id="31"
	 name="STR:NPC_NAME_31"
	 desc="STR:NPC_DESC_31"
	 meshname="skeleton"
	 scale="1.1 1.1 1.1"
	 grade="regular"
	 max_hp="50"
	 max_ap="50"
	 int="3"
	 agility="5"
	 view_angle="40"
	 dc="5"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="135" />
	 <ATTACK type="melee" range="180" weaponitem_id="300031" />
	 <SPEED default="160" rotate="2.356" />
	 <FLAG never_pushed="true" never_attack_cancel="true" />
	 <DROP table="S31" />
</NPC>

<!-- Skeleton Mage -->
<NPC id="32"
	 name="STR:NPC_NAME_32"
	 desc="STR:NPC_DESC_32"
	 meshname="skeletonM"
	 scale="0.8 0.8 0.8"
	 grade="regular"
	 max_hp="40"
	 max_ap="40"
	 int="3"
	 agility="5"
	 view_angle="25"
	 dc="5"
	 offensetype="2"
	 dyingtime="5">
	 <COLLISION radius="30" height="195" />
	 <ATTACK type="melee" range="120" weaponitem_id="300032" />
	 <SPEED default="160" rotate="2.356" />
	 <SKILL id="321" />			<!-- Magic Arrow -->
	 <SKILL id="322" />			<!-- Magic Fire -->
	 <DROP table="S32" />
</NPC>

<!-- Captain Skeleton -->
<NPC id="33"
	 name="STR:NPC_NAME_33"
	 desc="STR:NPC_DESC_33"
	 meshname="skeletonC"
	 scale="1.1 1.1 1.1"
	 grade="veteran"
	 max_hp="80"
	 max_ap="100"
	 int="3"
	 agility="3"
	 view_angle="25"
	 dc="6"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="155" />
	 <ATTACK type="melee" range="280" weaponitem_id="300033" />
	 <FLAG never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="400" />
	 <DROP table="S33" />
</NPC>

<!-- Supurion -->
<NPC id="34"
	 name="STR:NPC_NAME_34"
	 desc="STR:NPC_DESC_34"
	 meshname="skeletonB"
	 scale="1.3 1.3 1.3"
	 grade="elite"
	 max_hp="200"
	 max_ap="100"
	 int="3"
	 agility="3"
	 view_angle="25"
	 dc="7"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="40" height="250" tremble="10" />
	 <ATTACK type="melee" range="350" weaponitem_id="300034" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="500" />
	 <SKILL id="341" />			<!-- Earthquake Cut -->
	 <DROP table="S34" />
</NPC>

<!-- The Dead Body Which is Cursed(mini amenra) -->
<NPC id="35"
	 name="STR:NPC_NAME_35"
	 desc="STR:NPC_DESC_35"
	 meshname="theUnholy"
	 scale="1.6 1.6 1.6"
	 grade="elite"
	 max_hp="200"
	 max_ap="100"
	 int="3"
	 agility="5"
	 view_angle="25"
	 dc="8"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="150" />
	 <ATTACK type="melee" range="180" weaponitem_id="300035" />
	 <FLAG never_blasted="true" never_attack_cancel="true" />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="351" />			<!-- Stun -->
	 <SKILL id="352" />			<!-- Lightning Strike -->
	 <SKILL id="353" />			<!-- Lightning Ball -->
	 <DROP table="S35" />
</NPC>

<!-- Reach phone (Mini Lich) -->
<NPC id="36"
	 name="STR:NPC_NAME_36"
	 desc="STR:NPC_DESC_36"
	 meshname="Lich"
	 scale="0.17 0.17 0.17"
	 grade="regular"
	 max_hp="40"
	 max_ap="0"
	 int="3"
	 agility="3"
	 view_angle="25"
	 dc="5"
	 offensetype="2"
	 dyingtime="5">
	 <COLLISION radius="120" height="700" tremble="5" />
	 <ATTACK type="melee" range="120" weaponitem_id="300036" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="200" rotate="2.452" />
	 <SKILL id="361" />			<!-- Flaming Inferno -->
	 <DROP table="S36" />
</NPC>

<!-- The shoe ferri (the boss) -->
<NPC id="37"
	 name="STR:NPC_NAME_37"
	 desc="STR:NPC_DESC_37"
	 meshname="skeletonB"
	 scale="2.1 2.1 2.1"
	 grade="boss"
	 max_hp="6000"
	 max_ap="7000"
	 int="3"
	 agility="2"
	 view_angle="15"
	 dc="50"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="40" height="250" tremble="10" />
	 <ATTACK type="melee" range="550" weaponitem_id="300037" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="700" />
	 <SKILL id="371" />			<!-- Flamecast Slash -->
	 <SKILL id="372" />			<!-- Seismic Shock -->
	 <SKILL id="373" />			<!-- Flamecast Slash 2 -->
	 <DROP table="S37" />
</NPC>

<!-- Amenra -->
<NPC id="38"
	 name="STR:NPC_NAME_38"
	 desc="STR:NPC_DESC_38"
	 meshname="theUnholy"
	 scale="4.0 4.0 4.0"
	 grade="boss"
	 max_hp="6000"
	 max_ap="7000"
	 int="3"
	 agility="5"
	 view_angle="25"
	 dc="50"
	 offensetype="2"
	 dyingtime="8">
	 <COLLISION radius="15" height="150" tremble="5" />
	 <ATTACK type="melee" range="1" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="200" />
	 <SKILL id="381" />			<!-- Lightning Storm -->
	 <SKILL id="382" />			<!-- Spheric Volt -->
	 <SKILL id="383" />			<!-- Unholy Aura -->
	 <DROP table="S38" />
</NPC>

<!-- Reach (Lich) -->
<NPC id="39"
	 name="STR:NPC_NAME_39"
	 desc="STR:NPC_DESC_39"
	 meshname="Lich"
	 scale="1.0 1.0 1.0"
	 grade="boss"
	 max_hp="7000"
	 max_ap="7000"
	 int="1"
	 agility="1"
	 view_angle="20"
	 dc="60"
	 offensetype="1"
	 dyingtime="8">
	 <COLLISION radius="80" height="750" tremble="5" />
	 <ATTACK type="melee" range="300" weaponitem_id="300039" />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="1000" rotate="5.0" />
	 <SKILL id="391" />			<!-- Devil's Arrow -->
	 <SKILL id="392" />			<!-- Dante's Breath -->
	 <SKILL id="393" />			<!-- Lava Dump -->
	 <DROP table="S39" />
</NPC>

<!--
////////////////////////////////////////////////////////////////////////////////////////////////////////

 팜포아
  
  특징 : 아스트라의 수수께끼 생물체로써 추운 곳에서 주로 모여산다. 얼음 계열의 마법을 잘 다루지만
         그 외에 모든것들은 아직도 수수께끼이다.
         
  보스 : 
         
////////////////////////////////////////////////////////////////////////////////////////////////////////
-->

<!-- Baby Palmpou -->
<NPC id="41"
	 name="STR:NPC_NAME_41"
	 desc="STR:NPC_DESC_41"
	 meshname="palmpou_baby"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="600"
	 max_ap="0"
	 int="2"
	 agility="2"
	 view_angle="25"
	 dc="5"
	 offensetype="1"
	 friendly="true">
	 <COLLISION radius="15" height="30" />
	 <ATTACK type="melee" range="80" hitrate="10" />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="411" />    <!--- Ice Ball --->
	 <DROP table="P41" />
</NPC>

<!-- Baby Battle Palmpou -->
<NPC id="48"
	 name="STR:NPC_NAME_48"
	 desc="STR:NPC_DESC_48"
	 meshname="palmpou_baby"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="60"
	 max_ap="0"
	 int="2"
	 agility="2"
	 view_angle="25"
	 dc="5"
	 offensetype="1">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="40"  />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="411" />    <!--- Lesser Ice Ball --->
	 <DROP table="P48" />
</NPC>

<!-- Palmpoa -->
<NPC id="42"
	 name="STR:NPC_NAME_42"
	 desc="STR:NPC_DESC_42"
	 meshname="palmpoa"
	 scale="1.2 1.2 1.2"
	 grade="regular"
	 max_hp="50"
	 max_ap="50"
	 int="2"
	 agility="4"
	 view_angle="25"
	 dc="6"
	 offensetype="1">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="40"  />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="421" />   <!--- Ice Ball --->
	 <DROP table="P42" />
</NPC>

<!-- General Palmpoa -->
<NPC id="43"
	 name="STR:NPC_NAME_43"
	 desc="STR:NPC_DESC_43"
	 meshname="palmpoaH"
	 scale="2.0 2.0 2.0"
	 grade="veteran"
	 max_hp="100"
	 max_ap="100"
	 int="2"
	 agility="4"
	 view_angle="25"
	 dc="7"
	 offensetype="1">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="80"  />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="432" />    <!--- Lesser Blizzard --->
	 <DROP table="P43" />
</NPC>

<!-- General Palmpoa Boss(unused?) -->
<NPC id="46"
	 name="STR:NPC_NAME_46"
	 desc="STR:NPC_DESC_46"
	 meshname="palmpoaH"
	 scale="2.0 2.0 2.0"
	 grade="boss"
	 max_hp="3000"
	 max_ap="3000"
	 int="2"
	 agility="4"
	 view_angle="25"
	 dc="7"
	 offensetype="1">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="80"  />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="431" />     <!--- Blizzard --->
	 <DROP table="P46" />
</NPC>

<!-- palmpou -->
<NPC id="44"
	 name="STR:NPC_NAME_44"
	 desc="STR:NPC_DESC_44"
	 meshname="palmpou"
	 scale="3.0 3.0 3.0"
	 grade="elite"
	 max_hp="200"
	 max_ap="200"
	 int="2"
	 agility="4"
	 view_angle="25"
	 dc="8"
	 offensetype="1">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="80"  />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="441" />   <!--- Blizzard Greater --->
	 <DROP table="P44" />
</NPC>

<!-- Boss Palmpou -->
<NPC id="47"
	 name="STR:NPC_NAME_47"
	 desc="STR:NPC_DESC_47"
	 meshname="palmpou"
	 scale="3.0 3.0 3.0"
	 grade="boss"
	 max_hp="6000"
	 max_ap="6000"
	 int="2"
	 agility="4"
	 view_angle="25"
	 dc="8"
	 offensetype="1">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="80"  />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="442" />     <!--- Blizzard Greater --->
	 <DROP table="P47" />
</NPC>

<!-- Cursed Palmpou -->
<NPC id="45"
	 name="STR:NPC_NAME_45"
	 desc="STR:NPC_DESC_45"
	 meshname="cpalmpoa"
	 scale="2.0 2.0 2.0"
	 grade="boss"
	 max_hp="8000"
	 max_ap="8000"
	 int="1"
	 agility="4"
	 view_angle="60"
	 dc="50"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="25" height="120" />
	 <ATTACK type="melee" range="80"  />
	 <FLAG never_blasted="true" never_pushed="true" never_attack_cancel="true" />
	 <SPEED default="150" rotate="2.356" />
	 <SKILL id="451" />      <!--- Blizzard Greater --->
	 <DROP table="P45" />
</NPC>

<!--
////////////////////////////////////////////////////////////////////////////////////////////////////////

 이벤트용 NPC
         
////////////////////////////////////////////////////////////////////////////////////////////////////////
-->
<!-- baseball cap goblin -->
<NPC id="111"
	 name="STR:NPC_NAME_11"
	 desc="STR:NPC_DESC_11"
	 meshname="goblinE"
	 scale="1.0 1.0 1.0"
	 grade="regular"
	 max_hp="30"
	 max_ap="50"
	 int="4"
	 agility="4"
	 view_angle="15"
	 dc="5"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="110" />
	 <ATTACK type="melee" range="150" weaponitem_id="300011" />
	 <SPEED default="300" />
	 <DROP table="E01" />
</NPC>


<!-- Event drop Skeleton -->
<NPC id="131"
	 name="STR:NPC_NAME_31"
	 desc="STR:NPC_DESC_31"
	 meshname="skeleton"
	 scale="1.1 1.1 1.1"
	 grade="regular"
	 max_hp="50"
	 max_ap="50"
	 int="3"
	 agility="5"
	 view_angle="40"
	 dc="5"
	 offensetype="1"
	 dyingtime="5">
	 <COLLISION radius="30" height="135" />
	 <ATTACK type="melee" range="180" weaponitem_id="300031" />
	 <SPEED default="160" rotate="2.356" />
	 <FLAG never_pushed="true" never_attack_cancel="true" />
	 <DROP table="E01" />
</NPC>

</XML>

Few notes:
The higher you set the intelligence to on a unit the more it will rely on skills than melee combat, if set too high on a boss the boss will become really easy to stun lock due to the fact it will try and cast skills over melee attacks even at close range

Offense Type 1 is mainly melee and 2 is mainly skills don't get it mixed up, your NPC's will act retarded and you will end up with very easy quests

If it asks for a rotate speed, I really suggest you leave it default, or you will either be able to walk circles around the unit or it will turn on you like a cheap hooker

Make sure you set "grade="x"" right, and just generally make sure you don't miss anything from the ijji npc.xml and you'll be fine


zskill.xml

Update: Free Skill Pack Available Here
http://forum.ragezone.com/f245/npc-skills-661254/

Made this thread a while back....

Code:
<SKILL id="4" 
        name="Generic Ice Bolt" 
	delay="3000"
        resisttype="2"
        offdlight="true"
        castinganimation="2"
        traileffect="icemissile" traileffecttype="1" traileffectscale="2.7" draw.track="true"
        effecttype="2" hitcheck="true" guidable="false" delay="1500" velocity="2000" throughNPC="true" colradius"35"
	lifetime="0" effectstarttime="1300" effecttime="3000" effectarea="2" difficulty="15" mod.damage="30"
	mod.dot="0" mod.criticalrate="0" mod.speed="100" mod.antimotion="false" mod.root="false"
	mod.heal="0" 
	<REPEAT delay="0.0" angle="0.0 0.0 0.1" />
	<REPEAT delay="0.0" angle="0.0 0.0 -0.1" />

Now let's get to the fun part, learning the tags. I'll use the same code, but this time with comments on every single possiblity

Code:
<SKILL id="4" 
        name="Generic Ice Bolt" [COLOR="Green"]// Self explanitary[/COLOR]
	delay="3000" [COLOR="Green"] // The delay before the spell can be cast again[/COLOR]
        resisttype="2" [COLOR="#008000"] // The type of elemental it is. Slow/Unresistable == 0 Fire == 1 Ice == 2 3 == ?? 
                           4 == Swings and Earth and a mosh pod of others MAIET got lazy, it then skips a few. 6 == healing... there are a few more but you can tinker  [/COLOR]
        offdlight="true" [COLOR="Green"]// GFX shaders poop just leave it as true[/COLOR]
        castinganimation="2" [COLOR="#008000"] // The animation it uses when the skill is cast, again too many to name here check out the client and existing skills [/COLOR]
        traileffect="icemissile" traileffecttype="1" traileffectscale="2.7" draw.track="true" [COLOR="Green"] // The trail projectile and it's effecttype all can be found in examples of ijji zskill.xml
             the scale is the size of it, if you wanted a very large trail you would make it a higher number, and visa versa for lower. draw.track="*" decides if the track should exist or not more shader poop, leave it as true  [/COLOR]
        effecttype="2" hitcheck="true" guidable="false" delay="1500" velocity="2000" throughNPC="true" colradius"35"
[COLOR="Green"] // The effect it has. 1 being fire 2 being ice, ect. again use the existing zskill to find out what you need. hitcheck="*" should it hit or can it miss? ThroughNPC="*" can it travel through NPC's?
colradius="*" the radius of the effect going off and hit detection, leave it around 35 unless it's a speciality skill [/COLOR]
        lifetime="0" effectstarttime="1300" effecttime="3000" effectarea="2" difficulty="15" mod.damage="30"[COLOR="#008000"]
 //  lifetime is a bit buggy it seems, I just leave it at 0 and adjust the effect start time and end time. start time is when the effect kicks in after you're hit, and effect time is how long the whole skill is on your character
effectarea is the AOE of the skill when it strikes a target, 2 is the default for fire balls and ice bolts, again. increase for a nova or whatnot. difficulty is the reliant on int="*" in the npc.xml. mod.dmg="30" is the damage delt from the effect
[/COLOR]
	mod.dot="0" mod.criticalrate="0" mod.speed="100" mod.antimotion="false" mod.root="false"
[COLOR="#008000"]// mod.dot=*" Damage over time. mod.criticalrate="*" chance to crit. mod.speed"*" still not sure. mod.antimoton/root are keeping your char from moving[/COLOR] 
	mod.heal="0" [COLOR="Green"]// heal plawks?[/COLOR]
	<REPEAT delay="0.0" angle="0.0 0.0 0.1" />
	<REPEAT delay="0.0" angle="0.0 0.0 -0.1" />
[COLOR="Green"]// loop the spell and shoot it off at a different angle or delay this is just a 3 round burst ice blast[/COLOR]

Just noticed I forgot to tag Velocity it's the projectiles move speed.

zitem.xml

You really should know how to make items by now. Only thing extra you need to know is that you don't add meshnames to the weapon as the models have the weapons built into their models


zquestitem.xml

Items that you use for sacrifices or I believe you can make the quest items that are dropped in here

Code:
ITEM id="200028" name="Goblin Spellbook" level="0" type="book" desc="" unique="0" price="0" secrifice="1" param="0"/>

Just an example of how I format it, again just grab the type from an ijji zquestitem.xml the zitems are very simple

droptable.xml

The droptable is tied in with the NPC.xml as in the npc.xml it asks for which droptable you want the NPC to use, the droptable can be a hassle but hey, what can you do

Code:
<XML id="droptable">
<DROPSET id="1" name="1">
	<ITEMSET QL="0">
		<ITEM id="200019" rate="0.01"/>
		<ITEM id="mag1" rate="0.03"/>
		<ITEM id="hp1" rate="0.25"/>
		<ITEM id="ap1" rate="0.25"/>
	</ITEMSET>
	<ITEMSET QL="1">
		<ITEM id="200019" rate="0.01"/>
		<ITEM id="mag1" rate="0.03"/>
		<ITEM id="hp1" rate="0.25"/>
		<ITEM id="ap1" rate="0.25"/>
	</ITEMSET>
</DROPSET>

You can use any world item spawns in here, or any item ID's. Just try not to duplicate or it gets a bit buggy. You gotta make quite a few of these as you don't want all the NPC's to drop the same world items or quest items. It's a hassle but isn't all XML work a hassle?


scenario.xml

Saving the worst for last, I have nightmares of scenario.xml it's just so Ducking annoying and easy to mess up


Example of standard level 0 normal old quests with no items

Code:
<STANDARD_SCENARIO title="Mansion" QL="0" DC="2" mapset="Mansion" XP="10000" BP="10">
	<MAP dice="1" key_sector="101">
		<NPCSET_ARRAY>002/002/002</NPCSET_ARRAY>
	</MAP>
	<MAP dice="2" key_sector="101">
		<NPCSET_ARRAY>002/002/002</NPCSET_ARRAY>
	</MAP>
	<MAP dice="3" key_sector="102">
		<NPCSET_ARRAY>002/002/002</NPCSET_ARRAY>
	</MAP>
	<MAP dice="4" key_sector="102">
		<NPCSET_ARRAY>002/002/002</NPCSET_ARRAY>
	</MAP>
	<MAP dice="5" key_sector="103">
		<NPCSET_ARRAY>002/002/002</NPCSET_ARRAY>
	</MAP>
	<MAP dice="6" key_sector="103">
		<NPCSET_ARRAY>002/004/002</NPCSET_ARRAY>
	</MAP>
</STANDARD_SCENARIO>

Obviously the MAP dice="#" is the round you're on
key_sector="#" is what map it takes place in, you need to go through your ijji files and grab them. I'll update this thread this weekend with lists of #'s for a lot of things I told you to "Go look for"

Your NPC Set array is the ID of your npc's. If you have #'s under 100 you have to do 00x as shown in that example as my goblins were 001-004

Now for advanced quests, or even boss quests it gets to be a bit tricky.

Code:
SPECIAL_SCENARIO id="3" title="Hades" QL="0" DC="1" mapset="Dungeon" XP="150000" BP="500">
	<SACRI_ITEM itemid="200029"/>
	<MAP dice="1" key_sector="309" key_npc="8" boss="true">
		<NPCSET_ARRAY>004</NPCSET_ARRAY>
		<JACO count="15" tick="0" min_npc="0" max_npc="20">
			<NPC npcid="5" rate="0.20" />
			<NPC npcid="6" rate="0.30" />
			<NPC npcid="7" rate="0.50" />
		</JACO>
	</MAP>
	<MAP dice="2" key_sector="309" key_npc="8" boss="true">
		<NPCSET_ARRAY>004</NPCSET_ARRAY>
		<JACO count="15" tick="0" min_npc="0" max_npc="20">
			<NPC npcid="5" rate="0.20" />
			<NPC npcid="6" rate="0.30" />
			<NPC npcid="7" rate="0.50" />
		</JACO>
	</MAP>
	<MAP dice="3" key_sector="309" key_npc="8" boss="true">
		<NPCSET_ARRAY>004</NPCSET_ARRAY>
		<JACO count="15" tick="0" min_npc="0" max_npc="20">
			<NPC npcid="5" rate="0.20" />
			<NPC npcid="6" rate="0.30" />
			<NPC npcid="7" rate="0.50" />
		</JACO>
	</MAP>
	<MAP dice="4" key_sector="309" key_npc="8" boss="true">
		<NPCSET_ARRAY>004</NPCSET_ARRAY>
		<JACO count="15" tick="0" min_npc="0" max_npc="20">
			<NPC npcid="5" rate="0.20" />
			<NPC npcid="6" rate="0.30" />
			<NPC npcid="7" rate="0.50" />
		</JACO>
	</MAP>
	<MAP dice="5" key_sector="309" key_npc="8" boss="true">
		<NPCSET_ARRAY>004</NPCSET_ARRAY>
		<JACO count="15" tick="0" min_npc="0" max_npc="20">
			<NPC npcid="5" rate="0.20" />
			<NPC npcid="6" rate="0.30" />
			<NPC npcid="7" rate="0.50" />
		</JACO>
	</MAP>
	<MAP dice="6" key_sector="309" key_npc="8" boss="true">
		<NPCSET_ARRAY>004</NPCSET_ARRAY>
		<JACO count="15" tick="0" min_npc="0" max_npc="20">
			<NPC npcid="5" rate="0.20" />
			<NPC npcid="6" rate="0.30" />
			<NPC npcid="7" rate="0.50" />
		</JACO>
	</MAP>
</SPECIAL_SCENARIO>

Once you start reading it, and understanding it. the JACO is a far better method of writing quests, but it takes a lot more time and can be easily typo'd because of that. I warn you to take your time, don't rush.

JACO is pretty intelligent you tell it how many NPC's you want in that round, and give it some NPC Id's and what % Chance you want for those NPC's to spawn and GunZ will do the math and make you a randomly generated quest each time, you can use it to re-make quests or just make simple new ones for item grinding the possibilities are endless

If you are doing a boss with units that always re spawn you can use min_npc to make sure that there is always more than #x NPC's spawned in your boss fight.

Oh, and KEYNPC is kinda broken, it's supposed to be an alternative as to how many you have to kill, but using both obviously doesn't work, and I'm not sure if they work away from each other so I've always kept it in.


And there you have it, you can now make your own basic quests, there is tons of stuff I left out, but you can learn that on your own now that you know the basics :) <3~
 
Last edited:
Supreme Arcanarch
Loyal Member
Joined
Sep 7, 2008
Messages
972
Reaction score
81
Re: Custom Quests made easy.

I've made a really small quest before. But no one likes quests noweday.
Also this is a great tutorial.
 
Joined
Feb 4, 2010
Messages
2,204
Reaction score
1,012
Re: Custom Quests made easy.

No one likes quests because they are boring and outdated, custom quests can actually be quite fun with a group of friends. I got some friends who tests quests with me and we have a blast on vent trying to beat some insanely hard quests.
 
Legendary Battlemage
Joined
Apr 20, 2008
Messages
682
Reaction score
1
Re: Custom Quests made easy.

XD i would like to add that new mode survival like IJJI one , cus i dont realy play quests and that new mode in IJJI kinda cool cus its how much you can resist of the number of bosses 100 rounds of bosses from easy to hard make you kinda wana do it again and again , thats fun about quests and costum quests never liked,

But very good tutorial =]
 
Joined
Feb 4, 2010
Messages
2,204
Reaction score
1,012
Re: Custom Quests made easy.

You could just as easily do a quest that is survival mode. You just wouldn't get an end of game bonus so you'd have to compensate by raising the round EXP Bonus. If you had taken the time to actually read the tutorial you would of noticed this.
 
What year is this?
Joined
Nov 12, 2008
Messages
867
Reaction score
141
Oh I waited for tut how to make new custom quest so long :D: (Well yeah I could manage that myself, but I didnt have that much free time) Thanks a lot :): !

Anyways how could I change npc moving speed or npc model size (I remember legacy gunz doing that loong time ago)?
 
Joined
Feb 4, 2010
Messages
2,204
Reaction score
1,012
I thought that'd be pretty obvious with the tag scale. you adjust the scale anything above 1.0 is larger, 2.0 being 2x larger, anything below is smaller 0.5 being 2x smaller

and speed, again set by the speed tag, I didn't label everything as I thought some of it was pretty redundant to explain.
 
Legendary Battlemage
Joined
Apr 20, 2008
Messages
682
Reaction score
1
Doesn't matter what happened with LG. I don't do communities anymore, I just do dev work on my locals or test servers and give it to deserving people, or release it on ragezone.

i started to like you :O
 
Initiate Mage
Joined
Mar 7, 2010
Messages
4
Reaction score
0
I'd like to say Thank you very much for this Wonderful tutorial mate.

One Question, let's say i want to Change Quest maps, How can i do that? Thank you.
 
Last edited:
Joined
Feb 4, 2010
Messages
2,204
Reaction score
1,012
I'd like to say Thank you very much for this Wonderful tutorial mate.

One Question, let's say i want to Change Quest maps, How can i do that? Thank you.

The sectors are the quest maps, you will have to compare the sectors with ijji quest files. You can make your own sectors too, to play on other maps. just play with it. :) I know it lacks a bit of info, but I plan on updating it, eventually.
 
Initiate Mage
Joined
Mar 7, 2010
Messages
4
Reaction score
0
I have a Request, since i'm not a Bigshot at XML or all these codes, but more into modeling, Let's say i want to change Dungeon map to Nest map , I have both maps, can you point out what should i change and where? it'll help me get started, Thank you.
 
What year is this?
Joined
Nov 12, 2008
Messages
867
Reaction score
141
you talked about these files but what about:

npcset.xml
questmap.xml
sacrifice table.xml

also could you explain a bit about rows marked as ???:
Code:
 name="Goblin Gunners".......................................... NPC Name
 desc="goblin with gun in hands"................................ NPC Descripction
 meshname="goblinG"............................................. NPC Model Mesh Name
 scale="1.0 1.0 1.0"............................................ NPC size (x,y,z)
 grade="regular"................................................ NPC ???
 max_hp="30".................................................... NPC HP (health)
 max_ap="30".................................................... NPC AP (armour)
 int="4"........................................................ NPC ???
 agility="4".................................................... NPC ???
 view_angle="25"................................................ NPC ???
 dc="5"......................................................... NPC ???
 offensetype="2"................................................ NPC ???
 dyingtime="5">................................................. NPC ???
 <COLLISION radius="30" height="110" />......................... NPC ??? 
 <ATTACK type="melee" range="110" weaponitem_id="300012" />..... NPC Atacking (type, range, weapon id)
 <SPEED default="230" />........................................ NPC Moving Speed
 <SKILL id="121" />............................................. NPC Skill ID (zskill.xml)
 <DROP table="G12" />........................................... NPC Drop scenario (droptable.xml)

I started making quest. Well I have already made 4 of 8 maps.
Could you explain me about custom map setting up for quest and making custom sacrifice items?
 
Back
Top