Beispiel #1
0
        public void Init()
        {
            CharacterPrefab.LoadAll();
            MissionPrefab.Init();
            TraitorMissionPrefab.Init();
            MapEntityPrefab.Init();
            MapGenerationParams.Init();
            LevelGenerationParams.LoadPresets();
            ScriptedEventSet.LoadPrefabs();
            Order.Init();
            EventManagerSettings.Init();

            AfflictionPrefab.LoadAll(GetFilesOfType(ContentType.Afflictions));
            SkillSettings.Load(GetFilesOfType(ContentType.SkillSettings));
            StructurePrefab.LoadAll(GetFilesOfType(ContentType.Structure));
            ItemPrefab.LoadAll(GetFilesOfType(ContentType.Item));
            JobPrefab.LoadAll(GetFilesOfType(ContentType.Jobs));
            CorpsePrefab.LoadAll(GetFilesOfType(ContentType.Corpses));
            NPCConversation.LoadAll(GetFilesOfType(ContentType.NPCConversations));
            ItemAssemblyPrefab.LoadAll();
            LevelObjectPrefab.LoadAll();

            GameModePreset.Init();
            LocationType.Init();

            SubmarineInfo.RefreshSavedSubs();

            Screen.SelectNull();

            NetLobbyScreen = new NetLobbyScreen();

            CheckContentPackage();
        }
Beispiel #2
0
        public void Init()
        {
            MissionPrefab.Init();
            MapEntityPrefab.Init();
            MapGenerationParams.Init();
            LevelGenerationParams.LoadPresets();
            ScriptedEventSet.LoadPrefabs();

            AfflictionPrefab.LoadAll(GetFilesOfType(ContentType.Afflictions));
            StructurePrefab.LoadAll(GetFilesOfType(ContentType.Structure));
            ItemPrefab.LoadAll(GetFilesOfType(ContentType.Item));
            JobPrefab.LoadAll(GetFilesOfType(ContentType.Jobs));
            ItemAssemblyPrefab.LoadAll();
            NPCConversation.LoadAll(GetFilesOfType(ContentType.NPCConversations));
            ItemAssemblyPrefab.LoadAll();
            LevelObjectPrefab.LoadAll();

            GameModePreset.Init();
            LocationType.Init();

            Submarine.RefreshSavedSubs();

            Screen.SelectNull();

            NetLobbyScreen = new NetLobbyScreen();

            CheckContentPackage();
        }
Beispiel #3
0
        //NilMod Autoserver start code
        public void Autostart()
        {
            if (!NilMod.Skippedtoserver)
            {
                waitForKeyHit           = false;
                NilMod.Skippedtoserver  = true;
                GameMain.NetLobbyScreen = new NetLobbyScreen();

                try
                {
                    GameMain.NetworkMember = new GameServer(GameMain.NilMod.ServerName,
                                                            GameMain.NilMod.ServerPort,
                                                            GameMain.NilMod.PublicServer,
                                                            GameMain.NilMod.UseServerPassword ? "" : GameMain.NilMod.ServerPassword,
                                                            GameMain.NilMod.UPNPForwarding,
                                                            GameMain.NilMod.MaxPlayers);
                }

                catch (Exception e)
                {
                    DebugConsole.ThrowError("Failed to start server", e);
                }

                GameMain.NetLobbyScreen.IsServer = true;
                GameMain.NetLobbyScreen.DefaultServerStartup();
                waitForKeyHit = false;
            }
        }
Beispiel #4
0
        //Refresh the entire server
        public void AutoRestartServer(string name, int port, bool isPublic, string password, bool attemptUPnP, int maxPlayers, Lidgren.Network.NetServer prevserver = null, Lidgren.Network.NetPeerConfiguration prevconfig = null)
        {
            List <Client> PreviousClients = new List <Client>(GameMain.Server.ConnectedClients);
            ushort        LastUpdateID    = GameMain.NetLobbyScreen.LastUpdateID += 1;

            Server.DisconnectRestart();
            Server = null;

            Config = new GameSettings("config.xml");
            if (Config.WasGameUpdated)
            {
                UpdaterUtil.CleanOldFiles();
                Config.WasGameUpdated = false;
                Config.Save("config.xml");
            }

            NilMod = new NilMod();
            NilMod.Load(false);

            NilMod.NilModVPNBanlist = new VPNBanlist();
            NilMod.NilModVPNBanlist.LoadVPNBans();

            GameScreen = new GameScreen();

            //Init();

            Submarine.RefreshSavedSubs();

            Screen.SelectNull();

            NetLobbyScreen = new NetLobbyScreen();

            NetLobbyScreen.ServerName = GameMain.NilMod.ServerName;

            Server = new GameServer(name,
                                    port,
                                    isPublic,
                                    password,
                                    attemptUPnP,
                                    maxPlayers,
                                    prevserver,
                                    prevconfig);

            DefaultServerStartup();

            Timing.Accumulator = 0.0;
            stopwatch.Stop();
            stopwatch = Stopwatch.StartNew();
            prevTicks = stopwatch.ElapsedTicks;

            GameMain.Server.AddRestartClients(PreviousClients, LastUpdateID);
        }
Beispiel #5
0
        public void Init()
        {
            NPCSet.LoadSets();
            FactionPrefab.LoadFactions();
            CharacterPrefab.LoadAll();
            MissionPrefab.Init();
            TraitorMissionPrefab.Init();
            MapEntityPrefab.Init();
            MapGenerationParams.Init();
            LevelGenerationParams.LoadPresets();
            CaveGenerationParams.LoadPresets();
            OutpostGenerationParams.LoadPresets();
            EventSet.LoadPrefabs();
            Order.Init();
            EventManagerSettings.Init();
            ItemPrefab.LoadAll(GetFilesOfType(ContentType.Item));
            AfflictionPrefab.LoadAll(GetFilesOfType(ContentType.Afflictions));
            SkillSettings.Load(GetFilesOfType(ContentType.SkillSettings));
            StructurePrefab.LoadAll(GetFilesOfType(ContentType.Structure));
            UpgradePrefab.LoadAll(GetFilesOfType(ContentType.UpgradeModules));
            JobPrefab.LoadAll(GetFilesOfType(ContentType.Jobs));
            CorpsePrefab.LoadAll(GetFilesOfType(ContentType.Corpses));
            NPCConversation.LoadAll(GetFilesOfType(ContentType.NPCConversations));
            ItemAssemblyPrefab.LoadAll();
            LevelObjectPrefab.LoadAll();
            BallastFloraPrefab.LoadAll(GetFilesOfType(ContentType.MapCreature));
            TalentPrefab.LoadAll(GetFilesOfType(ContentType.Talents));
            TalentTree.LoadAll(GetFilesOfType(ContentType.TalentTrees));

            GameModePreset.Init();
            DecalManager = new DecalManager();
            LocationType.Init();

            SubmarineInfo.RefreshSavedSubs();

            Screen.SelectNull();

            NetLobbyScreen = new NetLobbyScreen();

            CheckContentPackage();
        }
Beispiel #6
0
        public void AutoRestartServer(string name, int port, bool isPublic, string password, bool attemptUPnP, int maxPlayers, Lidgren.Network.NetServer prevserver = null, Lidgren.Network.NetPeerConfiguration prevconfig = null)
        {
            if (Server == null)
            {
                return;
            }
            List <Client> PreviousClients = new List <Client>(GameMain.Server.ConnectedClients);
            ushort        LastUpdateID    = GameMain.NetLobbyScreen.LastUpdateID += 1;

            GameMain.Server.DisconnectRestart();
            GameMain.NetworkMember = null;

            waitForKeyHit           = false;
            NilMod.Skippedtoserver  = true;
            GameMain.NetLobbyScreen = new NetLobbyScreen();

            try
            {
                GameMain.NetworkMember = new GameServer(name,
                                                        port,
                                                        isPublic,
                                                        password,
                                                        attemptUPnP,
                                                        maxPlayers,
                                                        prevserver,
                                                        prevconfig);
            }
            catch (Exception e)
            {
                DebugConsole.ThrowError("Failed to start server", e);
            }

            GameMain.NetLobbyScreen.IsServer = true;
            GameMain.NetLobbyScreen.DefaultServerStartup();
            waitForKeyHit = false;

            if (GameMain.Server != null)
            {
                GameMain.Server.AddRestartClients(PreviousClients, LastUpdateID);
            }
        }
Beispiel #7
0
        public void Init()
        {
            Mission.Init();
            MapEntityPrefab.Init();
            LevelGenerationParams.LoadPresets();

            JobPrefab.LoadAll(SelectedPackage.GetFilesOfType(ContentType.Jobs));
            StructurePrefab.LoadAll(SelectedPackage.GetFilesOfType(ContentType.Structure));

            ItemPrefab.LoadAll(SelectedPackage.GetFilesOfType(ContentType.Item));

            GameModePreset.Init();

            LocationType.Init();

            Submarine.RefreshSavedSubs();

            Screen.SelectNull();

            NetLobbyScreen = new NetLobbyScreen();
        }