aboutsummaryrefslogtreecommitdiff
path: root/NorthstarDedicatedTest/masterserver.h
diff options
context:
space:
mode:
authorBobTheBob <32057864+BobTheBob9@users.noreply.github.com>2022-08-24 00:32:31 +0100
committerGitHub <noreply@github.com>2022-08-24 00:32:31 +0100
commitf9bc3c9d1834cb8bd5f872b749b057c33e8b0102 (patch)
treee96e2da0d95798dd42eddf644a82a74555db858f /NorthstarDedicatedTest/masterserver.h
parent812893d8219daa60f5b5b7fd22cbd6b175603399 (diff)
downloadNorthstarLauncher-f9bc3c9d1834cb8bd5f872b749b057c33e8b0102.tar.gz
NorthstarLauncher-f9bc3c9d1834cb8bd5f872b749b057c33e8b0102.zip
Adjust folder structure (#242)
* Adjust folder structure * change launcher directory name
Diffstat (limited to 'NorthstarDedicatedTest/masterserver.h')
-rw-r--r--NorthstarDedicatedTest/masterserver.h135
1 files changed, 0 insertions, 135 deletions
diff --git a/NorthstarDedicatedTest/masterserver.h b/NorthstarDedicatedTest/masterserver.h
deleted file mode 100644
index e4dcb954..00000000
--- a/NorthstarDedicatedTest/masterserver.h
+++ /dev/null
@@ -1,135 +0,0 @@
-#pragma once
-#include "convar.h"
-#include <winsock2.h>
-#include <string>
-#include <cstring>
-struct RemoteModInfo
-{
- public:
- std::string Name;
- std::string Version;
-};
-
-class RemoteServerInfo
-{
- public:
- char id[33]; // 32 bytes + nullterminator
-
- // server info
- char name[64];
- std::string description;
- char map[32];
- char playlist[16];
- std::vector<RemoteModInfo> requiredMods;
-
- int playerCount;
- int maxPlayers;
-
- // connection stuff
- bool requiresPassword;
-
- public:
- RemoteServerInfo(
- const char* newId,
- const char* newName,
- const char* newDescription,
- const char* newMap,
- const char* newPlaylist,
- int newPlayerCount,
- int newMaxPlayers,
- bool newRequiresPassword);
-};
-
-struct RemoteServerConnectionInfo
-{
- public:
- char authToken[32];
-
- in_addr ip;
- unsigned short port;
-};
-
-struct MainMenuPromoData
-{
- public:
- std::string newInfoTitle1;
- std::string newInfoTitle2;
- std::string newInfoTitle3;
-
- std::string largeButtonTitle;
- std::string largeButtonText;
- std::string largeButtonUrl;
- int largeButtonImageIndex;
-
- std::string smallButton1Title;
- std::string smallButton1Url;
- int smallButton1ImageIndex;
-
- std::string smallButton2Title;
- std::string smallButton2Url;
- int smallButton2ImageIndex;
-};
-
-class MasterServerManager
-{
- private:
- bool m_requestingServerList = false;
- bool m_authenticatingWithGameServer = false;
-
- public:
- char m_ownServerId[33];
- char m_ownServerAuthToken[33];
- char m_ownClientAuthToken[33];
-
- std::string m_ownModInfoJson;
- std::string ns_auth_srvName; // Unicode unescaped version of Cvar_ns_auth_servername for support in cjk characters
- std::string ns_auth_srvDesc; // Unicode unescaped version of Cvar_ns_auth_serverdesc for support in cjk characters
-
- bool m_bOriginAuthWithMasterServerDone = false;
- bool m_bOriginAuthWithMasterServerInProgress = false;
-
- bool m_bRequireClientAuth = false;
- bool m_savingPersistentData = false;
-
- bool m_scriptRequestingServerList = false;
- bool m_successfullyConnected = true;
-
- bool m_bNewgameAfterSelfAuth = false;
- bool m_scriptAuthenticatingWithGameServer = false;
- bool m_successfullyAuthenticatedWithGameServer = false;
-
- std::string s_authfail_reason {};
-
- bool m_hasPendingConnectionInfo = false;
- RemoteServerConnectionInfo m_pendingConnectionInfo;
-
- std::vector<RemoteServerInfo> m_remoteServers;
-
- bool m_bHasMainMenuPromoData = false;
- MainMenuPromoData m_MainMenuPromoData;
-
- private:
- void SetCommonHttpClientOptions(CURL* curl);
-
- public:
- MasterServerManager();
- void ClearServerList();
- void RequestServerList();
- void RequestMainMenuPromos();
- void AuthenticateOriginWithMasterServer(char* uid, char* originToken);
- void AuthenticateWithOwnServer(char* uid, char* playerToken);
- void AuthenticateWithServer(char* uid, char* playerToken, char* serverId, char* password);
- void
- AddSelfToServerList(int port, int authPort, char* name, char* description, char* map, char* playlist, int maxPlayers, char* password);
- void UpdateServerMapAndPlaylist(char* map, char* playlist, int playerCount);
- void UpdateServerPlayerCount(int playerCount);
- void WritePlayerPersistentData(char* playerId, char* pdata, size_t pdataSize);
- void RemoveSelfFromServerList();
-};
-std::string unescape_unicode(const std::string& str);
-void UpdateServerInfoFromUnicodeToUTF8();
-void InitialiseSharedMasterServer(HMODULE baseAddress);
-
-extern MasterServerManager* g_MasterServerManager;
-extern ConVar* Cvar_ns_masterserver_hostname;
-extern ConVar* Cvar_ns_server_password;