Skip to content

merge(upstream): sync thesuperhackers/main into GeneralsX - #250

Merged
fbraz3 merged 26 commits into
mainfrom
thesuperhackers-sync-08-10-2026
Aug 11, 2026
Merged

merge(upstream): sync thesuperhackers/main into GeneralsX#250
fbraz3 merged 26 commits into
mainfrom
thesuperhackers-sync-08-10-2026

Conversation

@fbraz3

@fbraz3 fbraz3 commented Aug 11, 2026

Copy link
Copy Markdown
Owner

Description

Sync local repository with upstream thesuperhackers/main as of August 11, 2026, preserving GeneralsX modern cross-platform architecture (SDL3 + DXVK + OpenAL + MiniAudio + FFmpeg).

Fixes #246
Supersedes #247

Summary of Upstream Changes

  • Core Engine Unification: Integrated upstream migration of shared engine structures, network recorders, state machines, and client UI components into the unified Core/ directory.
  • Bug Fixes & Logic Refactoring: Integrated upstream logic improvements in GameLogicDispatch.cpp, Recorder.cpp, AI.cpp, Object.cpp, TransportContain.cpp, SpecialPowerModule.cpp, and script engine victory conditions.
  • Mod & Tools Support: Merged upstream GUI edit dialog properties and GUIEdit tool updates.

Conflict Resolution Highlights

  • Platform Isolation (CMakeLists.txt): Preserved GeneralsX cross-platform target configuration, keeping SDL3, DXVK, OpenAL, FFmpeg, and if(WIN32) blocks intact to prevent Windows API leaks on Linux and macOS.
  • Game Engine Dispatch (GameLogicDispatch.cpp): Reconciled upstream's logicTimeQueryFlags timing checks with local performance optimizations, ensuring proper game halting during pauses without logic time drift.
  • Moved File Customizations:
  • Cross-Platform Determinism: Maintained WWMath deterministic wrappers and ScopedFPUGuard to prevent ARM64 vs x86_64 simulation desyncs.

Validation Results

  • macOS (macos-vulkan): z_generals (Base Game) and GeneralsXZH (Zero Hour) compiled and linked cleanly.
  • Linux (linux64-deploy via Docker): Clean CMake configuration and build of GeneralsXZH (280 MB) and GeneralsX (268 MB) binaries.
  • Zero merge markers remaining in repository (git grep -e '<<<<<<<').

Jaredl-Dev and others added 26 commits August 3, 2026 22:20
…ts initial reload time (TheSuperHackers#3054)

Add StartsReady=YES to a SpecialAbility Behavior Module to skip the Special Power reload time when first enabled

Behavior = SpecialAbility ModuleTag
  StartsReady = YES
End
Merge upstream changes from thesuperhackers/main into GeneralsX while preserving cross-platform SDL3/DXVK/OpenAL architecture and platform isolation.
@fbraz3
fbraz3 merged commit eab5221 into main Aug 11, 2026
8 checks passed
@fbraz3
fbraz3 deleted the thesuperhackers-sync-08-10-2026 branch August 11, 2026 18:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Crash: null getContainedBy() deref in TransportContain::isSpecificRiderFreeToExit (SIGSEGV at 0x158) via AIExitState

9 participants