Commit Graph

460 Commits

Author SHA1 Message Date
Kaeno
d4cc41d3fc Fix Dev profiles not having access to Weapon wall and Cultist stash 2024-08-21 13:26:10 +01:00
DrakiaXYZ
bd5d4bfb66 Fix fuel ticks returning fuel to the player instead of removing it (!397)
Resolves the issue of incorrect fuel usage by using relative percentages for both the profile bonus and hideout management bonus
Add a sanity check to make sure we never return fuel to the player (No negative fuel consumption)
2024-08-19 16:58:45 +01:00
Dev
5ffedfa91a Attempted to fix issue with calculateItemWorth() failing on child items without a upd object
Clone children when returned to prevent modification + add missing upd object to child before calculating price
2024-08-18 09:52:13 +01:00
Dev
ef950058bd Fixed calculateItemWorth() not handling child items lacking a upd object
(cherry picked from commit ebe1bc021f)
2024-08-11 18:34:28 +01:00
TetrisGG
7b835f1501 Fix Bonuses in various Services using Find and not filter. 2024-08-09 15:03:50 +01:00
Cj
967dc15564 ProfileFixerService Refactor (!391)
Refactor to remove legacy code that bloats the `ProfileFixerService` class. Most of which is old profile porting code, some being old profile fixes. Organizes code in the class so that public members are at the top (as they should be). Finally break out some code into their own methods so they're not in the primary method for the class `checkForAndFixPmcProfileIssues`.

I have tested this with a developer profile, an EOD profile and a Standard profile. I've encountered no issues in my own testing.

Co-authored-by: Cj <161484149+CJ-SPT@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/391
Co-authored-by: Cj <cj@noreply.dev.sp-tarkov.com>
Co-committed-by: Cj <cj@noreply.dev.sp-tarkov.com>
2024-08-08 17:09:52 +00:00
Dev
18158bb4dc Fixed FiR status persisting after death for items inside secure container 2024-08-02 15:54:39 +01:00
Dev
7be6b47e23 Fixed various Biome issues 2024-07-23 17:30:20 +01:00
Refringe
5740774a46
Apply Biome Formatting
This is the result of running `npm run format` which applies the Biome formatting rules. Rejoice!
2024-07-23 11:12:53 -04:00
Refringe
ed8dbbd195 Adds Biome - Removes ESLint & Prettier (!383)
Boogidy, boogidy, boogidy. Let's go racing! 🏎️

Removes the over-complicated and super-slow setup we had with ESLint & Prettier in favour of Biome. The largest change with the formatting is moving from Allman braces to 1TBS braces. Other than that, it's *pretty much* the same. Ah, and that Biome runs formatting and linting on the entire project about x10 faster than the old system ran formatting on one file. Seriously, the guy who came up with that last solution should be fired. :runs:

I've kept all of the formatting and linting commands the same as before, with the main mamma-jamma being: `npm run format`, which applies formatting and linting changes to the entire project.

Formatting-on-save works (quickly!) by (1) ensuring that you're working within the VSC workspace (as you should be), and (2) have the recommended Biome VSC extension installed. The link to the Biome extension is in the README.

This limits our options on code formatting going forward; Biome, like prettier, is very opinionated with very few formatting options available. But I see this as a good thing. I'd rather spend my time arguing about which gun in Tarkov is the best, rather than coding brace styles...

...It's the TOZ, and it always will be. Don't DM me.

Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/383
Co-authored-by: Refringe <me@refringe.com>
Co-committed-by: Refringe <me@refringe.com>
2024-07-22 21:15:57 +00:00
Dev
4a4d65ee4c Added guard against missing trader insuranceStart mesages inside sendInsuredItems()
(cherry picked from commit 0d9bd9a6d3)
2024-07-22 13:26:09 +01:00
Dev
78f6fad21b Added check for stack count below 1 and resets to 1 when handling single items being passed into unstackOfferItems() 2024-07-18 09:19:44 +01:00
Dev
af6d138f3c Safely exit returnPlayerOffer() when no profile is found 2024-07-18 09:18:33 +01:00
Cj
00fffa7845 Add method for capping skill progress (!376)
Adds a check to the `ProfileFixerService` to cap skill progress at 5100. This prevents users from going over the cap with applications like profile editor, resulting in potential negative crafting times and other oddities.

Co-authored-by: Cj <161484149+CJ-SPT@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/376
Co-authored-by: Cj <cj@noreply.dev.sp-tarkov.com>
Co-committed-by: Cj <cj@noreply.dev.sp-tarkov.com>
2024-07-15 19:34:26 +00:00
chomp
4fd113d00d Fix flea selling issues (!374)
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/374
2024-07-15 18:24:23 +00:00
CWX
4eeedc4257 Removed unused code and repurposed save endpoint for scav profile saving 2024-07-12 16:29:21 +01:00
Dev
a3b97ff3ef Added nullguards to giveProfileMoney()
(cherry picked from commit f7a617d621)
2024-07-12 09:49:11 +01:00
Dev
64f8e7b7e8 Protected randomiseArmorInsertsDurabilities() from missing mod errors 2024-07-11 11:11:09 +01:00
Dev
b0a65cac7f Fixed server build errors from previously merged PR
(cherry picked from commit e1ca9dedc9)
2024-07-11 09:29:16 +01:00
Kaeno
96a40eb301 Enable Quest saving when leaving raid as pmc. Modify maxbotpve caps instead of maxbot cap 2024-07-09 14:52:35 +01:00
Dev
1c601cc33e Removed unused endpoint + related service 2024-07-09 14:22:01 +01:00
Dev
28b3afef8a Renamed function to improve readability insuranceDictionaryExists() 2024-07-09 10:19:08 +01:00
Dev
02fbc4f044 Added reputation saving to post raid code 2024-07-08 16:06:59 +01:00
Dev
3288c04a25 Improved post-raid handling of scav raids + btr item service 2024-07-07 21:51:24 +01:00
Dev
6cac4394c1 Depreciated functions 2024-07-07 21:17:10 +01:00
Dev
ac4c8ff0b3 Implemented insurance returns 2024-07-07 20:57:41 +01:00
Dev
ef5d72f06b Implemented coop and car extract handling 2024-07-07 17:06:45 +01:00
Dev
4d167568fb Added bot cache count when generating. Will only add more bots to cache when below desired amount 2024-07-06 16:42:47 +01:00
Dev
ca52f6d549 Created new LocationLifecycleServiceservice. Moved raid start/end code into it.
Created temp `LegacyLocationLifecycleService` class to hold old raid start/end code until we can safely delete it
2024-07-06 14:36:48 +01:00
Dev
1f76ce5d10 Refactored airdrop loot code 2024-07-06 13:39:56 +01:00
Dev
2f6f09c51a Fixed bad description 2024-07-05 16:39:40 +01:00
Dev
d7798d3afa Fixed getLocation() not getting location correctly 2024-07-05 16:37:17 +01:00
Dev
5cd919a7d7 Add location services json 2024-07-05 09:38:27 +01:00
Dev
bd28cbca57 Feature, plates in armors listed by fence now have individual chances to be removed before listing based on plate protection level 2024-06-30 23:20:49 +01:00
Dev
843455602d FIxed plate removal code not actually removing plates 2024-06-30 23:02:17 +01:00
Dev
1ba6cbf2bd Cleaned up randomiseArmorModDurability() 2024-06-30 22:52:55 +01:00
Dev
cf5411336f Adjusted how item quality % is calculated for player flea offers. Now excludes items without any quality modifier from calculation instead of assuming 100% (slightly lowers sell chance of things like armors)
Renamed `getItemQualityModifierForOfferItems()` to `getItemQualityModifierForItems()`
2024-06-19 14:27:58 +01:00
Dev
43a09c29c2 Improved import consistency + comment improvements
Moved `IGenerateEquipmentProperties` into own file
2024-06-19 11:11:28 +01:00
Dev
5d0cfd7971 Fixed prapor starting gift being sent 5 times 2024-06-17 22:00:38 +01:00
DrakiaXYZ
edfe995c52 Initial implementation of an ItemTpl and Weapon enum generator (!364)
ItemTplGenerator will create a full ItemTpl.ts and Weapons.ts file with all items and weapons respectively
Renamed WeaponTypes to Weapons to better indicate its new format
Updated all references to these enums to use the new names
New npm command `npm run gen:items` to run this tool

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT/Server/pulls/364
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-06-16 08:33:01 +00:00
Dev
299586d36a Improved implementation of daily quest reward system
Fixed repeatables vanishing after first generation
2024-06-15 13:28:25 +01:00
Dev
646745c5ef Added insurance reduction by game edition check 2024-06-13 19:21:00 +01:00
Dev
f8bd65ed90 Replaced various array.find() with array.some()
Rewrote `tagItem()` to use `.find()`
2024-06-13 13:41:29 +01:00
Dev
3327bc916a Renamed functions to better explain what they do 2024-06-13 11:05:10 +01:00
Dev
8c05345b85 Replaced various magic strings with enum values
Added `itemHelper.getItemFromPool()`
2024-06-13 10:53:07 +01:00
Dev
3c0887172e Fixed MARK_OF_UNHEARD incorrectly adjusting insurance return time
Added `ItemHelper.hasItem()`
2024-06-13 09:47:03 +01:00
Dev
9d79aa70eb Moved map marker logic out of InventoryController and into its own MapMarkerService 2024-06-12 19:32:27 +01:00
Dev
ca642b94a7 Reworked gift sending/storage sytem to not store the max sends in profile and use the existing gift data
Fixed `sendPraporStartingGift()` not sending gifts
Expanded `GiftService` to include methods to get gift by id / all gifts / all gift ids
2024-06-09 09:13:38 +01:00
Dev
5d3ea2ef83 Adjusted addBuffToItem() to also include ARMOR_PLATE items 2024-06-08 17:58:12 +01:00
Dev
75a34f5ca2 Expanded gift system used by spt bot
Gifts can be given multiple times
stash expansions are limited to 5 max by default
dev balaclava can be given 5 times, majority of gifts are 1 use still

Updated data structure to persist gifts received, this will break profiles
2024-06-08 17:54:05 +01:00