Skip to content

Releases: githubawn/GeneralsGameCode

weekly-2026-02-15

15 Feb 02:41
5d9aa65

Choose a tag to compare

Changelog

  • enable RTS_DEBUG_MULTI_INSTANCE for all builds
  • bugfix(network): Increase message buffer and max packet sizes to reduce connection issues (TheSuperHackers#2277)
  • bugfix: Remove superfluous CD checks and related code (TheSuperHackers#2261)
  • refactor(netpacket): Simplify initialization of net packet field types (TheSuperHackers#2288)
  • refactor(netpacket): Streamline order of net packet fields (TheSuperHackers#2288)
  • fix(draw): Recover tread debris effects for W3DTankTruckDraw (TheSuperHackers#2251)
  • refactor(draw): Rename emitters functions in W3DTankDraw, W3DTankTruckDraw, W3DTruckDraw (TheSuperHackers#2251)
  • bugfix(worldbuilder): Fix script condition selection when editing newly created condition (TheSuperHackers#2289)
  • bugfix(view): Recalculate camera area constraints when toggling Control Bar or changing Pitch, FOV (TheSuperHackers#2291)
  • chore(gui): Implement function GadgetTextEntrySetMaxLen() (TheSuperHackers#2290)
  • bugfix(contain): Prevent undefined behaviour when a dead unit enters a container (TheSuperHackers#2258)
  • bugfix(ocl): Fix uninitialized variable in ObjectCreationList to avoid mismatches (TheSuperHackers#2096)
  • bugfix(projectile): Fix out-of-bounds access in DumbProjectile which causes mismatch with very high speed weapons at small hit distances (TheSuperHackers#2087)
  • bugfix(pathfinder): Fix uninitialized variable in Pathfinder::classifyFence() and possible source of mismatches in Retail-compatible builds (TheSuperHackers#1748)
  • fix(netpacket): Protect text length value from overflowing in NetPacketChatCommand, NetPacketDisconnectChatCommand (TheSuperHackers#2284)
  • fix(netcommandmsg): Fix new/delete mismatch in NetWrapperCommandMsg (TheSuperHackers#2287)
  • refactor(netpacket): Use more consistent names for packed net packet structs (TheSuperHackers#2283)
  • refactor(netpacket): Remove duplicate packed commands and cleanup code comments (TheSuperHackers#2283)
  • fix(comments): Use 2026 for this year's code comments (TheSuperHackers#2285)
  • perf(view): Optimize and simplify camera transform update logic (TheSuperHackers#2280)
  • bugfix(gui): Fix application hang from scrolling a map list with arrow keys (TheSuperHackers#2281)
  • feat(gui): Add support for extra column to separate time and date in Replay Menu (TheSuperHackers#2278)
  • bugfix(cratecollide): Prevent crates from being collected multiple times in a single frame (TheSuperHackers#2279)
  • bugfix(object): Cancel previous tasks for captured dozers (TheSuperHackers#2237)
  • fix(view): Prevent float division by zero in W3DView::setupWaypointPath() (TheSuperHackers#2274)
  • refactor(view): Simplify View angle normalization (TheSuperHackers#2271)
  • feat(gui): Add replay dates to replay list in Replay Menu (TheSuperHackers#2255)
  • fix(display): Fix VideoBuffer format selection in W3DDisplay::createVideoBuffer (TheSuperHackers#2265)
  • fix(intro): Fix order of Display Update and Draw in intro loop (TheSuperHackers#2264)
  • fix(netpacket): Fix misplaced null test in NetPacket::addCommand() (TheSuperHackers#2272)
  • feat(gui): Implement Player Info List (TheSuperHackers#2136)
  • refactor(netpacket): Simplify packet serialization code by using packed structs (TheSuperHackers#1680)
  • fix: Replace sprintf with snprintf to prevent potential stack overflows (TheSuperHackers#2262)
  • build(cmake): Force include CppMacros.h globally for VC6 (TheSuperHackers#2252)
  • tweak(gui): Use default locale of user for listed replays and save games to match regional date time formats (TheSuperHackers#2254)
  • fix(debug): Allocate enough terrain debug icons based on the map dimensions in W3DDebugIcons() (TheSuperHackers#2231)
  • feat(lanapi): Add LANAPI function to find LAN game with host IP address (TheSuperHackers#2249)
  • fix(update): Extend the height of the USA Particle Cannon laser beam for enormous camera heights (TheSuperHackers#2220)
  • tweak(pathfinder): Add audio event and message to announce pathfinding failover (TheSuperHackers#2242)
  • refactor(audio): Replace AudioManager's loseFocus/regainFocus with reason-based mute/unmute functions (TheSuperHackers#2236)
  • fix(update): Fix value initialization of ProjectileStreamUpdate::m_projectileIDs (TheSuperHackers#2248)
  • fix(draw): Replace ParticleSystem pointers with ParticleSystemID for safe particle lookups in W3DTrankDraw, W3DTankTruckDraw, W3DTruckDraw (TheSuperHackers#2235)
  • refactor(draw): Simplify particle effects code in W3DTankDraw, W3DTankTruckDraw, W3DTruckDraw (TheSuperHackers#2235)
  • feat(version): Add functions to get Git short hash string (TheSuperHackers#2243)
  • refactor(lanapi): Make LANMessage accessible in LANAPI (TheSuperHackers#2241)
  • fix(draw): Fix illogical dirt effect update code in W3DTruckDraw::doDrawModule(), W3DTankTruckDraw::doDrawModule() (TheSuperHackers#2234)
  • refactor(view): Simplify Clip Planes related code in W3DView::setCameraTransform() (TheSuperHackers#2232)
  • refactor(view): Simplify position code in W3DView::buildCameraTransform() (TheSuperHackers#2232)
  • refactor(view): Simplify Real Zoom Cam related code (TheSuperHackers#2232)
  • refactor(view): Consolidate duplicate terrain render update logic into new function W3DView::updateTerrain() (TheSuperHackers#2232)
  • refactor(view): Simplify zoom adjustment code in W3DView::update() (TheSuperHackers#2232)
  • refactor(view): Split View::setAngleAndPitchToDefault into 2 separate functions (TheSuperHackers#2232)
  • refactor(view): Improve functions, variables, comments in View, W3DView (TheSuperHackers#2232)
  • refactor(view): Remove unused functions in View class (TheSuperHackers#2232)
  • docs: Fix spelling errors in Core, GameEngineDevice, Libraries, Tools comments (2) (TheSuperHackers#2147)
  • docs: Fix spelling errors in GeneralsMD/Code/GameEngine comments (2) (TheSuperHackers#2146)
  • docs: Fix spelling errors in Generals/Code/GameEngine comments (2) (TheSuperHackers#2145)
  • perf(particlesys): Optimize angleBetween() in Particle System (TheSuperHackers#2218)
  • perf(particlesys): Reduce cost of ParticleSystemManager::findParticleSystem() by 80% (TheSuperHackers#2217)
  • fix(shadow): Fix crash by initializing debris shadow name to an empty string (TheSuperHackers#2221)
  • bugfix(gui): Fix game window animation movements to scale with display resolution (TheSuperHackers#2210)
  • bugfix(aigroup): GLA Battle Bus can now respond to attack commands while in bunkered form (TheSuperHackers#2213)
  • fix(display): Polish the camera debug text in W3DDisplay::gatherDebugStats() (TheSuperHackers#2230)
  • fix(radar): Always keep Radar View Box in sync with the actual Camera View (TheSuperHackers#2229)
  • refactor(basetype): Implement new functions Region3D::setFromPointsNoZ, Region3D::setFromPoints (TheSuperHackers#2228)
  • fix(camera): Apply misc code type and comment fixes (TheSuperHackers#2227)
  • unify(w3ddraw): Move W3D Draw files to Core (TheSuperHackers#2225)
  • unify(w3ddraw): Merge W3DModelDraw, W3DDependencyModelDraw code (TheSuperHackers#2225)
  • bugfix(pathfinder): Fix some pinched cells being changed to impassable cells in internal_classifyObjectFootprint() (TheSuperHackers#2222)
  • build(debug): Add CMake option RTS_DEBUG_CHEATS to enable debug cheats in release builds (TheSuperHackers#1842)
  • tweak(jetaiupdate): Defer offensive commands for parked jets without ammo (TheSuperHackers#2174)

weekly-2026-02-05

06 Feb 00:01
292c755

Choose a tag to compare

Changelog

  • Partial fix: terrain/water extents work for unlimited zoom, but guard mode shadow is missing
  • feat(lanapi): Add LANAPI function to find LAN game with host IP address (TheSuperHackers#2249)
  • fix(update): Extend the height of the USA Particle Cannon laser beam for enormous camera heights (TheSuperHackers#2220)
  • tweak(pathfinder): Add audio event and message to announce pathfinding failover (TheSuperHackers#2242)
  • refactor(audio): Replace AudioManager's loseFocus/regainFocus with reason-based mute/unmute functions (TheSuperHackers#2236)
  • fix(update): Fix value initialization of ProjectileStreamUpdate::m_projectileIDs (TheSuperHackers#2248)
  • fix(draw): Replace ParticleSystem pointers with ParticleSystemID for safe particle lookups in W3DTrankDraw, W3DTankTruckDraw, W3DTruckDraw (TheSuperHackers#2235)
  • refactor(draw): Simplify particle effects code in W3DTankDraw, W3DTankTruckDraw, W3DTruckDraw (TheSuperHackers#2235)
  • feat(version): Add functions to get Git short hash string (TheSuperHackers#2243)
  • refactor(lanapi): Make LANMessage accessible in LANAPI (TheSuperHackers#2241)
  • fix(draw): Fix illogical dirt effect update code in W3DTruckDraw::doDrawModule(), W3DTankTruckDraw::doDrawModule() (TheSuperHackers#2234)
  • refactor(view): Simplify Clip Planes related code in W3DView::setCameraTransform() (TheSuperHackers#2232)
  • refactor(view): Simplify position code in W3DView::buildCameraTransform() (TheSuperHackers#2232)
  • refactor(view): Simplify Real Zoom Cam related code (TheSuperHackers#2232)
  • refactor(view): Consolidate duplicate terrain render update logic into new function W3DView::updateTerrain() (TheSuperHackers#2232)
  • refactor(view): Simplify zoom adjustment code in W3DView::update() (TheSuperHackers#2232)
  • refactor(view): Split View::setAngleAndPitchToDefault into 2 separate functions (TheSuperHackers#2232)
  • refactor(view): Improve functions, variables, comments in View, W3DView (TheSuperHackers#2232)
  • refactor(view): Remove unused functions in View class (TheSuperHackers#2232)
  • docs: Fix spelling errors in Core, GameEngineDevice, Libraries, Tools comments (2) (TheSuperHackers#2147)
  • docs: Fix spelling errors in GeneralsMD/Code/GameEngine comments (2) (TheSuperHackers#2146)
  • docs: Fix spelling errors in Generals/Code/GameEngine comments (2) (TheSuperHackers#2145)
  • perf(particlesys): Optimize angleBetween() in Particle System (TheSuperHackers#2218)
  • perf(particlesys): Reduce cost of ParticleSystemManager::findParticleSystem() by 80% (TheSuperHackers#2217)
  • fix(shadow): Fix crash by initializing debris shadow name to an empty string (TheSuperHackers#2221)
  • bugfix(gui): Fix game window animation movements to scale with display resolution (TheSuperHackers#2210)
  • bugfix(aigroup): GLA Battle Bus can now respond to attack commands while in bunkered form (TheSuperHackers#2213)
  • fix(display): Polish the camera debug text in W3DDisplay::gatherDebugStats() (TheSuperHackers#2230)
  • fix(radar): Always keep Radar View Box in sync with the actual Camera View (TheSuperHackers#2229)
  • refactor(basetype): Implement new functions Region3D::setFromPointsNoZ, Region3D::setFromPoints (TheSuperHackers#2228)
  • fix(camera): Apply misc code type and comment fixes (TheSuperHackers#2227)
  • unify(w3ddraw): Move W3D Draw files to Core (TheSuperHackers#2225)
  • unify(w3ddraw): Merge W3DModelDraw, W3DDependencyModelDraw code (TheSuperHackers#2225)
  • bugfix(pathfinder): Fix some pinched cells being changed to impassable cells in internal_classifyObjectFootprint() (TheSuperHackers#2222)
  • build(debug): Add CMake option RTS_DEBUG_CHEATS to enable debug cheats in release builds (TheSuperHackers#1842)
  • tweak(jetaiupdate): Defer offensive commands for parked jets without ammo (TheSuperHackers#2174)