Repository navigation
unify: Merge common system; BuildAssistant, PlayerTemplate, FunctionLexicon, GameState, GameStateMap - #3463
Conversation
|
Note Reviews pausedIt looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the
Use the following commands to manage reviews:
Use the checkboxes below for quick actions:
WalkthroughThe changes update build-placement and unit-production checks, add player-template fields and lookup, wire Challenge menu callbacks, adjust save handling and colors, and change registry lookup order. ChangesBuild rules
Challenge menu callbacks
Player-template data
Save handling and save-list colors
Registry lookup order
Priority: ⬆️ High Estimated code review effort: 4 (Complex) | ~45 minutes Change: Feature Suggested reviewers: Pre-merge checks:
|
[High impact] The PR appears safe to merge based on the code review; replay compatibility has not been tested.
|
There was a problem hiding this comment.
Actionable comments posted: 2
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Organization UI
- Review profile: CHILL
- Plan: Advanced
- Run ID:
b40501cc-0eea-44dc-aa63-c25af24db822
📥 Commits
Reviewing files that changed from the base of the PR and between 6463b0d and 5a588351cda521fca6926f8149da0d0281e131ad.
📒 Files selected for processing (18)
Core/GameEngine/CMakeLists.txtCore/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/ChallengeMenu.cppGenerals/Code/GameEngine/Include/Common/BuildAssistant.hGenerals/Code/GameEngine/Include/Common/PlayerTemplate.hGenerals/Code/GameEngine/Include/GameClient/GUICallbacks.hGenerals/Code/GameEngine/Source/Common/RTS/PlayerTemplate.cppGenerals/Code/GameEngine/Source/Common/System/BuildAssistant.cppGenerals/Code/GameEngine/Source/Common/System/FunctionLexicon.cppGenerals/Code/GameEngine/Source/Common/System/SaveGame/GameState.cppGenerals/Code/GameEngine/Source/Common/System/SaveGame/GameStateMap.cppGenerals/Code/GameEngine/Source/Common/System/registry.cppGenerals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/PopupHostGame.cppGeneralsMD/Code/GameEngine/CMakeLists.txtGeneralsMD/Code/GameEngine/Source/Common/RTS/PlayerTemplate.cppGeneralsMD/Code/GameEngine/Source/Common/System/BuildAssistant.cppGeneralsMD/Code/GameEngine/Source/Common/System/FunctionLexicon.cppGeneralsMD/Code/GameEngine/Source/Common/System/SaveGame/GameState.cppscripts/cpp/unify_move_files.py
Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.
tintinhamans
left a comment
There was a problem hiding this comment.
Looks good to me.
In terms of BuildAssistant, I think isLocationClearOfObjects has no other callers so the Bool to LegalBuildCode is probably fine.
Could add to "Generals gets" that registry now reads HKCU before HKLM, and the loading save flag is set while loading a save.
Yes
I omitted that because it was only part of this merge because bugfix(registry): Prioritize HKEY_CURRENT_USER registry reads and writes over HKEY_LOCAL_MACHINE to prevent inaccessible data (#1844) did not correctly replicate to Generals. |
|
@Caball009 @Skyaero42 Can you please run a few Generals replays against this branch? |
Caball009
left a comment
There was a problem hiding this comment.
I'm seeing a ~95% mismatch rate for Generals replays :)
Ok that suckssss |
It's the additions to "FunctionLexicon.cpp". |
…exicon, GameState, GameStateMap
7566178 to
e2dcd03
Compare
Ok fixed that. Can you retest that? |
There was a problem hiding this comment.
Actionable comments posted: 2
ℹ️ Review info
⚙️ Run configuration
- Configuration used: Organization UI
- Review profile: CHILL
- Plan: Advanced
- Run ID:
75a46317-e998-47af-8c8a-29aa3ab9249d
📥 Commits
Reviewing files that changed from the base of the PR and between 7566178eee17a47cdc5770566f247ba1c013faf7 and e2dcd03.
📒 Files selected for processing: 20
Core/GameEngine/CMakeLists.txtCore/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/ChallengeMenu.cppGenerals/Code/GameEngine/Include/Common/BuildAssistant.hGenerals/Code/GameEngine/Include/Common/Player.hGenerals/Code/GameEngine/Include/Common/PlayerTemplate.hGenerals/Code/GameEngine/Include/GameClient/GUICallbacks.hGenerals/Code/GameEngine/Source/Common/RTS/Player.cppGenerals/Code/GameEngine/Source/Common/RTS/PlayerTemplate.cppGenerals/Code/GameEngine/Source/Common/System/BuildAssistant.cppGenerals/Code/GameEngine/Source/Common/System/FunctionLexicon.cppGenerals/Code/GameEngine/Source/Common/System/SaveGame/GameState.cppGenerals/Code/GameEngine/Source/Common/System/SaveGame/GameStateMap.cppGenerals/Code/GameEngine/Source/Common/System/registry.cppGenerals/Code/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/PopupHostGame.cppGeneralsMD/Code/GameEngine/CMakeLists.txtGeneralsMD/Code/GameEngine/Source/Common/RTS/PlayerTemplate.cppGeneralsMD/Code/GameEngine/Source/Common/System/BuildAssistant.cppGeneralsMD/Code/GameEngine/Source/Common/System/FunctionLexicon.cppGeneralsMD/Code/GameEngine/Source/Common/System/SaveGame/GameState.cppscripts/cpp/unify_move_files.py
💤 Files with no reviewable changes: 1
- Core/GameEngine/Source/GameClient/GUI/GUICallbacks/Menus/ChallengeMenu.cpp
🚧 Files skipped from review as they are similar to previous changes: 2
- scripts/cpp/unify_move_files.py
- GeneralsMD/Code/GameEngine/Source/Common/RTS/PlayerTemplate.cpp
Included review availability: This review used your included allowance. Your plan provides up to 4 included reviews per hour; 3 remain after this review.
|
Looks safe now. I checked 3000 Generals replays and didn't see a mismatch because of these changes. I have not looked closely at the changes themselves. |
…exicon, GameState, GameStateMap (TheSuperHackers#3463)
This change merges all of GameEngine/Source/Common/System and its includes and related code. ChallengeMenu, a dependency, is moved to Core.
BuildAssistantis CRC critical and requires careful review.Generals gets
TODO