Go Back   RunUO - Ultima Online Emulation > RunUO > RunUO Post Archive > Custom Script Release Archive

Custom Script Release Archive This is a pre-script database archive of what our users had released.

 
 
Thread Tools Display Modes
Old 10-03-2005, 05:02 PM   #1 (permalink)
Forum Expert
 
LordHogFred's Avatar
 
Join Date: Jan 2004
Location: UK, Essex
Age: 21
Posts: 1,252
Smile 2 XML Quests (require XML sapwner)

Ok here are two XML Quests that I have made while learning to use Artegordon's amazing XML Spawner properly .
These quests are based on some quests found in Diablo 2. I am currently working my way through a few of th Diablo 2 quests as I think that it's easier to copy quests already done while learning how to use this system. These are just the first two that I have finished. The rewards aren't too great but can be easily edited by looking at the ones that are there. I'd like to thank Artegordon for producing such a brilliant system that has allowed me to make these quests and also the RunUO dev team who (quite honestly) are bloody cool .

To install these quests extract the .xml files into a directory called spawns in your RunUO folder (//RunUO/spawns/). Then extract the .npc files into a folder called XmlQuestNPC (//RunUO/XmlQuestNPC). Next fire up your server and type:
Code:
[xmlload spawns/SistersBurialGrounds.xml
or
[xmlload spawns/DenOfEvil.xml
Depending on which quest you want to spawn.


Anyway, on to the quests.

Quest Number 1: Sister's Burial Grounds
Location of NPC: Cove Gates
Objective: Find and kill Blood Raven.
More Info: This quest is pretty simple, it doesn't take very long to do (maybe 10 mins max) and was my first attempt at making an XML quest. First part of the quest asks you to actually find the cemetary that Blood Raven is haunting, this is easy to find because it is just to the East of Cove. Blood Raven is just a beefed up red hued brigand and it doesn't take much to bring her down. Once you've killed her take her head back to Kashya in Cove and she will reward you. This quest can be done once every 24 hours.


Quest Number 2: Den Of Evil
Location of NPC: Vesper Healers
Objective: Locate the den, slay 75 creatures inside.
More Info: This is my second (more successful) attempt at the quests. You need to track down Akara in Vesper healers and inquire about the casualties. She will tell you about eveil creatures inhabiting a cave system to the West (Covetous). Once you get to Covetous you will have your objectives updated and will be told to slay 75 of the "Vermin of Chaos" spawned within. The vermin are red hued orcs, ratmen and zombies. Once you have killed 75 of the vermin you can make your way back to Akara in Vesper, once you get back to her she will reward you with gold, tokens (don't worry if you don't have them the spawner just won't spawn them) and some Compassion points.


I hope you enjoy these two simple quests, they aren't much but everyone knows how much people like to do quests however big they are. I have a lot more quests planned and I am currently halfway through making a third quest.

Have Fun .
Attached Files
File Type: zip SistersBurialGrounds.zip (2.9 KB, 474 views)
File Type: rar DenOfEvil.rar (2.9 KB, 404 views)
__________________
It is not the hand that creates worlds,
It is the mind controlling it !

The New Dawn Network
LordHogFred is offline  
Old 10-03-2005, 05:11 PM   #2 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

thanks for sharing. I like the D2 theme.
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-03-2005, 05:44 PM   #3 (permalink)
Account Terminated
 
Join Date: Nov 2003
Posts: 144
Default

AWESOME!!!!


Thanks MAN !!!



I am tryong to learn how to make quests in xml too !!!

I will share mine one day !!!


PLEASE keep sharing yours!!!!!

THANKS !!
poetawd is offline  
Old 10-03-2005, 06:03 PM   #4 (permalink)
Account Terminated
 
Join Date: Nov 2003
Posts: 144
Default

Kashia is not working, what do I need to do to start the quest ???
poetawd is offline  
Old 10-03-2005, 06:44 PM   #5 (permalink)
Forum Expert
 
LordHogFred's Avatar
 
Join Date: Jan 2004
Location: UK, Essex
Age: 21
Posts: 1,252
Default

You need to go up to her and talk to her, either using the talk context menu or saying hail
__________________
It is not the hand that creates worlds,
It is the mind controlling it !

The New Dawn Network
LordHogFred is offline  
Old 10-03-2005, 07:05 PM   #6 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

I think that you want to add to your instructions that you need to put the .npc files in a folder called XmlQuestNPC in the main RunUO directory.
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-03-2005, 07:23 PM   #7 (permalink)
Forum Expert
 
LordHogFred's Avatar
 
Join Date: Jan 2004
Location: UK, Essex
Age: 21
Posts: 1,252
Default

Quote:
Originally Posted by ArteGordon
I think that you want to add to your instructions that you need to put the .npc files in a folder called XmlQuestNPC in the main RunUO directory.
Ah yes thanks Artegordon, I thought I missed something
Cheers,
__________________
It is not the hand that creates worlds,
It is the mind controlling it !

The New Dawn Network
LordHogFred is offline  
Old 10-03-2005, 07:31 PM   #8 (permalink)
Forum Expert
 
Johabius's Avatar
 
Join Date: Dec 2004
Location: Kansas, USA
Age: 39
Posts: 4,954
Send a message via ICQ to Johabius Send a message via Yahoo to Johabius
Default

Nice job! Will start testing them out in just a few minutes
Johabius is offline  
Old 10-03-2005, 08:12 PM   #9 (permalink)
Account Terminated
 
Join Date: Nov 2003
Posts: 144
Default

I got NPC there but when say hail nothing happens
poetawd is offline  
Old 10-03-2005, 08:23 PM   #10 (permalink)
Forum Expert
 
Johabius's Avatar
 
Join Date: Dec 2004
Location: Kansas, USA
Age: 39
Posts: 4,954
Send a message via ICQ to Johabius Send a message via Yahoo to Johabius
Default

Did you put the npc files in a subfolder within the runuo directory called XMLQuestNPC?

Quote:
To install these quests extract the .xml files into a directory called spawns in your RunUO folder (//RunUO/spawns/). Then extract the .npc files into a folder called XmlQuestNPC (//RunUO/XmlQuestNPC).
Johabius is offline  
Old 10-04-2005, 03:36 AM   #11 (permalink)
Forum Novice
 
Join Date: Mar 2004
Location: Emerald Triangle (Ukiah, CA)
Age: 32
Posts: 222
Send a message via ICQ to twig Send a message via AIM to twig Send a message via MSN to twig Send a message via Yahoo to twig
Default

I seem to have a slight problem.. or maybe its supposed to be this way..

when a player accepts the quest from one of the two NPCs the quest book is placed at the NPCs feet, not in the player's pack.. and is rather hard to see under the npcs.. hehehe.

Now i havn't started to learn the XMLquest stuff yet myself... so i cant realy see what might be wrong.. or if its doing what its supposed to.
twig is offline  
Old 10-04-2005, 03:59 AM   #12 (permalink)
Forum Novice
 
Join Date: Mar 2004
Location: Emerald Triangle (Ukiah, CA)
Age: 32
Posts: 222
Send a message via ICQ to twig Send a message via AIM to twig Send a message via MSN to twig Send a message via Yahoo to twig
Thumbs up

Quote:
Originally Posted by twig
I seem to have a slight problem.. or maybe its supposed to be this way..

when a player accepts the quest from one of the two NPCs the quest book is placed at the NPCs feet, not in the player's pack.. and is rather hard to see under the npcs.. hehehe.

Now i havn't started to learn the XMLquest stuff yet myself... so i cant realy see what might be wrong.. or if its doing what its supposed to.

Well I dug around and think I found and fixed the problem.. well at least it places the quest book into the players backpack instead of the ground...

in the Akara.npc file.. line 56
Code:
    <Action>GIVE/&amp;amp;lt;questholder/name/Den Of Evil/titlestring/Slay the evil creatures that plague the town of Vesper./objective1/Travel West and find the caves Akara mentioned.</Action>
should be ...
Code:
    <Action>GIVE/&lt;questholder/name/Den Of Evil/titlestring/Slay the evil creatures that plague the town of Vesper./objective1/Travel West and find the caves Akara mentioned.</Action>

and in the Kashya.npc file ... line 67 ...
Code:
    <Action>GIVE/&amp;amp;lt;questholder/name/Sister's Burial Grounds/titlestring/Find and kill Blood Raven./objective1/Search the nearby graveyard for Blood Raven. </Action>
should be ...
Code:
    <Action>GIVE/&lt;questholder/name/Sister's Burial Grounds/titlestring/Find and kill Blood Raven./objective1/Search the nearby graveyard for Blood Raven. </Action>
twig is offline  
Old 10-04-2005, 09:03 AM   #13 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by twig
Well I dug around and think I found and fixed the problem.. well at least it places the quest book into the players backpack instead of the ground...

in the Akara.npc file.. line 56
Code:
    <Action>GIVE/&amp;amp;lt;questholder/name/Den Of Evil/titlestring/Slay the evil creatures that plague the town of Vesper./objective1/Travel West and find the caves Akara mentioned.</Action>
should be ...
Code:
    <Action>GIVE/&lt;questholder/name/Den Of Evil/titlestring/Slay the evil creatures that plague the town of Vesper./objective1/Travel West and find the caves Akara mentioned.</Action>

and in the Kashya.npc file ... line 67 ...
Code:
    <Action>GIVE/&amp;amp;lt;questholder/name/Sister's Burial Grounds/titlestring/Find and kill Blood Raven./objective1/Search the nearby graveyard for Blood Raven. </Action>
should be ...
Code:
    <Action>GIVE/&lt;questholder/name/Sister's Burial Grounds/titlestring/Find and kill Blood Raven./objective1/Search the nearby graveyard for Blood Raven. </Action>
yes, that is correct. The &amp; stuff looks like the work of some html editor.

For completeness, the proper syntax would be to enclose the entire questholder specification in < >, so

<Action>GIVE/&lt;questholder/name/Sister's Burial Grounds/titlestring/Find and kill Blood Raven./objective1/Search the nearby graveyard for Blood Raven.&gt; </Action>

But it will work without the closing > since the end of the string will terminate it. Just a bit cleaner to add it in.
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-04-2005, 05:03 PM   #14 (permalink)
Forum Novice
 
Join Date: Mar 2004
Location: Emerald Triangle (Ukiah, CA)
Age: 32
Posts: 222
Send a message via ICQ to twig Send a message via AIM to twig Send a message via MSN to twig Send a message via Yahoo to twig
Default

Quote:
Originally Posted by ArteGordon
yes, that is correct. The &amp; stuff looks like the work of some html editor.

For completeness, the proper syntax would be to enclose the entire questholder specification in < >, so

<Action>GIVE/&lt;questholder/name/Sister's Burial Grounds/titlestring/Find and kill Blood Raven./objective1/Search the nearby graveyard for Blood Raven.&gt; </Action>

But it will work without the closing > since the end of the string will terminate it. Just a bit cleaner to add it in.

Cool.. good to know... hehehe
twig is offline  
Old 10-04-2005, 06:28 PM   #15 (permalink)
Forum Expert
 
LordHogFred's Avatar
 
Join Date: Jan 2004
Location: UK, Essex
Age: 21
Posts: 1,252
Default

Ok cheers for getting all that cleared up for me .
I've updated the .rar files now with working NPCs (drop books into pack) and also the NPC files are in XmlQuestNPC folder and xml files are in Spawns folder.
__________________
It is not the hand that creates worlds,
It is the mind controlling it !

The New Dawn Network
LordHogFred is offline  
Old 10-17-2005, 01:02 AM   #16 (permalink)
Forum Novice
 
Join Date: May 2005
Age: 37
Posts: 175
Default

Is this for Tram map or Fel map ?
PoolMan is offline  
Old 10-17-2005, 01:17 AM   #17 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by PoolMan
Is this for Tram map or Fel map ?
it loads into Tram by default, but you can load it into Fel by just going to the starting loc in Fel and doing an

[xmlloadhere sistersburialgrounds.xml

(edit)

same with the den of evil
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-17-2005, 06:28 PM   #18 (permalink)
Forum Novice
 
Join Date: May 2005
Age: 37
Posts: 175
Default

Thanks for telling me how to spawn it in fel.

This happened when a player talked to her.

Code:
17/10-18:20 System.IndexOutOfRangeException: Index was outside the bounds of the
 array.
   at Server.Scripts.Commands.MultipleCommandPrefixes.EventSink_Speech(SpeechEve
ntArgs e)
   at Server.SpeechEventHandler.Invoke(SpeechEventArgs e)
   at Server.Mobile.DoSpeech(String text, Int32[] keywords, MessageType type, In
t32 hue)
   at Server.Engines.XmlSpawner2.XmlDialog.DelayedSpeech(Object state)
   at Server.DelayStateCallTimer.OnTick()
   at Server.Timer.Slice()
   at Server.Core.Main(String[] args)
17/10-18:20 Crash: Backing up...done
17/10-18:20 Crash: Generating report...done
PoolMan is offline  
Old 10-17-2005, 06:30 PM   #19 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by PoolMan
Thanks for telling me how to spawn it in fel.

This happened when a player talked to her.

Code:
17/10-18:20 System.IndexOutOfRangeException: Index was outside the bounds of the
 array.
   at Server.Scripts.Commands.MultipleCommandPrefixes.EventSink_Speech(SpeechEve
ntArgs e)
   at Server.SpeechEventHandler.Invoke(SpeechEventArgs e)
   at Server.Mobile.DoSpeech(String text, Int32[] keywords, MessageType type, In
t32 hue)
   at Server.Engines.XmlSpawner2.XmlDialog.DelayedSpeech(Object state)
   at Server.DelayStateCallTimer.OnTick()
   at Server.Timer.Slice()
   at Server.Core.Main(String[] args)
17/10-18:20 Crash: Backing up...done
17/10-18:20 Crash: Generating report...done

you need to take a look in your script for MultipleCommandPrefixes. It is probably not designed to handle the case of non-player Mobiles generating speech.
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-17-2005, 06:36 PM   #20 (permalink)
Forum Expert
 
LordHogFred's Avatar
 
Join Date: Jan 2004
Location: UK, Essex
Age: 21
Posts: 1,252
Default

YEah I remember I had this problem when I first started using the spawner. The solution is somewhere in the XMLspawner2 thread. I'll try and dig it out for you
__________________
It is not the hand that creates worlds,
It is the mind controlling it !

The New Dawn Network
LordHogFred is offline  
Old 10-17-2005, 06:38 PM   #21 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by LordHogFred
YEah I remember I had this problem when I first started using the spawner. The solution is somewhere in the XMLspawner2 thread. I'll try and dig it out for you
It was a different script, but probably a similar issue. As I recall it was some kind of race speech handler that was casting the mobile to a PlayerMobile without first checking the type.
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-17-2005, 06:42 PM   #22 (permalink)
Forum Expert
 
LordHogFred's Avatar
 
Join Date: Jan 2004
Location: UK, Essex
Age: 21
Posts: 1,252
Default

It was due to the server logging system that I was running. It logged all the spoken text but an NPC crashed the server if it spoke. I think that in the end a check was made to see if the speaking mobile was part of an account and if not bypassed it.
__________________
It is not the hand that creates worlds,
It is the mind controlling it !

The New Dawn Network
LordHogFred is offline  
Old 10-17-2005, 06:44 PM   #23 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by LordHogFred
It was due to the server logging system that I was running. It logged all the spoken text but an NPC crashed the server if it spoke. I think that in the end a check was made to see if the speaking mobile was part of an account and if not bypassed it.
ah yes. You are right, sounds like the same problem he is having.
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
Old 10-17-2005, 08:35 PM   #24 (permalink)
Forum Novice
 
Join Date: May 2005
Age: 37
Posts: 175
Default

I removed this script and it seems to work fine now

Code:
/* Support for Multiple Command Prefixes
 * Copyright (c) 2003 by Kevin L'Huillier
 * All rights reserved.
 * -
 * The RunUO default of `[' is very difficult for some international users
 * (a very poor choice!), but some utilities require the server use it.
 * `.' is preferred, but the 2D client will translate it to `=' (which some
 * users actually prefer) for those with the GM Body (0x3db or 987)
 */

#region License (The MIT License)
/* Permission is hereby granted, free of charge, to any person obtaining a copy
 * of this software and associated documentation files (the "Software"), to
 * deal in the Software without restriction, including without limitation the
 * rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
 * sell copies of the Software, and to permit persons to whom the Software is
 * furnished to do so, subject to the following conditions:
 *
 * The above copyright notice and this permission notice shall be included in
 * all copies or substantial portions of the Software.
 * 
 * The Software is provided "as is", without warranty of any kind, express or
 * implied.
 */
#endregion

namespace Server.Scripts.Commands
{
	public class MultipleCommandPrefixes
	{
		static char[] prefixes = new char[] {'.', '=', '['};

		public static void Initialize()
		{
			EventSink.Speech += new SpeechEventHandler(EventSink_Speech);
		}

		static void EventSink_Speech(SpeechEventArgs e)
		{
			string cmd = ((e.Speech.Length > 1) ? e.Speech.Substring(1) : "");
			for (int i = 0; i < prefixes.Length && !e.Blocked; i++) {
				if (e.Speech[0] == prefixes[i]) {
					Server.Commands.Handle(e.Mobile, Server.Commands.CommandPrefix + cmd);
					e.Blocked = true;
				}
			}
		}
	}
}
PoolMan is offline  
Old 10-17-2005, 09:11 PM   #25 (permalink)
Forum Master
 
Join Date: Aug 2003
Posts: 5,688
Default

the problem with this script is here

Code:
if (e.Speech[0] == prefixes[i]) {
It needs to check to make sure that e.Speech has a non-zero length before trying to index into it.

Change it to

Code:
if (e.Speech.Length > 0 && e.Speech[0] == prefixes[i]) {
__________________
The first line of the first rule in the forum rules and guidelines "Be respectful of others. "

For questions, information, and support for XmlSpawner and its addons, visit the
XmlSpawner Support Forum
ArteGordon is offline  
 

Bookmarks


Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are Off
Pingbacks are Off
Refbacks are Off



Powered by vBulletin® Version 3.7.0
Copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
Search Engine Friendly URLs by vBSEO 3.2.0 RC5