Go Back   RunUO - Ultima Online Emulation > RunUO > 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 06-16-2006, 12:29 PM   #1 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default XmlSpawner2 [RunUO 2.0]

XmlSpawner2
v3.12
RunUO 2.0 version
updated 6/19/06
ArteGordon

Latest News:
- modified versions of container.cs and stealing.cs that support the general STEALABLEs system and deal with the issue of maintained spawner control of spawned items have been added to xmlspawner2-support.zip

- Version 3.12 has been updated with several fixes to run under RunUO 2.0.

- RunUO 2.0 instructions for optional installation steps is now available

- support for importing Nerun's new .map format files has been added.

- The RunUO 2.0 upgrade did not involve significant modification of any system features but I would consider this a beta until all features have been confirmed to function properly.

- XmlSpawner addons are being updated individually. SpawnEditor, XmlSiege, XmlSockets, and XmlCustomAttacks are now available. XmlPoints and XmlMobFactions are being worked on.

Summary:

A spawn control system supporting sophisticated conditional spawn triggering, individual customization of spawns and their drops, spawn/item/mob search utilities, offline visual spawn editing, and systems for stealable rares, doom rares, interactive npcs, functional attachments, mob factions, pvp points/duels/games, custom special attacks, socketed items/creatures, and quests.

Recent Updates:
New to version 3.12
updated 6/19/06

- installation instructions for RunUO 2.0 have been added to xmlspawner2-20-v312-1of3.zip.

- fixed a problem with the main gump not refreshing after editing textentrybooks or when seleting spawns from the addcategorizedobject gump.

- added support for Nerun's new .map format in [xmlimportmap. The [xmlimportmap command will automatically detect new and old formats and import accordingly. You can even import old and new formats at the same time.

- fixed a problem with the TAKE and TAKEBYTYPE keywords not taking the correct amount from stacked items due to the change in the way RunUO 2.0 handles duping.

- changed an argument to the OnArmorHit method used by some attachments for RunUO 2.0 compatibility. This will affect some addons like the CustomAttacks/Defenses system which will be updated with this change as well.

New to version 3.11
updated 6/14/06

- added support for proximity triggering by non-player npcs. Setting the new AllowNPCTrig property on the spawner to true will allow it to be triggered by both players and non-player npcs.
NPC proximity triggering is configured the same as regular player proximity triggering by setting the ProximityRange and the other optional triggering controls such as SpawnOnTrigger or even things like SpeechTrigger (when used with xmlquestnpcs that can generate actual speech), or the PlayerTrigProp property to test for properties on the triggering npc just as it used to for players.

- a small change to the XmlDialog attachment that allows it to be reset by setting the DoReset property via an Action field in XmlDialog entries (thanks to Vladimir for the idea). This allows the use of an action such as

SETONTHIS/doreset/true

to allow the xmldialog to become immediately available for reactivation without having to wait for it to timeout from the last player.

- added a new IgnoreCarried flag to xmldialog entries that will allow them to ignore the Trigger/NoTriggerOnCarried settings that normally control their activation (thanks to Vladimir for the idea). Previously, if the Trigger/NoTriggerOnCarried fields were set then all speech-dependent entries required that condition to be satisfied before they could be activated. In the [xmledit gump, the flag can be toggled by checking the new IgnoreCar box.

This will allow you to set up entries that you want to keep separate from the main triggering conditions.

- added a check to xmldialogs to prevent assigning invalid speechhue values (greater than 37852) that could cause client crashes.

- added the new spawn position control keywords #DXY,dx,dy[,dz] and #XY,x,y[,z].

#DXY will place the spawn at the specified delta xy coordinates relative to the spawner location.
#XY will place the spawn at the specified absolute xy coordinates.

For example, the spawn entries

#DXY,2,3 ; orc
#XY,5441,1700 ; troll

would spawn an orc at a location relative to the spawner and a troll at an absolute location.

- fixed a problem in referring to mobile or item type properties when assigning other mobile or item type properties. Mobile or Item type properties that return the name as well as the serial numbers of the target were not being properly parsed that caused examples like masterhelper.xml not to work. So spawn entries like

SETONSPAWN,1/combatant/GETONSPAWN,2,combatant

will now work properly.

- added the ability for [xmlfind to search spawners based on the type of objects being spawned and not just the spawner entry string itself. By specifying the search type as either 'xmlspawner' or 'spawner' and checking the new 'type' checkbox next to the 'entry' field, the entry string will be treated as the type of the spawn entry to be found instead of just a string to be matched against the spawn entry.
With both the entry and type boxes checked, the search will find all spawners that contain entries that are of the the specified type. So to find all spawners with vendors on them, specify an entry field of 'basevendor'.
This will work for both xmlspawners and regular distro spawners.

finding all spawners with baseweapon type spawn entries


- fixed a possible [xmlfind search results gump display synchronization problem. This may have produced garbled text or lost client connections when displaying search results under certain conditions. (thanks to LowCastle and CEO for pointing this out).

- added a new attachment called XmlDeathAction. This attachment, when applied to a creature allows any spawnable action to be performed on the creatures death. (thanks to Syntria for the idea). This could include sending the killer a gump or a message, adding items to the corpse, spawning another creature, etc. (the killer is considered to be the trigger mob in these actions).
An example of these applications is included in deathaction.xml in xmlextras.zip. Just "[xmlloadhere deathaction.xml" and start killing the creatures to see what happens.
For example, with this spawn entry

harpy/ATTACH/<xmldeathaction/action/@GUMP,Harpy be gone,0/Congratulations! You killed a harpy.

killing the harpy gives you this


You must perform xmlspawner installation step #2 for this attachment to work.

- added the XmlAddTithing attachment which is just like the XmlAddFame, or XmlAddKarma attachments but for tithing points.

- fixed a problem with TalkingBaseEscortable destinations that were not being properly restored after server restarts (thanks to EtraDor for pointing this out).

- added the 'stafflevel' property of the staffcloak (or any other item) to the protected property list that blocks any attempt to set it via xmlspawner to prevent possible exploits (thanks to snicker7 for pointing that out).

- spawn entry strings displayed in the properties list on mouseover of the spawner crystal are now truncated at 20 chars. This improves the appearance and avoids any problems the client might have trying to display extremely long spawn entries.

Description:

see xmlspawner2.txt in xmlspawner2-support.zip for details and complete changelog.

Spawning System Features:

- spawn items and mobiles.

- spawn in containers.

- spawn stacked items.

- add items to spawned mobiles packs.

- spawnrange (how far they spawn) and homerange (how far they wander).

- spawn objects that require arguments to their constructors, such as runic hammers, or doors.

- set properties on any spawn without having to make script modifications.

- add items to spawned mobs backpacks without having to make script modifications.

- probabilistic spawning that can be used to implement rare mob spawns, such as a single spawn that you have to kill on average some number of times to get a rare named spawn to appear.

- time-limited spawns, such as rares that only appear for a certain amount of time.

- sequential champ-like spawning that advances by killing spawns.

- spawning in regions.

- linked spawning of multiple spawn entries using subgrouping.

- spawn on difficult surfaces such as multilevel tables/floors and water by adding a leading '*' to the spawn entry.

- control spawning location and selection with control keywords #XY, #DXY, #XFILL, #YFILL, #EDGE, #PLAYER, #WAYPOINT, #RELXY, #CONDITION

- special keywords can be used in spawning for control or effects:

- value keywords: RND, RNDBOOL, RNDLIST, RNDSTRLIST, RANDNAME, INC, MUL, MOB, SERIAL, SKILL

- control keywords: WAITUNTIL, IF, WHILE, and GOTO

- action keywords: ADD, EQUIP, GIVE, TAKE, TAKEBYTYPE, CAST, SAY, MSG, SENDMSG, BCAST, RESURRECT, POISON, DAMAGE, MUSIC, EFFECT, SOUND, GUMP, DESPAWN, DELETE, ANIMATE, OFFSET

- loot keywords: ARMOR, WEAPON, JEWELRY, JARMOR, JWEAPON, SARMOR, SHIELD, LOOT, LOOTPACK, POTION, SCROLL, NECROSCROLL

- access keywords: GET, GETONTHIS, GETONPARENT, GETFROMFILE, GETONSPAWN, GETONCARRIED, GETONMOB, GETONTRIGMOB, SET, SETONTHIS, SETONPARENT, SETONSPAWN, SETONSPAWNENTRY, SETONCARRIED, SETONMOB, SETONTRIGMOB, PLAYERSINRANGE, TRIGSKILL

- spawner triggering by: player proximity, speech, player skill use, players carrying specific items, items or mobiles that have certain properties such as open doors or injured mobs, time of the day.

- automatic relocation of inaccessible spawns.

- "SmartSpawning" which allows spawners to automatically and transparently remove and restore spawns based on player proximity, reducing save times and mobile load.

Quest System Features:

- make complex multiple-objective quests ingame without any scripting.

- players can have multiple quests running at the same time.

- allow playermade quests that can be constructed by players and given to other players for things such as guild events.

- supports the following quest objective types: KILL, KILLNAMED, COLLECT, COLLECTNAMED, ESCORT, GIVE, GIVENAMED

- construct interactive npc conversations using the [xmledit command.

- control whether and how often quests can be repeated.

- quests can be assigned difficulty levels that are used to give out quest points on completion of the quest.

- players can be ranked by quest points. These shardwide rankings can be displayed using the [questranking command or saved to html for web display.

- quest rewards can be purchased using quest credits.

Support Features:

- searching/sorting for spawners/items/mobiles with the "[xmlfind" utility.

- creating interactive dialog objects/mobs ingame with the "[xmledit" utility.

- rapidly adding and configuring spawners and their spawns with the "[xmladd" utility.

- track down any spawn using the "goto" button in the spawner gump

- saving and loading of spawn files with [xmlsave, and [xmlload.

- import .map and .msf format spawn files with the "[xmlimportmap" and "[xmlimportmsf" utilities.

- export and import existing standard distro spawners using the [exportspawner and [importspawners commands.

Addon Systems:

The following additional optional addon systems are also available:

The Spawn Editor 2 visual spawn editing/mapping program can be found here Spawn Editor 2

The XmlPoints addon can be found here XmlPoints system

The XmlMobFactions addon can be found here XmlMobFactions system

The XmlCustomAttacks addon can be found here XmlCustomAttacks system

The XmlSockets addon can be found here XmlSockets system

The XmlSiege addon can be found here XmlSiege system

The PlayerRangeSensitiveMod provides the benefits of having PlayerRangeSensitive=false with virtually none of the server load. PlayerRangeSensitiveMod .

Additional Links:

godfood's XmlSpawner support forum
XmlSpawnerFan forum

Discord's xmlspawner documentation wiki
Discord's xmlspawner docs

Tryings beginners tutorial
Beginner's tutorial

Gator81's custom gauntlet with helpful walkthrough of setting up object-triggered spawners.
http://runuo.com/forums/showthread.php?t=50444

Eymerich's beginners guide to quest making. (thanks to DrussRob for the html rewrite)
Beginner's quest guide

LordHogFred's xml posts.
Diablo 2 quests
Halloween spawns

benchmarking information on spawner memory use.
http://runuo.com/forums/showpost.php...postcount=1078

Installation:

The installation packages are available at XmlSpawnerFan forum
__________________
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

Last edited by ArteGordon; 06-23-2006 at 05:59 PM.
ArteGordon is offline  
Old 06-16-2006, 12:36 PM   #2 (permalink)
ConnectUO Creator
 
Jeff's Avatar
 
Join Date: Jan 2004
Age: 28
Posts: 4,886
Default

F'ing Hell, were u up all night or what?
__________________
Jeff Boulanger
ConnectUO - Core Developer

Want to help make ConnectUO better? Click here to submit your ideas/requests
Use your talent to compete against other community members in RunUO hosted coding competitions

If you know XNA (even if its just a little) or are a good artist(2d or 3d) and are interested in making games for a hobby send me a pm or drop by #xna in irc.runuo.com. I'm looking to put together a small game development team.


Please do not pm me for support. If you are having issues please post in the appropriate forum. Thanks for your continued support of both ConnectUO and RunUO
Jeff is offline  
Old 06-16-2006, 12:40 PM   #3 (permalink)
Forum Expert
 
arul's Avatar
 
Join Date: Jan 2005
Location: Hic sunt leones ...
Age: 21
Posts: 1,289
Send a message via MSN to arul
Default

Outstanding, thanks Arte
__________________
Angels are falling the very last time, down they're burning in hate and decline, unfaithful and violent we're breaking the spell, we're god, we're scissor, in heaven and hell!
arul is offline  
Old 06-16-2006, 01:22 PM   #4 (permalink)
Forum Novice
 
WizardingOne's Avatar
 
Join Date: Apr 2006
Age: 18
Posts: 120
Default

excellent. I think it would be bad if this was not updated for 2.0, considering half my shard uses the spawners. Thank you very very much.
WizardingOne is offline  
Old 06-16-2006, 01:32 PM   #5 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

hehe. well, I'm sure that there will still be things to fix, so it is not done yet, but it does compile and it does spawn, so that's a good first step.
__________________
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 06-16-2006, 01:40 PM   #6 (permalink)
Forum Expert
 
Liacs's Avatar
 
Join Date: Mar 2004
Location: Belgium / Germany
Age: 31
Posts: 1,036
Send a message via MSN to Liacs
Default

wow, thanks so much for updating this! great work! you are a wizard

Lia
__________________
;)My C# Bookshelf (carpented by Soultaker);)

BTW: Please ask questions in the adequat forum and not on a private message! Otherwise nobody can learn from it!
Liacs is offline  
Old 06-16-2006, 01:56 PM   #7 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

fixed an issue with spawner names that broke some features and examples that looked up spawners by name. 2.0 doesnt allow overriding Name any more so had to work around that.
Updated xmlspawner.cs in xmlspawner2-20-v311a-1of3.zip
__________________
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 06-16-2006, 02:02 PM   #8 (permalink)
Forum Novice
 
Join Date: Apr 2004
Location: Minnesota,USA
Age: 33
Posts: 105
Send a message via ICQ to godhand
Default

ArteGordon, man you never cease to amaze me, you rule, thanks for all the hard work
__________________
Papa of maggy 05
godhand is offline  
Old 06-16-2006, 05:01 PM   #9 (permalink)
 
Join Date: Aug 2004
Age: 30
Posts: 28
Default

I did installed it, run perfectly, did a lot a testing, importing msf and map... pretty cool, except that msf cant be import by directories

Ok, there we go with my problem:

I dont have access to some command like

[xmlspawnerwipeall

my AccessLevel = Owner

so, whats wrong hehheehh

Im with RunUO 2.0 RC1

Thanks to answer my question.
gotoxy is offline  
Old 06-16-2006, 05:10 PM   #10 (permalink)
Forum Expert
 
Join Date: Dec 2005
Posts: 465
Default

ah, i bet it checks for accesslevel = admin, there were previously none above that. Also, great work.
snicker7 is offline  
Old 06-16-2006, 05:21 PM   #11 (permalink)
 
Join Date: Aug 2004
Age: 30
Posts: 28
Default

that's right, work fine with admin accesslevel

thanks
gotoxy is offline  
Old 06-16-2006, 05:35 PM   #12 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

yeah, I have to go through and check for those. I think most are >= AccessLevel.Administrator, but a few just check ==

I'll have to check the .msf directory import.

(edit)

yeah, its just the old wipe commands. Everything else should already be >= AccessLevel.Administrator

and the .msf directory thing is is not due to 2.0, it is just because I just never coded in directory/subdirectory support for .msf importing (I thought I had). I only added it to .map importing.
__________________
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

Last edited by ArteGordon; 06-16-2006 at 05:49 PM.
ArteGordon is offline  
Old 06-17-2006, 02:19 PM   #13 (permalink)
 
Join Date: Mar 2004
Posts: 7
Default Adding a questNPC's dialog to another NPC?

I have built a dialog tree on a questNPC, but would like to take that dialog and apply it to a different NPC I am making, is this possible to do without completely recreating the dialog on the new character?

I saved the original as OldWoman in the SAVE AS part of the xmledit gump, but cannot quite figure out how to call it up or if I can apply it now to another NPC. Any direction would be greatly appreciated.

Thanks - aside from the learning curve for non-scriptors, I love the flexibility of the spawner

Dis~
Discord is offline  
Old 06-17-2006, 02:44 PM   #14 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by Discord
I have built a dialog tree on a questNPC, but would like to take that dialog and apply it to a different NPC I am making, is this possible to do without completely recreating the dialog on the new character?

I saved the original as OldWoman in the SAVE AS part of the xmledit gump, but cannot quite figure out how to call it up or if I can apply it now to another NPC. Any direction would be greatly appreciated.

Thanks - aside from the learning curve for non-scriptors, I love the flexibility of the spawner

Dis~
yes, you can apply it to another npc. Actually, you can apply it to any object at all, even things like signs and doors.

To manually apply it, use the [loadnpc command like

[loadnpc OldWoman

and target an npc or object.

To spawn it, you can either use the ATTACH keyword to attach an xmldialog configured with your .npc file like

orc/ATTACH/xmldialog,OldWoman

or, if you are configuring an xmlquestnpc, you can do it like

xmlquestnpc/configfile/OldWoman/loadconfig/true

or

xmlquestnpc/ATTACH/xmldialog,OldWoman

They both end up doing the same thing.
__________________
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 06-17-2006, 02:50 PM   #15 (permalink)
Forum Master
 
Joeku's Avatar
 
Join Date: Feb 2005
Location: ShatteredSosaria.com
Posts: 9,260
Default

Quote:
Originally Posted by ArteGordon
XmlSpawner2
v3.11
RunUO 2.0 version
updated 6/16/05
ArteGordon
you updated it last year!?!
Joeku is offline  
Old 06-17-2006, 02:59 PM   #16 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by Joeku
you updated it last year!?!
I'm not at liberty to discuss details of my time travel technology due to the involvement of certain government agencies which may, or may not exist.
__________________
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 06-17-2006, 05:42 PM   #17 (permalink)
Newbie
 
Join Date: Oct 2004
Location: Concord, NC
Age: 49
Posts: 39
Default

Quote:
Originally Posted by Joeku
you updated it last year!?!
Explains how he got it out so quick
Raynew43 is offline  
Old 06-17-2006, 10:04 PM   #18 (permalink)
 
Join Date: Mar 2004
Posts: 7
Default

LOL...

Thanks so much for the help Arte - I think I got it now On a side note, in an effort to make sense of the 50 page thread and the documentation that comes with the spawner for our staff I have started a document on the spawner. I will not pretend that it is complete, but it is a great deal more detailed than most of the tutorials I have seen to date, so if anyone else wants to make use of its information, please feel free to do so.

As I said, it is not offiliated with Arte or his fabulous spawner, but is meant to help those new to it understand its functionality a bit better.

http://www.grimmwold.com/wiki/index.php?title=Spawner

Dis~
Discord is offline  
Old 06-17-2006, 10:08 PM   #19 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by Discord
LOL...

Thanks so much for the help Arte - I think I got it now On a side note, in an effort to make sense of the 50 page thread and the documentation that comes with the spawner for our staff I have started a document on the spawner. I will not pretend that it is complete, but it is a great deal more detailed than most of the tutorials I have seen to date, so if anyone else wants to make use of its information, please feel free to do so.

As I said, it is not offiliated with Arte or his fabulous spawner, but is meant to help those new to it understand its functionality a bit better.

http://www.grimmwold.com/wiki/index.php?title=Spawner

Dis~
looks great! thanks for making it available. I will add this link to the tutorials and documentation list in the main post and support forum.
__________________
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 06-17-2006, 10:21 PM   #20 (permalink)
Forum Novice
 
wensday's Avatar
 
Join Date: Dec 2004
Age: 32
Posts: 170
Send a message via ICQ to wensday Send a message via Yahoo to wensday
Default

arte, you are a pure genius!!! Thank you so much for this updated xml as I love the system and cant wait to get it up and running on my 2.0 test shard and hopefully soon, on my 2.0 shard!
__________________
Wensday~
wensday is offline  
Old 06-18-2006, 12:44 AM   #21 (permalink)
Forum Novice
 
manofwar's Avatar
 
Join Date: Apr 2004
Age: 39
Posts: 110
Default Woot!

All we need now is the install Txt again. Seems that is only thing missing from the package. Thanks for working hard to get this out!
manofwar is offline  
Old 06-18-2006, 07:06 AM   #22 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by manofwar
All we need now is the install Txt again. Seems that is only thing missing from the package. Thanks for working hard to get this out!
yep. sorry, that will be added soon.
__________________
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 06-18-2006, 08:39 AM   #23 (permalink)
Forum Novice
 
penndragon's Avatar
 
Join Date: Apr 2004
Location: Tennessee
Age: 41
Posts: 119
Send a message via Yahoo to penndragon
Default

Is anyone else having problems importing neruns new map files? It shows "Imported 0 spawners from data/monsters\ilshenar\vendors.map" for each different map. The other line it shows for each is "Imported a total of 13 .map files and 0 spawners from directory data/monsters\Ilshenar"
It shows these msg's for each map.
Any idea?
__________________
The only stupid question is the one not asked........ Just don't ask me..... I don't know either........ :D
penndragon is offline  
Old 06-18-2006, 08:42 AM   #24 (permalink)
Master of the Internet
 
Join Date: Aug 2003
Posts: 5,688
Default

Quote:
Originally Posted by penndragon
Is anyone else having problems importing neruns new map files? It shows "Imported 0 spawners from data/monsters\ilshenar\vendors.map" for each different map. The other line it shows for each is "Imported a total of 13 .map files and 0 spawners from directory data/monsters\Ilshenar"
It shows these msg's for each map.
Any idea?
I'll take a look to see if there was a .map format change to go along with his new upgraded system.
__________________
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 06-18-2006, 08:43 AM   #25 (permalink)
Forum Novice
 
penndragon's Avatar
 
Join Date: Apr 2004
Location: Tennessee
Age: 41
Posts: 119
Send a message via Yahoo to penndragon
Default

Thanks very much.
__________________
The only stupid question is the one not asked........ Just don't ask me..... I don't know either........ :D
penndragon is offline  
 

Bookmarks