// ====================================================================== // // ConsoleCommandParserServer.cpp // copyright (c) 2001 Sony Online Entertainment // // ====================================================================== #include "serverGame/FirstServerGame.h" #include "serverGame/ConsoleCommandParserServer.h" #include "serverGame/AiCombatPulseQueue.h" #include "serverGame/AiCreatureController.h" #include "serverGame/Chat.h" #include "serverGame/Client.h" #include "serverGame/CommoditiesMarket.h" #include "serverGame/ConfigServerGame.h" #include "serverGame/CreatureObject.h" #include "serverGame/FormManagerServer.h" #include "serverGame/GameServer.h" #include "serverGame/GroupObject.h" #include "serverGame/GuildObject.h" #include "serverGame/MessageToQueue.h" #include "serverGame/NameManager.h" #include "serverGame/PlanetObject.h" #include "serverGame/PlayerCreatureController.h" #include "serverGame/PlayerObject.h" #include "serverGame/PlayerSanityChecker.h" #include "serverGame/Region.h" #include "serverGame/RegionMaster.h" #include "serverGame/ServerBuildoutManager.h" #include "serverGame/ServerCommandTable.h" #include "serverGame/ServerMessageForwarding.h" #include "serverGame/ServerObject.h" #include "serverGame/ServerObjectTemplate.h" #include "serverGame/ServerUniverse.h" #include "serverGame/ServerWorld.h" #include "serverGame/TriggerVolume.h" #include "serverNetworkMessages/CentralGameServerMessages.h" #include "serverNetworkMessages/ChangeUniverseProcessMessage.h" #include "serverNetworkMessages/EnableNewJediTrackingMessage.h" #include "serverNetworkMessages/ExcommunicateGameServerMessage.h" #include "serverNetworkMessages/ProfilerOperationMessage.h" #include "serverNetworkMessages/ReleaseAuthoritativeMessage.h" #include "serverNetworkMessages/ReloadAdminTableMessage.h" #include "serverNetworkMessages/ReloadCommandTableMessage.h" #include "serverNetworkMessages/ReloadDatatableMessage.h" #include "serverNetworkMessages/RestartServerMessage.h" #include "serverNetworkMessages/SetConnectionServerPublic.h" #include "serverNetworkMessages/TransferRequestMoveValidation.h" #include "serverScript/GameScriptObject.h" #include "serverUtility/AdminAccountManager.h" #include "sharedDebug/DebugFlags.h" #include "sharedDebug/Profiler.h" #include "sharedFoundation/CalendarTime.h" #include "sharedFoundation/Clock.h" #include "sharedFoundation/FormattedString.h" #include "sharedGame/GameObjectTypes.h" #include "sharedGame/QuestManager.h" #include "sharedMath/Sphere.h" #include "sharedNetworkMessages/ConsoleChannelMessages.h" #include "sharedNetworkMessages/EnterStructurePlacementModeMessage.h" #include "sharedNetworkMessages/ErrorMessage.h" #include "sharedNetworkMessages/GenericValueTypeMessage.h" #include "sharedNetworkMessages/MessageRegionListCircleResponse.h" #include "sharedNetworkMessages/MessageRegionListRectResponse.h" #include "sharedNetworkMessages/WhoListMessage.h" #include "sharedObject/CachedNetworkId.h" #include "sharedObject/NetworkIdManager.h" #include "sharedObject/ObjectTemplateList.h" #include "sharedTerrain/TerrainObject.h" #include "sharedUtility/DataTable.h" #include "sharedUtility/DataTableManager.h" #include "serverUtility/FreeCtsDataTable.h" #include // ====================================================================== namespace ConsoleCommandParserServerNamespace { const char* const ms_testStructurePlacement = "testStructurePlacement"; } using namespace ConsoleCommandParserServerNamespace; // ====================================================================== static const CommandParser::CmdInfo cmds[] = { {"kill", 1, "<1: local, 2: planet, 3: cluster", "Shutdown the server, planet, or cluster immediately."}, {"shutdown", 3, " ", "Shutdown the cluster gracefully. System message will be broadcast to players each minute until has passed then all players will be disconnected and the database will perform a final save and shutdown. If time passes, cluster will shutdown without waiting any more."}, {"abortShutdown", 0, "", "abortShutdown"}, {"error", 1, "", "Display an error message."}, {"getPlanetId", 0, "[planet]", "Get the current obj_id of the planet for this server (or for the specified planet)."}, {"memUsage", 0, "", "Query memory usage statistics."}, {"memoryReport", 0, "", "Dump memory manager (call MemoryManager::report())."}, {"dumpMemToFile", 2, " ", "Dump memory report to file on server, can be called to dump all allocations or only known leaks."}, {"clock", 0, "", "Query clock statistics."}, {"releaseAuth", 1, "", "Release Authority for object with oid."}, {"showObjectSpheres", 0, "", "dump the server object sphere tree"}, {"showTriggerSpheres", 0, "", "dump the server trigger sphere tree"}, {"snapAllObjectsToTerrain", 0, "", "Snap all objects to the terrain"}, {"getSceneId", 0, "", "Get the name of the scene we are running in"}, {"setGodMode", 1, "<1 or 0>", "Set the client as god or not."}, {"reloadCommandTable", 0, "", "Reload the command table."}, {"reloadAdminTable", 0, "", "Reload the admin permissions table."}, {"reloadTable", 1, "", "Reload a given datatable."}, {"dataTableGetString", 3, "", "GetString from table."}, {"reloadTerrain", 0, "", "Reload the terrain"}, {"listRegions", 0, "[planet]", "Lists the regions for a planet"}, {"messageCount", 0, "", "Enumerate messages by name and count"}, {"setPublic", 1, "0 | 1", "Set the cluster public or non-public. The cluster is closed (private) if the first parameter is 0"}, {"profiler", 1, "> ", "modify profiler state"}, {"setFrameRateLimit", 1, "", "Set the maximum framerate the server will run at"}, {ms_testStructurePlacement, 1, "