summaryrefslogtreecommitdiff
path: root/src/network/network_gui.cpp
AgeCommit message (Collapse)Author
2021-10-17Change: Don't use 'server address' string in server list when displaying an ↵Charles Pigott
invite code (#9615)
2021-10-03Add: [Network] Keep the refresh button in lowered state while refreshing (#9600)Patric Stout
This gives user visual feedback that the refresh is still pending, and prevents people from clicking again and again thinking nothing is happening. This is especially true for connections that fall back to TURN, as that takes a few seconds to kick in. Additionally, prevent clicking on the button again while a refresh is pending. This is only delaying a successful result.
2021-08-23Fix: [Network] show query errors in the server listing instead of error ↵Patric Stout
popup (#9506) When you are query several servers at once, it is rather unclear for which server you got a popup. Instead, show any errors on the server itself. This is only true for the query-part. Joining a server still gives an error popup to tell you about any issue.
2021-08-21Fix: [Network] crash when last-joined server that is no longer available (#9503)Patric Stout
If you update the server-list while not having last-joined selected and it is no longer available, the game crashed.
2021-08-18Fix #9492: show for what server a relay session is being created (#9494)Patric Stout
Currently it says "the server" which is a bit ambigious. Be more specific.
2021-08-18Fix: typo in the word "spectator" (tnx Heiki) (#9496)Patric Stout
2021-08-15Add: open Online Players GUI on starting/joining a server (#9479)Patric Stout
2021-08-14Feature: make "join game" button join the game, instead of first showing a ↵Patric Stout
lobby window (#9467) Nobody really paid attention to the lobby window, and it completely missed its purpose. Most people don't even wait for companies to show up, but just hit "New Company". This in turn means people create a lot of unneeded companies, while they "just want to watch the game" or join another company. Instead, "Join Game" now just joins the game as spectators.
2021-08-14Fix 508e465b: network servers didn't show invite-code / connection-type in ↵Patric Stout
Online Players GUI (#9478) The selector selects the first widget, which by accident was now only the server visibility.
2021-08-14Add: synchronize server name to clients and display in Online Players GUI ↵Patric Stout
(#9472)
2021-08-10Change: remove the ability to control "max spectators" (#9466)Patric Stout
Soon we will make "join game" join the game as spectator first, so limiting the amount of spectators makes no sense anymore in that context. Not sure it ever did make sense.
2021-07-21Cleanup: remove some references to the old master-serverRubidium
2021-07-20Feature: allow the use of TURN to connect client and server togetherPatric Stout
TURN is a last resort, used only if all other methods failed. TURN is a relay approach to connect client and server together, where openttd.org (by default) is the middleman. It is very unlikely either the client or server cannot connect to the STUN server, as they are both already connected to the Game Coordinator. But in the odd case it does fail, estabilishing the connection fails without any further possibility to recover.
2021-07-14Add: inform clients what game-script a server is running (#9441)Patric Stout
Co-authored-by: The Dude <thedude@novapolis.net>
2021-07-11Add: allow setting your server visibility to "invite-only" (#9434)Patric Stout
In this mode you do register to the Game Coordinator, but your server will not show up in the public server listing. You can give your friends the invite code of the server with which they can join.
2021-07-11Feature: join servers based on their invite codePatric Stout
This removes the need to know a server IP to join it. Invite codes are small (~7 characters) indentifiers for servers, which can be exchanged with other players to join the servers.
2021-07-10Add: use Game Coordinator to get latest public server listingPatric Stout
2021-07-10Add: use Game Coordinator to annouce public serversPatric Stout
2021-06-28Add: Show the number of clients and companies in the online players window ↵TELK
(#9376)
2021-06-26Codechange: [Network] Remove overload on NetworkValidateClientNamerubidium42
Rename the zero-parameter NetworkValidateClientName to NetworkValidateOurClientName to make it clearer it is performed on our client name, and to make it a non-overloaded function to aid with the variant being added a few commits later
2021-06-15Fix: you could join an AI company in multiplayer via the GUI (#9369)SamuXarick
2021-06-13Fix #9362: Hover in online players window was slightly too big (#9364)TELK
This causes graphical glitches at the bottom of the window.
2021-05-30Codechange: [Network] Use std::string for server side logic of kicking and ↵rubidium42
banning clients
2021-05-29Codechange: Rename window related DeleteXXX to match new behaviourglx22
2021-05-29Fix f6d5c01: Delay deletion when closing windowsglx22
2021-05-29Codechange: [Network] Use std::string in CommandPacketrubidium42
2021-05-29Fix: [Network] Prevent an empty server name to be set anywhererubidium42
2021-05-29Codechange: split Write_ValidateSetting to get separate functions for making ↵rubidium42
strings valid and writing strings
2021-05-27Cleanup: remove unneeded temporary variables and castsrubidium42
2021-05-27Codechange: just pass the SettingDesc to SetSettingValue and remove ↵rubidium42
distinction between (non)company
2021-05-16Codechange: [Network] Let NetworkCompanyInfo use std::stringrubidium42
2021-05-13Codechange: move client name in settings to std::stringrubidium42
2021-05-13Codechange: move server name/id in settings to std::stringrubidium42
2021-05-13Codechange: move hostnames in settings to std::stringrubidium42
2021-05-13Codechange: move passwords in settings to std::stringrubidium42
2021-05-13Change: further support for std::string in settingsrubidium42
2021-05-11Fix: [Network] don't rebuild the host-list during iterating the list (#9240)Patric Stout
Additionally, only rebuild it when we added a new manual server, as otherwise it is a noop anyway.
2021-05-11Fix: [Network] don't mark the last-joined server as manual (#9239)Patric Stout
2021-05-09Fix: lobby window doesn't close if no connection could be established (#9223)Patric Stout
2021-05-06Codechange: [Network] Use std::string for NetworkGameInforubidium42
2021-05-05Codechange: use connection_string in favour of NetworkAddress (#9197)Patric Stout
We now resolve the connection_string to a NetworkAddress in a much later state. This means there are fewer places constructing a NetworkAddress. The main benefit of this is in later PRs that introduce different types of NetworkAddresses. Storing this in things like NetworkGameList is rather complex, especially as NetworkAddress has to be mutable at all times. Additionally, the NetworkAddress is a complex object to store simple information: how to connect to this server.
2021-05-05Codechange: [Network] Use a single NetworkServerGameInfo object at server ↵rubidium42
side and serialize that for the clients
2021-04-30Fix: Recalculate padding and minimum sizes when GUI or Font zoom is changed.Peter Nelson
2021-04-30Change: use TCP for everything except for master-server and initial server ↵Patric Stout
scan (#9130) This means that pressing Refresh button and adding servers manually now uses TCP. The master-server and initial scan are still UDP as they will be replaced by Game Coordinator; no need to change this now. If we query a server that is too old, show a proper warning to the user informing him the server is too old.
2021-04-29Codechange: use NetworkAddress instead of two host/port variables where possiblePatric Stout
This also means we no longer need last_host/last_port, but can just use a single last_joined setting.
2021-04-29Codechange: use std::string over stack-based strings if possiblePatric Stout
2021-04-27Change: no longer use UDP when entering the lobby of a serverPatric Stout
The lobby of a server requested some parts via UDP and some via TCP. This is strictly seen fine, but for future extensions it is a lot easier if just one protocol is used.
2021-04-27Codechange: [Network] Do not leak os_abstraction.h via network_funcrubidium42
2021-04-24Change: use icons to indicate you/host in Online Players GUIPatric Stout
2021-04-24Add: move "New Company" inside the Online Players GUIPatric Stout