Ok, this module is all kinds of busted.
First off, for every node, there is a PlayerController parameter that isn't used and isn't useful. That can just be removed.
Secondly, every node crashes on call, as every parameter is passed as a const reference. This crashes the blueprint runtime. They should be passed by value except in rare circumstances.
Additionally, the UPFClientRegisterPlayFabUser::RegisterPlayFabUser function has this line of code
*Proxy->Request.InfoRequestParameters = InInfoRequestParameters.Data;
Which is _completely_ wrong. It's trying to store a local reference into a TSharedPtr, which starts off by crashing when you dereference a null ptr, but this data wouldn't persist past the end of the stack frame. It should look something like this:
Proxy->Request.InfoRequestParameters = MakeShareable(new PlayFab::ClientModels::FGetPlayerCombinedInfoRequestParams(InInfoRequestParameters.Data));
Finally, the functions only return data on success, not on failure. So if a call fails, you have no idea why, only that it does.
Doing a combined C++/Blueprint project is currently impossible without writing your own blueprint nodes with the Unreal C++ SDK.
,I'm playing around with the C++ Unreal Integration, and the PlayFabProxy module is just nonsensical.
All of the static Proxy call functions have a param list where all of the parameters are const references of whatever their type is. (ie, const FString&, const bool&, etc). This causes a number of issues, like having to pass in a variable into the blueprint call.
Secondly, because all of the params are const references, any calls into those blueprint nodes instantly crash in the Unreal Engine's generated blueprint exec function!
Also, every node requires a PlayerController, which nothing makes use of. That should probably be removed.
Also, the PFClientRegisterPlayFabUser::RegisterPlayFabUser has this line:
*Proxy->Request.InfoRequestParameters = InInfoRequestParameters.Data;
Which is _completely_ wrong. Proxy->Request is a TSharedPtr<>, which is being deref'd (a crash), and then assigned a const reference from an object that exists on the stack and dies after this function completes.
The proper code should be something like this:
Proxy->Request.InfoRequestParameters = MakeShareable(new PlayFab::ClientModels::FGetPlayerCombinedInfoRequestParams(InInfoRequestParameters.Data));
I've just scratched the surface on these functions. It looks like this code is auto generated, and it's just crashy and wrong. Trying to do a combined C++ and Blueprint project with the C++ SDK is currently impossible.