0
0
mirror of https://github.com/sp-tarkov/server.git synced 2025-02-13 06:50:43 -05:00

780 Commits

Author SHA1 Message Date
Chomp
a22032abe2 Made use of RagfairOfferHelper.offerIsFromTrader() 2024-12-22 19:57:26 +00:00
Chomp
e173b3d361 Added nullguards to removeResourceFromArea 2024-12-20 09:33:13 +00:00
653b9723b8
Vitest Updates (#985)
Includes updates to Vitest dependencies, a small bug fix, and a
configuration change. All three of which were throwing warnings when the
test suite was ran.

### Dependency Updates:
*
[`project/package.json`](diffhunk://#diff-18e5b8a4dad7b1ed0da6b50ed507b3ab8116e07a8e44abd959a28261878d021fL69-R70):
Updated `@vitest/coverage-istanbul` and `@vitest/ui` to version `^2.1.8`
and added `vitest` dependency.
[[1]](diffhunk://#diff-18e5b8a4dad7b1ed0da6b50ed507b3ab8116e07a8e44abd959a28261878d021fL69-R70)
[[2]](diffhunk://#diff-18e5b8a4dad7b1ed0da6b50ed507b3ab8116e07a8e44abd959a28261878d021fL84-R85)

### Bug Fix:
*
[`project/src/controllers/RepeatableQuestController.ts`](diffhunk://#diff-92e6bd4234ed3c13309eb9bd27437f0933e58dedee51544e9b017b57c2a3c51cL581-R581):
Fixed a bug in the charisma bonus calculation for the `cost.count`
value.

### Configuration Changes:
*
[`project/tests/CustomEnvironment.ts`](diffhunk://#diff-79780538b7a90a5f7befb22838a460f65e3e0bce53d3685f36ed2b74894246a0L9-R9):
Updated the import path for `Environment` from `vitest`.
*
[`project/vitest.config.mts`](diffhunk://#diff-18152746ad4df10b798ca21a09c321bc8ad4adc393ebc6a26016a524203e599cR5-L10):
Added `cacheDir` configuration and renamed the file from
`vitest.config.ts`.
2024-12-16 22:12:30 +00:00
Chomp
42b3d7abc3 Added nullguard protection to getFriends() 2024-12-15 17:06:20 +00:00
Chomp
571819906e made eventId property inside IWsNotificationEvent optional + cleaned up TODO 2024-12-14 09:49:34 +00:00
DrakiaXYZ
4614c890a6 Implement basic friends list functionality
This commit implements basic friends list functionality including adding, auto accepting, and removing friends. As well as storing the list in the profile and providing the friends list back to the client on login.
This is a one-way implementation, the target profile will not have the source account added to its friends list.

This is primarily useful in combination with the recent favorites fixes, to allow users to inspect favorited weapons on other profiles to "copy" weapon builds between their profiles
2024-12-13 21:25:32 -08:00
Chomp
a027ca017d Removed workaround as underlying issue has been resolved 2024-12-13 09:48:21 +00:00
Chomp
cf6868b3b9 Added code to handle cleaning up of repeatable change requirements 2024-12-12 14:46:55 +00:00
Chomp
4b2620093e Moved profile quest management code into its own function 2024-12-12 13:23:52 +00:00
Chomp
2abf216a07 Using live data, improved emulation accuracy of repeatable quest system 2024-12-09 23:23:31 +00:00
Chomp
ff5bc64acf Added workaround for non-fence repeatable quests crashing client when the same trader is picked for replacement quest 2024-12-09 15:53:39 +00:00
Chomp
478b9b3914 Moved repeatablesInProfile nullguard to early in function when it can be helpful + make it check for questToReplace property too 2024-12-09 13:47:37 +00:00
Chomp
aa928ac43d only purge inactive repeatables When repeatableToChangeClone exists 2024-12-09 13:41:06 +00:00
Chomp
8f416c5dee Added logging of quest being replaced when generating new repeatable 2024-12-09 13:30:07 +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
sgtlaggy
22b57b1377 directly reference equipment id instead of using .find 2024-12-01 15:27:00 -08:00
Dev
2749be9a4b Fixed client error caused by server providing an invalid mongo_id for nameTaskConditionCountersCraftingId 2024-11-21 16:21:19 +00:00
Dev
9632238fab Added removeInvalidTradersFromProfile to core.json config to allow cleanup of incorrect trader data in profile 2024-11-20 10:49:18 +00:00
Dev
0c5ecefc41 Refactored scavcase reward code to use correct data and interfaces 2024-11-20 09:48:42 +00:00
Dev
ab488bd22f Improve raid time emulation of live 2024-11-18 21:27:45 +00:00
Dev
eafa390c72 Fixed survey not implemented errors 2024-11-18 10:13:47 +00:00
Dev
d88e705c86 Fixed questConfig.profileWhitelist causing quests to not be shown when accepting a quest
reversed `questConfig.profileWhitelist` to have quest id as key and allowed game versions as value
2024-11-14 14:01:54 +00:00
Dev
372498a07e Removed unused code 2024-11-11 17:21:03 +00:00
Dev
cca1416aa1 As part of profile migration, empty out all insurance 2024-11-08 22:03:00 +00:00
Dev
2d26e2b0a7 Expanded 398 profile migration system 2024-11-06 17:02:19 +00:00
Dev
640460dad4 Fixed scav exfiltration from location failing due to client profile data being in different format 2024-11-03 19:55:37 +00:00
Dev
78eb759e77 update migration code to remove invalid dialogs 2024-11-02 22:17:59 +00:00
f3e3594e1b Fix moving an item in the fastpanel corrupting profiles (!420)
Can be tested by moving a bandage into your hotbar, then moving that same bandage into a different hotbar slot. Restart the client and it'll complain about "Item#" where # is the first slot you moved it into

![image](/attachments/95723854-6b99-4da5-8d08-fd1cd4f592d8)

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: SPT/Server#420
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-11-02 09:37:23 +00:00
Dev
4b12405329 Expanded 39x profile migration to include chatbots 2024-11-01 20:06:44 +00:00
Dev
922adcfb5c Implemented pin/lock/free on inventory items 2024-11-01 10:01:26 +00:00
Dev
cc782ba3d5 Updated chatbots to use Monogo_Ids 2024-10-31 22:07:31 +00:00
Dev
17215ba9d8 Stubbed out item pinning 2024-10-31 21:38:56 +00:00
Dev
4346fadcbc Fixed edge case where custom traders without labs-specific failure messages would still return insured items 2024-10-28 11:17:19 +00:00
Dev
844616e3c4 Further improvements to sendMail() 2024-10-28 10:31:29 +00:00
Dev
564fb7f4ca Make overriding labs specific code easier inside sendMail() 2024-10-28 10:24:30 +00:00
Dev
3818388893 Added workaround for LK quests not completing correctly in PvE 2024-10-24 22:45:42 +01:00
Dev
e7ebdab3f0 Improved offraidHeal to not show unnecessary warnings 2024-10-24 14:28:48 +01:00
Dev
c6b78dba1d Handled possible null ref 2024-10-24 14:17:39 +01:00
Dev
100d04cc67 Added handling of out of raid eating, currently handles hydration/energy 2024-10-24 13:18:04 +01:00
Dev
da9cd7f7b7 Improved accuracy of off raid heal, take into account effect removal into requests count value 2024-10-24 13:15:43 +01:00
Dev
3fa4c2f4c5 Expanded offraid healing to remove effects based on healing item used
Made it also heal damage taken
2024-10-24 12:27:06 +01:00
Dev
62c64b7480 Removed unused endpoint 2024-10-24 12:20:46 +01:00
Dev
44fac53e97 Updated appContext CLIENT_START_TIMESTAMP value to include sessionid 2024-10-22 13:41:33 +01:00
Dev
9eba62d5e2 Moved code from gameStart() into server start via new class PostDbLoadService
Fixed player adding their name multiple times to PMCs inside `addPlayerToPMCNames()`

Updated `enableSeasonalEvents()` to not require a session id, moved player-specific code into new function `givePlayerSeasonalGifts()`
2024-10-22 13:33:07 +01:00
Dev
776f925d91 Updated interfaces to follow correct naming scheme 2024-10-19 12:43:38 +01:00
Dev
b0159e6427 Removed unused interfaces
Renamed Interfaces to follow correct naming system
2024-10-19 11:31:19 +01:00
Dev
9c58e2e0e5 Loosened bot name limit to 19 characters
Moved value into config
Added `botConfig.botRolesThatMustHaveUniqueName`

Refactored `getPmcNicknameOfMaxLength()`, removed all recursion + handles when no name is below desired length
Refactored `generateUniqueBotNickname()` to handle PMC names differently, use centralised pmc name function

Updated ragfair to utilise maxlength value from bot config
2024-10-18 11:39:51 +01:00
Dev
0b729fba11 Improvements to how weather temperature is calculated - takes into account current season
Centralised the season override into `getActiveWeatherSeason()`
Adjusted weather values based on client data
2024-10-17 13:05:01 +01:00
Dev
7330f6fb82 First pass at improving weather simulation logic 2024-10-17 00:57:33 +01:00