Example #1
0
        void FixedUpdate()
        {
            if (!Init)
            {
                if (masterServer.isConnected)
                {
                    Init                = true;
                    moduleManager       = masterServer.GetComponent <ModuleManager>();
                    authModule          = moduleManager.GetModule <ServerAuthentication>();
                    chatModule          = moduleManager.GetModule <ChatServer>();
                    masterSpawnerModule = moduleManager.GetModule <MasterSpawner>();
                    gameModule          = moduleManager.GetModule <ServerGameManager>();
                    matchModule         = moduleManager.GetModule <ServerMatchMaking>();
                }
                return;
            }

            spawnerCountText.text        = masterSpawnerModule.registeredSpawners.Count.ToString();
            gameCountText.text           = gameModule.registeredGameServers.Count.ToString();
            userCountText.text           = authModule.registeredUsers.Count.ToString();
            playersInQueueCountText.text = matchModule.playerQueue.Count.ToString();

            //Clear previous values
            activeGamesText.text = "";

            //Game Status
            foreach (GameContainer game in gameModule.registeredGameServers)
            {
                activeGamesText.text += game.UniqueId + " - " + game.NetworkAddress + ":" + game.NetworkPort + " - " + game.SceneName + " - " + game.CurrentPlayers + "/" + game.MaxPlayers + Environment.NewLine;
            }
        }
Example #2
0
        void Start()
        {
            PersistentDataPath = Application.persistentDataPath;
            IsServer           = NetworkOptions.StartServer;
            IsClient           = NetworkOptions.StartClient;
            var inst = Instance;

            if (!inst)
            {
                Debug.LogError("GameManager.Start: GameManager singleton instance is null!");
            }
            if (IsServer)
            {
                _serverManager = new ServerGameManager();
                _serverRunner  = new ServerThreadRunner();
                System.Threading.Thread.Sleep(10);                 //just in case
                var thread = new System.Threading.Thread(() => {
                    _serverRunner.Run(_serverManager, 50, 1000, new System.Threading.CancellationTokenSource());
                });
                thread.Start();
                System.Threading.Thread.Sleep(500);
                if (!_serverManager.Initialized)
                {
                    Debug.Log("not Initialized");
                    EventManager.Subscribe <OnServerInitializationFinished>(this, OnServerInitializationFinished);
                    return;
                }
            }
            System.Threading.Thread.Sleep(10);
            TryStartClient();
        }
Example #3
0
 private void Awake()
 {
     if (Instance == null)
     {
         Instance = this;
     }
 }
Example #4
0
    void Awake()
    {
        gameManager = this;
        Lootboxes   = new List <GameObject>();

        CreateAllLootbox();
    }
Example #5
0
        private void Start()
        {
            isBot = isServer && !isLocalPlayer;

            Debug.Log("Add server thrust limit to jetpack");
            gameManager = GameObject.Find("[ Game Manager ]").GetComponent <ServerGameManager>();
        }
Example #6
0
        public override void OnStartLocalPlayer()
        {
            base.OnStartLocalPlayer();

            gameManager = GameObject.Find("[ Game Manager ]").GetComponent <ServerGameManager>();

            gameObject.AddComponent <PlayerCursor>();
            CameraManager.Instance?.HandleNewCharacter(cameraTransform);

            // absolutely garbo team picking, can implement with ITeam later though
            if (gameManager.playersConnected % 2 == 1)
            {
                greenTeam = true;
                this.transform.position = gameManager.teamSpawns[0].position;
            }
            else
            {
                greenTeam = false;
                this.transform.position = gameManager.teamSpawns[1].position;
            }
            CmdSetTeam(greenTeam);

            InputHandler = new KBM();
            SendMessage("AssignInputs", InputHandler);
        }
Example #7
0
        void Start()
        {
            IsServer = NetworkOptions.StartServer;
            IsClient = NetworkOptions.StartClient;

            if (IsServer)
            {
                _serverManager = new ServerGameManager();
                _serverRunner  = new ServerThreadRunner();

                var thread = new System.Threading.Thread(() => {
                    _serverRunner.Run(_serverManager, 50, 1000, new System.Threading.CancellationTokenSource());
                });
                thread.Start();
                System.Threading.Thread.Sleep(50);
                if (!_serverManager.Initialized)
                {
                    Debug.Log("not Initialized");
                    EventManager.Subscribe <OnServerInitializationFinished>(this, OnServerInitializationFinished);
                    return;
                }
            }
            System.Threading.Thread.Sleep(10);
            TryStartClient();
            StartCoroutine(RareUpdate());
        }
Example #8
0
        private void Start()
        {
            // isBot = isServer && !isLocalPlayer;

            rb          = GetComponent <Rigidbody>();
            ani         = GetComponentInChildren <Animator>();
            gameManager = GameObject.Find("[ Game Manager ]").GetComponent <ServerGameManager>();
        }
Example #9
0
    private void StartGame()
    {
        if (Host) // "Connect to self" implies hosting
        {
            Debug.Log("HOSTING...");
            GameManager = new ServerGameManager();
        }

        StartCoroutine(DelayedJoin());
    }
Example #10
0
 // called second
 void OnSceneLoaded(Scene scene, LoadSceneMode mode)
 {
     if (GameManager != null)
     {
         Debug.Log("GAME MANAGER SHOULD BE NULL");
         GameManager.Dispose();
         GameManager = null;
     }
     if (scene.name.Equals(MainSceneName))
     {
         StartGame();
     }
 }
Example #11
0
    void Start()
    {
        serverNetworkManager = ServerNetworkManager.Instance;
        serverGameManager    = ServerGameManager.Instance;

        Entity.OnDeath         += HandleEntityDeath;
        Entity.OnDespawn       += HandleEntityDespawn;
        PlayerEvent.OnEventEnd += HandlePlayerEventEnd;

        //register any entities already existing in the scene (for dev/testing convenience)
        foreach (Entity entity in FindObjectsOfType <Entity>())
        {
            RegisterEntity(entity);
        }
    }
Example #12
0
        public void StartBot(bool isOnGreenTeam)
        {
            if (!isServer)
            {
                return;
            }

            navMeshAgent = GetComponent <NavMeshAgent>();

            gameManager = GameObject.Find("[ Game Manager ]").GetComponent <ServerGameManager>();
            greenTeam   = isOnGreenTeam;
            RpcSetTeam(isOnGreenTeam);
            InputHandler = new Inputs.Bot();
            SendMessage("AssignInputs", InputHandler);

            isBot = isServer && !isLocalPlayer;
            CreateStates();
        }
Example #13
0
        public void Run(ServerGameManager server, int tickTime, int rareTickTime, CancellationTokenSource cancellationTokenSource)
        {
            _cancellationTokenSource = cancellationTokenSource;
            var sw = new System.Diagnostics.Stopwatch();

            sw.Start();
            server.Create(tickTime / (float)1000);
            server.Init();
            server.PostInit();
            server.Load();
            Thread.Sleep(tickTime);
            server.PostLoad();

            var rareTickCount = rareTickTime / tickTime;

            sw.Stop();
            DebugOutput.Log($"Server initialization time: {sw.ElapsedMilliseconds} ms");
            Thread.Sleep(tickTime);
            int counter = 0;

            while (!_cancellationTokenSource.Token.IsCancellationRequested)
            {
                sw.Restart();
                server.UpdateControllers();
                server.LateUpdateControllers();
                counter++;
                if (counter >= rareTickCount)
                {
                    counter = 0;
                    server.RareUpdateControllers();
                }
                sw.Stop();
                var waitTime = tickTime - sw.ElapsedMilliseconds;
                if (waitTime < 0)
                {
                    waitTime = 0;
                }
                Thread.Sleep((int)waitTime);
            }

            server.Save();
            server.Reset();
        }
Example #14
0
        private void OnServerInitialized()
        {
            if (serverInitialized)
            {
                return;
            }

            Analytics.Collect();
            HoldfastExtension.ServerConsole();
            SteamGameServer.SetGameTags("modded,oxide");

            messageManager    = ServerComponentReferenceManager.ServerInstance.serverAdminBroadcastMessageManager;
            banManager        = ServerComponentReferenceManager.ServerInstance.serverBannedPlayersManager;
            serverConfig      = ServerConfigurationFileManager.CurrentConfigurationFile;
            connectionManager = ServerComponentReferenceManager.ServerInstance.serverConnectionManager;
            gameDetails       = ServerComponentReferenceManager.ServerInstance.serverGameManager.CreateGameDetailsFromConfigFile(0);
            gameManager       = ServerComponentReferenceManager.ServerInstance.serverGameManager;

            serverInitialized = true;
        }
Example #15
0
    private void Update()
    {
        if (!Init)
        {
            if (masterServer.isConnected)
            {
                Init                = true;
                moduleManager       = masterServer.GetComponent <ModuleManager>();
                authModule          = moduleManager.GetModule <ServerAuthentication>();
                chatModule          = moduleManager.GetModule <ChatServer>();
                masterSpawnerModule = moduleManager.GetModule <MasterSpawner>();
                gameModule          = moduleManager.GetModule <ServerGameManager>();
                matchModule         = moduleManager.GetModule <ServerMatchMaking>();
            }
            return;
        }

        spawnerCountText.text        = masterSpawnerModule.registeredSpawners.Count.ToString();
        gameCountText.text           = gameModule.registeredGameServers.Count.ToString();
        userCountText.text           = authModule.registeredUsers.Count.ToString();
        playersInQueueCountText.text = matchModule.playerQueue.Count.ToString();
        activeMatchesCountText.text  = matchModule.matchList.Count.ToString();
    }
Example #16
0
    void Start()
    {
        //isDead = false;
        spawnpoints       = GameObject.FindGameObjectsWithTag("spawnpoint");
        rb                = transform.GetComponent <Rigidbody>();
        bc                = transform.GetComponent <BoxCollider>();
        smr               = transform.GetChild(0).GetChild(1).GetComponent <SkinnedMeshRenderer>();
        pc                = transform.GetComponent <PlayerController>();
        cam               = transform.GetChild(1).gameObject;
        mmm               = GameObject.FindGameObjectWithTag("mainMenu").GetComponent <MainMenuManager>();
        servergamemanager = (ServerGameManager)GameObject.FindGameObjectWithTag("GameController").GetComponent <ServerGameManager>();

        if (!isLocalPlayer)
        {
            cam.SetActive(false);
            if (isDead == true)
            {
                smr.enabled = false;
            }
            namebar.GetComponent <TextMesh>().text = _username;
        }

        else
        {
            CmdPlayerJoined();
            setUsername();
            namebar.GetComponent <TextMesh>().text = _username;
        }



        if (isDead == false)
        {
            ComponentsLive();
            smr.enabled = true;
        }
    }
 public ServerLandGenerator(ServerGameManager owner) : base(owner)
 {
     _landGenerator = new UnityLandGenerator();
 }
Example #18
0
 public ServerPlayerEntityManager(ServerGameManager owner) : base(owner)
 {
 }
Example #19
0
 public ServerDynamicEntityController(ServerGameManager owner) : base(owner)
 {
 }
Example #20
0
 public ServerSaveLoadController(ServerGameManager owner) : base(owner)
 {
 }
Example #21
0
 public ServerChunkManager(ServerGameManager owner) : base(owner)
 {
 }
 void Awake()
 {
     sInstance = this;
 }
Example #23
0
 private void Start()
 {
     serverGameManager = ServerGameManager.Instance;
     clientGameManager = ClientGameManager.Instance;
 }
Example #24
0
 void Start()
 {
     gameManager = GameObject.Find("[ Game Manager ]").GetComponent <ServerGameManager>();
 }
 public ServerWorldStateController(ServerGameManager owner) : base(owner)
 {
 }
Example #26
0
 private void Awake()
 {
     GameManager = new ServerGameManager();
 }