Comments (10)
Thanks for all the hard work Yepoleb!
from python-a2s.
Thanks for the heads up! This shouldn't be too difficult to implement.
from python-a2s.
I've committed this in a branch and will merge it as soon as the feature in Steam leaves beta. Currently the padding is not configurable, but I might add it for compatibility later if there is a relevant number of servers that doesn't implement the change. Official policy is still "it's not supported if Steam doesn't support it" but it might be worth it to make an exception here. https://github.com/Yepoleb/python-a2s/tree/padding
from python-a2s.
Wonderful, looks like it's working, thanks!
from python-a2s.
Heads up, it looks like Valve is changing the approach they're using for the A2S_INFO changes due to the padding triggering existing Anti-DDoS filters:
https://steamcommunity.com/discussions/forum/14/2989789048633291344/#c2974028351329871253
from python-a2s.
Thanks, will implement this as soon as possible.
from python-a2s.
it seems like they implemented it already in official client. And [here] is link mentioned in the changelogs
P.S. For now my test script and project is working fine with ARK: Survival Evolved.
from python-a2s.
I found test server with new format (138.201.84.93:27113) and this library doesn't wotk with it at all. Here is stack trace:
Received single packet: b'A\xad $\x00'
Traceback (most recent call last):
File "test.py", line 22, in <module>
server = a2s.info(address)
File "D:\Projects\Current\ARK Server monitor\lib\site-packages\a2s\info.py", line 272, in info
return info_response(resp_data, ping, encoding)
File "D:\Projects\Current\ARK Server monitor\lib\site-packages\a2s\info.py", line 259, in info_response
"Invalid response type: " + str(response_type))
a2s.exceptions.BrokenMessageError: Invalid response type: 65
I took it from responce here:
Thanks for the information.
I successfully tested the new protocol with this configuration:
- TOXIKK game server (app id 324810)
- dropped the dlls from the zip you linked above into C:\steamcmd\steamapps\common\TOXIKK\Binaries\Win32, replacing the older DLLs that are shipped with the game
- setting STEAM_GAMESERVER_A2S_INFO_REQUIRE_CHALLENGE=1
- started the server
The Steam Client's built-in browser (View / Servers) and also the game's internal server browser did not show my server before I opted-in to the steam client beta. After beta opt-in the server was listed again in both.
My SteamServerBrowser app constructs UDP query packets directly without steamclient.dll and works now too after a bug fix. I can confirm that the server is sending a challenge as expected.
If anyone needs a server for testing, you can use mine: 138.201.84.93:27113
And also this author implemented that in his client : https://github.com/PredatH0r/SteamServerBrowser
from python-a2s.
I did not have a test server and that delayed the implementation, but with a public one I can move forward much quicker. Thanks for the hint!
from python-a2s.
Implemented in a453675
from python-a2s.
Related Issues (20)
- Settings being returned are encrypted HOT 9
- a2s.players name doesn't work for "7 Days to Die" HOT 4
- Is it possible to query every server ? HOT 1
- Question HOT 3
- How do i get an output?
- A2S_RULES not decoding correctly ? HOT 13
- [Question] Multiple Query HOT 1
- Is it possible to to see if player is on CT or T Side? HOT 1
- Rust server returning random player names instead of actual player names when using a2s.players HOT 3
- S2C_CHALLENGE support? HOT 3
- implementing player steamid's if connected using steam HOT 1
- Strange a2s.exceptions.BufferExhaustedError HOT 3
- Proposal: add A2S_PING for query server HOT 1
- Rust server names HOT 2
- query is inaccurate HOT 1
- suggestion HOT 1
- Class attribute docstrings show wrong values. HOT 3
- player_count HOT 2
- Request: Get MvM Mission and wave progress HOT 2
- Which ports need to be unblocked, for a2s to work? HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from python-a2s.