Hello.
I got a question about Trammel startup spawner disabler. The server that I run is based on the lack of Trammel (Siege Ruleset), and the server itself disables all spawns on Trammel facet during startup. Now, I would like to create a new players starting location in New Haven, aiming to accumulate all of them in close proximity before they immerse in the large world of UO.
Our goal is to make New Haven a starting place where players will be able to taste the game, complete first quests, meet their first friends and make the first contacts - without rest of Trammel facet ingame. When new players were ready to play in the other enormous and dangerous world - they could leave the starting area via moongate (for example with Britain destination )
In your estimation, is it possible (at the server startup stage) to disable the Trammel spawners except - the Nev Haven area? Could this be possible, for example, by adding this location exception in spawner startup disabler code or by physically modifying spawns in the New Haven area?
Regards
 
Last edited:
AccountHandler.cs

private static readonly CityInfo[] StartingCities = new CityInfo[]
{
//new CityInfo("New Haven", "New Haven Bank", 1150168, 3496, 2575, 14),
//new CityInfo("Yew", "The Empath Abbey", 1075072, 633, 858, 0),
//new CityInfo("Minoc", "The Barnacle", 1075073, 2476, 413, 15),
//new CityInfo("Britain", "The Wayfarer's Inn", 1075074, 1602, 1591, 20),
//new CityInfo("Moonglow", "The Scholars Inn", 1075075, 4408, 1168, 0),
//new CityInfo("Trinsic", "The Traveler's Inn", 1075076, 1845, 2745, 0),
//new CityInfo("Jhelom", "The Mercenary Inn", 1075078, 1374, 3826, 0),
//new CityInfo("Skara Brae", "The Falconer's Inn", 1075079, 618, 2234, 0),
//new CityInfo("Vesper", "The Ironwood Inn", 1075080, 2771, 976, 0),
//new CityInfo("Royal City", "Royal City Inn", 1150169, 738, 3486, -19, Map.TerMur)
new CityInfo("New Haven", "New Haven Bank", 1150168, 3496, 2575, 14)
};
 
I found this part of code in siege.cs file:
Code:
 Utility.PushColor(ConsoleColor.Red);
                Console.Write("Initializing Siege Perilous Shard...");

                long tick = Core.TickCount;

                List<XmlSpawner> toReset = new List<XmlSpawner>();

                foreach (var item in World.Items.Values.OfType<XmlSpawner>().Where(sp => sp.Map == Map.Trammel && sp.Running))
                {
                    toReset.Add(item);
                }

                foreach (var item in toReset)
                {
                    item.DoReset = true;
                }

                Console.WriteLine("Reset {1} trammel spawners in {0} milliseconds!", Core.TickCount - tick, toReset.Count);
                Utility.PopColor();

                ColUtility.Free(toReset);

Any chance to add x/y location range exception or New Haven region exception in this line?
Code:
foreach (var item in World.Items.Values.OfType<XmlSpawner>().Where(sp => sp.Map == Map.Trammel && sp.Running))
 
Last edited:
I modified the files so that the server with the restart did not reset (and deactivate) the active spawners in New Haven. So far it works :)
 
Back