203 sLog.Green(
" ServerInit",
"Loading Server Configuration Files.");
207 sLog.Error(
" ServerInit",
"ERROR: Loading server configuration '%s' failed.",
SRV_CONFIG_FILE );
208 std::cout << std::endl <<
"press any key to exit..."; std::cin.get();
234 sLog.Green(
" ServerInit",
"Log settings loaded from %s",
sConfig.files.logSettings.c_str() );
236 sLog.Warning(
" ServerInit",
"Unable to read %s (this file is optional)",
sConfig.files.logSettings.c_str() );
240 if (!
sConfig.files.logDir.empty()) {
242 std::string logFile =
sConfig.files.logDir +
"eve-server.log";
244 sLog.Green(
" ServerInit",
"Found log directory %s",
sConfig.files.logDir.c_str() );
246 sLog.Warning(
" ServerInit",
"Unable to find log directory '%s', only logging to the screen now.",
sConfig.files.logDir.c_str() );
251 sLog.Green(
" ServerInit",
"Server Configuration Files Loaded.");
254 sLog.Blue(
" ServerConfig",
"Main Loop Settings");
256 if (m_sleepTime == 10) {
257 sLog.Green(
" Loop Sleep Time",
"Default at 10ms.");
259 sLog.Error(
" Loop Sleep Time",
"**Be Careful With This Setting!**");
260 sLog.Warning(
" Loop Sleep Time",
"Changed from default 10ms to %ums.", m_sleepTime);
276 sLog.Blue(
" ServerConfig",
"World Switches");
277 if (
sConfig.world.saveOnMove) {
278 sLog.Green(
" Save on Move",
"Enabled.");
280 sLog.Warning(
" Save on Move",
"Disabled.");
282 if (
sConfig.world.saveOnUpdate) {
283 sLog.Green(
" Save on Update",
"Enabled.");
285 sLog.Warning(
" Save on Update",
"Disabled.");
287 if (
sConfig.world.StationDockDelay) {
288 sLog.Green(
" Docking Delay",
"Enabled.");
290 sLog.Warning(
" Docking Delay",
"Disabled.");
292 if (
sConfig.world.gridUnload) {
293 sLog.Green(
" Grid Unloading",
"Enabled. Grids will unload after %u seconds of inactivity.",
sConfig.world.gridUnloadTime);
295 sLog.Warning(
" Grid Unloading",
"Disabled.");
299 sLog.Blue(
" ServerConfig",
"Rate Modifiers");
300 if (
sConfig.rates.secRate != 1.0) {
301 sLog.Yellow(
" SecStatus",
"Modified at %.0f%%.", (
sConfig.rates.secRate *100) );
303 sLog.Green(
" SecStatus",
"Normal.");
305 if (
sConfig.rates.npcBountyMultiply != 1.0) {
306 sLog.Yellow(
" Bountys",
"Modified at %.0f%%.", (
sConfig.rates.npcBountyMultiply *100) );
308 sLog.Green(
" Bountys",
"Normal.");
310 if (
sConfig.rates.DropItem != 1) {
311 sLog.Yellow(
" Item Drops",
"Modified at %ux.",
sConfig.rates.DropItem );
313 sLog.Green(
" Item Drops",
"Normal.");
315 if (
sConfig.rates.DropSalvage != 1) {
316 sLog.Yellow(
" Salvage Drops",
"Modified at %ux.",
sConfig.rates.DropSalvage );
318 sLog.Green(
" Salvage Drops",
"Normal.");
320 if (
sConfig.rates.DropMoney != 1.0) {
321 sLog.Yellow(
" Isk Rewards",
"Modified at %.0f%%.", (
sConfig.rates.DropMoney *100) );
323 sLog.Green(
" Isk Rewards",
"Normal.");
325 if (
sConfig.rates.damageRate != 1.0) {
326 sLog.Yellow(
" All Damages",
"Modified at %.0f%%.", (
sConfig.rates.damageRate *100) );
328 sLog.Green(
" All Damages",
"Normal.");
330 if (
sConfig.rates.turretDamage != 1.0) {
331 sLog.Yellow(
" Turret Dmg",
"Modified at %.0f%%.", (
sConfig.rates.turretDamage *100) );
333 sLog.Green(
" Turret Dmg",
"Normal.");
335 if (
sConfig.rates.turretRoF != 1.0) {
336 sLog.Yellow(
" Turret ROF",
"Modified at %.0f%%.", (
sConfig.rates.turretRoF *100) );
338 sLog.Green(
" Turret ROF",
"Normal.");
340 if (
sConfig.rates.missileDamage != 1.0) {
341 sLog.Yellow(
" Missile Dmg",
"Modified at %.0f%%.", (
sConfig.rates.missileDamage *100) );
343 sLog.Green(
" Missile Dmg",
"Normal.");
345 if (
sConfig.rates.missileRoF != 1.0) {
346 sLog.Yellow(
" Missile ROF",
"Modified at %.0f%%.", (
sConfig.rates.missileRoF *100) );
348 sLog.Green(
" Missile ROF",
"Normal.");
350 if (
sConfig.rates.missileTime != 1.0) {
351 sLog.Yellow(
" Missile Time",
"Modified at %.0f%%.", (
sConfig.rates.missileTime *100) );
353 sLog.Green(
" Missile Time",
"Normal.");
356 sLog.Blue(
" ServerConfig",
"R.A.M. Rate Modifiers");
357 if (
sConfig.ram.ResPE != 1.0) {
358 sLog.Yellow(
" PE Research Time",
"Modified at %.0f%%.", (
sConfig.ram.ResPE *100) );
360 sLog.Green(
" PE Research Time",
"Normal.");
362 if (
sConfig.ram.ResME != 1.0) {
363 sLog.Yellow(
" ME Research Time",
"Modified at %.0f%%.", (
sConfig.ram.ResME *100) );
365 sLog.Green(
" ME Research Time",
"Normal.");
367 if (
sConfig.ram.MatMod != 1.0) {
368 sLog.Yellow(
"Material Modifier",
"Modified at %.0f%%.", (
sConfig.ram.MatMod *100) );
370 sLog.Green(
"Material Modifier",
"Normal.");
372 if (
sConfig.ram.CopyTime != 1.0) {
373 sLog.Yellow(
" Copy Time",
"Modified at %.0f%%.", (
sConfig.ram.CopyTime *100) );
375 sLog.Green(
" Copy Time",
"Normal.");
377 if (
sConfig.ram.ProdTime != 1.0) {
378 sLog.Yellow(
" Production Time",
"Modified at %.0f%%.", (
sConfig.ram.ProdTime *100) );
380 sLog.Green(
" Production Time",
"Normal.");
382 if (
sConfig.ram.InventTime != 1.0) {
383 sLog.Yellow(
" Invention Time",
"Modified at %.0f%%.", (
sConfig.ram.InventTime *100) );
385 sLog.Green(
" Invention Time",
"Normal.");
387 if (
sConfig.ram.ReTime != 1.0) {
388 sLog.Yellow(
" RE Time",
"Modified at %.0f%%.", (
sConfig.ram.ReTime *100) );
390 sLog.Green(
" RE Time",
"Normal.");
392 if (
sConfig.ram.WasteMod != 1.0) {
393 sLog.Yellow(
" Waste Modifier",
"Modified at %.0f%%.", (
sConfig.ram.WasteMod *100) );
395 sLog.Green(
" Waste Modifier",
"Normal.");
399 sLog.Blue(
" ServerConfig",
"Critical Hit Chances");
400 if (
sConfig.rates.PlayerCritChance != 0.02f) {
401 sLog.Yellow(
" Player",
"Modified at %.1f%%.", (
sConfig.rates.PlayerCritChance *100) );
403 sLog.Green(
" Player",
"Normal at 2%%.");
405 if (
sConfig.rates.NpcCritChance != 0.015f) {
406 sLog.Yellow(
" NPC",
"Modified at %.1f%%.", (
sConfig.rates.NpcCritChance *100) );
408 sLog.Green(
" NPC",
"Normal at 1.5%%.");
410 if (
sConfig.rates.SentryCritChance != 0.02f) {
411 sLog.Yellow(
" Sentry",
"Modified at %.1f%%.", (
sConfig.rates.SentryCritChance *100) );
413 sLog.Green(
" Sentry",
"Normal at 2%%.");
415 if (
sConfig.rates.DroneCritChance != 0.03f) {
416 sLog.Yellow(
" Drone",
"Modified at %.1f%%.", (
sConfig.rates.DroneCritChance *100) );
418 sLog.Green(
" Drone",
"Normal at 3%%.");
420 if (
sConfig.rates.ConcordCritChance != 0.05f) {
421 sLog.Yellow(
" Concord",
"Modified at %.1f%%.", (
sConfig.rates.ConcordCritChance *100) );
423 sLog.Green(
" Concord",
"Normal at 5%%.");
427 sLog.Blue(
" ServerConfig",
"Feature Switches");
429 sLog.Green(
" RAM AutoEvent",
"Enabled.");
431 sLog.Warning(
" RAM AutoEvent",
"Disabled.");
433 if (
sConfig.server.ModuleAutoOff) {
434 sLog.Green(
" Module Auto-Off",
"Enabled.");
436 sLog.Warning(
" Module Auto-Off",
"Disabled.");
438 if (
sConfig.server.AsteroidsOnDScan) {
439 sLog.Green(
" DScan Asteroids",
"Enabled.");
441 sLog.Warning(
" DScan Asteroids",
"Disabled.");
443 if (
sConfig.server.CargoMassAdditive) {
444 sLog.Green(
" Cargo Mass",
"Enabled.");
446 sLog.Warning(
" Cargo Mass",
"Disabled.");
448 if (
sConfig.cosmic.BumpEnabled) {
449 sLog.Green(
"Bumping Mechanics",
"Enabled.");
451 sLog.Warning(
"Bumping Mechanics",
"Disabled.");
453 if (
sConfig.server.LoadOldMissions) {
454 sLog.Green(
"Keep Old Missions",
"Enabled.");
456 sLog.Warning(
"Keep Old Missions",
"Disabled.");
458 if (
sConfig.testing.EnableDrones) {
459 sLog.Green(
" Player Drones",
"Enabled.");
461 sLog.Warning(
" Player Drones",
"Disabled.");
463 if (
sConfig.testing.ShipHeat) {
464 sLog.Green(
" Ship Heat",
"Enabled.");
466 sLog.Warning(
" Ship Heat",
"Disabled.");
468 if (
sConfig.cosmic.PIEnabled) {
469 sLog.Green(
" PI System",
"Enabled.");
471 sLog.Warning(
" PI System",
"Disabled.");
473 if (
sConfig.cosmic.AnomalyEnabled) {
474 sLog.Green(
" Anomaly System",
"Enabled.");
476 sLog.Warning(
" Anomaly System",
"Disabled.");
478 if (
sConfig.cosmic.DungeonEnabled) {
479 sLog.Green(
" Dungeon System",
"Enabled.");
481 sLog.Warning(
" Dungeon System",
"Disabled.");
483 if (
sConfig.cosmic.BeltEnabled) {
484 sLog.Green(
" Asteroid Belts",
"Enabled.");
486 sLog.Warning(
" Asteroid Belts",
"Disabled.");
488 if (
sConfig.npc.StaticSpawns) {
489 sLog.Green(
" Static Spawns",
"Enabled. Checks every %u minutes",
sConfig.npc.StaticTimer /60);
491 sLog.Warning(
" Static Spawns",
"Disabled.");
493 if (
sConfig.npc.RoamingSpawns) {
494 sLog.Green(
" Roaming Spawns",
"Enabled. Checks every %u minutes",
sConfig.npc.RoamingTimer /60);
496 sLog.Warning(
" Roaming Spawns",
"Disabled.");
499 sLog.Green(
" Spawns Enabled",
"Respawn timer checks every %u minutes",
sConfig.npc.RespawnTimer /60);
500 if (
sConfig.server.BountyPayoutDelayed) {
501 sLog.Green(
" Delayed Bounties",
"Delayed Bounties are Enabled. Loop runs every %u minutes",
sConfig.server.BountyPayoutTimer);
502 if (
sConfig.server.FleetShareDelayed) {
503 sLog.Green(
" Delayed Bounties",
"Delay for Fleet Bounty Sharing is Enabled.");
505 sLog.Warning(
" Delayed Bounties",
"Delay for Fleet Bounty Sharing is Disabled. Fleet Sharing of Bounties is immediate.");
508 sLog.Warning(
" Delayed Bounties",
"Delayed Bounties are Disabled. Bounty payouts are immediate.");
509 if (
sConfig.server.FleetShareDelayed) {
510 sLog.Warning(
" Delayed Bounties",
"Delayed Bounties are Disabled. Fleet Sharing of Bounties is immediate.");
512 sLog.Warning(
" Delayed Bounties",
"Delay for Fleet Bounty Sharing is Disabled. Fleet Sharing of Bounties is immediate.");
517 sLog.Blue(
" ServerConfig",
"Misc Switches");
518 if (
sConfig.server.ModuleDamageChance) {
519 sLog.Green(
" Module Damage",
"Enabled. Set to %i%% chance.", (
int8)(
sConfig.server.ModuleDamageChance *100));
521 sLog.Warning(
" Module Damage",
"Disabled.");
523 if (
sConfig.rates.WorldDecay) {
524 sLog.Green(
" Decay Timer",
"Enabled. Checks every %u minutes",
sConfig.rates.WorldDecay);
526 sLog.Warning(
" Decay Timer",
"Disabled.");
528 if (
sConfig.server.TraderJoe) {
529 sLog.Green(
" Market Bot Mgr",
"TraderJoe is Enabled.");
531 sLog.Green(
" ServerInit",
"Starting Market Bot Manager");
534 sLog.Warning(
" Market Bot Mgr",
"TraderJoe is Disabled.");
538 sLog.Blue(
" ServerConfig",
"Debug Switches");
539 if (
sConfig.debug.IsTestServer) {
540 sLog.Error(
" ServerConfig",
"Test Server Enabled");
542 sLog.Error(
" ServerConfig",
"Live Server Enabled");
544 if (
sConfig.debug.StackTrace) {
545 sLog.Warning(
" StackTrace",
"Enabled");
547 sLog.Warning(
" StackTrace",
"Disabled");
549 if (
sConfig.debug.UseProfiling) {
550 sLog.Green(
" Server Profiling",
"Enabled.");
553 sLog.Warning(
" Server Profiling",
"Disabled.");
556 sLog.Green(
" BeanCounting",
"Enabled.");
558 sLog.Warning(
" BeanCounting",
"Disabled.");
561 sLog.Warning(
" Spawn Test",
"Enabled.");
563 sLog.Warning(
" Spawn Test",
"Disabled.");
565 if (
sConfig.debug.BubbleTrack) {
566 sLog.Warning(
" Bubble Tracking",
"Enabled.");
568 sLog.Warning(
" Bubble Tracking",
"Disabled.");
570 if (
sConfig.debug.UseShipTracking) {
571 sLog.Warning(
" Ship Tracking",
"Enabled.");
573 sLog.Warning(
" Ship Tracking",
"Disabled.");
575 if (
sConfig.debug.PositionHack) {
576 sLog.Warning(
" Position Hack",
"Enabled.");
578 sLog.Warning(
" Position Hack",
"Disabled.");
585 sLog.Green(
" ServerInit",
"Starting TCP Server");
587 sLog.Blue(
" BaseTCPServer",
"TCP Server started on port %u.",
sConfig.net.port );
589 sLog.Error(
" BaseTCPServer",
"Error starting TCP Server: %s.", errbuf );
590 std::cout << std::endl <<
"press any key to exit..."; std::cin.get();
597 sLog.Green(
" ServerInit",
"Connecting to DataBase");
606 sConfig.database.autoReconnect,
611 std::cout << std::endl <<
"press any key to exit..."; std::cin.get();
621 sLog.Green(
" ServerInit",
"Starting Image Server");
627 sLog.Green(
" Threading",
"Starting Main Loop thread with ID 0x%X", pthread_self() );
632 sLog.Green(
" ServerInit",
"Loading server");
636 sLog.Green(
" ServerInit",
"Starting Item Factory");
639 sLog.Green(
" ServerInit",
"Starting Entity List");
642 sLog.Green(
" ServerInit",
"Starting Service Manager");
644 sLog.Blue(
" Service Manager",
"Service Manager Initialized.");
646 sLog.Green(
" ServerInit",
"Starting Command Dispatch Manager");
649 sLog.Blue(
" Command Dispatch",
"Command Dispatcher Initialized.");
651 sLog.Green(
" ServerInit",
"Starting Bubble Manager");
654 sLog.Green(
" ServerInit",
"Starting Standings Manager");
657 sLog.Green(
" ServerInit",
"Starting Fleet Services");
658 sFltSvc.Initialize(&pyServMgr);
660 sLog.Green(
" ServerInit",
"Starting Market Manager");
661 sMktMgr.Initialize(&pyServMgr);
662 sLog.Green(
" ServerInit",
"Starting Statistics Manager");
665 sLog.Green(
" ServerInit",
"Starting Console Manager");
666 sConsole.Initialize(&command_dispatcher);
669 sLog.Blue(
" ServerConfig",
"Cosmic Manager Settings");
670 if (
sConfig.cosmic.CiviliansEnabled) {
671 sLog.Green(
" Civilian Manager",
"Civilian Manager Enabled.");
673 sLog.Green(
" ServerInit",
"Starting Civilian Manager");
674 sCivMgr.Initialize(&pyServMgr);
676 sLog.Warning(
" Civilian Manager",
"Civilian Manager Disabled.");
678 if (
sConfig.cosmic.WormHoleEnabled) {
679 sLog.Green(
" Wormhole Manager",
"Wormhole Manager Enabled.");
681 sLog.Green(
" ServerInit",
"Starting Wormhole Manager");
682 sWHMgr.Initialize(&pyServMgr);
684 sLog.Warning(
" Wormhole Manager",
"Wormhole Manager Disabled.");
689 sLog.Green(
" ServerInit",
"Registering Service Managers.");
694 pyServMgr.RegisterService(
"account",
new AccountService(&pyServMgr));
695 pyServMgr.RegisterService(
"agentMgr",
new AgentMgrService(&pyServMgr));
697 pyServMgr.RegisterService(
"alert",
new AlertService(&pyServMgr));
698 pyServMgr.RegisterService(
"allianceRegistry",
new AllianceRegistry(&pyServMgr));
699 pyServMgr.RegisterService(
"authentication",
new AuthService(&pyServMgr));
700 pyServMgr.RegisterService(
"billMgr",
new BillMgr(&pyServMgr));
701 pyServMgr.RegisterService(
"beyonce",
new BeyonceService(&pyServMgr));
702 pyServMgr.RegisterService(
"bookmark",
new BookmarkService(&pyServMgr));
704 pyServMgr.RegisterService(
"bulkMgr",
new BulkMgrService(&pyServMgr));
705 pyServMgr.RegisterService(
"calendarProxy",
new CalendarProxy(&pyServMgr));
708 pyServMgr.RegisterService(
"charFittingMgr",
new CharFittingMgr(&pyServMgr));
710 pyServMgr.RegisterService(
"charMgr",
new CharMgrService(&pyServMgr));
711 pyServMgr.RegisterService(
"clientStatLogger",
new ClientStatLogger(&pyServMgr));
712 pyServMgr.RegisterService(
"clientStatsMgr",
new ClientStatsMgr(&pyServMgr));
713 pyServMgr.RegisterService(
"config",
new ConfigService(&pyServMgr));
714 pyServMgr.RegisterService(
"corpBookmarkMgr",
new CorpBookmarkMgr(&pyServMgr));
715 pyServMgr.RegisterService(
"corpFittingMgr",
new CorpFittingMgr(&pyServMgr));
716 pyServMgr.RegisterService(
"corpmgr",
new CorpMgrService(&pyServMgr));
719 pyServMgr.RegisterService(
"corpStationMgr",
new CorpStationMgr(&pyServMgr));
720 pyServMgr.RegisterService(
"contractMgr",
new ContractMgr(&pyServMgr));
721 pyServMgr.RegisterService(
"contractProxy",
new ContractProxy(&pyServMgr));
723 pyServMgr.RegisterService(
"dogmaIM",
new DogmaIMService(&pyServMgr));
724 pyServMgr.RegisterService(
"dogma",
new DogmaService(&pyServMgr));
726 pyServMgr.RegisterService(
"dungeon",
new DungeonService(&pyServMgr));
727 pyServMgr.RegisterService(
"entity",
new EntityService(&pyServMgr));
729 pyServMgr.RegisterService(
"factory",
new FactoryService(&pyServMgr));
730 pyServMgr.RegisterService(
"fleetMgr",
new FleetManager(&pyServMgr));
731 pyServMgr.RegisterService(
"fleetObjectHandler",
new FleetObject(&pyServMgr));
732 pyServMgr.RegisterService(
"fleetProxy",
new FleetProxy(&pyServMgr));
734 pyServMgr.RegisterService(
"devIndexManager",
new IndexManager(&pyServMgr));
735 pyServMgr.RegisterService(
"infoGatheringMgr",
new InfoGatheringMgr(&pyServMgr));
736 pyServMgr.RegisterService(
"insuranceSvc",
new InsuranceService(&pyServMgr));
738 pyServMgr.RegisterService(
"jumpCloneSvc",
new JumpCloneService(&pyServMgr));
739 pyServMgr.RegisterService(
"keeper",
new KeeperService(&pyServMgr));
740 pyServMgr.RegisterService(
"languageSvc",
new LanguageService(&pyServMgr));
742 pyServMgr.RegisterService(
"lookupSvc",
new LookupService(&pyServMgr));
743 pyServMgr.RegisterService(
"LPSvc",
new LPService(&pyServMgr));
744 pyServMgr.RegisterService(
"storeServer",
new LPStore(&pyServMgr));
745 pyServMgr.lsc_service =
new LSCService(&pyServMgr, &command_dispatcher);
746 pyServMgr.RegisterService(
"LSC", pyServMgr.lsc_service);
747 pyServMgr.RegisterService(
"machoNet",
new NetService(&pyServMgr));
748 pyServMgr.RegisterService(
"mailMgr",
new MailMgrService(&pyServMgr));
750 pyServMgr.RegisterService(
"map",
new MapService(&pyServMgr));
753 pyServMgr.RegisterService(
"movementServer",
new MovementService(&pyServMgr));
756 pyServMgr.RegisterService(
"objectCaching", pyServMgr.cache_service);
758 pyServMgr.RegisterService(
"paperDollServer",
new PaperDollService(&pyServMgr));
762 pyServMgr.RegisterService(
"planetOrbitalRegistryBroker",
new PlanetORB(&pyServMgr));
763 pyServMgr.RegisterService(
"posMgr",
new PosMgr(&pyServMgr));
764 pyServMgr.RegisterService(
"ramProxy",
new RamProxyService(&pyServMgr));
765 pyServMgr.RegisterService(
"repairSvc",
new RepairService(&pyServMgr));
767 pyServMgr.RegisterService(
"search",
new Search(&pyServMgr));
768 pyServMgr.RegisterService(
"scanMgr",
new ScanMgrService(&pyServMgr));
769 pyServMgr.RegisterService(
"ship",
new ShipService(&pyServMgr));
770 pyServMgr.RegisterService(
"skillMgr",
new SkillMgrService(&pyServMgr));
771 pyServMgr.RegisterService(
"slash",
new SlashService(&pyServMgr, &command_dispatcher));
773 pyServMgr.RegisterService(
"standing2",
new Standing(&pyServMgr));
774 pyServMgr.RegisterService(
"station",
new StationService(&pyServMgr));
775 pyServMgr.RegisterService(
"stationSvc",
new StationSvc(&pyServMgr));
776 pyServMgr.RegisterService(
"trademgr",
new TradeService(&pyServMgr));
777 pyServMgr.RegisterService(
"tutorialSvc",
new TutorialService(&pyServMgr));
778 pyServMgr.RegisterService(
"userSvc",
new UserService(&pyServMgr));
779 pyServMgr.RegisterService(
"voiceMgr",
new VoiceMgrService(&pyServMgr));
780 pyServMgr.RegisterService(
"voucher",
new VoucherService(&pyServMgr));
782 pyServMgr.RegisterService(
"wormholeMgr",
new WormHoleSvc(&pyServMgr));
784 pyServMgr.RegisterService(
"netStateServer",
new netStateServer(&pyServMgr));
785 pyServMgr.RegisterService(
"zActionServer",
new zActionServer(&pyServMgr));
786 pyServMgr.Initalize(startTime);
790 sLog.Yellow(
" ServerInit",
"Loading Static Database Table Objects...");
795 sLog.Green(
" ServerInit",
"Initializing BulkData");
796 if (
sConfig.server.BulkDataOD) {
797 sLog.Yellow(
" BulkDataMgr",
"PreLoading Disabled. BulkData will load on first call.");
803 sLog.Green(
" ServerInit",
"Loading Data Sets");
825 sLog.Green(
" ServerInit",
"Dynamic System Data Reset.");
870 if (
sConfig.debug.UseProfiling) {
875 sLog.Green(
" Server Profiling",
"Profile Data Reset.");
879 sLog.Blue(
" ServerInit",
"Server Initialized in %.3f Seconds.", (
GetTimeMSeconds() - profileStartTime) / 1000);
880 sLog.Error(
" ServerInit",
"Main Loop Starting.");
883 sLog.Green(
" ServerInit",
"EVEmu Server is Online.");
912 if (m_sleepTime > start)
913 std::this_thread::sleep_for(std::chrono::milliseconds(start));
925 sLog.Warning(
" ServerShutdown",
"Main loop has stopped." );
926 sLog.Error(
" ServerShutdown",
"EVEmu Server is Offline." );
931 sLog.Warning(
" ServerShutdown",
"TCP listener stopped." );
934 sLog.Warning(
" ServerShutdown",
"Image Server stopped." );
949 sLog.Warning(
" ServerShutdown",
"Saving Items." );
957 sLog.Warning(
" ServerShutdown",
"Shutting down Item Factory." );
962 command_dispatcher.Close();
966 sLog.Warning(
" ServerShutdown",
"Closing DataBase Connection." );
969 sLog.Warning(
" ServerShutdown",
"Shutting down Thread Manager." );
972 sLog.Warning(
" ServerShutdown",
"EVEmu is Offline.");
static const float POS_AI_Version
#define sConfig
A macro for easier access to the singleton.
static const float Config_Version
static const float Drone_AI_Version
static const float Sentry_AI_Version
static const float Scan_Version
static const void SetCurrentTime()
bool load_log_settings(const char *filename)
static const float Civilian_AI_Version
bool log_open_logfile(const char *filename)
static const uint16 MachoNetVersion
static const uint32 TCPCONN_ERRBUF_SIZE
#define sLog
Evaluates to a NewLog instance.
static void SetupSignals()
static const float Mission_Version
static const float Log_Version
EVE derivation of TCP connection.
static const char *const EVEProjectVersion
static void SystemStartup()
static const double EVEVersionNumber
const std::string currentDateTime()
static const int32 EVEBuildVersion
void Close()
Stops started listening.
bool Open(uint16 port, char *errbuf=0)
Start listening on specified port.
static volatile bool m_run
static const char *const SRV_CONFIG_FILE
void RegisterAllCommands(CommandDispatcher &into)
X * PopConnection()
Pops connection from queue.
static const float Joe_Version
Deals with character image stuff.
Handles everything related to creating, deleting and selecting a character.
static const char *const EVEMU_REVISION
static void SetServerOnlineStatus(bool online=false)
static const char *const EVEMU_BUILD_DATE
EVE derivation of TCP server.
static const float NPC_AI_Version