- 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
Various improvements to `getOffersForBuild`:
Renamed offers to offersToReturn
Removed one layer of indentation by using early return
Replaced use of `ragfairOfferService.getOffers` with `ragfairOfferService.getOffersOfType` to improve performance by using a more appropriately indexed dictionary of offers
Run `getOffersInsideBuyRestrictionLimits` as part of offer filtering process
removed redundant reassignment of availableOffers/possibleOffers
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
Unlocks have a priority order, it will be filtered by whatever is first in the dictionary
e.g.
pistol: unlock level 20
weapon: unlock level 30
A pistol will be unlocked at level 20,
A shotgun will be unlocked at level 30
if the order was different:
weapon: unlock level 30
pistol: unlock level 20
The pistol would be unlocked at level 30 as its a weapon and gets picked up by the weapon filter first
Now when a profile create a new offer and another profile buy it, it can work correctly(For example profile A create a offer and profile B buy this offer, now A will receive money from profile B)
and set RagfairOfferHelper.completeOffer to public because TradeHelper now use it to resolve trade between 2 profiles on ragfair
Reviewed-on: SPT/Server#382
Co-authored-by: HiddenCirno <2301697863@qq.com>
Co-committed-by: HiddenCirno <2301697863@qq.com>
(cherry picked from commit f555c24709bd4ed9b294c1e008ce3229be4190e1)
Rebranded src code and scripts to SPT
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: SPT-AKI/Server#345
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
This is the first pass of ESLint on the codebase.
ESLint formatting is less strict when it comes to line-length and line-breaks then dprint/biome, so if you see formatting that you don't like... fix it! It shouldn't require a configuration change.
- This should merge clean into master (when the time comes).
- This will not merge clean into `3.9.0-DEV`, but the conflicts aren't that bad.
Corrects previous pull request hardcoding the value for `ratingSumForIncrease`.
Anytime it changes in globals it will now be reflected without needing to change it in `RagFairOfferHelper`
Co-authored-by: Corey <dirtbikercj@gmail.com>
Reviewed-on: SPT-AKI/Server#243
Co-authored-by: Cj <cj@noreply.dev.sp-tarkov.com>
Co-committed-by: Cj <cj@noreply.dev.sp-tarkov.com>
Should address massive flea rep gains. Tested about 10 cases, all seem within expected range.
Divided ratingIncreaseCount by a factor of 100000
Co-authored-by: Corey <dirtbikercj@gmail.com>
Reviewed-on: SPT-AKI/Server#242
Co-authored-by: Cj <cj@noreply.dev.sp-tarkov.com>
Co-committed-by: Cj <cj@noreply.dev.sp-tarkov.com>
Some plate carriers have no required plates, and thus were failing the functional check. I've changed it to check for an item count greater than the required plate count (Since `items` also contains the carrier itself).
Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: SPT-AKI/Server#228
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Updated `getItemQualityModifierForOfferItems()` to return root items quality modifer when its a weapon
Fixed `getItemQualityModifierForOfferItems()` assuming quality started at 1
Fixed some instances of:
- Unordered imports
- Reassigning function parameters
- Modifying values in assignment/return statements
- Array.forEach being used instead of for...of
- Simplified control logic