Age | Commit message (Collapse) | Author | |
---|---|---|---|
2021-09-19 | Add: [Network] external chat messages for remote admins (#9563) | dP | |
2021-09-11 | Add: support filtering content entries for patchpacks (#9541) | Patric Stout | |
This changes nothing for us, but allows patchpacks to add the right pieces of code to start filtering content entries on patchpack only entries. | |||
2021-08-28 | Fix: when DNS didn't resolve any IPs, the debug message was misleading (#9519) | Patric Stout | |
2021-08-17 | Fix: report reuse of invite-code and switch to local game-type (#9487) | Patric Stout | |
This prevents two servers battling for the same invite-code. Now the last one wins. | |||
2021-08-14 | Remove: COMPANY_INFO packets and related code (#9475) | Patric Stout | |
2021-08-14 | Feature: 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-10 | Change: 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-21 | Cleanup: remove some references to the old master-server | Rubidium | |
2021-07-21 | Fix: crash when joining a server again after a TCP disconnect (#9453) | Patric Stout | |
"my_client" wasn't always free'd when a game ended. "my_client" keeps a reference inside the PT_NCLIENT pool. The rest of the code assumes that when you are not in a game, it can freely reset this pool. In result: several ways to trigger a use-after-free. | |||
2021-07-20 | Feature: allow the use of TURN to connect client and server together | Patric 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-18 | Feature: [Game Coordinator] Send NewGRF names to the client | Rubidium | |
2021-07-18 | Feature: [Network] Optionally send NewGRF names with NewGRFs in GameInfo | rubidium42 | |
Before 8a2da49 the NewGRF names were synchronized using UDP packets, however those have been removed. With this a new version of the GameInfo packet is introduced that allows to specify the type of serialisation happens for NewGRFs. Either only the GRF ID and checksum, or those two plus the name of the NewGRF. On this request for local servers will send the NewGRFs names. The Game Coordinator will get the names on the first registration, and after that only the GRF ID and checksum. | |||
2021-07-18 | Fix c921f6d: [Network] Documentation of Game Info packet was not updated | rubidium42 | |
2021-07-18 | Remove: the concept of UnknownGRFs | rubidium42 | |
These were filled with "<Unknown>" (before 8a2da49) and later their name would get filled via UDP requests to the server. These UDP packets do not exist anymore, so they will always remain "<Unknown>". Remove that logic and just use the generic translated error GRF UNKNOWN string instead. | |||
2021-07-16 | Feature: allow the use of STUN to connect client and server together | Patric Stout | |
This method doesn't require port-forwarding to be used, and works for most common NAT routers in home setups. But, for sure it doesn't work for all setups, and not everyone will be able to use this. | |||
2021-07-16 | Codechange: allow Connect() to bind to a local address | Patric Stout | |
2021-07-14 | Add: inform clients what game-script a server is running (#9441) | Patric Stout | |
Co-authored-by: The Dude <thedude@novapolis.net> | |||
2021-07-11 | Feature: join servers based on their invite code | Patric 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-11 | Change: groundwork to allow ServerAddress to use invite codes | Patric Stout | |
Normally TCPConnecter will do a DNS resolving of the connection_string and connect to it. But for SERVER_ADDRESS_INVITE_CODE this is different: the Game Coordinator does the "resolving". This means we need to allow TCPConnecter to not setup a connection and allow it to be told when a connection has been setup by an external (to TCPConnecter) part of the code. We do this by telling the (active) socket for the connection. This means the rest of the code doesn't need to know the TCPConnecter is not doing a simple resolve+connect. The rest of the code only cares the connection is established; not how it was established. | |||
2021-07-11 | Codechange: track servers with a ServerAddress instead of a NetworkAddress | Patric Stout | |
This allows future extensions to have different ways of referencing a server, instead of forcing to use IP:port. | |||
2021-07-11 | Feature: raise the maximum NewGRF limit to 255 | Patric Stout | |
2021-07-10 | Feature: allow setting (game) coordinator and content server connection ↵ | Rubidium | |
strings using environment variables OTTD_COORDINATOR_CS for the game coordinator defaults to coordinator.openttd.org:3976 OTTD_CONTENT_SERVER_CS for the content server defaults to content.openttd.org:3978 OTTD_CONTENT_MIRROR_CS for the content mirror server defaults to binaries.openttd.org:80 | |||
2021-07-10 | Remove: unused UDP protocol parts | Patric Stout | |
2021-07-10 | Remove: old server listing via Master Server | Patric Stout | |
This removes all UDP from the game except for a local broadcast to find LAN games. So long Master Server, and tnx for all the fish! | |||
2021-07-10 | Add: use Game Coordinator to get latest public server listing | Patric Stout | |
2021-07-10 | Add: use Game Coordinator to annouce public servers | Patric Stout | |
2021-07-08 | Fix 9e32c618: network revision was always empty (#9419) | Patric Stout | |
Shadowing the variable you intend to write in tends to do that ;) | |||
2021-06-29 | Fix f7e390bd: freeaddrinfo() is not guaranteed to handle a nullptr graceful ↵ | Patric Stout | |
(#9404) | |||
2021-06-17 | Cleanup: use nullptr instead of 0 or NULL | Rubidium | |
2021-06-15 | Codechange: [Network] Use string_view for network compatability check | rubidium42 | |
2021-06-15 | Codechange: [Network] Simplify constructing the HTTP request with fmt | rubidium42 | |
2021-06-15 | Codechange: [Network] Let NetworkError return its std::string instead of a ↵ | rubidium42 | |
C-string | |||
2021-06-15 | Codechange: [Network] Make hostname/client IP return strings instead of a ↵ | rubidium42 | |
C-string | |||
2021-06-15 | Codechange: [Network] Let IsInNetmask use std::string | rubidium42 | |
2021-06-15 | Codechange: [Network] Simplify formatting of network addresses to string | rubidium42 | |
2021-06-14 | Fix: [Network] Determining GetNetworkRevisionString could overflow and ↵ | rubidium42 | |
underflow its buffer Tagged releases are not affected | |||
2021-06-13 | Codechange: convert printf DEBUG statements to fmt Debug statements | rubidium42 | |
2021-06-13 | Fix #9361, a2051ba: [Network] Off by one in CanWriteToPacket | rubidium42 | |
Previously it did not allow writing a byte to a packet that was of size limit - 1 anymore. | |||
2021-06-10 | Cleanup: [Network] Remove C-string Recv_string and its last use | rubidium42 | |
2021-06-10 | Cleanup: [ContentInfo] Remove some functions that are not needed anymore | rubidium42 | |
2021-06-10 | Codechange: [ContentInfo] Use std::string instead of string buffers | rubidium42 | |
2021-06-10 | Codechange: [ContentInfo] Use a vector for dependencies instead of custom ↵ | rubidium42 | |
allocation | |||
2021-06-10 | Codechange: [ContentInfo] Use StringList for tags instead of custom allocations | rubidium42 | |
2021-06-10 | Codechange: [ContentInfo] Do not use memset/memcpy to make it possible to ↵ | rubidium42 | |
use vector/string | |||
2021-06-10 | Cleanup: [ContentInfo] Remove unused function | rubidium42 | |
2021-05-30 | Codechange: [Network] Make admin name and version std::string | rubidium42 | |
2021-05-29 | Codechange: rename str_validate to StrMakeValid(InPlace) (#9304) | Patric Stout | |
This to be more explicit the function changes the value, and not returns yes/no. | |||
2021-05-24 | Fix: Network on Haiku, remove old code for BeOS | milek7 | |
2021-05-15 | Change: Use gender-neutral pronouns | rubidium42 | |
2021-05-15 | Fix: comparison of narrow type to wide type in loop (potential for infinite ↵ | Rubidium | |
loops) |