-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Ticket authentication, real csgo server #19
Comments
Since |
Remove condition tiny-csgo-client/include/client.hpp Line 1102 in 8ee4007
|
Hi, thanks for your work. I've tried your new commit and I've also tried today to get the reservation id when authenticating with ticket. Process exits in GCClient Init() function on line 55 so the GetServerReservationId function of GCClient won't even gets called when you don't have any steam client running. |
These checks are there for a reason. If you’re not really clear what you’re doing, any attempt to bypass would cause unexpected behavior like what you just encountered. tiny-csgo-client/include/client.hpp Lines 767 to 789 in 40f5107
GC communication is part of the steam api and require a running steam instance. If you want to use GC without steam, steam-user node library would help you. |
To join an official community server as authenticated user I need to gernerate the ticket via node and also request the reservation id for the target server and pass it via args to the client.hpp and set m_nServerReservationCookie the value of the received message from an externally GC instance. That should work. I was hoping to use your c++ GC Class to send other messages to GC after the user joined the community server. But probably it would still work if the user is connected to the server via the c++ process and the gc instance in node is sending the messages for the user. |
Exactly. And if you only want to authenticate players you can bypass the reservation id check on the server side and get rid of the whole GC implementation.
Indeed it can send other messages so I leave an async receive implementation for further development. I've tested commending players using tiny client and it works fine. |
Thats exactly what I am trying to do 😄 |
@tv1993 were you able to figure something out? |
I tried this (creating ticket and reservation with an external GC), however without a running steam instance (actual instance, the external GC is still running) after a short time (~10 seconds) the client gets kicked when connected to a VAC Secured Community Server. Log from client:
Log from server:
@yourmnbbn have you dealt with this/seen it before? Do I need to emulate vac entirely or am I missing something? |
I have a running steam instance and connect to a real csgo server.
Connect via:
tiny-csgo-client.exe -name xyz1 -ip 192.168.xxx.xxx -port 27015 -cport 28001
Client generates reservation id successfully and connects to server, server confirms.
That works fine.
But now, I'd like to join with pregenerated ticket via ticketgen. Account is logged into steam. ticketgen.exe executed to display the ticket and still running.
Executing
tiny-csgo-client.exe -name xyz2 -ip 192.168.xxx.xxx -port 27015 -cport 28002 -ticket \x14\x00[...]
Server just rejects connection
RejectConnection: 192.168.xxx.xxx:28002 - #Valve_Reject_Connect_From_Lobby
Looks like client is not generating the reservation id? What am I missing?
It's also possible to generate ticket from steam-user node library and pass the ticket to tiny client. Should I also request reservation id via protobuf
k_EMsgGCCStrike15_v2_ClientRequestJoinServerData
via node an pass reservation_id to tiny client as well? Im not that into protobuf, but probably im missing something when authenticating with -ticket option.The text was updated successfully, but these errors were encountered: