73 Commits

Author SHA1 Message Date
Tixx
0341d401e7
Download check (#184)
This PR makes it so that the mod hash and download confirmation are
verified before proceeding.

---

By creating this pull request, I understand that code that is AI
generated or otherwise automatically generated may be rejected without
further discussion.
I declare that I fully understand all code I pushed into this PR, and
wrote all this code myself and own the rights to this code.
2025-05-05 23:46:32 +02:00
Tixx
d3263acead
Log corrupted download confirmation 2025-05-01 20:54:28 +02:00
Tixx
4de0bc9a40
Check download confirmation packet 2025-05-01 20:47:16 +02:00
Tixx
25a1061700
Verify mod hash after downloading 2025-05-01 20:42:01 +02:00
Tixx
dc78883451
Notify user about missing protected mods 2025-04-01 09:09:49 +02:00
Tixx
dd5256ae22
Increase download speed calculation precision 2025-03-29 00:19:25 +01:00
Tixx
e24cbf61bb
Only fail on socket error or connection closed 2025-03-29 00:19:24 +01:00
Tixx
472e2d16b6
Fix recv return type and better download error handling 2025-03-29 00:19:24 +01:00
Tixx
d52a791dd9
Create mods.json if its missing 2025-01-18 22:29:49 +01:00
Tixx
649514ca1a
Save mod usage date 2024-12-24 13:53:50 +01:00
Tixx
c485fba26b
Change an easily confusable warning to debug 2024-12-22 12:13:59 +01:00
Tixx
d35567dd47
Look for new mods in the old format 2024-12-22 12:07:25 +01:00
Tixx
46e6fda26e
Update license header 2024-12-07 11:26:09 +01:00
Tixx
d9874ce70e Make return from parsemodinfo look better 2024-10-12 21:12:12 +02:00
Tixx
3f12bb757a Mod info logs and check for old format 2024-10-10 21:35:27 +02:00
Tixx
4fbd25b551 Handle new modlist being empty but still valid 2024-10-09 19:41:38 +02:00
Tixx
3cf1a2e51b Add mod info debug log 2024-10-09 19:39:27 +02:00
Lion Kortlepel
49874fd633
Revert "remove 'D' socket initialization code"
This reverts commit 6a23518eff66217a2b8f6b8c6b49baf654e73683.
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
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 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
19d1245379
catch errors when the custom caching directory is not accessible
🧯
2024-09-23 22:39:44 +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
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 Kortlepel
96c9c89238
add extra layer of checks for data races in download
yeah
2024-09-22 19:52:52 +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
Tixx
a128099619 Patch up removal of while loop in Core 2024-09-14 22:17:21 +02:00
Tixx
ac2db7c73f Remove now unused variable 2024-09-14 22:17:21 +02:00
Tixx
06db6d0341 Implement mod warning 2024-09-14 22:17:21 +02:00
Tixx
452fc1e484 Move HTTP Proxy and remove and relocate duplicate code 2024-09-07 22:35:27 +02:00
Lion Kortlepel
d32da036bc
fix mod name bug 2024-06-21 17:30:47 +02:00
Lion Kortlepel
a82b9fb36f
reformat 2024-06-17 22:01:15 +02:00
Lion Kortlepel
05ffa0b638
Merge branch 'linux' 2024-06-17 21:57:41 +02:00
Lion Kortlepel
c0df995e28
fix perms on all source files 2024-03-22 10:47:08 +01:00
Anonymous275
c731718f50 v2.0.84
- HTTP Proxy for backend.beammp.com
- Fix Attempt for mod loading, game detecting partial zip file
- Use nlohmann JSON
- Update vcpkg parameters and commit ID
- Add ability to open URL using default browser with filter
2023-12-15 17:38:47 +00:00
gamingdoom
1bf7faa34d fix guest account issue and uppercase mods 2023-10-17 20:40:11 -07:00
gamingdoom
5dfb5f3b88 works but linux build is broken and this is an old version of the source 2023-10-16 22:13:30 -07:00
gamingdoom
54e1beb548 rename network.h to network.hpp 2023-10-16 17:33:52 -07:00
snepsnepsnep
764e3ab5c1 Fix kick message for server 3.0+ 2022-09-25 19:26:46 +02:00
Anonymous-275
691be8cd08 Mod validity check 2021-06-02 00:02:50 +03:00
Anonymous-275
6c673e78e5 Fixed invalid string position, Bumped game version 2021-05-11 22:19:42 +03:00