Lion Kortlepel
931d94b7d8
start integrating lua with the rest
2024-02-06 17:50:22 +01:00
Lion Kortlepel
43429eadb3
fixup
2024-02-06 00:11:31 +01:00
Lion Kortlepel
6af471f025
start working on event handlers
2024-02-05 20:45:46 +01:00
Lion Kortlepel
5468e5c854
make the compiler happy
2024-02-05 20:22:22 +01:00
Lion Kortlepel
a0241d1b36
replace literally the entire lua engine
2024-02-05 19:49:39 +01:00
Lion Kortlepel
55fff0138b
remove old lua stuff
2024-02-05 19:49:16 +01:00
Lion
126e4b077a
Remove all unused platforms from FUNDING.yml
2024-02-05 19:48:48 +01:00
Lion
d25eabda5e
Create FUNDING.yml
2024-02-05 19:48:48 +01:00
Lion
01ad397a84
Update README.md
2024-02-05 19:48:48 +01:00
Lion
ef47865e88
Update LICENSE
2024-02-05 19:48:48 +01:00
Lion Kortlepel
94ea20b6b7
add AGPL-3.0 license header
2024-02-05 19:48:46 +01:00
Lion Kortlepel
23ea3311cf
fix release arm64 workflow
2024-02-05 19:48:31 +01:00
Lion Kortlepel
f9d43eac66
fix windows build wrongly calling vcpg from the submodule
2024-02-05 19:48:31 +01:00
Lion Kortlepel
94b9ef3eae
remove --build-id=none from build flags
2024-02-05 19:48:31 +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
Lion
1cdc8e8f48
bump version number ( #241 )
2023-12-29 01:43:40 +01:00
Lion Kortlepel
1f72a45231
bump version number
2023-12-29 01:43:03 +01:00
Lion
002223afda
Fix Server.log empty when stdout or stdin redirected ( #235 )
2023-12-28 21:27:44 +01:00
Lion Kortlepel
ecc79b1918
update commandline to fix redirect issue
2023-12-28 21:23:31 +01:00
Lion
d5000aea87
Remove changelog ( #232 )
...
now fully replaced by github releases due to issue-based workflow
2023-12-28 14:25:42 +01:00
Lion
810788a3e4
Add Tags Feature ( #192 )
...
This PR adds a tags functionality to the BeamMP server config and
heartbeat.
The intended purpose of this is to enable better filtering on the server
list based on keywords such as gamemode or roleplay.
2023-12-28 13:58:59 +01:00
Lion Kortlepel
e724a2e467
Merge remote-tracking branch 'origin/master' into feature-tags
2023-12-28 13:57:49 +01:00
Lion Kortlepel
54ba295fce
remove changelog
...
now fully replaced by github releases due to issue-based workflow
2023-12-28 13:53:32 +01:00
Lion
f419550061
Allow env to override serverconfig ( #227 )
2023-12-28 13:51:00 +01:00
Lion Kortlepel
8cccbe8542
Merge remote-tracking branch 'origin/master' into 226-allow-env-to-override-serverconfig
2023-12-28 13:49:02 +01:00
Lion Kortlepel
6787843b37
pretty-print tags on startup
2023-12-28 12:58:29 +01:00
Lion Kortlepel
16d3c6f796
Merge remote-tracking branch 'origin/master' into feature-tags
2023-12-28 12:36:22 +01:00
Lion
21e5101560
Make debug symbols available for release builds ( #216 )
...
Closes #214
2023-12-28 12:30:40 +01:00
Lion
1adf19d416
Bump version to 3.2.0 ( #231 )
...
Due to new features like ENV reading this is now a feature release, so
minor
2023-12-28 12:16:05 +01:00
Lion
c7e228fbae
bump version to 3.2.0
...
due to new features like ENV reading this is now a feature release, so minor
2023-12-28 11:56:25 +01:00
Lion
6e04b2d93a
Fix GitHub Actions not downloading the latest tests to run them ( #220 )
...
Closes #219
2023-12-28 11:55:02 +01:00
Lion
57a4c47cb0
Remove HTTP Server settings from config ( #221 )
...
This is not implemented and won't be implemented
2023-12-28 11:50:33 +01:00
Lion
416e0399af
Remove [Feature Request] from issue title ( #217 )
2023-12-28 11:47:51 +01:00
Lion
050b574cc0
Remove [Bug] title from issue template ( #218 )
2023-12-28 11:47:39 +01:00
Lion
d65f3cf75b
Fix hot reload not working with symlinked entire plugins ( #230 )
2023-12-28 11:42:39 +01:00
Lion Kortlepel
329d2eb268
fix hot reload not working with symlinked entire plugins
2023-12-28 11:22:00 +01:00
Lion Kortlepel
221f491019
return early after reading ENV in config
2023-12-25 16:19:53 +01:00
Lion Kortlepel
89db370e12
use env variables by default to override config values
2023-12-25 16:16:01 +01:00
Lion
aa84a65546
Update feature_request.md
2023-12-21 13:15:48 +01:00
Lion Kortlepel
b28c69a515
remove http settings from config
2023-12-21 13:07:35 +01:00
Lion Kortlepel
ac41547123
bump version to 3.1.4
2023-12-21 13:05:33 +01:00
Lion Kortlepel
2fc610f6bc
fix tests not downloading artifacts by not using artifacts
2023-12-21 13:01:50 +01:00
Lion Kortlepel
ddd3883aa9
fix failing gh actions test run
2023-12-21 13:01:50 +01:00
Lion
defadf094f
Fix exit after 10 seconds ( #215 )
...
Also fixes initializing the console too early by @lionkor
2023-12-21 12:50:19 +01:00
Lion Kortlepel
81299db946
fix console initializing too early
...
the console was initialized too early, leading to the server waiting for
it to shut down if the authkey is invalid, among other issues.
2023-12-21 12:49:20 +01:00
Lion
c3895ec1ca
remove [Bug] title from issue template
2023-12-21 12:17:50 +01:00
Lion
c741fe5310
remove [Feature Request] from issue title
2023-12-21 12:17:11 +01:00
Lion Kortlepel
e1dfb1085e
modify release workflows to add debug info artifacts
2023-12-21 11:17:17 +01:00
Lion Kortlepel
142b6fa47a
modify build scripts to generate .debug files with debug info
2023-12-21 11:13:51 +01:00
Lion
f28d9bc7dc
Update README.md
2023-12-16 20:18:40 +00:00
Lion
43b1b050e2
Fix workflows to make release builds ( #202 )
...
Currently the Windows workflow doesn't properly create a release binary.
2023-12-09 20:17:10 +01:00
Lion Kortlepel
9f87edc6e9
add msvcp140.dll comment to the release text
2023-12-09 20:09:56 +01:00
Lion Kortlepel
c6f78c5522
fix release build path
2023-12-09 20:06:50 +01:00