public static void WriteAllQuests() { Tools.StartRealm(); QuestMgr.LoadAll(); ItemMgr.LoadAll(); NPCMgr.LoadNPCDefs(); GOMgr.LoadAll(); AreaTriggerMgr.Initialize(); WriteQuests("Quests", null); }
public override void Process(CmdTrigger <RealmServerCmdArgs> trigger) { if (QuestMgr.Loaded) { trigger.Reply("Quest definitions have already been loaded."); } else { ServerApp <WCell.RealmServer.RealmServer> .IOQueue.AddMessage((Action)(() => { trigger.Reply("Loading Quests..."); QuestMgr.LoadAll(); trigger.Reply("Done."); })); } }
/* * /// <summary> * /// Converts the log-file in the given file (within the <c>LogFolder</c>) * /// to a human-readable file within the <c>LogOutputFolder</c>. * /// </summary> * /// <param name="filename">The name of the file within the LogFolder to be converter</param> * /// <param name="converter">The Converter-method, either <c>KSnifferLogConverter.ConvertLog</c> or <c>SniffzitLogConverter.ConvertLog</c></param> * public static void ConvertLog(string filename, Action<string, string> converter) * { * Directory.CreateDirectory(ToolConfig.LogFolder); * Directory.CreateDirectory(ToolConfig.LogOutputFolder); * * var inputFile = Path.Combine(ToolConfig.LogFolder, filename); * Console.WriteLine("Converting log-file: " + new FileInfo(inputFile).FullName); * * DebugUtil.Init(); * * var outFile = Path.Combine(ToolConfig.LogOutputFolder, filename); * if (!outFile.EndsWith(".txt")) * { * outFile += ".txt"; * } * converter(inputFile, outFile); * } * * [Tool] * public static void ConvertKSnifferLogSingleLine(string filename) * { * Directory.CreateDirectory(ToolConfig.LogFolder); * Directory.CreateDirectory(ToolConfig.LogOutputFolder); * * var inputFile = Path.Combine(ToolConfig.LogFolder, filename); * Console.Write("Converting log-file: " + new FileInfo(inputFile).FullName + " ..."); * * DebugUtil.Init(); * * var outFile = Path.Combine(ToolConfig.LogOutputFolder, filename); * if (!outFile.EndsWith(".txt")) * { * outFile += ".txt"; * } * * KSnifferLogConverter.ConvertLog(inputFile, outFile, true); * Console.WriteLine("Done. - Output has been written to: " + new FileInfo(outFile).FullName); * //Console.WriteLine(); * }*/ public static void Startup() { Utility.Measure("Load all", 1, () => { ItemMgr.LoadAll(); NPCMgr.LoadNPCDefs(); GOMgr.LoadAll(); QuestMgr.LoadAll(); }); Utility.Measure("Basic startup sequence", 1, () => { RealmServ.Instance.Start(); Utility.Measure("Load all", 1, () => { ItemMgr.LoadAll(); NPCMgr.LoadNPCDefs(); GOMgr.LoadAll(); QuestMgr.LoadAll(); }); Map.AutoSpawnMaps = true; var easternKD = World.GetNonInstancedMap(MapId.EasternKingdoms); var kalimdor = World.GetNonInstancedMap(MapId.Kalimdor); var outlands = World.GetNonInstancedMap(MapId.Outland); Utility.Measure("Spawning Main Maps", 1, () => { //easternKD.Start(); //kalimdor.Start(); }); GC.Collect(); Console.WriteLine("Total memory usage with fully spawned world: {0}", GC.GetTotalMemory(true)); }); }
public virtual void LoadAll(CmdTrigger <RealmServerCmdArgs> trigger, bool force) { DateTime now = DateTime.Now; try { if (ItemMgr.Loaded) { trigger.Reply("Item definitions have already been loaded."); } else { trigger.Reply("Loading Items..."); ItemMgr.LoadAll(); trigger.Reply("Done."); } } catch (Exception ex) { this.FailNotify(trigger, ex); } try { if (NPCMgr.Loaded) { trigger.Reply("NPC definitions have already been loaded."); } else { trigger.Reply("Loading NPCs..."); NPCMgr.LoadNPCDefs(force); trigger.Reply("Done."); } } catch (Exception ex) { this.FailNotify(trigger, ex); } try { if (GOMgr.Loaded) { trigger.Reply("GO definitions have already been loaded."); } else { trigger.Reply("Loading GOs..."); GOMgr.LoadAll(); trigger.Reply("Done."); } } catch (Exception ex) { this.FailNotify(trigger, ex); } try { if (QuestMgr.Loaded) { trigger.Reply("Quest definitions have already been loaded."); } else { trigger.Reply("Loading Quests..."); QuestMgr.LoadAll(); trigger.Reply("Done."); } } catch (Exception ex) { this.FailNotify(trigger, ex); } try { if (Asda2LootMgr.Loaded) { trigger.Reply("Loot has already been loaded."); } else { trigger.Reply("Loading Loot..."); Asda2LootMgr.LoadAll(); trigger.Reply("Done."); } } catch (Exception ex) { this.FailNotify(trigger, ex); } trigger.Reply("All done - Loading took: " + (object)(DateTime.Now - now)); GC.Collect(2, GCCollectionMode.Optimized); if (!Map.AutoSpawnMaps) { return; } MapCommand.MapSpawnCommand.SpawnAllMaps(trigger); }