Lion Kortlepel
d0d560405c
add readline, start working on a new console sink
2024-02-15 17:17:27 +01:00
Lion Kortlepel
98c69561b5
add libzip
2024-02-15 12:42:51 +01:00
Lion Kortlepel
d0cc23333c
ensure client stays referenced while referenced in thread pool
2024-01-26 10:32:41 +01:00
Lion Kortlepel
c173ffdbdc
implement state change to playing
2024-01-25 12:12:06 +01:00
Lion Kortlepel
7d813f7562
use a single strand per client to avoid writing to tcp out of order
2024-01-25 08:52:11 +01:00
Lion Kortlepel
ee74d6291b
update protocol
2024-01-25 08:40:45 +01:00
Lion Kortlepel
8654beb706
implement most of the Playing state, vehicle positions, vehicle data
2024-01-22 18:23:50 +01:00
Lion Kortlepel
630d5f1cfa
implement session sync
2024-01-22 16:56:07 +01:00
Lion Kortlepel
bde689d31a
implement fully async read and write with individual timeouts
2024-01-21 22:54:36 +01:00
Lion Kortlepel
303a619ece
implement async accept, async read for tcp
2024-01-20 19:20:33 +01:00
Lion Kortlepel
24723c01da
update protocol
2024-01-20 18:18:15 +01:00
Lion Kortlepel
b06991aaca
migrate codebase to new network
...
marked non-implemented stuff with an exception
2024-01-19 17:34:36 +01:00
Lion Kortlepel
e0fe6693e0
implement vehicle specifics, code needed for the rest of the server
2024-01-19 17:33:53 +01:00
Lion Kortlepel
b882174ae7
add boost thread, glm
2024-01-19 17:33:19 +01:00
Lion Kortlepel
3de142a6d0
use boost::scoped_thread in IThreaded
2024-01-19 14:42:21 +01:00
Lion Kortlepel
9502048525
move packet to protocol
2024-01-17 14:59:45 +01:00
Lion Kortlepel
9e99177fcb
implement compression and decompression
2024-01-17 14:52:09 +01:00
Lion Kortlepel
dbab9eb894
handle udp packets like usual packets
2024-01-16 01:03:03 +01:00
Lion Kortlepel
9ea0931e13
implement udp connection
2024-01-16 00:58:14 +01:00
Lion Kortlepel
e9805c3679
refactor identification to its own method
2024-01-15 22:22:27 +01:00
Lion Kortlepel
ff33f1d42f
update protocol
2024-01-15 22:18:59 +01:00
Lion Kortlepel
65d2ba3556
server-side identification done
2024-01-15 22:18:25 +01:00
Lion Kortlepel
6a411171f9
start implementing parsing of packets server-side
2024-01-15 22:11:44 +01:00
Lion Kortlepel
05dfb4e0c3
fix c header -> c++ header
2024-01-15 20:57:15 +01:00
Lion Kortlepel
4aca87d3e6
fully implement tcp and udp send and recv of packet types
2024-01-15 20:56:44 +01:00
Lion Kortlepel
7e9bb0cbf2
start rewriting networking
2024-01-15 20:39:32 +01:00
Lion Kortlepel
443871ec0f
remove usages of weak_ptr
2024-01-11 14:30:25 +01:00
Lion Kortlepel
130e1acdb3
refactor client disconnect, client interation
...
anywhere a client is disconnected, TNetwork::Disconnect is called now.
Nothing else is valid.
ForEachClientWeak() was fully removed.
2024-01-11 14:14:34 +01:00
Lion Kortlepel
aa29d04b60
remove unused TVehicleDataLockPair
2024-01-11 14:14:34 +01:00
Lion Kortlepel
b9f73f77c3
major refactor of Client and Server
...
this refactor includes changes to TClient:
- all member fields are now public, but protected with Sync (an alias
for boost::synchronized_value
- removed all (now) obsolete getters and setters
changes to TServer and TNetwork:
- thread-safe ID generation, previously it was possible for there to be
ID duplicates. this is now solved by moving id generation and
assignment into the same mutex locked context.
- deprecated ForEachClientWeak and replaced some usages of it with
ForEachClient, getting rid of the weak_ptr shit in most places
- implemented a bunch of new functions for getting rid of more weak_ptr
everywhere
2024-01-11 14:14:31 +01:00
Lion Kortlepel
c6aa7776fc
make update message adjustable by provider
2024-01-09 17:41:05 +01:00
Lion
b0f5976121
Update release.yml to fix release message
2024-01-09 15:35:47 +01:00
Lion Kortlepel
1bd47fa649
add noninteractive flag for debian/ubuntu
2024-01-09 15:35:47 +01:00
Lion Kortlepel
0e924d0d51
fix bootstrap call
2024-01-09 15:35:47 +01:00
Lion Kortlepel
70a7a41882
add vcpkg bootstrap step
2024-01-09 15:35:47 +01:00
Lion Kortlepel
6ee816d10d
add lua to vcpkg dependencies on windows
2024-01-09 15:35:47 +01:00
Lion Kortlepel
8695413211
add ubuntu 20.04, debian 12 scripts
2024-01-09 15:35:47 +01:00
Lion Kortlepel
52c5a995cc
fix wrong action dependency
2024-01-09 15:35:47 +01:00
Lion Kortlepel
9d5568dc56
make all ci/cd build actions matrix generic
2024-01-09 15:35:47 +01:00
Lion
c62a1b6add
add arm64 builds to github actions
...
Update linux.yml to build ARM64 binaries for debian11
update linux.yml to fix incorrect runs-on tags
add ubuntu 22.04 arm64 build
Update linux.yml
Update linux.yml
Update linux.yml
Update linux.yml
Update linux.yml
Update linux.yml
Update 2-configure.sh
Update 2-configure.sh
Update 1-install-deps.sh
Update 1-install-deps.sh
Update 2-configure.sh
Update 2-configure.sh
Update linux.yml
use get-cmake
update vcpkg
force arm64 triplet
2024-01-09 15:35:47 +01:00
Lion Kortlepel
4228e18c90
reset default ID to 0
2024-01-09 15:34:33 +01:00
Lion Kortlepel
023e968302
refactor position packet handling, add regression tests
2024-01-09 15:34:33 +01:00
Lion Kortlepel
a4eb10b6a4
fix MP.GetPositionRaw
2024-01-09 15:34:33 +01:00
Lion Kortlepel
0166e488d0
fix calling GlobalParser as static
2024-01-09 15:34:33 +01:00
Lion Kortlepel
0836fd3af8
fix bug in HandlePosition which caused the vehicle position not to be
...
saved properly
2024-01-09 15:34:33 +01:00
Lion Kortlepel
9791b8875c
fix wrong order of SendErrorsShowMessage and SendErrors
2024-01-09 15:34:16 +01:00
Lion
01e8a1644a
Bump version to v3.2.2 ( #253 )
2024-01-08 19:40:00 +01:00
Lion Kortlepel
cebb2634a1
bump version
2024-01-08 17:43:54 +01:00
Lion
21a7ca1b64
Update README.md to remove mention of scripts and add ARM instructions ( #243 )
2023-12-30 15:07:39 +01:00
Lion
bd4ab2b10d
Update README.md
2023-12-30 10:22:12 +01:00