I’m pleased to report I’ve made substantial progress. I’ve got a rudimentary Nakama implementation running in C++. It can create and join matches and run a super simple player interaction.
Now I need to embed these functions into a another SDK I want to work with and then I can begin making my application!
The trouble is when I call client->authenticateDevice() from within my other SDK I get back an error back, “exception: bad allocation.”
I’ve raised a ticket with the other SDK support group. I’ve even sent them my project and asked them to have a look at my code. They have confirmed that I’ve implemented their material correctly and that what I’m trying to do should work.
They suggested “stepping into the Nakama code if to see if it’s actually an issue within Nakama trying to access something that hasn’t been created yet.”
I’m not sure how Nakama could be trying to access something that hasn’t been created yet since I’m using an implementation that works on it’s own. But clearly something is different. The question is how to find out what?
I’m pretty confident I have all my linker settings, includes, and configuration set up properly. I can build without errors, and some Nakama functions do run. I can build the client and tick.
Below is the code block pertaining to Nakama.
Here is the output:
The IDE reports a little more detail:
If I give values for “userName” and “create” instead of using nullopt, I get something slightly different.
Do you have any thoughts about what might cause authenticateDevice to return errors like this? Any suggestions on how to go about debugging an issue like this?
Or, perhaps, could Heroic Labs provide a pbd file for nakama-cppd.dll? At least then I could step into the function myself and see what’s going on.
I suppose I could try to build the source code locally and add print statements to authenticateDevice() or make a .pbd file, but that sounds daunting and has lots of dubious possible outcomes.
Thank you so much for any input.