s->RegisterFunction("SDKNativeTest","Script_SDKNativeTest","Native SERVER test function","void","",&VScriptCode::SHARED::SDKNativeTest);
s->RegisterFunction("GetSDKVersion","Script_GetSDKVersion","Gets the SDK version as a string","string","",&VScriptCode::SHARED::GetSDKVersion);
s->RegisterFunction("GetNumHumanPlayers","Script_GetNumHumanPlayers","Gets the number of human players on the server","int","",&VScriptCode::SERVER::GetNumHumanPlayers);
s->RegisterFunction("GetNumFakeClients","Script_GetNumFakeClients","Gets the number of bot players on the server","int","",&VScriptCode::SERVER::GetNumFakeClients);
s->RegisterFunction("GetAvailableMaps","Script_GetAvailableMaps","Gets an array of all available maps","array< string >","",&VScriptCode::SHARED::GetAvailableMaps);
s->RegisterFunction("GetAvailablePlaylists","Script_GetAvailablePlaylists","Gets an array of all available playlists","array< string >","",&VScriptCode::SHARED::GetAvailablePlaylists);
s->RegisterFunction("KickPlayerByName","Script_KickPlayerByName","Kicks a player from the server by name","void","string, string",&VScriptCode::SHARED::KickPlayerByName);
s->RegisterFunction("KickPlayerById","Script_KickPlayerById","Kicks a player from the server by handle or nucleus id","void","string, string",&VScriptCode::SHARED::KickPlayerById);
s->RegisterFunction("BanPlayerByName","Script_BanPlayerByName","Bans a player from the server by name","void","string",&VScriptCode::SHARED::BanPlayerByName);
s->RegisterFunction("BanPlayerById","Script_BanPlayerById","Bans a player from the server by handle or nucleus id","void","string, string",&VScriptCode::SHARED::BanPlayerById);
s->RegisterFunction("UnbanPlayer","Script_UnbanPlayer","Unbans a player from the server by nucleus id or ip address","void","string, string",&VScriptCode::SHARED::UnbanPlayer);
s->RegisterFunction("SDKNativeTest","Script_SDKNativeTest","Native CLIENT test function","void","",&VScriptCode::SHARED::SDKNativeTest);
s->RegisterFunction("GetSDKVersion","Script_GetSDKVersion","Gets the SDK version as a string","string","",&VScriptCode::SHARED::GetSDKVersion);
s->RegisterFunction("GetAvailableMaps","Script_GetAvailableMaps","Gets an array of all available maps","array< string >","",&VScriptCode::SHARED::GetAvailableMaps);
s->RegisterFunction("GetAvailablePlaylists","Script_GetAvailablePlaylists","Gets an array of all available playlists","array< string >","",&VScriptCode::SHARED::GetAvailablePlaylists);
s->RegisterFunction("ShutdownHostGame","Script_ShutdownHostGame","Shuts the local host game down","void","",&VScriptCode::SHARED::ShutdownHostGame);
s->RegisterFunction("IsClientDLL","Script_IsClientDLL","Returns whether this build is client only","bool","",&VScriptCode::SHARED::IsClientDLL);
s->RegisterFunction("SDKNativeTest","Script_SDKNativeTest","Native UI test function","void","",&VScriptCode::SHARED::SDKNativeTest);
s->RegisterFunction("GetSDKVersion","Script_GetSDKVersion","Gets the SDK version as a string","string","",&VScriptCode::SHARED::GetSDKVersion);
s->RegisterFunction("RefreshServerList","Script_RefreshServerList","Refreshes the public server list and returns the count","int","",&VScriptCode::UI::RefreshServerCount);
// Functions for retrieving server browser data
s->RegisterFunction("GetServerName","Script_GetServerName","Gets the name of the server at the specified index of the server list","string","int",&VScriptCode::UI::GetServerName);
s->RegisterFunction("GetServerDescription","Script_GetServerDescription","Gets the description of the server at the specified index of the server list","string","int",&VScriptCode::UI::GetServerDescription);
s->RegisterFunction("GetServerMap","Script_GetServerMap","Gets the map of the server at the specified index of the server list","string","int",&VScriptCode::UI::GetServerMap);
s->RegisterFunction("GetServerPlaylist","Script_GetServerPlaylist","Gets the playlist of the server at the specified index of the server list","string","int",&VScriptCode::UI::GetServerPlaylist);
s->RegisterFunction("GetServerCurrentPlayers","Script_GetServerCurrentPlayers","Gets the current player count of the server at the specified index of the server list","int","int",&VScriptCode::UI::GetServerCurrentPlayers);
s->RegisterFunction("GetServerMaxPlayers","Script_GetServerMaxPlayers","Gets the max player count of the server at the specified index of the server list","int","int",&VScriptCode::UI::GetServerMaxPlayers);
s->RegisterFunction("GetServerCount","Script_GetServerCount","Gets the number of public servers","int","",&VScriptCode::UI::GetServerCount);
// Misc main menu functions
s->RegisterFunction("GetPromoData","Script_GetPromoData","Gets promo data for specified slot type","string","int",&VScriptCode::UI::GetPromoData);
// Functions for creating servers
s->RegisterFunction("CreateServer","Script_CreateServer","Starts server with the specified settings","void","string, string, string, string, int",&VScriptCode::UI::CreateServer);
s->RegisterFunction("IsServerActive","Script_IsServerActive","Returns whether the server is active","bool","",&VScriptCode::SHARED::IsServerActive);
// Functions for connecting to servers
s->RegisterFunction("ConnectToServer","Script_ConnectToServer","Joins server by ip address and encryption key","void","string, string",&VScriptCode::UI::ConnectToServer);
s->RegisterFunction("ConnectToListedServer","Script_ConnectToListedServer","Joins listed server by index","void","int",&VScriptCode::UI::ConnectToListedServer);
s->RegisterFunction("ConnectToHiddenServer","Script_ConnectToHiddenServer","Joins hidden server by token","void","string",&VScriptCode::UI::ConnectToHiddenServer);
s->RegisterFunction("GetHiddenServerName","Script_GetHiddenServerName","Gets hidden server name by token","string","string",&VScriptCode::UI::GetHiddenServerName);
s->RegisterFunction("GetAvailableMaps","Script_GetAvailableMaps","Gets an array of all available maps","array< string >","",&VScriptCode::SHARED::GetAvailableMaps);
s->RegisterFunction("GetAvailablePlaylists","Script_GetAvailablePlaylists","Gets an array of all available playlists","array< string >","",&VScriptCode::SHARED::GetAvailablePlaylists);
s->RegisterFunction("KickPlayerByName","Script_KickPlayerByName","Kicks a player from the server by name","void","string",&VScriptCode::SHARED::KickPlayerByName);
s->RegisterFunction("KickPlayerById","Script_KickPlayerById","Kicks a player from the server by handle or nucleus id","void","string",&VScriptCode::SHARED::KickPlayerById);
s->RegisterFunction("BanPlayerByName","Script_BanPlayerByName","Bans a player from the server by name","void","string",&VScriptCode::SHARED::BanPlayerByName);
s->RegisterFunction("BanPlayerById","Script_BanPlayerById","Bans a player from the server by handle or nucleus id","void","string",&VScriptCode::SHARED::BanPlayerById);
s->RegisterFunction("UnbanPlayer","Script_UnbanPlayer","Unbans a player from the server by nucleus id or ip address","void","string",&VScriptCode::SHARED::UnbanPlayer);