Commit Graph

206 Commits

Author SHA1 Message Date
ScottNZ
1394c1dcee Remove some misc redundancies 2013-11-12 19:39:39 +13:00
ScottNZ
00ec1ca87a Remove unused usings 2013-11-12 19:39:33 +13:00
Matthias Mailänder
bc133d199e StyleCop cleanup 2013-11-10 07:34:52 +01:00
Matthias Mailänder
7de2dd7083 add suffix to the player has disconnected message in-game
closes #3864
2013-11-10 07:31:26 +01:00
Matthias Mailänder
21a607a43e StyleCop cleanup 2013-11-09 17:23:33 +01:00
Paul Chote
142db86acd SyncInfo is only valid during the initial lobby phase. Fixes #3973.
Existing broken replays can be fixed manually by removing the SyncInfo order at the end of the file.
2013-11-09 16:30:32 +13:00
Matthias Mailänder
b618fc7cc2 complete password protected servers
closes #2290
2013-10-07 19:37:12 +02:00
Paul Chote
d867e8200f Reset default state when a dedicated server clears. 2013-08-04 12:06:47 +12:00
Paul Chote
40533918f3 Allow mods to set default lobby options. 2013-08-04 12:03:18 +12:00
Paul Chote
3a356782fc Force spectator color to white on join. Fixes #3501. 2013-07-06 11:11:48 +12:00
Matthias Mailänder
450fbded3f Merge pull request #3487 from pchote/server-client-fix
Prevent handshake spoofing of Client data.
2013-06-29 01:26:37 -07:00
Paul Chote
79779d69ba Prevent handshake spoofing of Client data. 2013-06-29 11:12:41 +12:00
ScottNZ
a6e5a0b53f Add temp banning to servers 2013-06-29 10:58:37 +12:00
Paul Chote
8856a1444c Handle failure cases of Socket.Send. Fixes #3455. 2013-06-27 18:43:10 +12:00
Matthias Mailänder
6a50c760ae record socket buffer sizes to server.log
for investigating #3455
2013-06-22 15:49:52 +02:00
Matthias Mailänder
c18b5e424e at least write the acception we swallow here to the server.log 2013-06-22 15:46:26 +02:00
Matthias Mailänder
8ddc840370 fix some plenks
no logic changes
2013-06-22 15:17:10 +02:00
Matthias Mailänder
708e91145c log exception thrown when the handshake fails 2013-06-17 22:50:47 +02:00
Matthias Mailänder
6b261534d8 remove some plenks
no logic changes
2013-06-17 22:50:39 +02:00
Matthias Mailänder
875ac468d3 log the catched exception when a client is dropped
because order dispatching failed for debugging
2013-06-17 20:46:02 +02:00
Matthias Mailänder
b01d55f1f6 Don't crash when the player to drop can't be found.
fixes #3224
2013-06-17 19:42:56 +02:00
Paul Chote
1ea322ff9b Merge pull request #3294 from Mailaender/single-player-orderlag
Set the OrderLatency to 1 in single player games
2013-06-12 11:02:53 -07:00
Paul Chote
18f1683968 Simplify admin promotion check in ValidateClient.
This also fixes a crash if we want to allow
multiple admins in a server.
2013-06-05 22:35:30 +12:00
Matthias Mailänder
cc9a45daff set the order lag to 1 in single player games 2013-05-28 19:36:23 +02:00
Matthias Mailänder
90ac648ff1 Merge pull request #3244 from pchote/bot-surrender
Improvements to player drop behavior
2013-05-10 01:44:55 -07:00
Paul Chote
818876a451 Promote oldest player to admin, not newest. 2013-05-10 20:31:20 +12:00
Paul Chote
4a1698804f Rework server orders.
- Server messages now show as from "Server".
- Fixes #3224.
2013-05-10 20:31:19 +12:00
Paul Chote
656476991f Replace ColorRamp with HSLColor everywhere.
Fixes:
* Nuclear-purple color exploit.
* #3247.
* Removes a bunch of unnecessary color conversions every frame.

Caveats:
* The ramp range is now defined on the palette, so ramps can no longer be set per-player (may impact maps which define custom colors).
* It's no longer possible to perfectly recreate the original WW color ramps (I doubt we care).
* The old ColorRamp setting isn't migrated, so players will lose their color settings.
2013-05-10 19:23:30 +12:00
Matthias Mailänder
91115d5ba3 save client IpAddress for later 2013-04-25 14:33:23 +12:00
Paul Chote
fd58461d43 Rename Ping -> Latency. 2013-04-25 14:03:14 +12:00
Paul Chote
9069d98365 Reimplement pinging via the orders channel. 2013-04-23 21:35:57 +12:00
Paul Chote
9f4b323287 Remove ICMP based pinger 2013-04-23 21:35:57 +12:00
Chris Forbes
d0fe25e022 Merge pull request #3000 from Mailaender/dynamic-orderlag
Display Ping of joining Clients in Lobby and use it to calculate OrderLatency
2013-04-20 16:57:00 -07:00
Matthias Mailänder
ef20009310 1 net tick is 120 ms and good order latency should be 2-3
color code names in lobby accordingly
2013-04-18 23:46:26 +02:00
Matthias Mailänder
d2a6781e7e set dynamic order lag when client with highest latency leaves
hide Ping again from the players, write it to server.log instead
just make everything silently work to not discriminate clients
2013-04-18 17:29:08 +02:00
Matthias Mailänder
f8e44b792f adjust order latency dynamically by client ping, closes #2990 2013-04-18 16:18:17 +02:00
Matthias Mailänder
7f835cf438 display ping when player joins lobby, closes #2124 2013-04-18 16:18:17 +02:00
Matthias Mailänder
ebe9805e5b separate UPnP from Game/Server into it's own class 2013-04-18 00:04:00 +02:00
Matthias Mailänder
23ca044515 allowUPnP is a bad name for automatic port forwards
also check it by default if all those checks went well
2013-04-10 12:45:16 +02:00
Matthias Mailänder
c421399e45 Merge pull request #2991 from pchote/sane-pause-logic
Fix pause logic and C&C cheats menu
2013-04-08 02:35:25 -07:00
Matthias Mailänder
6b164672eb Don't crash when host leaves the lobby, fixes #2980 2013-04-07 21:00:27 +02:00
Paul Chote
096d95f391 Fix bogus pause logic. 2013-04-07 23:38:52 +12:00
Matthias Mailänder
b2d885d268 Merge pull request #2403 from Mailaender/mono-nat
Use Mono.Nat for UPnP port forwarding.
2013-04-06 04:50:22 -07:00
Matthias Mailänder
0488903a15 enhanced UPnP discovery usability
- don't search for NATs forever, 5 seconds seem to be enough
- disable the UPnP checkbox if discovery failed
- no computer industry acronyms in user GUI
- don't remove port-forwarding twice, just once on shutdown
- user-configurable settings for debugging
2013-04-06 13:32:50 +02:00
Matthias Mailänder
819e48334e fixed #2540 AI orders misinterpreted as an exploit on dedicated 2013-04-05 18:49:15 +02:00
Scott_NZ
083d59613a Better UPNP logging. Also fixes a compile error 2013-04-05 14:18:22 +02:00
Matthias Mailänder
989c23e632 use Mono.Nat for UPnP port forwarding
- might support more devices
- supports internal and external port mapping
- discover the device only once (at startup)
2013-04-05 14:18:15 +02:00
Matthias Mailänder
81dac5521f make the whole version mismatch mechanic user-configurable 2013-03-27 12:19:22 +01:00
Igor Popov
0bf79635ec fix #2193
the most common reason of "Operation is not valid due to the current state of the object"
2013-03-27 06:08:01 -03:00
Matthias Mailänder
0a82bfe552 format TODO: uniformly to auto-generate task list in MonoDevelop 2013-03-27 09:45:17 +01:00