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