/
com/planet_ink/coffee_mud/Abilities/Common/
com/planet_ink/coffee_mud/Abilities/Diseases/
com/planet_ink/coffee_mud/Abilities/Druid/
com/planet_ink/coffee_mud/Abilities/Fighter/
com/planet_ink/coffee_mud/Abilities/Languages/
com/planet_ink/coffee_mud/Abilities/Misc/
com/planet_ink/coffee_mud/Abilities/Prayers/
com/planet_ink/coffee_mud/Abilities/Properties/
com/planet_ink/coffee_mud/Abilities/Skills/
com/planet_ink/coffee_mud/Abilities/Songs/
com/planet_ink/coffee_mud/Abilities/Specializations/
com/planet_ink/coffee_mud/Abilities/Spells/
com/planet_ink/coffee_mud/Abilities/Thief/
com/planet_ink/coffee_mud/Abilities/Traps/
com/planet_ink/coffee_mud/Behaviors/
com/planet_ink/coffee_mud/CharClasses/
com/planet_ink/coffee_mud/CharClasses/interfaces/
com/planet_ink/coffee_mud/Commands/
com/planet_ink/coffee_mud/Commands/interfaces/
com/planet_ink/coffee_mud/Common/
com/planet_ink/coffee_mud/Common/interfaces/
com/planet_ink/coffee_mud/Exits/interfaces/
com/planet_ink/coffee_mud/Items/Armor/
com/planet_ink/coffee_mud/Items/Basic/
com/planet_ink/coffee_mud/Items/BasicTech/
com/planet_ink/coffee_mud/Items/CompTech/
com/planet_ink/coffee_mud/Items/MiscMagic/
com/planet_ink/coffee_mud/Items/Weapons/
com/planet_ink/coffee_mud/Items/interfaces/
com/planet_ink/coffee_mud/Libraries/
com/planet_ink/coffee_mud/Libraries/interfaces/
com/planet_ink/coffee_mud/Locales/
com/planet_ink/coffee_mud/MOBS/
com/planet_ink/coffee_mud/Races/
com/planet_ink/coffee_mud/Races/interfaces/
com/planet_ink/coffee_mud/WebMacros/
com/planet_ink/coffee_mud/WebMacros/interfaces/
com/planet_ink/coffee_mud/core/
com/planet_ink/coffee_mud/core/collections/
com/planet_ink/coffee_mud/core/interfaces/
com/planet_ink/coffee_mud/core/intermud/
com/planet_ink/coffee_mud/core/intermud/i3/
com/planet_ink/coffee_web/server/
com/planet_ink/siplet/applet/
lib/
resources/factions/
resources/fakedb/
resources/progs/autoplayer/
resources/quests/holidays/
web/
web/admin.templates/
web/admin/grinder/
web/admin/images/
web/clan.templates/
web/pub.templates/
web/pub/images/mxp/
web/pub/sounds/
web/pub/textedit/
<?xml version="1.0"?>
<!-- ----------------------------------------------------------------------------
Copyright 2019-2019 Bo Zimmerman

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

 http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
--------------------------------------------------------------------------------

See guides/RandomAreas.html for information about documents of this type.

template: normal_collect2
vars: 
    template(quest_template)
    area_name(area name)
    sourcename(mob name)
    targetarea_name(area name)
    multiarea(yes or NO)
    target_item_name(item name)
    collectibles_chance(number0-100)
	aggression(YES,NO)
    num_targets(num items to collect)
	xp_amount_awarded
	gold_amount_awarded
	quest_point_awarded(YES,NO)
	announcechannel()
	reward_items()
	quest_multiple(YES, NO, or PREV)
-->

<QUEST ID="normal_collect2" QUEST_TEMPLATE_ID="normal_collect2">
	<QUEST_ID DEFINE="quest_id">${_:source_area_name}_${_:source_name}_${h:quest_template}_R$[100000000?999999999]</QUEST_ID>
	<QUEST_CRITERIA>+SYSOP +LEVELS -&lt;$[$target_level - $level_span] -&gt;$[$target_level + $level_span]</QUEST_CRITERIA>
	<ANNOUNCER_AREA>"$source_area_name"</ANNOUNCER_AREA>
	<ANNOUNCER_ROOM>"$source_room_id"</ANNOUNCER_ROOM>
	<ANNOUNCER_NAME>"$source_name"</ANNOUNCER_NAME>
	<QUEST_ANNOUNCECHANNEL>$announcechannel</QUEST_ANNOUNCECHANNEL>
	<HOLDER_AREAS>"$target_area_name"</HOLDER_AREAS>
	<HOLDER_ROOMS>ALL</HOLDER_ROOMS>
	<COLLECTABLES_ITEMS>${SELECT: ANY\. from $target_item}</COLLECTABLES_ITEMS>
	<COLLECTABLES_CHANCE>$[($num_targets / $target_area_size * 100) * 2]</COLLECTABLES_CHANCE>
	<NUM_COLLECTABLES>$num_targets</NUM_COLLECTABLES>
	<LOCALS_RESPONSE>${j:1:quest_fightspeech}</LOCALS_RESPONSE>
	<QUEST_POINT>$quest_point_awarded</QUEST_POINT>
	<GOLD>$gold_amount_awarded</GOLD>
	<EXP>$xp_amount_awarded</EXP>
	<MULTIPLE>$quest_multiple</MULTIPLE>
	<NEXT_QUEST>$next_quest_id</NEXT_QUEST>
	<FACTION>$source_faction</FACTION>
	<NUMFACTION>$[$source_faction_amt / 500]</NUMFACTION>
	<QUEST_NAME SELECT="Any-1">
		<QUEST_NAME>${C:source_name} in ${C:source_area_name} needs $num_targets ${p:target_item_name} $reason_verbed</QUEST_NAME>
		<QUEST_NAME>${C:source_name} in ${C:source_area_name} wants $num_targets ${p:target_item_name} $reason_verbed</QUEST_NAME>
		<QUEST_NAME>${C:source_name} in ${C:source_area_name} asks for $num_targets ${p:target_item_name} to be $reason_verbed</QUEST_NAME>
		<QUEST_NAME>${C:reason_verb} $num_targets ${p:target_item_name} for ${C:source_name} in ${C:source_area_name}</QUEST_NAME>
	</QUEST_NAME>
	<QUEST_NOTIFYSTRING>${j:1:quest_notifystring}</QUEST_NOTIFYSTRING>
	<QUEST_INSTRUCTIONSSTRING>${j:1:quest_instructionstring}</QUEST_INSTRUCTIONSSTRING>
	<QUEST_WINSPEECH_TEXT>${j:1:quest_winspeech}</QUEST_WINSPEECH_TEXT>
	<REWARD_ITEMS>${SELECT: ANY\. FROM $dungeon_treasure_items}</REWARD_ITEMS>

	<STRING load="/resources/quests/random/inc_questcommon.xml" />

	<STRING ID="source_level" SELECT="any-1" DEFINE="source_level">
		<STRING>${SELECT:level from $source}</STRING>
	</STRING>

	<STRING ID="item_level" define="item_level">
		<STRING>${SELECT:level from $source}</STRING>
	</STRING>
	<STRING ID="target_item_name" define="target_item_name">${SELECT: NAME from $target_item}</STRING>
	<OBJECT ID="target_item" define="target_item" SELECT="Any-1">SELECT: ANY\. FROM $item_junk WHERE level &lt;= $source_level</OBJECT>

	<STRING ID="quest_fightspeech" PREDEFINE="reason=$reason" SELECT="Any">
		<STRING CONDITION="$aggression='YES'">$quest_fightspeech</STRING>
		<STRING CONDITION="$aggression!='YES'"></STRING>
	</STRING>
	<STRING ID="reason_verbed" PREDEFINE="reason=$reason">$reason_verbed</STRING>
	<STRING ID="reason_verb" PREDEFINE="reason=$reason">$reason_verb</STRING>
	<STRING ID="reason_desc" PREDEFINE="reason=$reason">$reason_desc</STRING>
	<STRING ID="reason" DEFINE="reason" SELECT="Any-1">
		<STRING>$reason_ilostthem</STRING>
		<STRING>$reason_welosteachother</STRING>
		<STRING>$reason_gencollect</STRING>
		<STRING>$reason_idoforthem</STRING>
		<STRING>$reason_wedotoeachother</STRING>
	</STRING>

	<STRING ID="quest_notifystring" define="quest_notifystring" SELECT="ALL">
		<STRING ACTION="PREPEND">$reason_short  $quest_notifyaddendum</STRING>
	</STRING>

	<STRING ID="quest_notifyaddendum" SELECT="Pick-1">
		<STRING PICKWEIGHT=1>Are you game?</STRING>
		<STRING PICKWEIGHT=1>Are you ready?</STRING>
		<STRING PICKWEIGHT=1>Are you up to it?</STRING>
		<STRING PICKWEIGHT=1>Can you handle it?</STRING>
		<STRING PICKWEIGHT=1>Who's ready?</STRING>
		<STRING PICKWEIGHT=12></STRING>
	</STRING>
	
	<STRING ID="reason_short" define="reason_short" SELECT="Any-1">
		<STRING>I need ${p:target_item_name} $reason_verbed!</STRING>
		<STRING>Help me $reason_verb ${p:target_item_name}!</STRING>
		<STRING>Assistance required with some ${p:target_item_name}!</STRING>
		<STRING>${c:reason_verb} ${p:target_item_name} for me!</STRING>
		<STRING>${c:reason_verb} ${p:target_item_name}, quickly!</STRING>
		<STRING>I want ${p:target_item_name} $reason_verbed! </STRING>
	</STRING>

	<STRING ID="quest_instructionstring" SELECT="ALL">
		<STRING ACTION="PREPEND">$reason_desc</STRING>
		<STRING ACTION="APPEND">$reason_short</STRING>
		<STRING SELECT="Any-1" ACTION="APPEND">
			<STRING>You'll find them around $target_area_name.</STRING>
			<STRING>Just look around $target_area_name.</STRING>
			<STRING>They are all around $target_area_name.</STRING>
		</STRING>
	</STRING>

	<STRING ID="quest_winspeech" PREDEFINE="reason=$reason">$quest_winspeech</STRING>

	<STRING id="quest_generic_fight_speeches" SELECT="Any-1">
		<STRING>${c:target_item_name} is mine!</STRING>
		<STRING>Hey! Leave $target_item_name where it is!</STRING>
		<STRING>Don't touch $target_item_name !!</STRING>
		<STRING>${c:source_name} is not getting $target_item_name!</STRING>
		<STRING>I would rather $hurt_verb you than let $source_name get $target_item_name.</STRING>
	</STRING>

	<STRING id="quest_generic_loser_speeches" SELECT="Any-1">
		<STRING>I guess I'll need to $reason_verb them myself.</STRING>
		<STRING>This is unacceptable.</STRING>
		<STRING>Well, I give up on them being $reason_verbed.</STRING>
		<STRING>You just can't find good help anymore.</STRING>
	</STRING>

	<STRING id="quest_generic_winner_speeches" SELECT="Any-1">
		<STRING>They are all $reason_verbed! That's all of them, thanks!</STRING>
		<STRING>${c:reason_verbed} at last! Thank you for your assistance.</STRING>
		<STRING>Thanks for having them $reason_verbed, I'll take it from here.</STRING>
		<STRING>Thank you adventurer, you have ${reason_verbed}, and that will be all.</STRING>
	</STRING>

	<STRING ID="reason_partytime" SELECT="All">
		<STRING define="reason_verbed">$verb_collected</STRING>
		<STRING define="reason_verb">$verb_collect</STRING>
		<STRING define="quest_winspeech" SELECT="Any-1" >
			<STRING>Yay! Let the party BEGIN!</STRING>"
			<STRING>TIME TO CELEBRATE!</STRING>"
			<STRING>Let the celebration begin!</STRING>"
			<STRING>We can finally begin the festivities!</STRING>"
		</STRING>
		<STRING define="quest_fightspeech">$quest_generic_fight_speeches</STRING>
		<STRING define="reason_desc" SELECT="Any-1">
			<STRING>I'm throwing a party and I need lots of ${p:target_item_name}.</STRING>
			<STRING>It's my birthday, and ${p:target_item_name} are my favorite gifts.</STRING>
			<STRING>It's my $noun_anyrelation`s birthday, and I need several ${p:target_item_name} for my my gift.</STRING>
			<STRING>It is officially ${C:source_area_name} Day, and the ceremony requires several ${p:target_item_name}.</STRING>
		</STRING>
	</STRING>

	<STRING ID="reason_ilostthem" SELECT="All">
		<STRING define="reason_verbed">$verb_returned</STRING>
		<STRING define="reason_verb">$verb_return</STRING>
		<STRING define="quest_winspeech" SELECT="Any-1">
			<STRING>You found them! Thanks!</STRING>
			<STRING>I'm so relieved! Thank you for your assistance.</STRING>
			<STRING>Thanks you so much for finding them!</STRING>
		</STRING>
		<STRING define="quest_fightspeech">$quest_generic_fight_speeches</STRING>
		<STRING define="reason_desc" SELECT="Any-1">
			<STRING>I lost my ${p:target_item_name} and need you to find them in $target_area_name.</STRING>
			<STRING>My $noun_anyrelation has lost some ${p:target_item_name} in $target_area_name and I need you to find them.</STRING>
			<STRING>I seem to have misplaced the ${p:target_item_name} around $target_area_name and need your help.</STRING>
			<STRING>I can't find my $noun_anyrelation`s ${p:target_item_name}, and need your help in $target_area_name.</STRING>
		</STRING>
	</STRING>
	
	<STRING ID="reason_welosteachother" SELECT="All">
		<STRING define="reason_verbed">$verb_collected</STRING>
		<STRING define="reason_verb">$verb_collect</STRING>
		<STRING define="quest_winspeech" SELECT="Any-1">
			<STRING>You $verb_collected them! Thanks!</STRING>
			<STRING>Thank you for your assistance.</STRING>
			<STRING>Thanks you so much for getting these!</STRING>
		</STRING>
		<STRING define="quest_fightspeech">$quest_generic_fight_speeches</STRING>
		<STRING define="reason_desc" SELECT="Any-1">
			<STRING>${C:p:target_item_name} are important to my experiments.  Please get $verb_collected from $target_area_name.</STRING>
			<STRING>${C:p:target_item_name} are important to my $noun_anyrelation`s experiments.  Please $verb_collected them from $target_area_name.</STRING>
			<STRING>I need ${p:target_item_name} for my $noun_anyrelation`s project.  You'll find them around $target_area_name.</STRING>
			<STRING>I need ${p:target_item_name} for my important project.  You'll find them in $target_area_name.</STRING>
			<STRING>${C:p:target_item_name} are key to my work.  Check around $target_area_name for me.</STRING>
			<STRING>The ${p:target_item_name} are sitting around $target_area_name for me, and I must have them.</STRING>
		</STRING>
	</STRING>
	
	<STRING ID="reason_gencollect" SELECT="All">
		<STRING define="reason_verbed">$verb_collected</STRING>
		<STRING define="reason_verb">$verb_collect</STRING>
		<STRING define="quest_winspeech">$quest_generic_winner_speeches</STRING>
		<STRING define="quest_fightspeech">$quest_generic_fight_speeches</STRING>
		<STRING define="reason_desc" SELECT="Any-1">
			<STRING>I need several ${p:target_item_name} $verb_collected and brought to me.</STRING>
			<STRING>I need ${p:target_item_name} $verb_collected for me.  You can get them from $target_area_name.</STRING>
			<STRING>I am collecting ${p:target_item_name}, and need your assistance.</STRING>
			<STRING>${c:target_area_name} is a great source of ${p:target_item_name}, and I need lots of them $verb_collected!</STRING>
			<STRING>My $noun_anyrelation is collecting ${p:target_item_name}, and we need your assistance.</STRING>
			<STRING>${c:target_area_name} is a great source of ${p:target_item_name}, and my $noun_anyrelation needs lots of them $verb_collected!</STRING>
		</STRING>
	</STRING>
	
	<STRING ID="reason_idoforthem" SELECT="All">
		<STRING define="reason_verbed">$verb_collected</STRING>
		<STRING define="reason_verb">$verb_collect</STRING>
		<STRING define="quest_winspeech">$quest_generic_winner_speeches</STRING>
		<STRING define="quest_fightspeech">$quest_generic_fight_speeches</STRING>
		<STRING define="reason_desc" SELECT="Any-1">
			<STRING>${c:target_area_name} has the ${p:target_item_name} that my $noun_anyrelation requires.</STRING>
			<STRING>I wish to give ${p:target_item_name} to my $noun_anyrelation, and $target_area_name has them all over.</STRING>
			<STRING>My $noun_anyrelation requires ${p:target_item_name}.</STRING>
			<STRING>${c:target_area_name} has too many ${p:target_item_name}.</STRING>
		</STRING>
	</STRING>

	<STRING ID="reason_wedotoeachother" SELECT="All">
		<STRING define="reason_verbed">$verb_stolen</STRING>
		<STRING define="reason_verb">$verb_steal</STRING>
		<STRING define="quest_winspeech">$quest_generic_winner_speeches</STRING>
		<STRING define="quest_fightspeech">$quest_generic_fight_speeches</STRING>
		<STRING define="reason_desc" SELECT="Any-1">
			<STRING CONDITION="$source_class='Mage' or $source_class='Necromancer'">I need the ${p:target_item_name} of $target_area_name for my magical experiments.</STRING>
			<STRING>${c:reason_verb} ${p:target_item_name} from $target_area_name for me.</STRING>
			<STRING>${c:target_area_name} has all my ${p:target_item_name}. Get them back for me.</STRING>
			<STRING>Bring me ${p:target_item_name}.</STRING>
		</STRING>
	</STRING>

	<STRING ID="quest_point_awarded" DEFINE="quest_point_awarded" SELECT="Pick-1">
		<STRING PICKWEIGHT=2>NO</STRING>
		<STRING PICKWEIGHT=1>YES</STRING>
	</STRING>
	
	<STRING ID="gold_amount_awarded" DEFINE="gold_amount_awarded" SELECT="any-1">
		<STRING>$[$target_level*2]</STRING>
	</STRING>
	
	<STRING ID="xp_amount_awarded" DEFINE="xp_amount_awarded" SELECT="any-1">
		<STRING>$[100 + $target_level*3]</STRING>
	</STRING>
	
	<OBJECT ID="source_area" SELECT="Pick-1" DEFINE="source_area">
		<OBJECT pickweight=99999 condition="'${SELECT: name FROM area}' != ''">SELECT: . FROM area</OBJECT>
		<OBJECT pickweight=55555 condition="$area_name != ''" and '${SELECT: name FROM area}' = ''>SELECT: ANY\. FROM areas WHERE name = $area_name</OBJECT> 
		<OBJECT pickweight=1 condition="$area_name = '' and '${SELECT: name FROM area}' = '' and $multiarea = 'YES'">
			SELECT: ANY\. FROM areas WHERE (SELECT: count\. from $mql_givable_questgivers) &gt; 0
		</OBJECT>
		<OBJECT pickweight=1 condition="$area_name = '' and '${SELECT: name FROM area}' = '' and $multiarea != 'YES'">
			SELECT: ANY\. FROM areas WHERE (SELECT: count\. from $mql_givable_questgivers) &gt; 0
				AND (SELECT:count\. from area\rooms) &gt; $num_targets
		</OBJECT>
	</OBJECT>
	
	<OBJECT ID="source_room" DEFINE="source_room">SELECT: . FROM $source\room</OBJECT>
	
	<OBJECT ID="source" SELECT="Pick-1" DEFINE="source">
		<OBJECT PICKWEIGHT=99999 CONDITION="'${SELECT: name FROM mob}' != ''">SELECT: . FROM mob</OBJECT>
		<OBJECT pickweight=55555 condition="$sourcename != ''" and '${SELECT: name FROM mob}' = ''>SELECT: . FROM $source_area\npcs WHERE name = $sourcename</OBJECT> 
		<OBJECT PICKWEIGHT=1 CONDITION="$sourcename = '' and '${SELECT: name FROM mob}' = ''" insert="$mql_givable_questgiver" />
	</OBJECT>
	
	<STRING ID="target_level" DEFINE="target_level" SELECT="any-1">
		<STRING>${SELECT:MED_LEVEL from $target_area}</STRING>
	</STRING>
	
	<STRING ID="level_range" SELECT="any-1" DEFINE="level_range" MERGE=true>
		<STRING>$target_level</STRING>
	</STRING>
	
	<STRING ID="source_area_name" SELECT="any-1" DEFINE="source_area_name">
		<STRING>${SELECT:name from $source_area}</STRING>
	</STRING>

	<STRING ID="source_room_id" SELECT="any-1" DEFINE="source_room_id">
		<STRING>${SELECT:roomid from $source_room}</STRING>
	</STRING>

	<STRING ID="source_name" SELECT="any-1" DEFINE="source_name">
		<STRING>${SELECT:name from $source}</STRING>
	</STRING>

	<STRING ID="source_class" SELECT="any-1" DEFINE="source_class">
		<STRING>${SELECT:class from $source}</STRING>
	</STRING>

	<STRING ID="source_faction" SELECT="any-1" DEFINE="source_faction">
		<STRING>${SELECT:factionid from $source}</STRING>
	</STRING>

	<STRING ID="source_faction_amt" SELECT="first" DEFINE="source_faction_amt">
		<STRING CONDITION="$source_faction!=''">${SELECT:factionamt from $source}</STRING>
		<STRING>0</STRING>
	</STRING>

	<STRING ID="source_align" SELECT="any-1" DEFINE="source_align">
		<STRING>${SELECT:alignment from $source}</STRING>
	</STRING>

	<STRING ID="multiarea" define="multiarea">NO</STRING>
	
	<OBJECT ID="target_area" SELECT="Pick-1" DEFINE="target_area">
		<OBJECT pickweight=55555 condition="$targetarea_name != ''">SELECT: ANY\. FROM areas where NAME=$targetarea_name</OBJECT> 
		<OBJECT pickweight=100 condition="$targetarea_name = '' and $multiarea != 'YES'">SELECT: any\. from $source_area</OBJECT>
		<OBJECT pickweight=1 condition="$targetarea_name = '' and $multiarea = 'YES'">
			SELECT: ANY\. FROM areas WHERE (SELECT:count\. from area\rooms) &gt; $num_targets
		</OBJECT>
	</OBJECT>

	<STRING ID="target_area_name" SELECT="any-1" DEFINE="target_area_name">
		<STRING>${SELECT:name from $target_area}</STRING>
	</STRING>	
	
	<STRING ID="target_area_size" SELECT="any-1" DEFINE="target_area_size">
		<STRING>${SELECT:VISITABLE_ROOMS from $target_area}</STRING>
	</STRING>	
	
	<STRING ID="aggression" DEFINE="aggression" SELECT="Pick-1">
		<STRING PICKWEIGHT=50>NO</STRING>
		<STRING PICKWEIGHT="$target_level">YES</STRING>
	</STRING>
	
	
</QUEST>