Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add workarounds for Windows x64 builds #2

Draft
wants to merge 3 commits into
base: port64
Choose a base branch
from

Conversation

nosoop
Copy link

@nosoop nosoop commented Aug 6, 2024

  • Set up a separate gamedata entry for CAttributeManager::AttribHookValue<float> on Windows x64 since it works with the original calling convention / parameter order.
  • Add fallback for CAttributeList::RemoveAttribute and CAttributeList::SetRuntimeAttributeValue to use VScript calls. I'm guessing port64 has issues with pointer types used as parameters, but I haven't dug into it to confirm.
    • The windows64 gamedata has been commented out so the fallback is applied.

Currently untested (I tested the workarounds but that was before I cleaned up the plugin to PR the changes); should have it tested and ready to go in about 12 hours. Maybe.

nosoop added 3 commits August 6, 2024 10:39
Both CAttributeList::RemoveAttribute and
CAttributeList::SetRuntimeAttributeValue are broken on Windows;
the latter results in an zero-filled entry in the attribute list
when using the semantically-correct SDKType_Pointer.

Likely an issue with the 64-bit Windows SDKCall patches; for now
we use vscript workarounds.
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.

1 participant