serverstf / python-valve

A Python Interface to various Valve products and services
Other
235 stars 71 forks source link

Arma III timeout #63

Open Cightline opened 6 years ago

Cightline commented 6 years ago

I'm getting a timeout while looking up Arma III servers.

python-valve version: 0.2.1 python version 3.5.3 and 3.6.3

Tested on Debian and Arch using this code https://gist.github.com/Cightline/12c6def0bddce9bb3a88335895f809c1

One test was on my local machine, the other was on a VPS.

Here is the output:

Looking up servers...
Oslund
Wisconsinites United [Private]
The Mess Around Server
Buddhatao Resurrected
Beard's Operational Training Server
RDP - Liberation
Serbedzija
[BR] SNIPERS SEALS TEAM - HARDCORE - em MANUTENCAO
Asylum #4 : Altis Life | HOUSING | PERM GANGS | TERRITORY | Vig
Krakk a Lakkin
8th Marine Battalion Private Operation
3rd Infantry Division Realism Server |ts.3rdinf.us
3rd Infantry Division Training Server |ts.3rdinf.us
S&W Liberation
Take2
3rd Infantry Division Public Server |ts.3rdinf.us
Exile Subsistence - Thirsk Remastered (64 Bit)
DEFKON Gaming WL Test Server
[JAC] ALiVE | NATO Invasion
DEFKON Gaming | Tanoa W-Land | Powered by GoServerzone | Day | 
DEFKON-G Tanoa|Exile|FullMilitarized|PVE/PVP|100KStart|Revive
DEFKON Gaming Exile Test Server
Stray Rounds' Dedicated Server
Raven Sword Corporation
The Breakfast Club Arma3 Server
Nodgaming.com - King Of The Hill - US #1 - Infantry | InitialSe
CGS ArmA III Server
ZG Gaming Altis Life v5.0(1.80)
TFAthens.com - King Of The Hill – Infantry | InitialServers.c
[DTG] DoubleTapGamer.com - King Of The Hill - US Infantry 24/7 
Test Exile - hosted @ InitialServers.com
TeamExclusive - King Of The Hill 24/7 Day - Infantry | InitialS
[US]Fazed and Confused Exile
Insurgency - hosted @ InitialServers.com
Optixhosting,net
ZRArmy.com - D1 - Dallas,TX USA
FlufyBuny's ARMA 3 Server
_BiB_ Arma3 Server-CA-US#3
 [COOP] TFT8.com | US Public
Clan ArgA ARGENTINA - www.clanarga.com.ar
Blackwater Realism Unit // Operations Server ACE
=AVRW= Advanced Virtual Warfare Server
Exception: Timed out waiting for response

@vin173 has mentioned that Bohemia Interactive changed their protocol, I'm not sure what that would mean to you guys.

Here are a couple links from BI: https://community.bistudio.com/wiki/STEAMWORKSquery https://community.bistudio.com/wiki/Arma_3_ServerBrowserProtocol2

Yepoleb commented 6 years ago

The master server has been deprecated for a while now and seems to be broken, maybe steam.client.builtins.gameservers.SteamGameServers from https://github.com/ValvePython/steam works better.

overfl0 commented 6 years ago

@Cightline your timeout is because the master server yields a list of servers that are not responding at the time (or your UDP packets are dropped because of network congestion).

The code that you're using doesn't have a second try/except placed in such a way that the failure of a single server to respond to your query will stop your whole script, instead of just marking that one server as unresponsive.

See my PR above.

After adding the try/except statements, the code raises further exceptions later but I think that they have already been reported as separate issues in the github issue tracker.

Cightline commented 6 years ago

@overfl0 Ok sweet. Thanks for the update.