Skip to content

W3DTankDraw::createEmitters create new particle system before XFER_LOAD of TheParticleSystemManager cause save crash.. #754

@Ui-shigure-z

Description

@Ui-shigure-z

Prerequisites

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

Game Version

  • Command & Conquer Generals
  • Command & Conquer Generals: Zero Hour
  • Other (please specify below)

Bug Description

W3DTankDraw::createEmitters create new particle system TrackDebrisDirtLeft and TrackDebrisDirtRight before TheParticleSystemManager load xfer, might cause different items in TheParticleSystemManager has same ID, and these items are at the front.
Therefore, when a particle system has slave or master system, they will find a wrong particle system first in the loop of method loadPostProcess() which might already be destroyed and cause save crash.

Reproduction Steps

I reproduced it on a specific map of a specific mod, but it's not the only case, modder fixed it by removing slave system from particle system.

Additional Context

No response

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

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions