| 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 |  | 
	
	| ![[+]](images/collapse_collapsed.gif)  
 | 
	
		| 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 |  | 
	
	| ![[+]](images/collapse_collapsed.gif)  
 | 
	
		| 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
 
 
...to sphere.ini under //Events related to all NPCsCode:
 EventsPet=e_quest_kill_fix
 
 [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 |  | 
	
	| ![[+]](images/collapse_collapsed.gif)  
 |