0
0
mirror of https://github.com/sp-tarkov/server.git synced 2025-02-13 08:30:44 -05:00

3892 Commits

Author SHA1 Message Date
Chomp
050edec9f3 Renamed getRandomLoot to generateRandomisedItemsAndAddToRewardPool
Removed hard-coded money/ammo blacklist from `generateRandomisedItemsAndAddToRewardPool()` and moved into config
Updated function to check chosen reward items parentid against item reward blacklist
2024-12-07 10:04:12 +00:00
Chomp
b20777e1c3 Removed unnecessary comments 2024-12-07 09:54:26 +00:00
Chomp
0c02591422 Refactored code into separate functions 2024-12-07 09:53:21 +00:00
Chomp
7284bb2fdc Fixed getCultistCircleRewardPool erroring when trying to access a hideout area stage that doesnt exist 2024-12-07 09:49:49 +00:00
Chomp
66c1d23df2 Fixed cultist circle saving direct rewards to the profile incorrectly 2024-12-07 09:44:12 +00:00
Chomp
83a3fb16fe Fixed cultist circle returning direct weapon/armor rewards without mods 2024-12-07 09:43:41 +00:00
Chomp
d2b7baa8b6
Cultist circle improvements (#973)
Brings Cultist Cicle rewards closer to live behavior.

---------

Co-authored-by: Bob S <shibdib@users.noreply.github.com>
Co-authored-by: Chomp <dev@dev.sp-tarkov.com>
2024-12-06 17:15:06 +00:00
DrakiaXYZ
d34eca32bb
Further favorite item/weapon functionality and fixes (#974)
- Resolve issue where we were storing favorites in the incorrect format,
resulting in a client error on game load
- Resolve issue where we were clearing favorites when they were meant to
be saved
- On login, fix any previously corrupted favorites array
- Properly implement favorite data in `getOtherProfile`, now shows your
favorites when viewing your profile

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2024-12-06 17:14:19 +00:00
Chomp
fdca5d39f6 Various unit test fixes 2024-12-06 17:08:48 +00:00
Chomp
e7f5db9f0a Fixed generateUniqueBotNickname() failing when no data is passed into its optional parameter 2024-12-06 16:49:39 +00:00
Chomp
43025ed8e1 Fixed generateUniqueBotNickname test 2024-12-06 16:38:22 +00:00
c071702851
Better Random (#972)
This started as a small update.

This pull request includes updates to the `RandomUtil` class to improve
the security and accuracy of random number generation by utilizing the
`node:crypto` module. Additionally, it enhances the documentation and
refactors several methods for clarity and performance.

Includes tests, both before and after the changes.

The only *possible* breaking change is that now the `getKey`,
`getKeyValue`, and `drawRandomFromDict` methods are typed with generics
instead of `any`. I tried to keep them as *generic* as possible, but we
should probably include this in a BE to ensure it doesn't break
anything.

No further changes are planned--Saved as a draft because it's late and I
still want to review.

---------

Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2024-12-06 16:25:44 +00:00
Chomp
9ef8206517 Updated sortModKeys() to use mount-specific mod sorting, prioritises the scope before additional mounts
Fixed null ref exceptions due to some items lacking `slots` objects
2024-12-06 16:20:18 +00:00
Chomp
e8c3b69975 Reordered checks to slightly reduce processing required for check 2024-12-06 15:43:20 +00:00
Chomp
0397c9e121 Improved weapon mod limit check for mounts - do not prevent sub-mounts being added to existing mounts (e.g. red dots on top of scope mounts) 2024-12-06 15:42:53 +00:00
6c9e4fd0bb
Custom LFS Sever (#970)
We've created our own Git Large File Storage (LFS) server due to the
excessive cost of GitHub's bandwidth. Did you know all of their Ethernet
cables are actually gold coated diamonds?

This PR reverses the work done in #954 to compress large location JSON
files into a 7zip archive and handle the (de)compression of the archive.

Only JSON files within the `project/assets/database/` directory that are
larger than 5MB have been included in LFS. This translates to all of the
`looseLoot.json` files. The rest are small enough to be included in the
base repo.

A `.lfsconfig` file has been added to the root of the project to alert
git to the presence of the custom LFS server. This public server is
read-only. Write access is only available to developers within the
Single Player Tarkov GitHub organization.

<img
src="https://github.com/user-attachments/assets/7ddfec9b-5a9a-42e6-806d-fd419e4eaa4f"
width="250">
2024-12-06 13:56:05 +00:00
Chomp
2527823208 Formatting changes 2024-12-03 16:52:20 +00:00
Chomp
9b7c31e36f Added nullgaurd to getQuestRewardItems() to protect against invalid custom quests 2024-12-03 16:50:54 +00:00
Chomp
a16aaf270f Renamed parameter to improve readability 2024-12-03 11:53:49 +00:00
Chomp
e5fb672579 Fixed price discrepancy between trader and flea price for trader items, resolves #968 2024-12-03 11:53:22 +00:00
Chomp
b48c1153e1 Removed unused subfunction from getAssort 2024-12-03 11:51:44 +00:00
Chomp
73186a2240 Improved comments inside ragfairOfferHelper + small refactor of trader offer checks inside getOffersForBuild 2024-12-03 10:16:55 +00:00
Chomp
97edac5a0e Merge branch '3.10.2-dev' of https://github.com/sp-tarkov/server into 3.10.2-dev 2024-12-03 10:01:35 +00:00
Chomp
5134c9d375 Flagged createUserDataForFleaOffer as protected 2024-12-03 10:00:43 +00:00
DeadLeavez
4de4b42b1b Add comments to ILocationBase, Information extracted using DNSPY on assembly 2024-12-02 15:19:55 +01:00
sgtlaggy
22b57b1377 directly reference equipment id instead of using .find 2024-12-01 15:27:00 -08:00
Chomp
93c34bd189 Added edge-case handling of PT locale inside getPlatformForServerLocale() 2024-12-01 19:09:49 +00:00
Chomp
8d5eb3586c Updated version string 2024-12-01 10:41:05 +00:00
Chomp
ad41c249b8 Merge branch '3.10.1-dev' 2024-12-01 10:22:36 +00:00
Chomp
6562d05142 Fixed configureZombies() incorrectly handling location ids 2024-12-01 10:21:47 +00:00
Chomp
016fc2a51e Ensure verifyQuestProductionUnlocks() skips quests that cannot be found in db 2024-11-30 22:42:02 +00:00
DrakiaXYZ
8b1a3158cb Add quest production unlocks to the PMC Profile fixer service 2024-11-30 10:08:51 -08:00
Chomp
063d1eaea8 Added forceSnow to seasonal mod event
Moved majority of code into `handleModEvent` to help modders handle custom events via method overriding
2024-11-30 14:13:18 +00:00
Chomp
dd88571e29 Flagged christmas gifts as being part of christmas event 2024-11-30 12:23:43 +00:00
Chomp
4542f5e467 Updated sptVersion property 2024-11-28 16:59:13 +00:00
f55861528a
Compress Database Location Files (#954)
Due to LFS storage issues... This PR removes all current LFS files (the
location loot files) and replaces them with a single 7-zip archive. The
archive is stored in LFS, but has decreased in size by roughly 95%.

The location `.json` files are now git-ignored.

There are two new npm commands to aid in working with the archive:
- `npm run database:compress`  
Compresses the JSON files into an archive *which can be committed into
the project*.
- `npm run database:decompress`  
Decompresses the archive into the original JSON files located in the
working directory.

The gulp file that handles builds has been updated to ensure that the
archive files are *always* used when a build is processed, regardless of
if the JSON files are already present in the working directory.
2024-11-28 15:51:53 +00:00
DrakiaXYZ
53408dfc2a Target logform 2.6 specifically, as 2.7 included a breaking change 2024-11-27 12:31:01 -08:00
Chomp
464fa27758 Removed unused effects property from client/hideout/workout endpoint 2024-11-27 12:04:08 +00:00
Chomp
604a408afc Updated locale data using latest crowdin snapshot 2024-11-26 11:38:39 +00:00
Chomp
cc75864756 Updated locations 2024-11-25 19:25:24 +00:00
Chomp
1c9588cc34 Updated bot JSONs 2024-11-25 17:49:58 +00:00
Chomp
6c31d10cb8 Merged majority of old data into existing sanitar follower JSON 2024-11-25 15:18:11 +00:00
Chomp
45d55ff307 Renamed function to match endpoint 2024-11-25 13:49:35 +00:00
Chomp
b9991b3825 Added spawn limit of 1 to toolkit on followerSanitar 2024-11-25 09:15:32 +00:00
Chomp
967330132f Formatting changes 2024-11-24 18:33:23 +00:00
Chomp
effcc37e68 Fixed checkForAndFixPickupQuestsAfterDeath() running when the player was alive
Removed old code that did the same but wasn't working
2024-11-24 18:29:04 +00:00
Chomp
92c2b11f71 Regenerated ItemTpl enum 2024-11-24 18:22:02 +00:00
Chomp
6ef18e1835 Made getDesiredServerLocale() public 2024-11-24 17:52:48 +00:00
Chomp
1376a25439 Fixed typo 2024-11-24 17:01:21 +00:00
Chomp
946cf10659 Second pass at ensuring failed quests let player pick items up in raid
Now checks if multiple quests match requirements, fails when >1
2024-11-24 17:00:10 +00:00