[0.13] Add a ping column to the multiplayer games browser

Post your ideas and suggestions how to improve the game.

Moderator: ickputzdirwech

User avatar
Dev-iL
Filter Inserter
Filter Inserter
Posts: 304
Joined: Thu Jul 02, 2015 2:48 pm
Contact:

[0.13] Add a ping column to the multiplayer games browser

Post by Dev-iL »

Having to do this manually is quite tedious.....
Also, please not before you take care of this issue :)
Last edited by ssilk on Tue Jun 28, 2016 7:14 pm, edited 1 time in total.
Reason: Added 0.13 tag to get better overview in suggestions
Leading Hebrew translator of Factorio.
criggster
Manual Inserter
Manual Inserter
Posts: 1
Joined: Sat Jul 02, 2016 5:19 am
Contact:

a

Post by criggster »

a
Last edited by criggster on Wed Oct 30, 2019 2:28 am, edited 1 time in total.
Koub
Global Moderator
Global Moderator
Posts: 7784
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: [0.13] Add a ping column to the multiplayer games browser

Post by Koub »

[Koub] Topics merged, it seems to me they're suggesting the same thing
Koub - Please consider English is not my native language.
kane.nexus
Burner Inserter
Burner Inserter
Posts: 18
Joined: Sat May 07, 2016 10:54 am
Contact:

Re: [0.13] Add a ping column to the multiplayer games browser

Post by kane.nexus »

I would love a sortable ping column in the multiplayer section because browsing for games with low ping (for me) has been a frustrating endeavor because most servers result in "can't reach" and I have to wait for about a minute for the result.

http://www.speedtest.net/my-result/5479882963
Image
My ping should be fine but most servers can't be reached for some reason and a column that shows the ping would save me a lot of time looking for servers
dinodod
Long Handed Inserter
Long Handed Inserter
Posts: 84
Joined: Tue Mar 10, 2015 10:42 pm
Contact:

Re: [0.13] Add a ping column to the multiplayer games browser

Post by dinodod »

There is a ping counter in the details of the server properties when you click on one. We need to be able to sort by ping and filter if > xx ms.
SirGouki
Burner Inserter
Burner Inserter
Posts: 5
Joined: Sat Dec 16, 2017 7:06 pm
Contact:

Ping sortable server browser

Post by SirGouki »

As the name suggests, it would be beneficial to move ping from the server details to the actual list, and let it be a sortable column. This is beneficial to players because they can immediately see what servers they have the best connection to instead of having to go down the list clicking servers until they find the ones with the least latency. Allowing the server list to be sorted in this manner further reduces the time it would then take for a player to choose a server that's more optimal to their connection. I just recently got this game for my birthday (finally!) and this was one of the things I noticed seems odd. Most PC games I've ever played where players can host dedicated servers has this functionality in the server browser.


Edit: removed 2nd suggestion per the rules.
Last edited by SirGouki on Sat Dec 16, 2017 8:31 pm, edited 1 time in total.
Loewchen
Global Moderator
Global Moderator
Posts: 9196
Joined: Wed Jan 07, 2015 5:53 pm
Contact:

Re: Ping sortable server browser

Post by Loewchen »

This information can not be obtained by the matchmaking server, what you are looking for is YOUR latency to the game servers, and you certainly would not want every client to ping every server on the server list upon downloading it or no one would want to put their server on that list anymore.
SirGouki
Burner Inserter
Burner Inserter
Posts: 5
Joined: Sat Dec 16, 2017 7:06 pm
Contact:

Re: Ping sortable server browser

Post by SirGouki »

Loewchen wrote:This information can not be obtained by the matchmaking server, what you are looking for is YOUR latency to the game servers, and you certainly would not want every client to ping every server on the server list upon downloading it or no one would want to put their server on that list anymore.
What is different about the ping in this game, vs. say the Battlefield franchise, which allows players to rent, or even host dedicated servers like factorio does, that would cause a single client to lag a server by pinging it? If that was the case, clicking on the server would be causing the same problems, with your same expected results. The act of even contacting the server to get the name, ip address, etc. would cause the same problems, which the server browser already does automatically when you go into it. I'm not suggesting it to constantly ping, I'm suggesting moving the ping from the action of selecting the server, to the action that refreshes the list of servers, or simply just moving the display of it from where it is to the list, that way once you click on the server, it occupies that field and can be sorted. This would affect the client more than anything else. And yes, I mean the client latency to the server, I was unaware that could be taken any other way.

Edit: not trying to be argumentative, I realize I might be coming off that way, I am merely trying to understand why you think people wouldn't want their server in a server browser that already does a ping command, if the occurrence of that action simply moved. I have experience with running servers and such, and have never seen this cause an issue. Also, A LOT of steam games provide this functionality, so if that's what you meant by the match making server not allowing it, I'm even more confused.
Zavian
Smart Inserter
Smart Inserter
Posts: 1649
Joined: Thu Mar 02, 2017 2:57 am
Contact:

Re: Ping sortable server browser

Post by Zavian »

But what you are proposing is 1000s of clients pinging 1000s of servers. Because in order to get the ping for every server, (which you would need to do so it can be a sortable column) you need to ping every server. And every client that opens the multiplayer browser will also be pinging every server.

Also for players that don't have a good internet connection, then attempting send 1000s of pings to 1000s of servers simultaneously will just mean that many of those pings either get dropped or delayed by their internet connection, meaning that the ping statistic the game reports wouldn't be accurate anyway.
BenSeidel
Filter Inserter
Filter Inserter
Posts: 590
Joined: Tue Jun 28, 2016 1:44 am
Contact:

Re: Ping sortable server browser

Post by BenSeidel »

Zavian wrote:Also for players that don't have a good internet connection
Don't create systems to the lowest common denominator. If you apply this mentality to the graphics options then we would only have low-quality graphics. If some of your users are able to do something, but some aren't ADD AN OPTION.

Instead look at it from an optimisation standpoint. If your Internet is bad then pinging all the servers is something you want to do! Otherwise you have to connect to each server, download & load the map before you are able to tell if the server is playable. In all cases waiting for all the pings to arrive back is better than even connecting to a single server.

Ping is a really important measure for any gamer. Please give us the option to auto-ping & sort by the servers ping.
Zeblote
Filter Inserter
Filter Inserter
Posts: 973
Joined: Fri Oct 31, 2014 11:55 am
Contact:

Re: Ping sortable server browser

Post by Zeblote »

Loewchen wrote:This information can not be obtained by the matchmaking server, what you are looking for is YOUR latency to the game servers, and you certainly would not want every client to ping every server on the server list upon downloading it or no one would want to put their server on that list anymore.
A ping packet is extremely small and simple to process. A server could easily handle thousands of them per second with no side effects, and unless factorio has billions of players there are not going to be thousands of people refreshing the list at the exact same second.
Zavian
Smart Inserter
Smart Inserter
Posts: 1649
Joined: Thu Mar 02, 2017 2:57 am
Contact:

Re: Ping sortable server browser

Post by Zavian »

BenSeidel wrote:
Zavian wrote:Also for players that don't have a good internet connection
Don't create systems to the lowest common denominator. If you apply this mentality to the graphics options then we would only have low-quality graphics. If some of your users are able to do something, but some aren't ADD AN OPTION.
Too many options are bad ui design. An option page with 10 different categories each with 20+ options overloads users such that they don't find the option they are looking for. That results in more posts to technical support and bug forums, about issues the users would otherwise have managed to solve themselves. They just didn't find the right option. (Alternatively some of them probably enabled an option that had detrimental effects that they didn't understand. When they come across the detrimental effect they then blame the developers and the game, not realising that they have enabled an option that isn't appropriate for their computer). Options are best saved for "we want to support X but we also need to support Y", and where X and Y are mutually incompatible.

Take graphics options. If the devs thought they could give everyone high res graphics, without running into memory/fill rate/performance issues and tanking the frame rate for players with older/slower GPUs, then I expect graphics options would consist of just fullscreen [yes/no], vsync [on/off] and UI Scaling factor []. Even then they would probably prefer to get rid of UI scaling if they thought they could. Almost all the graphics options are tweaks to reduce the load on older/slower/less powerful GPUs.

If you implement all the options someone suggests, then you end up with options to disable train deaths. Options to enable trains deaths even when friendly fire is off. Options so that if you get hit by a train you go flying (instead of dying), options so that if get hit by a train you remain standing on the tracks, and the trains just instantly stops. (Then options for the train to take damage in both those cases). Options for longer reach, longer mining range, smaller hitboxes (similar to squeak through). Player belt immunity, car belt immunity, electric power transmission costs, bots which can't be mined, biters ignoring bots that path over them;more inserters; less inserter; options to enable loaders; probably options to enable sideloading to compress belts, inserters compressing belts, inserting into undergrounds to compress belts, disabling/enabling belt braiding, disabling/enabling lane splitting using undergrounds.

Each of those options is more code the devs have to design, write, optimize, balance and maintain, and more code that potentially contains bugs that manifest when they change something else, or only appear with particular combinations of options. They make the code more complex, which means the devs are more likely to add new bugs, and break something whilst trying to fix/change something else. (Witness 0.16.3 breaking texture compression when the devs fixed another bug in the rendering pipeline).

None of this means the devs can't add an option for this if they want. But I wish people would stop with "That's a cool idea. I understand not everyone will want it, so the devs should make it an option". Lots of those cool ideas can be done through mods, and that adds a lot of good ideas to the game. But lots of them would require code changes to the c++ part of the game. And that's something that should only be done if the devs are convinced the change is worthwhile. (As I said earlier, and as i repeat in more detail down below, I don't think this will work well in practice for players with poor connections, and as such it isn't a good idea, but ultimately my opinion doesn't matter. The only opinion that does matter is the devs).
Instead look at it from an optimisation standpoint. If your Internet is bad then pinging all the servers is something you want to do! Otherwise you have to connect to each server, download & load the map before you are able to tell if the server is playable. In all cases waiting for all the pings to arrive back is better than even connecting to a single server.

Ping is a really important measure for any gamer. Please give us the option to auto-ping & sort by the servers ping.
First the last sentence. I've never really cared about ping times for factorio. All the servers I've played factorio on have been located in Europe or North America, with a roughly 250ms ping from Australia. Yet I hardly ever notice lag. Occasionally when fighting biters, or when I'm crossing train tracks and a train comes whizzing by, but most of the time I don't notice it. (Yes if this was a shooter or a fast paced action or rts game, then low lag would be more important, but in factorio I typically don't notice it). Much more important to me is such things as what type of map (railworld, or deathworld or some other scenario), what mods (vanilla, qol mods, or bobs+angels), how many players online now, how old is the map, what's in the server description, whether I need a password, and whether this a server, or a group of players I've played with before. (I do understand that for some players, especially those who do lots of fighting before they get fully equipped, that ping is more important. But for me it isn't important enough to ever want to sort by. Also you are aware that the in game browser will get the ping for any server, you don't need to download the map first?)

Only twice have I ever had an unplayable connections. Both time it was on servers located in europe I had played on many times before. Both times pings were normal. In both cases next day the same servers were fine.

Atm according to speedtest.net my upload speed is about 340 kbps. (I have an adsl connection that is theoretically 512kbps upload, but in practice I get less. Download speed atm is 3.4Mbps, though during off peak times, I often get 12Mbps down). Now if I understand my adsl connection properly, the smallest packet it can transfer is 48 bytes. Anything smaller will be padded up to 48 bytes (and anything larger will be broken up into multiple 48 byte cells). If the factorio developers were to ping every server as fast as my computer can send packets, my computer would probably be done in less than 10 ms. But it would take my modem roughly 1129 ms to transmit those packets. (Assuming 48 byte packets or smaller, we want to transmit 48 bytes x 8bits per byte x 1000 servers = 384000 bits. Upload speed of 340 bits per millisecond. 384000/340 =1129ms).

If factorio just sent the packets asap, and didn't add code to try to detect congestion, and then backoff and retest, then it will have no way of knowing whether a high ping of 600ms is because the round trip time to the server was 500ms, or because my upload speed is slow and the outbound ping spent 550ms waiting in my routers transmit buffer. (Also I have a router that does NAT. I have no idea how well it will handle 1000 outgoing packets to different ip addresses. It's at least possible that factorio would overflow it's address translation table resulting in factorio never getting replies to some of it's pings, and factorio needing to either retest, or assume that I can't connect to that server). The simplest way to get a rough ping time that is likely to resemble realistic in game pings would be to send 1 ping every 16ms. Even then you ideally want to send 3-4 packets per server spread over at least 500ms, otherwise a simple thing like windows checking for updates, or my email client downloading mail might temporarily fill my modems transmit buffer with 100ms worth of data at just the wrong time, and result in a server being listed with an inflated ping.

So if the ping time is going to be an accurate and reliable indicator of what I can really expect in game, then sending one packet every 16ms, Factorio would need about 16 seconds to test the ping of 1000 servers, even if it only sent one packet to each server. If it wanted something more reliable, then it would need, about 48 to 64 seconds, for 3 or 4 packets per server. Even 16 seconds is probably too long to wait for the ping column to populate. If I wanted this bit to be optimised, then for me the best way is to pick a server I'm interested in (server description, number of players, playtime of map, mods used), then if I want I can check the ping time right before I press connect. (I do get that other people may prioritise pingtime way higher than I do, but again, I don't think pinging servers is going to actually work well in practice, at least for people like me with relatively slow adsl connections).
Zeblote
Filter Inserter
Filter Inserter
Posts: 973
Joined: Fri Oct 31, 2014 11:55 am
Contact:

Re: Ping sortable server browser

Post by Zeblote »

Zavian wrote:Atm according to speedtest.net my upload speed is about 340 kbps.
That honestly is laughable in 2017. My upload speed is 40Mbit/s and my game should not be limited because some people still have 3rd world internet.
User avatar
Dev-iL
Filter Inserter
Filter Inserter
Posts: 304
Joined: Thu Jul 02, 2015 2:48 pm
Contact:

Re: Ping sortable server browser

Post by Dev-iL »

This was suggested in the past viewtopic.php?f=6&t=27186
:geek:
Leading Hebrew translator of Factorio.
raymondwilliams
Manual Inserter
Manual Inserter
Posts: 2
Joined: Wed Jan 17, 2018 8:58 am
Contact:

Server sorted by ping.

Post by raymondwilliams »

I hope this will be an easy upgrade, but when you list multi-player servers, you can sort by number of players, but it's better that you can also sort by ping.
Lots of time I found a potential game, but the ping is very high so I need to pick one.
https://www.google.com.vn/
Koub
Global Moderator
Global Moderator
Posts: 7784
Joined: Fri May 30, 2014 8:54 am
Contact:

Re: Ping sortable server browser

Post by Koub »

[Koub] Merged into older topic with same suggestion.
Koub - Please consider English is not my native language.
Post Reply

Return to “Ideas and Suggestions”