Skip to content

reimplement: SHC_3BB0A8C1_0x0047A130 100%#95

Merged
gynt merged 2 commits into
mainfrom
reimpl/SHC_3BB0A8C1_0x0047A130
Jun 8, 2026
Merged

reimplement: SHC_3BB0A8C1_0x0047A130 100%#95
gynt merged 2 commits into
mainfrom
reimpl/SHC_3BB0A8C1_0x0047A130

Conversation

@TheRedDaemon

@TheRedDaemon TheRedDaemon commented May 30, 2026

Copy link
Copy Markdown
Contributor

Requires changes to AttackInfo: Two new field sizes set.

This one showed the shortcomings of the struct resolver:
Unlike the function resolver, which seems to be pretty good at behaving like a normal function, the struct resolver deeply effects the way the compiler handles field accesses. It required activating almost all of them to see the opcodes being produced like in the original. There is a clear difference between having the global or just a reference, no matter how stable. We always have to keep this in mind while testing around.

Also:

  • The private functions should be made public. Pragmatic reason: We can not judge visibility and we can not instantiate classes with constructor if they are private.
  • I found two struct resolvers for SHC_3BB0A8C1_0x01A279C0: In the class definition and as global. Is this intentional?

@TheRedDaemon TheRedDaemon requested a review from gynt May 30, 2026 21:26
@gynt

gynt commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

The class definition struct resolver should be removed.
For the record, which class were you trying to instantiate but couldn't because of private constructors?

@gynt

gynt commented Jun 3, 2026

Copy link
Copy Markdown
Contributor

I resolved the AttackInfo.hpp thing now in a1971f3

@TheRedDaemon

Copy link
Copy Markdown
Contributor Author

@gynt I think it was "GameCore" and "TroopValueState", but I am not 100% sure anymore. Should have been every class that has a constructor declaration that was private.

@TheRedDaemon TheRedDaemon force-pushed the reimpl/SHC_3BB0A8C1_0x0047A130 branch from dc2c644 to ef306f1 Compare June 8, 2026 15:32
@TheRedDaemon TheRedDaemon marked this pull request as ready for review June 8, 2026 15:36
@gynt gynt merged commit 7b46b5b into main Jun 8, 2026
2 checks passed
@gynt gynt deleted the reimpl/SHC_3BB0A8C1_0x0047A130 branch June 8, 2026 18:55
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.

2 participants