Raised This Month: $78 Target: $400
 19% 

[ANY] SteamWorks


Post New Thread Reply   
 
Thread Tools Display Modes
KorDen
Member
Join Date: Sep 2012
Old 11-30-2013 , 16:03   Re: [ANY] SteamWorks
Reply With Quote #21

Quote:
Originally Posted by KyleS View Post
Modulo is usually pretty slow. I guess the end result is the same, how we get there is slightly different ;)
Ah, forgot about bit operations at the night when wrote this code, thanks.

Will you add my MSVC config (and maybe compiled win version) to the first post? Or you will not support windows builds at all?

Last edited by KorDen; 11-30-2013 at 16:03.
KorDen is offline
V1SoR
Member
Join Date: Jan 2011
Old 01-05-2014 , 04:44   Re: [ANY] SteamWorks
Reply With Quote #22

Uncompilable with L4D2 SDK nor Source 2013 SDK. And the compiled version, despite loading fine in L4D2, doesn't generate anything, or generates random trash values.

Last edited by V1SoR; 01-05-2014 at 04:45.
V1SoR is offline
KorDen
Member
Join Date: Sep 2012
Old 01-05-2014 , 15:37   Re: [ANY] SteamWorks
Reply With Quote #23

Quote:
Originally Posted by V1SoR View Post
Uncompilable with L4D2 SDK nor Source 2013 SDK. And the compiled version, despite loading fine in L4D2, doesn't generate anything, or generates random trash values.
Have you replaced auth libraries (from the first post)? Remember that they replaced back every time you run update script.

Last edited by KorDen; 01-05-2014 at 15:37.
KorDen is offline
Dr. Greg House
Professional Troll,
Part-Time Asshole
Join Date: Jun 2010
Old 01-05-2014 , 17:49   Re: [ANY] SteamWorks
Reply With Quote #24

This needs the natives free to be kicked uses so that something similar can be done for L4D2 which is pretty much unplayable at the moment.
__________________
Santa or Satan?

Watch out when you're paying people for private requests! Most stuff already exists and you can hardly assess the quality of what you'll get, and if it's worth the money.
Dr. Greg House is offline
V1SoR
Member
Join Date: Jan 2011
Old 01-06-2014 , 02:34   Re: [ANY] SteamWorks
Reply With Quote #25

KorDen
Thanks, worked.

Dr. Greg House
Didn't quite understand what you said there. Did you mean that you want a way to detect "free-to-buy" Christmas players?

Last edited by V1SoR; 01-06-2014 at 03:52.
V1SoR is offline
Dr. Greg House
Professional Troll,
Part-Time Asshole
Join Date: Jun 2010
Old 01-06-2014 , 22:35   Re: [ANY] SteamWorks
Reply With Quote #26

Quote:
Originally Posted by V1SoR View Post
Dr. Greg House
Didn't quite understand what you said there. Did you mean that you want a way to detect "free-to-buy" Christmas players?
YES
__________________
Santa or Satan?

Watch out when you're paying people for private requests! Most stuff already exists and you can hardly assess the quality of what you'll get, and if it's worth the money.
Dr. Greg House is offline
KyleS
SourceMod Plugin Approver
Join Date: Jul 2009
Location: Segmentation Fault.
Old 01-08-2014 , 05:31   Re: [ANY] SteamWorks
Reply With Quote #27

If anyone's feeling brave, here's a WIP. I lied, there are a few natives, and forwards.

Steam_IsVACEnabled();
Steam_GetPublicIP(addr[4]);
Steam_GetPublicIPCell();
Steam_IsLoaded();
Steam_SetGameDescription(const String:sDesc[]);
Steam_IsConnected();
Steam_SetRule(const String:sKey[], const String:sValue[]);
Steam_ClearRules();
Steam_ForceHeartbeat();

And Forwards
Steam_SteamServersConnected
Steam_SteamServersConnectFailure(EResult);
Steam_SteamServersDisconnected(EResult);

If you have anything legacy from SteamTools and use it, let me know. If there's anything on ISteamClient, ISteamGameServer, ISteamUtils, ISteamNetworking, ISteamGameServerStats or ISteamHTTP again let me know. Things that require callbacks (like most stat functions / http) will come later. I'd say they wont, but at this point; might as well jump in and splash around. Natives are a bit strange in this, everything not explicit is a bool and will return false on failure.

Current Source is available: https://github.com/KyleSanderson/SteamWorks
Compiled From: https://github.com/KyleSanderson/Ste...90b0d2d7b2af85

Pull requests are definitely welcome; try to match the style

If you encounter a crash or something equally bizarre. It's a debug build; so if you attach a debugger and type `bt full` without back-ticks we can probably figure it out.
Attached Files
File Type: xz SteamWorks.ext.so.xz (45.7 KB, 82 views)

Last edited by KyleS; 01-08-2014 at 05:49.
KyleS is offline
KorDen
Member
Join Date: Sep 2012
Old 01-08-2014 , 06:30   Re: [ANY] SteamWorks
Reply With Quote #28

Quote:
Originally Posted by KyleS View Post
If anyone's feeling brave, here's a WIP. I lied, there are a few natives, and forwards.
oO

Do I understand it right, you want to implement SteamTools features that related to a server and doesn't require connection to Steam backend? (so you will not add e.g. gameplay stats?)

Question: is there a way to detect which version of auth libraries are on the server? E.g. to check before use SW_OnValidateClient?

Quote:
Originally Posted by Dr. Greg House View Post
This needs the natives free to be kicked uses so that something similar can be done for L4D2 which is pretty much unplayable at the moment.
I think you must use Steam_CheckClientSubscription/Steam_GetClientSubscription from SteamTools. Subs for F2P are 36144 (ROW), 36145 (DE), 36146 (AU)
Something like
PHP Code:
bool:IsClientF2P(client)
{
    new 
subIdsubCount Steam_GetNumClientSubscriptions(client);
    for (new 
0subCounti++)
    {
        
subId=Steam_GetClientSubscription(clienti);
        if (
36144 <= subId <= 36146)
        {
            return 
true;
        }
    }
    return 
false;


Last edited by KorDen; 01-08-2014 at 06:33.
KorDen is offline
KyleS
SourceMod Plugin Approver
Join Date: Jul 2009
Location: Segmentation Fault.
Old 01-08-2014 , 06:58   Re: [ANY] SteamWorks
Reply With Quote #29

Quote:
Originally Posted by KorDen View Post
Do I understand it right, you want to implement SteamTools features that related to a server and doesn't require connection to Steam backend? (so you will not add e.g. gameplay stats?)
This requires a lot more logic and planning to get the specific data the client has requested. I'm trying my best to not look at SteamTools (the only time I had to was with the strange implementation of Steam_GetPublicIP, I'm glad I did too; it was completely reversed...).
Quote:
Originally Posted by KorDen View Post
Question: is there a way to detect which version of auth libraries are on the server? E.g. to check before use SW_OnValidateClient?
There's probably a public version string available. It would be a guess as I don't think they actually bumped anything in the binary besides adding the member, but oh well.

Last edited by KyleS; 01-08-2014 at 06:58.
KyleS is offline
asherkin
SourceMod Developer
Join Date: Aug 2009
Location: OnGameFrame()
Old 01-08-2014 , 08:23   Re: [ANY] SteamWorks
Reply With Quote #30

Please use your own prefix rather than SteamTools' Steam_, people can't use both extensions on the same server currently as the names clash.
__________________
asherkin is offline
Reply


Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 01:44.


Powered by vBulletin®
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Theme made by Freecode