Paul Chote
6b6b1e56e6
Resolve random players and spawn points in server replays.
2020-10-31 14:31:44 +01:00
Matthias Mailänder
4da14cee0a
Disable UPnP on local games.
2020-10-16 18:14:33 +01:00
abcdefg30
1bc19e788c
Drop and log sync orders with mismatching length
2020-10-14 19:53:49 +02:00
abcdefg30
1861174d38
Add a Order.SyncHashOrderLength const
2020-10-14 19:53:49 +02:00
Clément Bœsch
815bbc6ee8
Save disconnect frame in the GameInformation
...
This information is useful to infer a winner in case the winstate is
unknown.
2020-10-10 01:17:39 +02:00
Clément Bœsch
ca8870a5cf
Server: handle wins/losses using Sync hash
...
Signed-off-by: Paul Chote <pchote@users.noreply.github.com >
2020-10-10 01:17:39 +02:00
Clément Bœsch
e5da58e2b4
Server: add basic replay recording
...
Signed-off-by: Paul Chote <pchote@users.noreply.github.com >
2020-10-10 01:17:39 +02:00
Paul Chote
0672553a07
Lock Server.LobbyInfo to prevent races with callback threads.
2020-10-04 20:31:07 +02:00
Aigamo
06a1c88e86
Replace 0x7FFFFFFF with int.MaxValue
2020-08-29 12:37:20 +01:00
teinarss
9c4fd0e3d3
Use Null-Propagation Operator
2020-08-19 18:11:07 +01:00
teinarss
27f1a7ab27
Use out var syntax
2020-08-19 18:11:07 +01:00
Matthias Mailänder
3a9b35980c
Revert "Reduce order latency locally"
...
This reverts commit 20e5219cf4 .
2020-07-21 21:58:31 +02:00
Adam Mitchell
20e5219cf4
Reduce order latency locally
2020-07-09 13:48:55 +02:00
jrb0001
bf397591f9
Implement IPv6 support for server and direct connect
2020-05-08 15:17:44 +02:00
Paul Chote
429dbe3e0c
Block profiles with revoked keys from joining auth-only servers.
2020-04-16 16:43:10 +02:00
Paul Chote
a63c17baab
Disable IP tooltip in skirmish games.
2020-04-15 23:16:24 +02:00
Paul Chote
9c4faddc0f
Switch GeoIP database from MaxMind to IP2Location.
...
The IP2Location data is licensed under CC BY-SA, which
allows us to distribute the database with releases.
2020-04-15 23:16:24 +02:00
Paul Chote
d6436858a9
Fix IPAddress capitalization.
2020-01-15 12:12:54 +01:00
Paul Chote
38cb818469
Anonymise client IPs and allow server operators to disable sharing.
2020-01-15 12:12:54 +01:00
Paul Chote
d74a5065b9
Require GeoLite2 database path to be specified by the server operator.
2020-01-15 12:12:54 +01:00
Paul Chote
6b2c019caa
Evaluate player location on the server.
2020-01-15 12:12:54 +01:00
abcdefg30
23b3c237b7
Update the year numbers in all license headers to 2020
2020-01-05 17:00:34 +00:00
Paul Chote
baa5b3d25e
Bypass fingerprint validation for skirmish/mission servers.
2020-01-01 20:33:30 +01:00
Paul Chote
8f2bf27edf
Replace Server.Dedicated with Server.Type.
2020-01-01 20:33:30 +01:00
teinarss
4dd8472d9b
Reset server after game
2019-08-25 15:30:45 +02:00
4mfie
ff02b8ba06
Add timestamps to server log files
...
Servers are now writing timestamps to the log files using the the ISO 8601 timestamp format defined in the game server settings.
2019-07-27 10:47:24 +01:00
Paul Chote
c6232f20f9
Split Protocol version into Handshake vs Orders.
...
Handshake is kept at 7.
Orders is incremented to 8 to reflect immediate order changes.
2019-06-20 22:50:17 +02:00
Paul Chote
fe41dcb45e
Restore 0xFE order for handshakes.
...
This restores handshake compatibility with protocol 7 servers.
2019-06-20 22:50:17 +02:00
Paul Chote
bfddfec461
Replace magic numbers with an OrderType enum.
2019-06-20 22:50:17 +02:00
Paul Chote
862a274357
Merge ServerOrder into Order and 0xFE order type into 0xFF.
2019-06-20 22:50:17 +02:00
Paul Chote
90ebffc6c0
Remove unused PauseGame handling.
...
Pause is not an immediate order.
2019-06-20 22:50:17 +02:00
Paul Chote
9daf02a955
Remove unused field from HandshakeRequest.
...
This field was not serialised, so compatibility
is not impacted.
2019-06-20 22:50:17 +02:00
Paul Chote
c253aaeb9d
Replace for(;;) with while (true).
2019-06-08 18:46:03 +02:00
Paul Chote
217221d174
Fix multiple clients being assigned as admin.
2019-05-22 20:30:54 +02:00
Paul Chote
5e38cfda81
Enable skirmish saves.
2019-05-05 09:30:58 +02:00
jrb0001
b774556a5f
Reduce overhead of every single order/sync frame by 162/222 bytes
2019-05-04 09:48:36 +02:00
abcdefg30
e6feba8884
Remove the TeamChat order type
2019-04-22 19:55:04 +01:00
Paul Chote
1f3b30c2d2
Implement game save/load backend.
2019-04-20 14:54:48 +02:00
Paul Chote
3e404f6ac2
Remove HSLColor.
2019-03-04 18:26:42 +00:00
abcdefg30
cadbd0d9ab
Change the year number in all cs headers from 2018 to 2019
2019-01-26 23:15:21 +01:00
Paul Chote
d823d38e8c
Fix "game is full" error when the game is not full.
...
Client.IsObserver is not valid to check until the
slot has been assigned.
2018-12-22 04:55:57 +01:00
Paul Chote
04359206ff
Remove long-broken setting to ignore version mismatches.
2018-12-15 23:30:36 +01:00
Paul Chote
cc707f0037
Disable MP sync report generation by default.
...
A new Server.EnableSyncReports option is provided
so that server operators can restore them remotely
in the event of a future desync bug.
2018-12-15 23:30:36 +01:00
teinarss
3b6024c086
Defer setting slot on client to completeConnection
2018-11-19 22:05:32 +00:00
Paul Chote
77bb39304b
Give server operators more control over client validation.
2018-08-18 16:57:28 +02:00
Paul Chote
efccd610d3
Simplify server tick timeout handling.
2018-08-18 09:31:11 +01:00
Paul Chote
c74159e549
Add player authentication backend.
2018-07-29 00:30:17 +02:00
teinarss
0c1b11ed4f
Added Dedicated to GlobalSettings
2018-07-05 23:22:09 +01:00
Paul Chote
6e400c5d60
Don't trigger LobbyInfoSynced on ping update.
...
This interface is only used for updating the master
server advertisement, which doesn't use the player
pings at all. Removing this should reduce the
master server traffic by a factor of several tens.
2018-05-30 18:05:32 +02:00
Paul Chote
178b6b658d
Remove broken DEV_VERSION warning.
...
This (before it was broken) was hardcoding upstream policy-specific
conventions into the core engine.
2018-05-20 13:55:10 +02:00