1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.
5/5, 2 ratings

Xmlspawner Properties

Summary of the tutorial

Feature Usage: XmlSpawner Properties

Installation Step:

Estimated Completion Time: N/A

Tutorial Steps: N/A

Introduction: Overview of the Properties gump for an Xmlspawner.

Xmlspawner Properties

Tutorial Step 1:

[Add Xmlspawner and target the ground, then open the spawner and click Props (Bottom right, middle). There are tons of properties that can be changed and I'm going to give you a brief overview of each property and an example of it's usage. (see image 1-0) (Note: I have not used ALL the properties and some do not appear to change any of the spawner's behavior, so feel free to fill me in if I'm wrong).

[​IMG]
Image 1-0

AllowGhostTrig - Default setting is False. This setting allows for Player/NPC ghosts to activate the spawner. Players/Mobs that are alive won't trigger it, if this is set to True.

  • Example: An Xmlspawner that spawns an ankh that will res a player that is within a defined radius around the spawner. All players would see the ankh when it spawned, but only a dead player can get res'd.

AllowNPCTrig - Default setting is False. This setting allows for any NPC to activate the spawner. In theory, a player can still activate the spawner IF you have other spawning properties set up, otherwise only the NPC you set up will trigger it.

  • Example: An XmlQuestNPC offers a quest for players to go kill a certain mob. When the player accepts the quest, the QuestNPC can activate the special mob spawner. This would mean only players on that quest will be able to activate the special mob spawner.

ConfigFile - Default setting is ~Null~. We learned in an earlier tutorial that XmlQuestNPC's have a config file that gets loaded when they are spawned. Likewise, spawners can have config files as well. You should never connect more than one config file to any one Xmlspawner and the same goes for XmlQuestNPCs.

  • Example: You create a config file on a test shard to publish to a live shard.

CurrentCount - This number indicates how many mobs are spawned at that time. Since our spawner is off, the current count is "0". This is an entry you should never have to change.

DespawnTime - Default setting is 00:00:00. I have not used this setting at the time this tutorial was written.

DoReset - Default setting is False. This setting forces the spawner to Reset (back to Line entry 1). Generally you wouldn't edit this directly on the spawner, but rather pass it as a keyword command from another object.

  • Example: You set the spawner to reset itself after it has finished spawning all line entries previous to the reset entry. Line entry on the spawner DoReset/True/.
  • You set a spawner to reset another spawner. SET,GreyWolf_For_SimpleQuest/DoReset/True/.
  • You set an XmlQuestNPC to reset a spawner. SET,GreyWolf_For_SimpleQuest/DoReset/True.

DoRespawn - Default setting is False. This setting Respawns the spawner. Generally you wouldn't manually edit this entry, but rather pass it as a keyword command from another object.

  • Example: You set a spawner to respawn itself after it has finished spawning all the line entries previous to the respawn entry. Line entry on the spawner DoRespawn/True/.
  • You set a spawner to Respawn another spawner. SET,GreyWolf_For_SimpleQuest/DoRespawn/True/.
  • You set an XmlQuestNPC to respawn a spawner. SET,GreyWolf_For_SimpleQuest/DoRespawn/True/.

Duration - Default setting is 00:00:00. This setting allows you to specify an amount of time for which all spawns will be spawned. Must be used in conjunction with DurationOver.

DurationOver - Default setting is 00:00:00. This is the countdown timer you set that matches the Duration time previously set. Further restrictions can be applied by using Refract Min/Max.

  • Example: You set an Xmlspawner to spawn a treasure chest for 5 minutes, then it despawns.

ExternalTriggering - Never implemented to my knowledge at the time this tutorial was written.

ExtTrigState - Default setting is False. Intended to be used with ExternalTriggering, but was never implemented to my knowledge at the time this tutorial was written.

FirstModifiedBy - This field indicates the first person to open the Xmlspawner after it was first placed. Generally this is not something you would manually change.

Group - Default setting is False. This setting allows for Sub-groups to be set up on the spawner. Sub-groups allow you to group line entries to spawn together or to prevent a line entry or line entries from spawning at the same time.

  • Example: You set up a spawner to operate like a Champ Spawn. Line entries are grouped according to what mobs spawn on any given level of the champ spawn.

GumpState - Default setting is ~Null~. This indicates the last "choice" taken when a player is viewing a GUMP. This is helpful when troubleshooting XmlDialogs that appear "broken".

  • Example: You set up an Xmlspawner to open a GUMP that begins a quest. The last option picked from the GUMP will appear in the GumpState.

HomeRange - Default setting is 5 tile radius from the spawner. This number indicates how far AWAY from the spawner the mob will travel before returning.

  • Example: You spawn Ralph the Grey Wolf, but set the home range to 5, which gives him a radius of 5 tiles around the spawner to walk inside of. Not to be confused with SpawnRange.

HomeRangeIsRela... - Default setting is True. HomeRangeIsRelative, if set to True, means the mobs spawned by that spawner will be confined within the HomeRange value. If set to False, HomeRange is ignored and mobs wander freely.

LastModifiedBy - This field indicates the last person to edit the Xmlspawner. Generally this is not something you would manually change.

LoadConfig - Default setting is False. If you used a config file to load the spawner, it would be set to True.

MaxCount - This number indicates the Max number of Line Entries that will be executed by the spawner. Generally you wouldn't change this number, but assuming you have multiple line entries of mobs and you want some variety (instead of all the mobs spawned all the time), you can manually lower this number (change it from the spawner gump window itself).

  • Example: An Xmlspawner is set to spawn a max of 20 mobs, 5 of each type. You change the Max Count to 13 instead of 20. That means that only a Max of 13 mobs will be spawned at any one time.
MaxDelay - Default setting is 00:10:00 (10 minutes). This is the Max amount of time the spawner will wait before respawning. This also applies to line entries when configuring Sub-groups.

  • Example: An Xmlspawner has 4 line entries, containing 2 sub-groups. Lines 1&2 are grouped in Sub-group 1 and 3&4 are grouped as Sub-group 2. Once all the mobs in sub-group 1 are killed, the spawner will wait a Max of 10 minutes before spawning the next sub-group. Max setting is 23:59:59.
MinDelay - Default setting is 00:05:00 (5 minutes). This is the Minimum amount of time the spawner will wait before respawning. So if the default settings for MaxDelay and MinDelay are unchanged, the spawner will respawn between 5 and 10 minutes. Can be combined with MaxDelay to further constrict or expand the time between respawns. Can be used with Refract Min/Max as well for even more time control. Max setting is 23:59:59.

MobTriggerId - Default setting is ~null~ and cannot be manually changed. This is the unique ID (not the serial) of the mob you wish to activate the spawner.

MobTriggerName - Default setting is ~null~. You can enter in any mob's name, i.e. pyre, ettin, Steve, Marcus_Baccus, etc. Whenever a mob with that name gets close to the spawner, it will activate. You can constrict or expand the activation range by setting the ProximityRange to a higher number.

  • Example: An Xmlspawner is set to trigger when Steve gets close to it.

MobTriggerProp - Default setting is ~null~. You can set a specific property that the mob MUST return True in order for the spawner to spawn.
  • Example: An Xmlspawner is set to trigger when Steve gets close to it AND has +15,000 Karma.
MobTriggerName - Steve
MobTriggerProp - Karma = 15000​

NextSeqReset - To my knowledge this wasn't implemented by the time this tutorial was written.

NextSpawn - This number indicates how long until the next spawn will appear. You don't change this number directly. It gets changed when you alter other properties and/or when a line entry is spawned.

NoTriggerOnCar... - NoTriggerOnCarried. Default setting is ~null~. Entering a value in this field will prevent the spawner from spawning IF the value returns True.

  • Example: You set up an Xmlspawner with NoTriggerOnCarried Greg's Sword (Always use the item name, not the class name). If any player or mob even, gets near the spawner AND they have Greg's Sword in their backpack or equipped, the spawner will not trigger.
PlayerTriggerProp - Default setting is ~null~. This is used in the same manner as MobTriggerProp, but targets players only.

ProximityActiva... - ProximityActivated. Default setting is False. This allows the spawner to be triggered from within a defined radius (proximity range) you set around the spawner. Trying to set this to True won't work, as it won't stay true. You HAVE to use the ProximityRange to set proximity.

ProximityMsg - Default setting is ~null~. If a spawner is set to a positive ProximityRange value, you can display a message above the player's head when the spawner is triggered.

  • Example: You set an Xmlspawner with a ProximityRange of 4 and add a ProximityMsg of "Beware the moors!". Steve steps within that 4 tile radius, the spawner triggers and Steve sees "Beware the moors!" above his head.
ProximityRange - Default setting is -1. By default, no Xmlspawner is set for Proximity. You have to enter a positive value in ProximityRange to turn it into a Proximity Spawner that will trigger within that radius (and you can configure more restrictions as well).

  • Example: You set an Xmlspawner with a ProximityRange of 4. No other options are set, so any player that gets within a 4-tile radius triggers the spawner (Note: it IS possible to set up a proximity spawn that just keeps triggering. If that happens, you need to have more restrictions so the spawner will only spawn when you want it to.
ProximitySound - Default setting is 500. This is the number of the Sound file that will be played when the spawner is triggered. This is ANY UO sound, so have fun with this one. You need to have a proximity range set for this to work.

  • Example: You set an Xmlspawner to spawn a Succubus with ProximityRange 4 and Sound 800. Steve triggers the spawner and hears a kissing sound. (Note: You could add a message as well.)
RefractMax - Default setting is 00:00:00. This is used in conjunction with RefractMin and it controls the time between spawner resets. So after all the line entries have been spawned, the spawner will wait between the RefractMin and RefractMax before it starts spawning again. This does NOT effect time between spawns, only time between spawner "respawn time". This is NOT the same as Min/Max Delay.

RefractMin - Default setting is 00:00:00. This is used in conjunction with RefractMax and it controls the time between spawner resets.

  • Example: An Xmlspawner executes 4 line entries. The RefractMin is 00:05:00 and the RefractMax is 00:10:00. The spawner will "wait" at least 5 minutes, but no longer than 10 minutes before it starts spawning from the beginning again. This is NOT the same as Min/Max Delay.
RefractoryOver - Default setting is 00:00:00. This shows how much time is left before the spawner will spawn again according to the RefractMin and RefractMax.

RegionName - Default setting is ~null~. If the spawner is in a specific region (like a PvP area you set up), you can enter the region name here.

  • Example: You create a small PvP arena, named Thunderdome, with one Xmlspawner in the center. You enter the region name as Thunderdome.
Running - Default setting is False. This tells you if the spawner is active or not (Running/True = Active, Running/False = Not Active). Changing this is the same as clicking Respawn in the spawner gump.

SequentialSpawn - Default setting is -1. If you set up Sub-groups, you can also set SequentialSpawn. Any positive integer will cycle the spawner in that manner. Generally "1" is all you need.

  • Example: You set up an Xmlspawner with 5 sub-groups and set the SequentialSpawn to "1". Every line entry will spawn and advance one line, starting with Line 1. If you enter a "2", every line will spawn and advance one line, starting with Line 2.
SetItem - Default setting is ~null~. Have not used yet at the time this tutorial was written.

SetItemName - Default setting is ~null~. Value inherited from SetItem if set.

ShowBounds - Default setting is False. If set to True, you will see columns of smoke appear around the edge of the SpawnRange.

  • Example: An Xmlspawner is set to SpawnRange 5 and you set ShowBounds to True, you will see columns of smoke appear along the edge of the SpawnRange.
SkillTrigger - Default setting is ~null~. You can have the spawner set to trigger when a specific Skill is used within the ProximityRange. You MUST have a positive ProximityRange value for this to work.

  • Example: An Xmlspawner has a SkillTrigger for Mining and it spawns a Blackrock Elemental. Steve uses his mining skill within the proximity range and the Blackrock Elemental spawns.
SmartSpawning - Default setting is False. This controls how the spawner spawns. SmartSpawning True tells the spawner that if no players are nearby not to spawn. While this can greatly reduce the amount of memory usage on a shard, I haven't found a great use for it, but you might.

SpawnOnTrigger - Default setting is False. This tells the spawner if it should IGNORE the Min/Max Delay AND/OR the Refract Min/Max and spawn every time the spawner is triggered. IF set to True, you should include some restrictions, otherwise the spawner will continue to trigger in an endless loop.

SpawnRange - Default setting is 5. The SpawnRange is the distance mobs will spawn around the spawner.

  • Example: An Xmlspawner is set to spawn 5 bulls and the SpawnRange is set to 4. 5 bulls will spawn within a 4-tile radius around the spawner.
SpeechTrigger - Default setting is ~null~. SpeechTrigger can be used to trigger the spawner by something a player says or an NPC and is also defined by the ProximityRange (Note: Syntax is important. Yes! is NOT the same as yes!).

  • Example: An Xmlspawner is set to spawn a Succubus when a player is within a ProximityRange of 4 and says "Hi!", not "hi!" or "Hai!" or "hI!".

StackAmount - Default setting is 1. Have not used yet at the time this tutorial was written.

Team - Default setting is 0. Have not used yet at the time this tutorial was written.

TOD - Time of Day. This shows you what time it is on the server, wherever the shard is running.

TODEnd - Default setting is 00:00:00. Used in conjunction with TODStart to specify a range of time the spawner will be active. (see example in TODStart).

TODInRange - This setting tells you if the current server time falls within the TODStart/TODEnd for the spawner. False means it doesn't and it won't trigger the spawner, True means it does and will trigger the spawner.

TODMode - Default setting is Realtime. The other option is GameTime. The clock in the bottom right corner of your system tray is Real Time. The time on your cell phone is Real Time. GameTime is vastly different and may be adjusted to suit the needs of your shard. GameTime happens very quickly compared to RealTime. If you set TODMode to GameTime, you will need a way to tell the time in the game.

TODStart - Default setting is 00:00:00. Used in conjunction with TODEnd to specify a range of time the spawner will be active.

  • Example: You set an Xmlspawner to spawn 3 vendors, but you only want them to appear between 6pm and 10pm Real Time. TODStart and TODEnd are based on Military Time (24-hour clock). So 6pm is 18:00:00 and 10pm is 22:00:00. Those settings mean that the vendors will ONLY be available between 6pm and 10pm every day.

TriggerAccessLevel - Default setting is Player. This is used to tell the spawner which AccessLevel and ONLY that AccessLevel can trigger the spawner.

  • Example: You set up an Xmlspawner to hand out various Staff Items for new Counselors. So you change the TriggerAccessLevel to Counselor.

TriggerMob - Default setting is ~null~. Similar to MobTriggerName and can be used in conjunction with PlayerTriggerProp and/or MobTriggerProp. Helpful if a proximity range is set.

TriggerObject - Default setting is ~null~. Similar to TriggerMob/MobTriggerName, only works for Objects. This is not the same as TriggerOnCarried. (Note: Use the object name and NOT the object's class name, i.e. Greg's Sword not gregssword).

TriggerObjectNa... - TriggerObjectName. Default setting is ~null~. Inherits the name of the TriggerObject.

TriggerObjectProp... - TriggerObjectProperty. Default setting is ~null~. Used in conjunction with TriggerObject and allows for a specific property or properties to be defined from the TriggerObject.

  • Example: TriggerObject is Greg's Sword, spawned by another spawner with a Hue of 34. Steve triggers Greg's Sword spawner, which spawns Greg's Sword with a "random" hue. If Greg's Sword spawns with Hue 34, the second spawner is triggered. Helpful if a proximity range is set.
TriggerOnCarried - Default setting is ~null~. This is used to filter who can trigger the spawner based on an item they are carrying or have equipped.

  • Example: An Xmlspawner is used together with an XmlQuestNPC and a quest (A Simple Quest for example) players can acquire. You set the TriggerOnCarried to the name of the quest and the objective that is completed, i.e. A Simple Quest,1, which means the 1st objective MUST be complete for the spawner to trigger. Helpful to use when setting up long quest chains and players must do things in a certain order. Multiple items can be used in conjunction, i.e. A Simple Quest,1 | Greg's Sword

TriggerProbability - Default setting is "1". Values in this field determine the frequency the spawner will trigger when one of the trigger properties is set (ProximityRange, SpeechTrigger, TriggerOnCarried, etc). The default value of "1" means 100%. Values can be any positive decimal value, i.e. 0.5 would be 50%.

  • Example: TriggerOnCarried is set for A Simple Quest,1 with a TriggerProbability of 0.5, which means that any player carrying that questbook WITH the 1st objective complete has a 50% chance of triggering the spawner.

WayPoint - Default setting is ~null~. You can connect Xmlspawners to WayPoints. A waypoint is another location that a mob will travel to. Waypoints can be daisy-chained quite extensively. You can create a path for your mobs to walk along. [Add waypoint and target the ground.

  • Example: You spawn a greywolf and want it to walk through the farmlands outside of Brit. [Add Waypoint, target the ground. Open the greywolf spawner, click the Waypoint arrow, then target the waypoint you just placed. (Note: There does not appear to be a minimum or maximum range in regards to how far apart waypoints/spawners have to be or can be.)
X1_Y1 - These are the upper coordinates of the SpawnRange. These values can be changed to spawn a mob outside of the normal spawn range (the actual bounding box where they can spawn), but, if HomeRangeIsRelative is True, the mob will travel back towards the spawner.

X2_Y2 - These are the lower coordinates of the SpawnRange. These values can be changed to spawn a mob outside of the normal spawn range (the actual bounding box where they can spawn), but, if HomeRangeIsRelative is True, the mob will travel back towards the spawner.