Skip to content

Conversation

@speed2CZ
Copy link
Member

Still WIP, I'll include full description later.

Description of the proposed changes

  • Collection of fixes, improvements, refactors and new annotations all concerning coop / campaign code.

Testing done on the proposed changes

  • Ive played through couple of the missions to check if or how the behaviour changes.

Additional context

Checklist

@speed2CZ speed2CZ added area: sim Area that is affected by the Simulation of the Game area: coop change impacting coop labels Dec 18, 2025
@coderabbitai
Copy link

coderabbitai bot commented Dec 18, 2025

Important

Review skipped

Draft detected.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

AttackFormation - the wide one is desirable in most of the cases
Long time ago AttackManager got split from the AiBrain, some fields go renamed, but this one was forgotten.
@speed2CZ speed2CZ force-pushed the campaignImprovements branch 2 times, most recently from 3b399f0 to 5d35e4e Compare December 22, 2025 13:44
Fixes FAForever#6983

Seems like the `[2]` value of the vector is used to read the position and `.y` just points to it. So changing `.y` has no effect on the vector
`default_brain` param isnt used anywhere, thats why its being removed.
I dont think there's a need to check for it each time when we check the build condition, but only when we're adding the platoon.
The build conditions of the campaign platoons rarely change and if they do, they don't contain the param. And if that case happens, its better if the author doesn't include it anymore as it has no effect!
This has no functional change. The name of the platoon is not used in anyway here and empty string is a valid value.
Instead of building just single scout, build as many as there are factories.
When the platoon template is process, some squad units can end up with quantity 0 and those should be removed.

table.remove shift all remaining values down, which the old code didnt consider and it was skipping the more squads the more got removed.

The fix iterates the table from the back which makes table.remove safe to use
When the platoon builder is loaded `default_brain` is always just deleted from the build conditions. since the army's brain is automatically added to call the build condition as a first param.
- Added missing UEF tag
- Increased turn rate
UI doesn't have .Dead

There's an error spam when selected ACU or Nuke is killed / deleted, which triggers cinematics
@speed2CZ speed2CZ force-pushed the campaignImprovements branch from 5d35e4e to 2d6cc8c Compare December 23, 2025 15:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: coop change impacting coop area: sim Area that is affected by the Simulation of the Game

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant