From 0923f83fdaf51c0e865fc3484ae10b2a3719cbe4 Mon Sep 17 00:00:00 2001 From: Causeless Date: Sun, 31 Aug 2025 17:24:39 +0100 Subject: [PATCH 1/4] Removed multiplayer UI --- CHANGELOG.md | 2 ++ Data/Base.rte/GUIs/MainMenuGUI.ini | 27 +++++++-------------------- Data/Base.rte/Scenes.ini | 5 ----- Source/Menus/MainMenuGUI.cpp | 4 ---- Source/Menus/MainMenuGUI.h | 1 - Source/System/GameVersion.h | 2 +- 6 files changed, 10 insertions(+), 31 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 6650f99d02..d44349e97d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -260,6 +260,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
Removed +- Removed multiplayer. The existing multiplayer implementation was awful and broken, and can be done better with multiple keyboard+mouse support plus an external client like Parsec or Steam Remote Play Together. + - All music-related functionality from AudioMan has been removed due to the addition of the MusicMan. Generic DynamicSongs have been put in to use instead. Mod activities that used to queue up all the vanilla music should now instead call, for example, `MusicMan:PlayDynamicSong("Generic Battle Music")` diff --git a/Data/Base.rte/GUIs/MainMenuGUI.ini b/Data/Base.rte/GUIs/MainMenuGUI.ini index 2ffc484363..eeddec1a55 100644 --- a/Data/Base.rte/GUIs/MainMenuGUI.ini +++ b/Data/Base.rte/GUIs/MainMenuGUI.ini @@ -57,24 +57,11 @@ Name = ButtonMainToSkirmish Anchor = Left, Top Text = Scenario Battle -[ButtonMainToMultiplayer] -ControlType = BUTTON -Parent = MainScreen -X = 0 -Y = 40 -Width = 240 -Height = 20 -Visible = True -Enabled = True -Name = ButtonMainToMultiplayer -Anchor = Left, Top -Text = Online Multiplayer - [ButtonSaveOrLoadGame] ControlType = BUTTON Parent = MainScreen X = 0 -Y = 60 +Y = 40 Width = 240 Height = 20 Visible = True @@ -87,7 +74,7 @@ Text = Saved Games ControlType = BUTTON Parent = MainScreen X = 0 -Y = 80 +Y = 60 Width = 110 Height = 20 Visible = True @@ -100,7 +87,7 @@ Text = Settings ControlType = BUTTON Parent = MainScreen X = 0 -Y = 100 +Y = 80 Width = 160 Height = 20 Visible = True @@ -113,7 +100,7 @@ Text = Mod Manager ControlType = BUTTON Parent = MainScreen X = 0 -Y = 120 +Y = 100 Width = 170 Height = 20 Visible = True @@ -126,7 +113,7 @@ Text = Game Editors ControlType = BUTTON Parent = MainScreen X = 0 -Y = 140 +Y = 120 Width = 100 Height = 20 Visible = True @@ -139,7 +126,7 @@ Text = Credits ControlType = BUTTON Parent = MainScreen X = 0 -Y = 160 +Y = 140 Width = 55 Height = 20 Visible = True @@ -152,7 +139,7 @@ Text = Exit ControlType = BUTTON Parent = MainScreen X = 0 -Y = 180 +Y = 160 Width = 200 Height = 20 Visible = True diff --git a/Data/Base.rte/Scenes.ini b/Data/Base.rte/Scenes.ini index abb7c79a24..57ee659c58 100644 --- a/Data/Base.rte/Scenes.ini +++ b/Data/Base.rte/Scenes.ini @@ -346,11 +346,6 @@ AddScene = Scene PresetName = Editor Scene -AddScene = Scene - CopyOf = Null Scene - PresetName = Multiplayer Scene - - /////////////////////////////////////////////////////////////////////// // Scenes diff --git a/Source/Menus/MainMenuGUI.cpp b/Source/Menus/MainMenuGUI.cpp index 682b399683..31671560e9 100644 --- a/Source/Menus/MainMenuGUI.cpp +++ b/Source/Menus/MainMenuGUI.cpp @@ -92,7 +92,6 @@ void MainMenuGUI::CreateMainScreen() { m_MainMenuButtons[MenuButton::MetaGameButton] = dynamic_cast(m_MainMenuScreenGUIControlManager->GetControl("ButtonMainToMetaGame")); m_MainMenuButtons[MenuButton::ScenarioButton] = dynamic_cast(m_MainMenuScreenGUIControlManager->GetControl("ButtonMainToSkirmish")); - m_MainMenuButtons[MenuButton::MultiplayerButton] = dynamic_cast(m_MainMenuScreenGUIControlManager->GetControl("ButtonMainToMultiplayer")); m_MainMenuButtons[MenuButton::SaveOrLoadGameButton] = dynamic_cast(m_MainMenuScreenGUIControlManager->GetControl("ButtonSaveOrLoadGame")); m_MainMenuButtons[MenuButton::SettingsButton] = dynamic_cast(m_MainMenuScreenGUIControlManager->GetControl("ButtonMainToOptions")); m_MainMenuButtons[MenuButton::ModManagerButton] = dynamic_cast(m_MainMenuScreenGUIControlManager->GetControl("ButtonMainToModManager")); @@ -423,9 +422,6 @@ void MainMenuGUI::HandleMainScreenInputEvents(const GUIControl* guiEventControl) } } else if (guiEventControl == m_MainMenuButtons[MenuButton::ScenarioButton]) { m_UpdateResult = MainMenuUpdateResult::ScenarioStarted; - } else if (guiEventControl == m_MainMenuButtons[MenuButton::MultiplayerButton]) { - m_UpdateResult = MainMenuUpdateResult::ActivityStarted; - g_GUISound.BackButtonPressSound()->Play(); } else if (guiEventControl == m_MainMenuButtons[MenuButton::SaveOrLoadGameButton]) { SetActiveMenuScreen(MenuScreen::SaveOrLoadGameScreen); } else if (guiEventControl == m_MainMenuButtons[MenuButton::SettingsButton]) { diff --git a/Source/Menus/MainMenuGUI.h b/Source/Menus/MainMenuGUI.h index cbeca3ddff..c56c51e8e7 100644 --- a/Source/Menus/MainMenuGUI.h +++ b/Source/Menus/MainMenuGUI.h @@ -74,7 +74,6 @@ namespace RTE { enum MenuButton { MetaGameButton, ScenarioButton, - MultiplayerButton, SaveOrLoadGameButton, SettingsButton, ModManagerButton, diff --git a/Source/System/GameVersion.h b/Source/System/GameVersion.h index f1317476b5..fb7f725276 100644 --- a/Source/System/GameVersion.h +++ b/Source/System/GameVersion.h @@ -5,7 +5,7 @@ namespace RTE { #pragma region Game Version - static constexpr const char* c_VersionString = "6.2.2"; + static constexpr const char* c_VersionString = "7.0.0"; static const version::Semver200_version c_GameVersion = version::Semver200_version(c_VersionString); #pragma endregion } // namespace RTE From 7acb61e6108c8f82b9b897b88fdf66a2407ad4d1 Mon Sep 17 00:00:00 2001 From: Causeless Date: Sun, 31 Aug 2025 17:27:55 +0100 Subject: [PATCH 2/4] Updated changelog --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index d44349e97d..57cce0aa4e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -260,7 +260,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
Removed -- Removed multiplayer. The existing multiplayer implementation was awful and broken, and can be done better with multiple keyboard+mouse support plus an external client like Parsec or Steam Remote Play Together. +- Removed multiplayer. The existing multiplayer implementation was terrible and broken, and can be done better with multiple keyboard+mouse support plus an external client like Parsec or Steam Remote Play Together. In future, we will investigate whether it's feasible to build in a proper and more capable multiplayer solution. - All music-related functionality from AudioMan has been removed due to the addition of the MusicMan. Generic DynamicSongs have been put in to use instead. Mod activities that used to queue up all the vanilla music should now instead call, for example, `MusicMan:PlayDynamicSong("Generic Battle Music")` From f48e38b5c3c6c3fe2177a936bcfe207a0c1133fc Mon Sep 17 00:00:00 2001 From: Causeless Date: Sun, 31 Aug 2025 17:28:25 +0100 Subject: [PATCH 3/4] Additional space --- CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 57cce0aa4e..2b1f294161 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -268,7 +268,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - The Signal Hunt activity no longer has a preview image, as it was not formatted correctly and spoiled the interior structure of the cave. - Removed `GAScripted` Lua script method `SceneTest()` as the new Lua function `IsCompatibleScene(scene)` is more capable. - Removed `GAScripted` C++ functionality that would scan the Lua script file to determine which areas are required. `AddRequiredArea` in the INI should be used instead. + Removed `GAScripted` C++ functionality that would scan the Lua script file to determine which areas are required. `AddRequiredArea` in the INI should be used instead. Removed `Scene` Lua function `GetOptionalArea` as it functioned identically to `GetArea` aside from triggering the aforementioned (and now removed) Lua script file scanning. - Removed `AHuman` property `MaxCrouchRotation`. `CrouchRotAngleTarget` is now used instead. From 51b5af7a29f775f7e7a8d7520291132758ac5469 Mon Sep 17 00:00:00 2001 From: Causeless Date: Sun, 31 Aug 2025 17:28:43 +0100 Subject: [PATCH 4/4] Proper newline spacing --- CHANGELOG.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 2b1f294161..b83b7fd33f 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -267,8 +267,8 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - The Signal Hunt activity no longer has a preview image, as it was not formatted correctly and spoiled the interior structure of the cave. -- Removed `GAScripted` Lua script method `SceneTest()` as the new Lua function `IsCompatibleScene(scene)` is more capable. - Removed `GAScripted` C++ functionality that would scan the Lua script file to determine which areas are required. `AddRequiredArea` in the INI should be used instead. +- Removed `GAScripted` Lua script method `SceneTest()` as the new Lua function `IsCompatibleScene(scene)` is more capable. + Removed `GAScripted` C++ functionality that would scan the Lua script file to determine which areas are required. `AddRequiredArea` in the INI should be used instead. Removed `Scene` Lua function `GetOptionalArea` as it functioned identically to `GetArea` aside from triggering the aforementioned (and now removed) Lua script file scanning. - Removed `AHuman` property `MaxCrouchRotation`. `CrouchRotAngleTarget` is now used instead.