Matthias Mailänder
ee95d2591f
Code cleanup.
2022-04-03 19:23:26 +02:00
teinarss
1a56cee9a1
Add Tick scale plumbing
2021-10-26 22:40:15 +02:00
penev92
8ba6d13b2f
Removed unused using directives
2021-10-15 13:12:33 +02:00
Paul Chote
df798fb620
Overhaul client latency calculations.
...
The ping/pong orders are replaced with a dedicated
(and much smaller) Ping packet that is handled
directly in the client and server Connection wrappers.
This allows clients to respond when the orders are
processed, instead of queuing the pong order to be
sent in the next frame (which added an extra 120ms
of unwanted latency).
The ping frequency has been raised to 1Hz, and pings
are now routed through the server events queue in
preparation for the future dynamic latency system.
The raw ping numbers are no longer sent to clients,
the server instead evaluates a single ConnectionQuality
value that in the future may be based on more than
just the ping times.
2021-09-21 15:12:36 +02:00
Paul Chote
8f412f869d
Move order latency control to the server.
2021-09-02 23:23:23 +02:00
Paul Chote
e389c00a11
Remove packet byte wrangling from OrderManager.
2021-08-26 22:00:59 +02:00
teinarss
1f1373509e
Refactor server orders
2021-07-03 14:55:03 +01:00
Andre Mohren
6810469634
Updated copyright years.
2021-06-29 18:33:21 -05:00
teinarss
82115c6bf7
Move Text handling to its own class
2021-06-04 21:47:39 +02:00
teinarss
10676be377
Replace F extension with string interpolation
2021-05-08 22:20:59 +02:00
teinarss
4a1e4f3e16
Use expression body syntax
2021-03-07 13:00:52 +00:00
teinarss
13581c030d
Use in parameter for Target
2020-11-06 22:02:24 +01:00
abcdefg30
1861174d38
Add a Order.SyncHashOrderLength const
2020-10-14 19:53:49 +02:00
teinarss
27f1a7ab27
Use out var syntax
2020-08-19 18:11:07 +01:00
abcdefg30
78bf27709f
Add basic support for grouped orders
2020-04-21 01:35:40 -05:00
abcdefg30
23b3c237b7
Update the year numbers in all license headers to 2020
2020-01-05 17:00:34 +00:00
tovl
6fb3dc050b
Let CreateGroup use ExtraActors field.
2019-11-26 22:06:37 +01:00
tovl
00ce1d7ee6
Allow additional actor IDs to be send with orders.
2019-11-26 22:06:37 +01: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
abcdefg30
e6feba8884
Remove the TeamChat order type
2019-04-22 19:55:04 +01:00
abcdefg30
9a84ccdd1d
Send the designated team number as extra data in the order
2019-04-22 19:55:04 +01:00
abcdefg30
991093df81
Let immediate orders send a bitfield for extra order data
2019-04-22 19:55:04 +01:00
Paul Chote
00496e2ec2
Remove Order.TargetLocation.
2019-03-04 18:08: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
3e490e5843
Cache FrozenActorLayer on the Player object.
...
This avoids unnecessary trait queries.
2018-12-17 22:19:26 +01:00
Andre Mohren
b1a44086a0
Removed unused using directives.
2018-11-17 17:23:22 +00:00
Ivaylo Draganov
a7279415dc
Allow player to add a "priority unit" to production queue
...
* If production is ordered by `Ctrl + Left Click` the item is added to the top of the stack after the currently produced item
* Works with `Shift` for priority queueing of 5 items
* This modifier is not taken into account for `ParallelProductionQueue` as it doesn't make sense in that context
2018-11-03 17:54:50 +01:00
teinarss
cfaf5a6467
Updated CPos struct to use a bit field for all properties.
2018-10-02 00:54:45 +01:00
teinarss
e353c8c176
Changed SubCell to byte
2018-09-30 19:48:27 +01:00
Paul Chote
8475bd6294
Ignore malformed orders instead of crashing.
2018-08-25 18:23:35 +02:00
Paul Chote
ba8eac0e38
Remove deprecated Order.TargetActor and Target.FromOrder.
2018-05-30 18:06:59 +02:00
Paul Chote
768265bbd2
Unify TargetFlash handling around Targets.
2018-05-30 18:06:59 +02:00
RoosterDragon
a726b57367
Fix order serialization issues.
2018-01-28 15:41:28 +01:00
Arular101
8a60918841
Update copyright notice year to 2018
2018-01-17 00:47:34 +01:00
Paul Chote
f8abd5d319
Serialize the correct player in FrozenActor-targeting orders.
2018-01-01 16:01:44 +01:00
Paul Chote
b3cde077fc
Don't break the order stream if a frozen actor refers to a bogus player.
2018-01-01 16:01:44 +01:00
Paul Chote
ec4cf0646f
Rewrite Serialize to improve clarity.
2017-12-21 20:01:14 +01:00
Paul Chote
5b51261dd3
Serialize the correct target type.
2017-12-21 20:01:14 +01:00
Paul Chote
9c88fc154f
Remove redundant switch from order serialization.
2017-12-21 20:01:14 +01:00
RoosterDragon
ca01a1f186
Presize MemoryStream when possible.
...
Also use GetBuffer when we know we have presized the stream to the exact required size to prevent a needless copy.
2017-12-19 00:59:11 +01:00
Pavel Penev
8d7eb0bc47
Fix order deserialization when there is no indended order subject
2017-11-13 00:37:44 +01:00
Paul Chote
5f9a67ed87
Migrate frozen actors from ExtraData to Target.
2017-10-26 18:48:41 +03:00
Paul Chote
29c423772f
Serialize order Target directly instead of TargetActor/TargetCell.
2017-10-26 18:48:41 +03:00
Paul Chote
d967c564a2
Remove TargetActor and TargetLocation from order issuing.
2017-10-15 19:07:46 +02:00
Paul Chote
4896a90b8d
Add plumbing to issue orders against a generic Target.
2017-10-15 19:07:46 +02:00
Paul Chote
d9800d4e2b
Fix repair cursor visual feedback target.
2017-04-24 08:52:48 +01:00
Taryn Hill
43317e0f5d
Update copyright notice year to 2017
2016-12-31 23:46:13 -06:00
Oliver Brakmann
d1ef1ed1ba
Log unknown orders instead of crashing with an NIE
2016-09-26 20:39:01 +02:00