Skip to content

[GEN] Backport several GameEngine additions from Zero Hour #752

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 5 commits into
base: main
Choose a base branch
from

Conversation

tomsons26
Copy link

@tomsons26 tomsons26 commented Apr 23, 2025

Non complete list of things added/changed in Generals' GameEngine:

  • GameEngine/Include/Common/crc.h : Adds "optimized" assembler version for CRC class
  • GameEngine/Include/Common/ScopedMutex.h : Changes mutex timeout from infinite to 500 ms
  • GameEngine/Include/GameLogic/Module/AIUpdate.h : Adds functions getCurLocomotorSetType, hasLocomotorForSurface, friend_getPath to AIUpdateInterface
  • GameEngine/Include/GameLogic/Module/FireWeaponUpdate.h : Adds function isOkayToFire to FireWeaponUpdate
  • GameEngine/Source/Common/INI/INICommandButton.cpp : Adds debug checks for SpecialPowerTemplate INI setup in ControlBar::parseCommandButtonDefinition
  • GameEngine/Source/Common/RTS/Money.cpp : Adds function to read money value from INI file
  • GameEngine/Source/Common/StateMachine.cpp : Adds additional state machine debug in StateMachine::initDefaultState
  • GameEngine/Source/Common/System/DataChunk.cpp : Adds new functions writeNameKey, readNameKey to DataChunkOutput class
  • GameEngine/Source/Common/System/Geometry.cpp : Adds new function GeometryInfo::makeRandomOffsetOnPerimeter
  • GameEngine/Source/Common/System/Radar.cpp : Adds new function Radar::radarToWorld2D
  • GameEngine/Source/Common/System/Xfer.cpp : Adds new function Xfer::xferSTLObjectIDVector
  • GameEngine/Source/GameClient/Color.cpp : Adds commented CheatSpy stuff
  • GameEngine/Source/GameClient/GUI/ControlBar/ControlBar.cpp : Adds new functions ControlBar::markUIDirty, CommandButton::copyButtonTextFrom
  • GameEngine/Source/GameClient/GUI/Gadget/GadgetCheckBox.cpp : Adds new function GadgetCheckBoxToggle
  • GameEngine/Source/GameClient/GUI/GameWindow.cpp : Adds new function GameWindow::winGetEnabled
  • GameEngine/Source/GameLogic/AI/AIGroup.cpp : Adds file local functions clampToMap, clampWaypointPosition, getHelicopterOffset
  • GameEngine/Source/GameLogic/Object/Update/AutoDepositUpdate.cpp : Adds parseUpgradePair function
  • GameEngineDevice/Source/W3DDevice/Common/System/W3DRadar.cpp : Adds commented function W3DRadar::renderObjectList
  • GameEngineDevice/Source/W3DDevice/GameClient/Shadow/W3DProjectedShadow.cpp : Adds new function W3DProjectedShadowManager::createDecalShadow, perhaps for static position decal shadows (trees)
  • GameEngineDevice/Source/W3DDevice/GameClient/W3DScene.cpp : Adds commented function RTS3DScene::Visibility_Check

@tomsons26 tomsons26 marked this pull request as draft April 23, 2025 14:07
@tomsons26 tomsons26 force-pushed the zhadditions branch 21 times, most recently from f288a52 to 921f829 Compare April 28, 2025 12:22
@tomsons26 tomsons26 marked this pull request as ready for review April 28, 2025 12:56
@tomsons26 tomsons26 requested a review from xezon May 1, 2025 15:31
@xezon
Copy link

xezon commented May 1, 2025

This change needs conflicts resolved.

@xezon xezon added this to the Code foundation build up milestone May 1, 2025
@xezon xezon added the Generals Related Generals only label May 3, 2025
@xezon xezon added the Unify Unifies code between Generals and Zero Hour label May 3, 2025
xezon added 3 commits May 3, 2025 13:18
# Conflicts:
#	Generals/Code/GameEngine/Include/Common/GameAudio.h
#	Generals/Code/GameEngine/Include/Common/StateMachine.h
#	Generals/Code/GameEngine/Source/GameClient/GameText.cpp
#	Generals/Code/GameEngine/Source/GameLogic/Object/SpecialPower/SpecialAbility.cpp
#	Generals/Code/GameEngineDevice/Source/W3DDevice/GameClient/Shadow/W3DProjectedShadow.cpp
@xezon
Copy link

xezon commented May 3, 2025

Updated branch to latest main.

Copy link

@xezon xezon left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This change looks pretty safe. But I think it does not hurt to give it a run for a few VS6 replays in Generals to check for mismatch, just to make sure.

Change notes added to the opening post.

@xezon xezon changed the title [GEN] Backports ZH additions [GEN] Backport several GameEngine additions from Zero Hour May 3, 2025
@xezon
Copy link

xezon commented May 7, 2025

Did anyone give this a spin?

I wanted to take a look at it with unassemblize but I have not gotten that far yet.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Generals Related Generals only Unify Unifies code between Generals and Zero Hour
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants