Skip to content

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