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

2502 Commits

Author SHA1 Message Date
Chomp
3e760e88e4 Added code to add hideout customisation unlocks to profile when quest completion rewards an achievement
Fixed inaccurate `rewards` type for achievement object
2025-01-07 13:06:28 +00:00
Chomp
b0d3d68d01 Moved dogtag customisation options into profile controller instead of inside client/customization/storage handler
Renamed variable to better reflect what it holds
2025-01-07 12:51:16 +00:00
Chomp
9b16af7cb6 On quest completion, store hideout customisation unlocks inside profile json
Append the unlock customisations to results of `client/customization/storage` call

Added `hideoutCustomisationUnlocks` to profile on creation
2025-01-07 12:47:32 +00:00
Chomp
7fcdfa7a56 Added nullguard to hideoutCustomizationSetMannequinPose 2025-01-07 11:28:57 +00:00
Chomp
57a56440f7 Implemented hideoutCustomizationSetMannequinPose endpoint 2025-01-07 11:19:19 +00:00
d5891e083f
Node Version Validation
This introduces a node version validation check on server start-up. The expected node version is pulled from the `package.json`. Locally, the expected version is pulled directly. The build script writes the expected node version into the `build.json` file, which is used in the built environment. When an invalid match is made the server start-up halts.
2025-01-06 12:34:35 -05:00
ed2b90fa0a
Various fixes so biome is happy (#1032)
- Changes to import typing for ILogger and ICloner
- Targets es2022 in compilerOptions (Matching the target in .swcrc)
because otherwise Biome doesn't seem to find a proper target.
- Fixes up the seasonal event typing
- fixes run:debug to target the correct file
2025-01-06 17:09:33 +00:00
Chomp
0442f5c28c Reverted workarounds now cycling dep issue is resolved 2025-01-06 16:55:38 +00:00
Chomp
b64c46c95d Remove redundant function that requires ragfair trader that was removed awhile ago 2025-01-06 15:21:35 +00:00
Chomp
2e4f15d5a8 Reduced nesting 2025-01-06 15:16:32 +00:00
Chomp
fc7b33cd53 Fixed trader offer prices being rounded to whole int, breaking items that are sold for < 1, e.g. ammo sold for dollars
Clone trader data before we create flea offers with it, prevents contamination due to pass by reference

Moved trader item price modification for `config.traderPriceMultipler` into `onLoad` event of `TraderController`
2025-01-06 15:16:22 +00:00
Chomp
3cbadf9ce9 Enclosed stdout.setEncoding("utf8") inside a isTTY check 2025-01-06 11:25:48 +00:00
Chomp
873f9c7aad Fixed final circular dep 2025-01-06 10:41:31 +00:00
Chomp
733a23f994 Moved interfaces out of ISptProfile into their own files to reduce circular deps 2025-01-06 10:38:06 +00:00
Chomp
b5936286bd Moved Program statics into their own class to reduce circular dep errors from 19 to 2
Fixed various ILogger warnings
2025-01-06 10:34:21 +00:00
Chomp
dd5d1373fb Temp fix for script 2025-01-05 19:42:54 +00:00
Chomp
9f6269f98b Fixed errors 2025-01-05 19:39:56 +00:00
Chomp
7681d07ab9 Added new command to hydrate customisationStorage data 2025-01-05 15:27:27 +00:00
Chomp
43c5ef8d61 Added new quest reward type 2025-01-05 10:44:27 +00:00
0587fc398b Fix up edge case error with tiered flea weapon builds 2025-01-05 02:57:04 +01:00
Chomp
5537b9b521 Added missing properties to getDefaultSptDataObject() 2025-01-04 19:00:36 +00:00
Chomp
2110edb9c2 Added givemesunshine command to force summer 2025-01-04 13:03:46 +00:00
Chomp
1676ea0d2b updated forced event system to be more generic - Fixed issue with weatherConfig.overrideSeason check 2025-01-04 12:56:46 +00:00
Chomp
07b64aa696 Added hohoho command to force Christmas 2025-01-04 12:47:27 +00:00
Chomp
9138248954 Fixed forceSeasonalEvent not correctly flagging properties as enabled when forcing christmas/halloween 2025-01-04 12:41:10 +00:00
Chomp
f43666aff5 Adjusted startPostRaidInsuranceLostProcess to not throw on error - This allows the server to process insurance for non-broken traders 2025-01-04 11:58:55 +00:00
Chomp
d86400da54 Added extra safety check when getting temp from profile + added default 2025-01-03 19:55:55 +00:00
Chomp
53b88a0cc0 Added nullgaurd to generateFenceBaseAssorts for items lacking slot properties 2025-01-03 16:11:15 +00:00
Chomp
4ac3dee831 Updated updateProfileHealthPostRaid to reset pmc temp to profile default after exiting a raid 2025-01-03 11:49:19 +00:00
Chomp
47769f1532 Log warning when attempting to overwrite existing preset 2025-01-03 11:14:01 +00:00
Chomp
79718c311b Added ability to insert custom ItemPreset objects into globals.json on server load 2025-01-03 10:39:59 +00:00
Chomp
4d6d21b3f6 Reordered OnLoad events to ensure performPostDbLoadActions loads first 2025-01-03 10:38:30 +00:00
Chomp
2a252f19d8 Silenced undefined warning 2025-01-03 10:24:23 +00:00
Chomp
d151db0c76 Updated dogtag generation based on client investigation 2025-01-02 13:20:18 +00:00
Chomp
ad70c9a66e Expanded handleModEvent to make use of forceSeason, enableChristmasHideout, enableHalloweenHideout, addEventGearToBots and addEventLootToBots 2025-01-01 14:47:56 +00:00
Chomp
a0a9fcacb9 Improvemetns to seasonal event system
Extended christmas event to 7th of january

new years event has christmas event actions

Moved seasonal code into functions

Added more seasonal settings for events
2025-01-01 14:37:11 +00:00
Chomp
6628eb9bab Added system to allow adjustment of bot appearance by season
PMCs have higher weighting to wear winter clothing during Christmas
2025-01-01 11:21:50 +00:00
Chomp
b09f179d2a Cleaned up type errors 2024-12-31 18:00:06 +00:00
Chomp
1f6a2c8435 Add function to get active seasonal events 2024-12-31 17:57:33 +00:00
Chomp
89b4620b25 Improved seasonal event setting typing 2024-12-31 17:56:57 +00:00
Chomp
545707d0bb Implemented system that purges Christmas containers when outside of relevant event 2024-12-31 17:56:23 +00:00
39b95ac2fa Adopt orphaned items sent with the mail service 2024-12-31 13:24:03 +01:00
Chomp
828dcf83ab Fixed send message failing 2024-12-31 11:25:45 +00:00
Chomp
02082ef6f6 Send new years 2024 gift during NEW_YEARS event 2024-12-31 11:25:20 +00:00
Chomp
00814dc489 Moved EntryType into its own file 2024-12-31 10:20:21 +00:00
dbed08a747
Static Program Properties & Simplified Entry Points (#1010)
Significant refactoring of globals and entry points. Oh my.

- The global variables previously accessible throughout the codebase
have been restructured as private static properties of the Program
class. Public static getter methods have been added to allow read access
to these properties throughout the codebase.
- Entry points, which were dispersed across multiple files, have been
consolidated and simplified into a static method on the Program class,
making the entry logic easier to follow.
- Removed unnecessary ~~globals~~ Program static properties.
- Adjusted imports and references across the codebase to reflect the new
structure.

Try not to focus on the `gulpfile.mjs` changes, as it won't be around
for much longer. *[winky face]*

Co-authored-by: Chomp <27521899+chompDev@users.noreply.github.com>
2024-12-31 10:11:08 +00:00
Chomp
539b505c61 Added null protection to updateGlobalEvents 2024-12-31 10:07:21 +00:00
Chomp
02832a1c53 Refactored seasonal and event date checking code into one function
Capitalised and localised `Event is active` text
2024-12-31 09:57:23 +00:00
Chomp
1e486c867b Updated cacheActiveEvents() to treat eventEndDate as inclusive
Moved enabled check to be earlier
2024-12-31 09:41:10 +00:00
Chomp
c46d97a65a Updated getActiveWeatherSeason() to treat eventEndDate as inclusive 2024-12-31 09:25:42 +00:00