Alias
Journeyman
Posts: 107
Likes Given: 0
Likes Received: 0 in 0 posts
Joined: Apr 2012
Reputation: 0
|
RE: Quest System Dialogs ?
|
|
09-07-2012 09:39 PM |
|
|
darksun84
Sir Spamalot
Posts: 1,687
Likes Given: 245
Likes Received: 162 in 151 posts
Joined: Mar 2012
Reputation: 35
|
RE: Quest System Dialogs ?
|
|
09-07-2012 10:09 PM |
|
|
RanXerox
Master
Posts: 550
Likes Given: 1
Likes Received: 12 in 9 posts
Joined: Dec 2010
Reputation: 19
|
RE: Quest System Dialogs ?
This is an explanation from a slightly earlier version of the system that Cloud_BR built... Maybe it will help:
Quote:to create a quest giver:
.xevents +e_quester
or you can just create one of the premade questers, c_quester_humanm,c_quester_humanf, c_quester_elff, c_quester_elfm then, to add the quests
.xtag.questX.id=some_quest_id (open questsys_quests.scp to know the quest ids)
and then .xtag.quests=Y, being Y the total number of quests this npc has
set home to their location
set homedist 2
For example:
.add c_quester_humanm
.set tag.quests 1
.set tag.quest1.id 66
.set home 546,992
.set homedist 2
[COMMENT INSTALLATION]
1. Add
scripts/QuestSys_Items.scp
scripts/QuestSys_Main.scp
scripts/QuestSys_npc.scp
scripts/QuestSys_Quests.scp
scripts/QuestSys_Temp.scp
scripts/QuestSys_Dialogs.scp
to sphere_tables.scp
2. Add this event to sphere_events_npcs.scp
Code:
[EVENTS e_quest_kill_fix]
ON=@Death
FORCHARMEMORYTYPE MEMORY_FIGHT
COLOR |= <def.memory_harmedby>
ENDFOR
3. Add
Code:
EventsPet=e_quest_kill_fix
...to sphere.ini under //Events related to all NPCs
[COMMENT OBJECTIVETYPES]
1 = get
2 = kill
3 = deliver
4 = escort
[COMMENT WRITINGQUESTS]
QUEST_#_NOREPEAT 1 // 1=quest non-repeatable 0=quest is repeatable , replace # with the quest number
QUEST_#_NAMELOCALIZED //name here
QUEST_#_TEXTLOCALIZED //text telling about the quest (history/what to do)
QUEST_#_TEXTCOMPLETELOCALIZED //npc spoken text displayed upon completion
QUEST_#_TEXTUNCOMPLETELOCALIZED //text after taken quest but incomplete
QUEST_#_TEXTREFUSELOCALIZED //text when refusing to accept the quest
QUEST_#_OBJECTIVEAMOUNT # //the number of objective to complete the quest
QUEST_#_OBJECTIVE1_TYPE # //See OBJECTIVETYPES at top
QUEST_#_OBJECTIVE1 ##, item_or_npc_defname //the number of, NEEDED items acquired or npcs killed. You cannot add in a name here, it will appear as the defname (ie. cannot put i_mace MACE OF COOL)
QUEST_#_OBJECTIVE1_RECEIVER npc_name //This is only necessary if it is a DELIVER quest, this is who the item is brought to. Also used if any completed quest is brought to a different npc from the original giver. (good for chain quests when you want people to move around the world)
QUEST_#_PRIZES # //The number of prices available
QUEST_#_PRIZETYPE1 # //type of prize 1= item 2= nothing 3= perform a function
QUEST_#_PRIZEID1 defname NAME //what the prize is. no numbers can be used If you need to add quantities of a price (ie. i_gold) you must use a template (See QuestSys_Temp.scp) Here you CAN add a name (ie. can put i_mace MACE OF COOL)
QUEST_#_CHAIN ### //### = the next quest in the chain
QUEST_#_ISCHAIN ###;###; // the other quests in the chain, to use this properly only put the quests that are prior to that part in the chain. (ie. 500 is the starter quest, 501 is the next: therefore, ISCHAIN 500. Now 502 is the next quest in the 3 part chain; therefore, ISCHAIN 500;501)
///Blank template///
QUEST_#_NOREPEAT 1
QUEST_#_NAMELOCALIZED
QUEST_#_TEXTLOCALIZED
QUEST_#_TEXTCOMPLETELOCALIZED
QUEST_#_TEXTUNCOMPLETELOCALIZED
QUEST_#_TEXTREFUSELOCALIZED
QUEST_#_OBJECTIVEAMOUNT #
QUEST_#_OBJECTIVE1_TYPE #
QUEST_#_OBJECTIVE1 ##, item_or_npc_defname
QUEST_#_PRIZES #
QUEST_#_PRIZETYPE1 #
QUEST_#_PRIZEID1 #
QUEST_#_CHAIN ###
QUEST_#_ISCHAIN ##1;##2;
[COMMENT INGAMEUSE]
**Quest giver can hold up to 10 quests, player can hold up to 10 quests**
1. Spawn a quest giver
c_quester_humanm
c_quester_humanf
c_quester_elff
c_quester_elfm
2. Ingame type
.set tag.quests #
The # is how many quests the giver can hold
3. Set the quests given out by the npc using .set
TAG.QUEST1.ID=### //where ### is the number of the quest contained in this QuestSys_Quests.scp
TAG.QUEST2.ID=### //add more quests by changing the number in QUEST#.ID
TAG.QUEST3.ID=###
*If the quest is a chain ensure to set the # of quests to incorporate that chain. Then .set tag.quest#.id=### for the other parts of the chain. These will not appear in the quest menu; however, they will take up a quest slot. Once you set a ischain quest on the npc the slot that was there with the arrow will disappear. Now you know the chain is set.
Example
.Set Tag.quests 2
.Set Tag.quest1.id=500 (first part in the chain, shows up as the quest to accept)
.Set Tag.quest2.id=501 (the second part of the chain, will not show up in the menu)
|
|
09-08-2012 01:15 AM |
|
|