From c719be46a67d95a960ba1a505bfb545ce512ed11 Mon Sep 17 00:00:00 2001 From: Jaredl-Dev <217964373+Jaredl-Dev@users.noreply.github.com> Date: Wed, 23 Jul 2025 23:59:10 -0700 Subject: [PATCH 1/3] Documented the new configuration options that have been added. --- SourceCode/_Sidebar.md | 1 + SourceCode/new_configuration_options.md | 21 +++++++++++++++++++++ 2 files changed, 22 insertions(+) create mode 100644 SourceCode/new_configuration_options.md diff --git a/SourceCode/_Sidebar.md b/SourceCode/_Sidebar.md index 95fd36a6..ae69abbb 100644 --- a/SourceCode/_Sidebar.md +++ b/SourceCode/_Sidebar.md @@ -5,6 +5,7 @@ - [How to Get Involved](how_to_involved) - [How to Contribution](https://github.com/TheSuperHackers/GeneralsGameCode/blob/main/CONTRIBUTING.md) - [Replays for testing](replay_testing) +- [New Configuration Options](new_configuration_options) - [In-Game Debug Commands](ingame_debug_commands) - [Community forks](forks) - [License](https://github.com/TheSuperHackers/GeneralsGameCode/blob/main/LICENSE.md) diff --git a/SourceCode/new_configuration_options.md b/SourceCode/new_configuration_options.md new file mode 100644 index 00000000..66eeed74 --- /dev/null +++ b/SourceCode/new_configuration_options.md @@ -0,0 +1,21 @@ + + +# New Configuration Options + +Several new configuration options have been added to the game. The new configuration options can be +configured from the following locations: + +## Options.ini + +| Name | Description | Accepted Values | Default Value | +|-----------------|---------------------------------------------------------------------------------------------|-----------------|----------------| +| MoneyTransactionVolume | Controls the volume of money deposit and withdraw audio events. Set to 0 to mute these sounds. | 0-100 | 100 (Generals), 0 (Zero Hour) | +| SystemTimeFontSize | Controls the font size for system time display. Set to 0 to disable the system time display. | 0+ | 8 | +| GameTimeFontSize | Controls the font size for game time display. Set to 0 to disable the game time display. | 0+ | 8 | + +## CommandMap.ini + +| Name | Description | Default Keybinding | +|--------------|------------------------------------------|-------------------| +| TOGGLE_PAUSE | Toggles pause in replay playback | P | +| STEP_FRAME | Steps one frame in replay playback | O | From 11e7b7f5ac4285f9caab095bdc22e8f3dd494a8d Mon Sep 17 00:00:00 2001 From: Jaredl-Dev <217964373+Jaredl-Dev@users.noreply.github.com> Date: Tue, 5 Aug 2025 13:33:21 -0700 Subject: [PATCH 2/3] Updated CommandMap.ini section to include SELECT_NEXT_IDLE_WORKER command. --- SourceCode/new_configuration_options.md | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/SourceCode/new_configuration_options.md b/SourceCode/new_configuration_options.md index 66eeed74..f3714338 100644 --- a/SourceCode/new_configuration_options.md +++ b/SourceCode/new_configuration_options.md @@ -15,7 +15,8 @@ configured from the following locations: ## CommandMap.ini -| Name | Description | Default Keybinding | -|--------------|------------------------------------------|-------------------| -| TOGGLE_PAUSE | Toggles pause in replay playback | P | -| STEP_FRAME | Steps one frame in replay playback | O | +| Name | Description | Default Keybinding | +|-------------------------|------------------------------------------|-------------------| +| TOGGLE_PAUSE | Toggles pause in replay playback | P | +| STEP_FRAME | Steps one frame in replay playback | O | +| SELECT_NEXT_IDLE_WORKER | Selects the next idle worker unit | Ctrl+I | From c9daf686b27b079595405959a832dd25af89b8f1 Mon Sep 17 00:00:00 2001 From: Jaredl-Dev <217964373+Jaredl-Dev@users.noreply.github.com> Date: Tue, 5 Aug 2025 13:45:11 -0700 Subject: [PATCH 3/3] Document CursorCaptureMode, forcefullviewport and ViewportHeightScale --- SourceCode/new_configuration_options.md | 42 +++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/SourceCode/new_configuration_options.md b/SourceCode/new_configuration_options.md index f3714338..2dc8bb45 100644 --- a/SourceCode/new_configuration_options.md +++ b/SourceCode/new_configuration_options.md @@ -12,6 +12,7 @@ configured from the following locations: | MoneyTransactionVolume | Controls the volume of money deposit and withdraw audio events. Set to 0 to mute these sounds. | 0-100 | 100 (Generals), 0 (Zero Hour) | | SystemTimeFontSize | Controls the font size for system time display. Set to 0 to disable the system time display. | 0+ | 8 | | GameTimeFontSize | Controls the font size for game time display. Set to 0 to disable the game time display. | 0+ | 8 | +| CursorCaptureMode | Controls when the game window captures the mouse cursor. | None, InGame, Always, Auto | Auto | ## CommandMap.ini @@ -20,3 +21,44 @@ configured from the following locations: | TOGGLE_PAUSE | Toggles pause in replay playback | P | | STEP_FRAME | Steps one frame in replay playback | O | | SELECT_NEXT_IDLE_WORKER | Selects the next idle worker unit | Ctrl+I | + +## GameData.ini + +| Name | Description | Accepted Values | Default Value | +|------|-------------|-----------------|---------------| +| ViewportHeightScale | Controls the height scale of the tactical view. Used to hide the world behind the Control Bar for 'Control Bar Pro' Addons. | 0.0 - 1.0 | 0.8 | + +## Command Line Arguments + +| Argument | Description | +|----------|-------------| +| -forcefullviewport | Forces full viewport mode for 'Control Bar Pro' Addons by setting ViewportHeightScale to 1.0 | + +## CursorCaptureMode Details + +The `CursorCaptureMode` option controls when the game window captures the mouse cursor, preventing it from +leaving the game window boundaries. This is particularly useful for windowed mode gameplay. + +| Mode | Behavior | +|------|----------| +| **None** | Game window does not capture the cursor | +| **InGame** | Game window captures the cursor when playing and observing | +| **Always** | Game window captures the cursor always in menus and game | +| **Auto** | Applies mode "InGame" when Windowed, "Always" when Fullscreen | + +The cursor capture is automatically released when the game window loses focus (e.g., when Alt+Tab is used to +switch to another application). + +## ViewportHeightScale Details + +The `ViewportHeightScale` setting controls the height of the tactical view as a fraction of the screen height. +This feature is specifically designed to support 'Control Bar Pro' Addons that modify the game's interface. + +**Values:** + +- `0.8` (default): Traditional control bar mode, tactical view uses 80% of screen height +- `1.0`: Full viewport mode, tactical view uses entire screen height (control bar overlays the view) +- Custom values between `0.0` and `1.0` for custom control bar configurations + +**Integration with Control Bar Pro Addons:** +The game reads a `GenTool/fullviewport.dat` file to automatically enable full viewport mode when detected.