|
You last visited: Today at 12:26
Advertisement
[Guide] How to make a Fully Functional Quest
Discussion on [Guide] How to make a Fully Functional Quest within the EO PServer Guides & Releases forum part of the EO PServer Hosting category.
05/17/2011, 06:34
|
#1
|
elite*gold: 0
Join Date: Oct 2009
Posts: 1,208
Received Thanks: 926
|
[Guide] How to make a Fully Functional Quest
Today, we are going to make a quest that does the following:
1. A player talks to a npc and the npc will send them to a map to kill a monster.
2. The map will only allow one person in at a time.
3. Once the player has killed the monster, it will give them a reward.
4. Once the monster is killed, it will teleport you back to cronus.
5. It will then start a quest, so that players can only do the quest once every 12 hours.
Things we will be doing:
1. Copy the Maze-A map so we can make our own name.(Server side and Client Side).
2. Make a copy of Aderes, that we can name (Server side and Client Side).
3. Code up the actions so the quest is fully functional.
4. Code up the other main features.
cq_action part:
Code:
INSERT INTO `cq_action` VALUES
('60000000', '60000001', '60000004', '1080', '12000', 'isexit'),
('60000001', '60000002', '60000003', '1082', '12000', '43200'),
('60000002', '60000004', '', '1080', '12000', 'delete'),
('60000003', '0', '0', '126', '0', 'Sorry you have done the quest in the past 12 hours.'),
('60000004', '60000005', '0', '101', '0', 'Welcome %user_name. I can send you into the QuestMap.'),
('60000005', '60000006', '0', '102', '0', 'Ok~ill~go. 60000007'),
('60000006', '4000001', '0', '102', '0', 'No~Thanks 0'),
('60000007', '60000011', '60000008', '302', '1910', 'map_user == 1'),
('60000008', '60000009', '0', '1003', '0', '1910 281 434 0'),
('60000009', '60000010', '0', '2009', '0', '1910 24130'),
('60000010', '60000011', '0', '2006', '0', '0 0 1910 282 435 2413000 24130'),
('60000011', '0', '0', '126', '0', 'Sorry, someone is already in the map.'),
('60000015', '60000016', '60000018', '508', '0', '1 0 50'),
('60000016', '60000017', '0', '501', '729018', ''),
('60000017', '60000019', '0', '126', '0', 'You got a reward.'),
('60000018', '0', '0', '126', '0', 'You need atleast one empty spot in your inventory.'),
('60000019', '60000020', '0', '1003', '0', '1000 215 634'),
('60000020', '0', '0', '1080', '12000', 'new');
Pretty much, this sets up the entire npc text. And the teleporting to the quest map. The key parts of this are id's 60000000 - 60000002. These check if you have already done the quest in the past 12 hours. Id 60000009 deletes any stray monsters in the map. And 60000010 Spawns the monster we are using.
-------------------------------------------------------------------------
cq_npc part:
Code:
INSERT INTO `cq_npc` VALUES ('202', '0', '0', 'AQuestNpc', '29', '12030', '0', '0', '-1', '1000', '309', '405', '60000000', '0', '0', '0', '0', '0', '0', '0', '0', '0', '5', '5', 'ÎÞ', '0', '0', '0', '0', '1', '0', '3', '3', '3', '3');
cq_npc makes it so we can enter the quest map.
-------------------------------------------------------------------------
cq_task part:
Code:
INSERT INTO cq_task VALUES
('60000000', '60000000', '0', '', '', '0', '0', '999', '-100000', '100000', '999', '0', '0', '-1', '0'),
('60000007', '60000007', '0', '', '', '0', '0', '999', '-100000', '100000', '999', '0', '0', '-1', '0');
cq_task allows us to run our actions.
-------------------------------------------------------------------------
We will be using the current monster called AngryEvilBarye with the id of 24130.
cq_monstertype part:
Code:
UPDATE `cq_monstertype` SET action='60000015' WHERE id='24130';
Simply updates the current monster to run an action when its killed.
-------------------------------------------------------------------------
cq_map part:
Code:
INSERT INTO `cq_map` VALUES ('1910', 'QuestMap', 'QuestMap', '1910', '2621454', '0', '0', '0', '-1', '0', '0', '0', '300', '298', '1000', '0', '0', '0', '0', '0', '0', '0', '0');
This adds our copied map
-------------------------------------------------------------------------
Add the following to your clients /ini/npc.ini file. It will give our copy of Aderes a new name.
npc.ini
Code:
[NpcType1203]
Name=QuestNpc
SimpleObjID=714
StandByMotion=0714000100
BlazeMotion=0714000190
BlazeMotion1=0700000190
BlazeMotion2=0700000190
RestMotion=0714000101
Effect=petdepotnpc
ZoomPercent=110
Note=QuestNpc
FrontBlock=3
BackBlock=3
LeftBlock=3
RightBlock=3
-------------------------------------------------------------------------
Copy this to your clients ini/GameMap.ini file and your GameServer/ini/GameMap.ini file. This gives our copy of the map a new name.
GameMap.ini
Code:
[Map1910]
File=map/map/challenge-maze001.DMap
Alpha=255
Red=255
Green=255
Blue=255
Name=QuestMap
Snow=0
Firebug=0
Dragon=0
Dandelion=1
Music=music/1001.mp3
switch=0
daysound=null
nightsound=null
day=0x00FFFFFF
nightfall=0xFFFFAAAA
night=0xFF9999FF
-------------------------------------------------------------------------
Pretty much that is all there is to making a quest for your server. I would recommend you downloading forcers action types. You can get them from
I've tried to make this a new owner friendly as possible. If you have any more questions, feel free to ask.
|
|
|
05/17/2011, 09:49
|
#2
|
elite*gold: 0
Join Date: Dec 2009
Posts: 1,784
Received Thanks: 1,056
|
now Thats what i can call a guide !! ... good job Eurion .. this section really needed that guide .
|
|
|
05/17/2011, 16:10
|
#3
|
elite*gold: 0
Join Date: Oct 2010
Posts: 21
Received Thanks: 13
|
One of the better coders in this section and now you've finally put the effort of making a guide. Thanks a lot. It'll definitely help this section.
|
|
|
05/17/2011, 21:46
|
#4
|
elite*gold: 0
Join Date: Dec 2009
Posts: 228
Received Thanks: 22
|
Eureon/sword can help me? .. i found this in Actiondefine--->(ACTION_USER_OPEN_DIALOG = 1046, // notice client side opens a contact surface.data=idDialog.param= " task_id0 task_id1 task_id2 task_id3… “, may not have param, most 20 task_id, task_id cannot be 0, permission client side choice next TASK.When does not have param, the client side can upload only “TASK which the client side may trigger”.When has param, cq_task.client_active must be 0.) where can I search in client?
seccond question- how to set in cq_action for summon monster at same place we are? I see your post-->('45000007', '0','0','2006','0','0 0 8923 51 53 303100 3031');<--- this is a specific map
third question- how to set item drop 50-50.. example: monster drop only 1 item,but the result drop is RED stone/yellow stone.
|
|
|
05/19/2011, 02:08
|
#5
|
elite*gold: 0
Join Date: Oct 2009
Posts: 1,208
Received Thanks: 926
|
Quote:
Originally Posted by linja12
Eureon/sword can help me? .. i found this in Actiondefine--->(ACTION_USER_OPEN_DIALOG = 1046, // notice client side opens a contact surface.data=idDialog.param= " task_id0 task_id1 task_id2 task_id3… “, may not have param, most 20 task_id, task_id cannot be 0, permission client side choice next TASK.When does not have param, the client side can upload only “TASK which the client side may trigger”.When has param, cq_task.client_active must be 0.) where can I search in client?
|
As far as I know, you can't find it in the client. By looking at the type of 1046, it looks like the data would be the money type it takes. But don't quote me on that part, I'm only guessing.
Quote:
Originally Posted by linja12
seccond question- how to set in cq_action for summon monster at same place we are? I see your post-->('45000007', '0','0','2006','0','0 0 8923 51 53 303100 3031');<--- this is a specific map
|
You can test with
Code:
%user_map_x
%user_map_y
Not too sure if that will do what you want as I've never needed to spawn a monster at the players place.
Quote:
Originally Posted by linja12
third question- how to set item drop 50-50.. example: monster drop only 1 item,but the result drop is RED stone/yellow stone.
|
[/quote]
You can use the action type 121 for a chance. An example would be something like
Code:
1 2 3 121 0 50 100
2 0 0 801 0 dropitem 1034000
3 0 0 801 0 dropitem 1037150
That would pretty much give you a 50/50 chance of dropping a red stone or yellow stone.
|
|
|
05/19/2011, 08:20
|
#6
|
elite*gold: 0
Join Date: Dec 2009
Posts: 228
Received Thanks: 22
|
thankz give some example to set = %user_map_x / %user_map_y
2. this put in cq_action/dropitemrule?
1 2 3 121 0 50 100
2 0 0 801 0 dropitem 1034000
3 0 0 801 0 dropitem 1037150
|
|
|
05/19/2011, 23:54
|
#7
|
elite*gold: 0
Join Date: Oct 2009
Posts: 1,208
Received Thanks: 926
|
Quote:
Originally Posted by linja12
thankz give some example to set = %user_map_x / %user_map_y
|
Using your example it would be something like.
Code:
('45000007', '0','0','2006','0','0 0 %user_map_id %user_map_x %user_map_y 303100 3031');
Quote:
Originally Posted by linja12
2. this put in cq_action/dropitemrule?
1 2 3 121 0 50 100
2 0 0 801 0 dropitem 1034000
3 0 0 801 0 dropitem 1037150
|
Those will go into your cq_action
|
|
|
05/20/2011, 10:17
|
#8
|
elite*gold: 0
Join Date: Dec 2009
Posts: 228
Received Thanks: 22
|
1. you forgot to tell me ..put action at monster same = cq_action. anyway thanks.
2. I see 2006 is event monster,its cant move/attack. wat ID to set Real monster & how to set its param?
|
|
|
05/20/2011, 17:56
|
#9
|
elite*gold: 0
Join Date: Oct 2009
Posts: 1,208
Received Thanks: 926
|
The action type 2006, spawns a monster. It can be any monster that you have in your cq_monstertype table. All you have to do is follow the examples I gave you.
Quote:
|
1. you forgot to tell me ..put action at monster same = cq_action. anyway thanks.
|
I've given you the basics. It's up to you to read, test, and try doing different things. You can use this simple guide to do many things using the quest system.
|
|
|
05/20/2011, 21:46
|
#10
|
elite*gold: 0
Join Date: Dec 2009
Posts: 228
Received Thanks: 22
|
Eurion can answer my last question please
|
|
|
07/20/2011, 08:21
|
#11
|
elite*gold: 480
Join Date: Nov 2009
Posts: 276
Received Thanks: 446
|
sorry for asking..
('60000020', '0', '0', '1003', '0', 'new');
whats that line function?
i still can get in after i done that quest...
|
|
|
08/31/2011, 22:19
|
#12
|
elite*gold: 0
Join Date: Mar 2009
Posts: 263
Received Thanks: 117
|
('45000007', '0','0','2006','0','0 0 %user_map_id %user_map_x %user_map_y 303100 3031');
what is the 303100 used for is that generator? and if so i wanna try and spawn a monster from cq_monstertype if thats possible instead of Generator
|
|
|
09/01/2011, 07:50
|
#13
|
elite*gold: 0
Join Date: Nov 2009
Posts: 585
Received Thanks: 150
|
Best explained guide ive ever seen Kick *** job ;D
|
|
|
09/03/2011, 17:59
|
#14
|
elite*gold: 0
Join Date: Mar 2009
Posts: 263
Received Thanks: 117
|
is there a way when a player uses the teleporter to exit it will remove any and all monsters on that map?
|
|
|
09/03/2011, 18:08
|
#15
|
elite*gold: 0
Join Date: Oct 2009
Posts: 1,208
Received Thanks: 926
|
Quote:
Originally Posted by shadowkiller990
('45000007', '0','0','2006','0','0 0 %user_map_id %user_map_x %user_map_y 303100 3031');
what is the 303100 used for is that generator? and if so i wanna try and spawn a monster from cq_monstertype if thats possible instead of Generator
|
The 303100 is the cq_monstertype's monster id, plus 00.
------------------------------
Quote:
Originally Posted by shadowkiller990
is there a way when a player uses the teleporter to exit it will remove any and all monsters on that map?
|
Sure you can, you just need to know the id's of the monsters.
Action type is 2009
An example would be
Code:
3016349 3016374 3016374 [color=red]2009[/color] 0 [color=blue]8703[/color] [color=lime]10061[/color]
The 2009 is the action type to remove monsters.
The 8703 is the map id
The 10061 is the monster id
This will remove every monster in that map with the id of 10061.
|
|
|
 |
|
Similar Threads
|
[Release][ALL GC] Fully functional Kom Injector
04/21/2011 - Grand Chase Hacks, Bots, Cheats & Exploits - 28 Replies
GC Kom Injector
I have been working on this for about.. 12 hours now? Well here it is.
This works for ALL Versions of Grand Chase.
Fully functional. I added a playertemplate.kom injection for the sole purpose of dungeon use ONLY.
Requires, Unlocker FileHippo.com - Download Free Software
|
Ox33's SilkMod Fully functional with isro bot 1.63
03/12/2011 - SRO Hacks, Bots, Cheats & Exploits - 38 Replies
SilkMod is a Silkroad modification project for making various changes to the game to enhance the game play experience. It is a partially open source project (select source code is being released) that is designed to allow other people to develop plugins to use. As of right now, the development kit is not available, just the usable project itself.
Scan Results:
http://img263.imageshack.us/my.php?image=scanci9. png
This project was made to be a standalone project with Silkroad, but...
|
selling glider key + forum acc fully functional
02/08/2009 - World of Warcraft Trading - 1 Replies
As said above fully usable glider key never used before on retail (used once or twice on private)
has clean forum acc and key
sites price 25
my price 20 usd
|
All times are GMT +1. The time now is 12:27.
|
|