Skip to content

[Contra] Propaganda Officer aura disabled #3199

Description

@Jaredl-Dev

Prerequisites

  • I have searched for similar issues and confirmed this is not a duplicate

Game Version

  • Command & Conquer Generals: Zero Hour

Bug Description

Testing Contra 10.0.2 Beta 2 Patch 1 with GeneralsOnline exposed an issue in the non-retail PropagandaTowerBehavior path inherited from this repository. GeneralsOnline sets RETAIL_COMPATIBLE_CRC to 0, this issue does not occur with the retail game.

This was most likely introduced by #1545.

Contra implements the Propaganda Officer’s aura through a hidden RiderChangeContain payload. The containment check added in #1545 treats this payload as an enclosed passenger and disables its influence.

;------------------------------------------------------------------------------
Object UpgradeViaRiderSwitch2_Prop
  EditorSorting       = SYSTEM
  TransportSlotCount  = 1
  IsTrainable = Yes
  KindOf = PORTABLE_STRUCTURE INERT
  Body = ActiveBody ModuleTag_03
    MaxHealth       = 1.0
    InitialHealth   = 1.0
  End
  Behavior = AIUpdateInterface ModuleTag_06
  End
  Behavior = HeightDieUpdate ModuleTag_13
    TargetHeight = 500.0
  End
  Behavior = PhysicsBehavior ModuleTag_15
    Mass = 5.0
    AllowBouncing = No
  End
  Behavior = DestroyDie ModuleTag_12
    DeathTypes = ALL
  End

  Behavior = PropagandaTowerBehavior ModuleTag_22
    Radius                = 100
    DelayBetweenUpdates   = 2000
    HealPercentEachSecond = 1%
    ;PulseFX               = FX_CrawlerTowerPropagandaPulse
    UpgradeRequired       = Upgrade_ChinaSubliminalMessaging
    UpgradedHealPercentEachSecond = 1.5%
    ;UpgradedPulseFX       = FX_CrawlerTowerSubliminalPulse
  End
End

Reproduction Steps

  1. Build Zero Hour with RETAIL_COMPATIBLE_CRC=0.
  2. Launch Contra 10.0.2 Beta 2 Patch 1.
  3. Train a Propaganda Officer and place a friendly unit nearby.
  4. Observe that no propaganda effect is applied.

Metadata

Metadata

Assignees

No one assigned

    Labels

    BugSomething is not working right, typically is user facing⚠️ TriageIssues requiring initial review and prioritization

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions