I have a rare spawn that I want to spawn anywhere randomly over a facet. I am looking for it to only last one day every week for 24 hours. My issue is having it spawn randomly anywhere.

I am running the latest ServUO. Any help would be appreciated.

Thank you


Medusa
Ultima Reforged
ultimareforged.com - What are you waiting for?
 
My experience with XML is limited. but, you can set timer for like 168 hrs or something. as far as spawning the only thing I can think of is spawning it by region. I'm sure someone will have better feed back. but its a start.
 
I have a rare spawn that I want to spawn anywhere randomly over a facet. I am looking for it to only last one day every week for 24 hours. My issue is having it spawn randomly anywhere.

I am running the latest ServUO. Any help would be appreciated.

Thank you


Medusa
Ultima Reforged
ultimareforged.com - What are you waiting for?
Hi *waves* :)
There are some other spawning systems that offer longer spawn periods, like weeks, months, and even years, *if* you want to go that route.
The latest ServUO has a broken Xmlspawner system, so I have no idea if these Props still work, but...

You will run into some *time* limitations using just one Xmlspawner, but you could get around them by using more than one! The first one is running for 7 days and triggers the second, which runs another 7 days and on day 14, spawns the Rare for 24 hours (Duration). The issue is that Props effect *each* Entry for that Xmlspawner. So a Duration of 24 Hours would be for each Entry, which I am sure is not what you want.
What is going to make the difference is using the Group and Sequence Props of Xmlspawner and dividing two entries into two Groups, in Sequence. (set Sequence from -1 to 1)
Xmlspawner #1
C#:
Entry 1 Set,Xmlspawner#2Serial/DoReset/True/Running/True
Entry 2 SetOnThis/DoReset/True

Xmlspawner #2
Entry 1 is the Rare spawn with 24hr Duration (You can also set the Props so the Min and Max Delay are for an extended period, like 24hrs, which means the Xmlspawner is triggered by #1, but by setting both the Min/Max Delay to 24:00:00, it will not spawn the first Entry *until* 24 hours have passed. By making those values the same, you are forcing it to spawn at that exact time. You could say 24 Min and 96 Max, but that means 72 hours *could* pass before it is spawned, or it could spawn at 24:00:01.
(Refract Min and Max can also be used to extend wait times between Entries)

Now for the second part of your project: having it spawn randomly anywhere.
What is really awesome about Xmlspawner is that it has SpawnCoords (coords are shown as X1_Y1, X2_Y2 Props) *and* SpawnRange, but on top of that, you can have the Entry spawn at specific Coords or even a CoordsRange (which take over any SpawnRange or SpawnCoords set as Xmlspawner Props).
C#:
RareSpawn/X/1920<---- Will spawn the Rare at those X coords on the facet the Xmlspawner is placed on.
RareSpawn/X/1920/Y/24/Z/33 <---- Will spawn the Rare at those exact coords on the facet the Xmlspawner is placed on.
RareSpawn/X/1920/Y/24/Z/33/Map/Trammel <---- Will spawn the Rare at those exact coords on the Trammel facet, regardless of where the Xmlspawner is placed.
(note: You can also use the Location prop of the mobile/item with Map instead of the X/Y/Z, I just find it easier to keep track of the X/Y/Z for editing later)

Technically you could have the spawn range for X1_Y1, 0,0, and X2_Y2, 7168,4096 for Trammel or Felucca, as examples, and the Rare could spawn anywhere on the facet. Then the SpawnRange is factored in, e.g. if it randomly selected 1023, 102, it would still spawn within whatever Range of that tile.

And yet another way to do this would be to enter is *all* the valid coordinate ranges and any specific coords, into a text file and Xmlspawner can read the data from the file to spawn from those locations. If you go this way though, send me a PM for sure, because this way will take a little setup.
:)
 
Back