Skip to content

Add CnCNet YR branch changes to mainline branch#68

Open
11EJDE11 wants to merge 2 commits into
CnCNet:mainfrom
11EJDE11:ifdef-YR-changes
Open

Add CnCNet YR branch changes to mainline branch#68
11EJDE11 wants to merge 2 commits into
CnCNet:mainfrom
11EJDE11:ifdef-YR-changes

Conversation

@11EJDE11

@11EJDE11 11EJDE11 commented Jun 7, 2026

Copy link
Copy Markdown
Member

Adds the current CnCNet YR spawner fixes behind the existing IS_CNCNET_YR_VER so they are only included in CnCNet YR builds.

Includes:

  • DisableChat spawner config and in-game chat enforcement
  • Open-top cloak fix
  • Desync fixes

Can be deleted once this is merged:
https://github.com/CnCNet/yrpp-spawner/tree/current-cncnet-yr-build

@11EJDE11 11EJDE11 requested a review from Metadorius June 7, 2026 23:03
@github-actions

github-actions Bot commented Jun 7, 2026

Copy link
Copy Markdown

Nightly build for this pull request:

This comment is automatic and is meant to allow guests to get latest nightly builds for this pull request without registering. It is updated on every successful build.

@Metadorius

Copy link
Copy Markdown
Member

any reason to gate desync fixes behind CnCNet YR? I think they'll be useful for everyone, even if not optimal (better than desyncing)

@Metadorius

Copy link
Copy Markdown
Member

other than that lgtm

@11EJDE11

11EJDE11 commented Jun 7, 2026

Copy link
Copy Markdown
Member Author

any reason to gate desync fixes behind CnCNet YR? I think they'll be useful for everyone, even if not optimal (better than desyncing)

Mainly as it's not been reviewed. Have made it available to all now.

@ZivDero ZivDero left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Not a whole lot that's controversial here. The PR name could be adjusted though - it does a bit more than just move something :D

Comment on lines +71 to +77
// HouseClass::Flag_Remove: clears the flag home cell overlay without RecalcAttributes.
DEFINE_HOOK(0x4FBF3C, HouseClass_Flag_Remove_RecalcAttributes, 0x5)
{
GET(CellClass*, pCell, EAX);
pCell->RecalcAttributes(DWORD(-1));
return 0;
}

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Does this affect anything? It's not like CTF works

DEFINE_HOOK(0x56F712, MapBridge_56F690_Damaged_EAX_F1, 0x7)
{
GET(CellClass*, pCell, EAX);
pCell->OverlayData = 0xF;

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

It would be nice to name the various magic numbers but if you can't, not a huuuge deal.


// NOTE: Overrides incorrect Ares hook at the same address.
// Simplified: always apply the cloak check without configurable open-topped behavior.
DEFINE_HOOK(0x6FCA26, TechnoClass_CanFire_RevertAresOpenTopCloakFix, 0x6)

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Does this apply after Ares reliably?

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Yes it has worked perfectly for a while now in YR build

@Starkku Starkku Jun 9, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Unless it has been changed in SyringeEx (like does the DLL whitelist also make the DLL injection order fixed? I don't remember), the way this used to work was 'first come, first served' and the hooks execute in the order they are declared in syshk of DLL and the DLL order likewise follows the order they are injected in, which depends on what Win32 FindFile returns. So it is likely to be same on a lot of systems but there's no real guarantee.

EDIT: At quick glance I think the DLL load list also specifies the order so it probably behaves deterministically with that feature in use.

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

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

I still think that if possible it should be placed earlier to exclude a possible fuckup of wrong order

@Metadorius Metadorius changed the title Move CnCNet YR specific changes behind IS_CNCNET_YR_VER build flag Add CnCNet YR branch changes to mainline branch Jun 9, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants