Quote:
Originally Posted by asherkin
This is not technically possible - GetClientAuthId (or any of the related functions) could never, ever, ever cause a client crash, your issues are elsewhere.
|
I have tested it. My code doesn't do anything to a player until the OnClientPostAdminCheck gets called. Once called, the plugin checks to see if the database is connected. Basically it just sees if the MySQL handle is INVALID_HANDLE or not. If it is INVALID_HANDLE then nothing else happens. If the handle is valid, then we proceed to:
GetClientAuthId(Client, AuthId_Steam2, targetBuffer, sizeof(targetBuffer))
And then the rest of the stuff starts happening.
When I add logging commands into my code (literally a Log command between each line of code in the OnPlayerPostAdminCheck forward), I could then confirm for certain that the GetClientAuthId function was the one crashing the client.
When I tried replacing OnPlayerPostAdminCheck with OnClientAuthorized, it would crash the client before executing even the first line of code of my OnClientAuthorized function.
Quote:
Originally Posted by asherkin
The failure code 6 stuff is a symptom of the client crashing and a complete red herring, it's just Steam telling the server they're no longer playing the game so couldn't possibly be playing on the server.
|
This part makes sense.
Quote:
Originally Posted by asherkin
You are probably doing something once you have the SteamID that is causing the client's to crash, such as setting a bad model. Can't really help you without the ENTIRE source code.
|
For the time being, the plugin is exclusive to the server it is on. There will be a public release of it's core in the future, but any servers that wish to run the plugin will have to make their own modules for the plugin if they wish to have much of anything. Not to mention the plugin and modules combined make up over 20K lines of code. Also, the plugin is being designed to run accross multiple games, but the only engine-dependent thing done by the plugin when players have their stats loaded is their player models are set, but I have either switch statements or if statements to make sure only engine-compatible models are used for the current game engine. Even if I did use a bad model on accident, the players would just be walking error signs. Been there done that!
Also, Valve didn't update HL2DM for over a year. Then a few months ago they began releasing updates again, and ever since then they have been releasing updates fairly regularly. And we all know what happens when Valve tries to update or create something. HINT: It's never a good thing. It wasn't until those updates started up again that this error began even existing.