QUOTE |
- Added the WAITUNTIL[,duration][,timeout][/condition][/spawngroup] keyword that holds spawning and triggering until a given time elapses or a given condition is satisfied. If called as "WAITUNTIL,duration" this essentially creates an empty spawn that will last for the specified duration in minutes. If called as "WAITUNTIL/condition" it will hold further spawning until the condition is satisfied. If called as "WAITUNTIL/condition/spawngroup" it will hold spawning until the condition is met, and then spawn the specified subgroup. The timeout can be used to add in a safety release to prevent indefinite blocking of spawning if a condition may never be met. If the duration is used in conjunction with a condition, then it will control the polling time (frequency with which the condition is checked). In general this keyword can be used to introduce simple delays into sequential spawning patterns or to pause spawning until a particular condition is met. An example is provided in the xmlextras file that shows how it can be used to spawn gumps and wait for responses. An important characteristic of WAITUNTIL is that the spawngroup will be spawned with the triggering information of the keyword. This allows for a series of spawns to be triggered once, with the triggering player information carried forward throughout all of them without any further retriggering. The xmlextras example provided is a good example of the application, where a player activates a series of gumps which are delivered only to that player, and the spawner is only triggered at the beginning of the series. |
QUOTE |
- added new champ-spawn examples champ3.xml and champ4.xml that demonstrate the use of the new flags. Champ3.xml is a variation of champ2.xml with smooth transitions between levels (Clr=false) and kills restricted to within level (RestrictKills=true), and a few of the spawns slowed down (MinD/MaxD=0.3 mins). Description of champ4.xml This creates a spawner that implements a simple sequential spawning configuration that starts with some harpies. Killing at least one (Kills=1) will advance to subgroup 1. Subgroup 1 spawns orcs and trolls. The trolls will spawn a bit faster than the orcs. The orcs will not be cleared when the sequence advances (Clear=false) but cannot be used later on to advance any other level (Restrict=true). The trolls will be cleared on advancement (Clear=true). The next level spawns an ogre. Because the kill requirement is set to zero, this level will advance automatically on the next OnTick (20 seconds). Because Clear=true, the ogre will be cleared when the level advances. The next level is a lich that has to be killed within 10 minutes to advance (Reset=10). If it is not killed within the time limit, the sequence will be reset back to subgroup 0 (To=0). If the lich is killed, the sequence will advance to the final level which is a pile of 500 gold pieces that has to be picked up to advance (Kills=1). Each line is a spawn entry and the number next to it refers to the subgroup assigned to the entry. spawner Champ#4 0 harpy/SAY/I guard the master Kills=1 MinDelay=2 mins MaxDelay=3 mins Clear=true 1 orc/SAY/I think I'll hang out here Kills=1 MinDelay=1 min MaxDelay=2 mins Restrict=true Clear=false 1 troll MinDelay=30 sec MaxDelay=1 min Clear=true 2 ogre/SAY/Just stopping by... Kills=0 Clear=true 3 lich/SAY/You will never get past me! Kills=1 Reset=10 mins To=0 4 gold,500/MSG/Here is your reward Kills=1 |