Lion Kortlepel
54895eb1b0
bump version
2024-11-01 12:53:55 +01:00
Lion
1423c1193b
Speed up response times by waiting for http requests on another thread. ( #137 )
...
If, for example, the client requests the serverlist multiple times and
then tries to login the launcher will first wait for those requests to
finish. Thereby putting the other core communication (such as login) on
hold.
2024-11-01 12:13:21 +01:00
Lion
288e76594d
Fix port cli argument ( #142 )
...
Fixes --port and -p by proccessing the config file before the cli
arguments, before it would first set --port because it was passed and
then overwrite it with the value from the config. Also removed some
useless code related to cli args.
2024-11-01 12:11:26 +01:00
Lion
9dbbd8298d
Switch to only timeout on connection ( #140 )
2024-10-15 19:32:55 +02:00
Lion
9ebd218856
Fix empty modlist ( #136 )
...
This PR fixes the launcher getting confused when the server sends an
empty mod list using the new downloading system.
Related server PR: https://github.com/BeamMP/BeamMP-Server/pull/377
2024-10-12 22:10:47 +02:00
Lion Kortlepel
7d52e44434
only listen on localhost ipv4
2024-10-10 16:14:16 +02:00
Lion Kortlepel
49874fd633
Revert "remove 'D' socket initialization code"
...
This reverts commit 6a23518eff .
2024-10-09 18:00:43 +02:00
Lion Kortlepel
6a23518eff
remove 'D' socket initialization code
2024-10-09 17:36:54 +02:00
Lion Kortlepel
3297b3e62e
fix not recognizing empty mod lists on new mod list
2024-10-09 17:35:50 +02:00
Lion Kortlepel
76cfc47a2f
log invocation
2024-10-07 00:43:25 +02:00
Lion Kortlepel
7b59cb6f87
fix various commandline argument related things
2024-10-07 00:33:43 +02:00
Lion Kortlepel
0eba745d4c
remove silly license
2024-10-07 00:33:29 +02:00
Lion
259b21502e
Add command-line options ( #90 )
...
This PR adds command-line options as outlined in #74
Closes #74
2024-10-06 23:49:47 +02:00
Lion
f57ebb7a92
follow HTTP redirects ( #133 )
...
Follow HTTP redirects on HTTP Get and Post functions
2024-10-06 15:20:49 +02:00
Lion Kortlepel
fcb51adcb8
bump version
2024-10-05 21:05:02 +02:00
Lion
768f11f6ec
Add mod hashing, improve download protocol ( #129 )
2024-10-04 23:36:57 +02:00
Lion
7944e9dbe8
Switch to curl for Get and Post ( #132 )
...
Because we can. I got a segfault while testing but then it didn't happen
again, so I'm tempted to call it done.
2024-10-04 23:23:49 +02:00
Lion Kortlepel
0c68f91fb2
remove debug print
2024-10-04 23:22:50 +02:00
Lion
b8fdbc4ed9
Fix GetGamePath ( #130 )
...
Previously, the registry was used to get the local appdata folder for
the user folder. I've switched this over to a windows api function which
fixes some cases where the launcher wouldn't be able to find the appdata
folder in the registry.
2024-10-04 23:12:56 +02:00
Lion Kortlepel
85908e42d5
fix download code, error checking
2024-10-04 23:12:23 +02:00
Lion Kortlepel
5c77e60f29
remove mis-merged code
2024-10-04 23:04:30 +02:00
Lion Kortlepel
c74455e0fe
switch to curl for Get and Post
2024-10-04 22:59:29 +02:00
Lion
dc13e4a03c
remove extra return
2024-10-04 14:13:04 +02:00
Lion Kortlepel
1676d4174e
make mods not keep the hash when copying them
2024-09-29 02:36:41 +02:00
Lion Kortlepel
ad468a8971
remove debug prints
2024-09-29 02:04:39 +02:00
Lion Kortlepel
d3805f2cfd
fix mod deleting misnamed mods
2024-09-29 01:57:15 +02:00
Lion Kortlepel
9f1cc15b15
fix bugs with new download
2024-09-29 01:15:57 +02:00
Lion Kortlepel
c0fb4e4ad6
implement support for new mod hashing and download
2024-09-29 00:33:15 +02:00
Lion
7600372ca1
Fix linux executable name after BNG0.33.2 ( #126 )
2024-09-28 16:51:02 +02:00
Lion
54cd5b5e0e
Add additional SSL Verify logging ( #127 )
2024-09-28 16:50:30 +02:00
Lion
c0c3d6b30e
Add download speed to UI ( #125 )
2024-09-24 21:59:01 +02:00
Lion
9c59a83f04
turn off stdout, stderr of the game on linux ( #124 )
2024-09-24 21:58:37 +02:00
Lion Kortlepel
95436cb073
turn off stdout, stderr of the game on linux
2024-09-24 21:56:55 +02:00
Lion Kortlepel
cbb5502a40
send download speed to game UI, bump version to 2.1.4
2024-09-24 21:50:09 +02:00
Lion Kortlepel
d6dfe85f69
add download speed to ingame ui
2024-09-24 21:10:10 +02:00
Lion Kortlepel
53c514ecc6
bump to 2.1.3
2024-09-23 23:13:51 +02:00
Lion Kortlepel
e348d59a7e
fix linux executable name
2024-09-23 23:13:34 +02:00
Lion
244d27341f
Fix release actions ( #122 )
2024-09-23 22:49:33 +02:00
Lion Kortlepel
3a55b62907
remove release action
2024-09-23 22:49:03 +02:00
Lion
0c3ae43910
Add CachingDirectory config setting to cache mods elsewhere ( #121 )
...
also moved cls/clear to the beginning, idk wtf it was doing in there.
2024-09-23 22:45:21 +02:00
Lion Kortlepel
8436586566
print version on startup
...
🚀
2024-09-23 22:43:32 +02:00
Lion Kortlepel
19d1245379
catch errors when the custom caching directory is not accessible
...
🧯
2024-09-23 22:39:44 +02:00
Lion
470eeac821
Add better error handling ( #119 )
2024-09-23 22:34:19 +02:00
Lion
9c6aa86e68
Add print to inform the user that they must keep the window open ( #120 )
2024-09-23 22:33:54 +02:00
Lion Kortlepel
1362471657
add CachingDirectory config setting to cache mods elsewhere
...
also moved cls/clear to the beginning, idk wtf it was doing in there.
2024-09-23 22:31:58 +02:00
Lion Kortlepel
aa46b454e2
add print to inform the user that they must keep the window open
2024-09-23 22:12:00 +02:00
Lion Kortlepel
02465c529d
add more logging to exit
2024-09-23 22:08:45 +02:00
Lion Kortlepel
c68cbf8946
remove unused """security""" code
2024-09-23 22:04:34 +02:00
Lion Kortlepel
46542c1dce
always log debug to Launcher.log
2024-09-23 22:00:41 +02:00
Lion Kortlepel
97f58dd413
add better error handling to main()
2024-09-23 21:58:27 +02:00
Lion
4bedfc8e96
Little Itsy Bitsy TCP fixes ( #118 )
2024-09-23 21:46:11 +02:00
Lion Kortlepel
cd17df5cc2
add more debug statements, wait for threads before shutting down
2024-09-22 21:37:52 +02:00
Lion Kortlepel
0b589a74c9
refactor tcp receive to be less weird
2024-09-22 20:31:25 +02:00
Lion Kortlepel
1260515a40
fix crash when cancelling download
2024-09-22 20:20:31 +02:00
Lion
007cd6573e
Refactor downloading ( #116 )
...
The way it was done was so horrid, it was not only impossible to debug,
with TODO comments saying it sucks, and other shit like that, but it was
also just full of data races. You can rest easy however - I left most of
the data races in there <3 For nostalgia (totally not because it's a
massive pain to fix that).
We now do single-threaded download, which can not only saturate my 100
Mbit/s line without any hickups, it can also go up to ~600000 Mbit/s for
localhost transfers :) So I think it's fine.
2024-09-22 20:04:45 +02:00
Lion
7b022f9907
Add --skip-ssl-verify cli option ( #117 )
...
This is a temporary fix for if anyone has issues with SSL certificate
validation. The use of this must come with the disclaimer that,
obviously, this bypasses the security that SSL gives entirely. Anyone
could MITM you at that point. Don't use, basically.
2024-09-22 19:56:43 +02:00
Lion Kortlepel
96c9c89238
add extra layer of checks for data races in download
...
yeah
2024-09-22 19:52:52 +02:00
Lion
b4949af1d7
Check 'User Shell Folders' ( #111 )
...
this PR is a continuation of #69
2024-09-22 19:47:50 +02:00
Lion
85086909a6
Merge pull request #108 from WiserTixx/implement-mods-warning
...
Implement mods warning
2024-09-22 19:46:34 +02:00
Lion Kortlepel
79209219dd
remove extraneous game user path print
2024-09-22 19:42:55 +02:00
Lion Kortlepel
18e1b7a2bb
add --skip-ssl-verify cli option
2024-09-22 19:42:00 +02:00
Lion Kortlepel
a5766639d6
add back user path print
...
Thanks @WiserTixx for finding a good place for it
2024-09-22 19:29:39 +02:00
Lion Kortlepel
191fbf083d
fix stupid microsoft macro <3
2024-09-22 19:06:46 +02:00
Lion Kortlepel
8c4342853a
refactor downloading
...
The way it was done was so horrid, it was not only impossible to debug,
with TODO comments saying it sucks, and other shit like that, but it was
also just full of data races. You can rest easy however - I left most of
the data races in there <3 For nostalgia (totally not because it's a
massive pain to fix that).
We now do single-threaded download, which can not only saturate my 100
Mbit/s line without any hickups, it can also go up to ~600000 Mbit/s for
localhost transfers :) So I think it's fine.
2024-09-22 18:52:50 +02:00
Lion
a60ff48c08
Merge pull request #105 from WiserTixx/id-from-auth
...
Send id from auth to game
2024-08-17 20:34:19 +02:00
Lion
da3b49aa12
Merge pull request #106 from WiserTixx/fix-http-proxy-ub
...
Fix UB which was causing the http proxy to crash
2024-08-17 20:32:59 +02:00
Lion Kortlepel
b034072027
fix potential UB in decompression
2024-06-23 23:04:55 +02:00
Lion Kortlepel
f94b9adf7a
print game's U S E R path
2024-06-22 23:26:10 +02:00
Lion Kortlepel
c95178ea59
dont auto-update in dev mode
2024-06-22 23:20:46 +02:00
Lion Kortlepel
1f7c498bd9
fix compiler error in decomp
2024-06-22 23:05:01 +02:00
Lion Kortlepel
e46d4b2f0e
Merge branch 'performance-improvements'
2024-06-22 23:01:15 +02:00
Lion Kortlepel
f2b34543f9
switch to compression with limit at 30 MB
2024-06-22 22:48:00 +02:00
Lion Kortlepel
d32da036bc
fix mod name bug
2024-06-21 17:30:47 +02:00
Lion Kortlepel
8b0f4f99f6
use thread_local static buffer to receive into, null term manually
2024-06-19 16:53:17 +02:00
Lion Kortlepel
17e887442c
avoid a substr() which costs us ~20% of runtime performance
2024-06-19 16:18:11 +02:00
Lion Kortlepel
fc454cd11e
avoid creating a thread every packet
2024-06-19 15:53:49 +02:00
Lion
e0e2607632
Merge pull request #96 from BeamMP/finalize-linux-merge
...
Finalize linux merge
2024-06-18 09:57:24 +02:00
Lion Kortlepel
25f28e7fee
add common runtime files to gitignore
2024-06-18 09:57:05 +02:00
Lion Kortlepel
ba9719ed67
fix auth packet prefix
2024-06-18 09:46:33 +02:00
Lion Kortlepel
bb04d1bfe1
remove self update on linux for now
2024-06-18 08:51:23 +02:00
Lion Kortlepel
82e58e6513
add toolchain to linux build
...
oops
2024-06-17 22:36:15 +02:00
Lion Kortlepel
274a1dac7c
fix workflows vcpkg version
2024-06-17 22:30:26 +02:00
Lion Kortlepel
ae7f8f44e3
re-implement the website launch feature for linux
2024-06-17 22:16:17 +02:00
Lion Kortlepel
a82b9fb36f
reformat
2024-06-17 22:01:15 +02:00
Lion Kortlepel
3488136ca4
add clang format
2024-06-17 21:59:59 +02:00
Lion Kortlepel
05ffa0b638
Merge branch 'linux'
2024-06-17 21:57:41 +02:00
Lion
942cc78406
remove debug print
2024-06-15 22:24:19 +02:00
Lion
46690b5bbf
Merge pull request #79 from BeamMP/hotfix-stuff
...
Fixup various bits
2024-06-15 21:46:07 +02:00
Lion
cc4e322065
Merge pull request #88 from saile515/fix-input-linux
...
Fix input not working on Linux
2024-05-29 11:13:05 +02:00
Lion Kortlepel
adba66afb9
add http debug error logging
2024-03-22 12:19:18 +01:00
Lion Kortlepel
cc42a5e0ab
add ssl verify debug logging in a few places
2024-03-22 11:34:14 +01:00
Lion Kortlepel
c8a1b77a54
remove discord
2024-03-22 11:23:49 +01:00
Lion Kortlepel
b9d252fd8a
remove old stuff
2024-03-22 11:22:17 +01:00
Lion Kortlepel
2b02475fd4
add build instructions
2024-03-22 11:09:02 +01:00
Lion Kortlepel
8aa7a67100
add vcpkg.json
2024-03-22 11:07:30 +01:00
Lion Kortlepel
348090a127
fix perms on more source files
...
... wtf
2024-03-22 10:50:58 +01:00
Lion Kortlepel
c0df995e28
fix perms on all source files
2024-03-22 10:47:08 +01:00
Lion Kortlepel
8c9d3a5455
fix not returning error from Login, remove old code
2024-02-24 20:26:26 +01:00
Lion Kortlepel
9dcfa1dca4
set username or role to auth if they're empty (not set)
2024-02-24 20:26:26 +01:00
Lion Kortlepel
bd4cfe06b1
reset username and role on logout
2024-02-24 20:26:26 +01:00