Commit Graph

2124 Commits

Author SHA1 Message Date
Azrael1123
7a4b27bbe1 Better fix for SPT-AKI/Issues#417 (!215)
[The wiki specifies](https://escapefromtarkov.fandom.com/wiki/Scavs#Scav_karma) that, between 6 and 8, Fence rep is reset to 6 before penalties are applied (i.e. killing someone at 7.5 rep leaves you at 5.9), but the current fix just subtracts a flat 1 reputation instead (i.e. a kill at 7.5 leaves you at 6.4)

this should change that.

Co-authored-by: Azrael <Azrael@noneofyourbusiness.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/215
Co-authored-by: Azrael1123 <azrael1123@noreply.dev.sp-tarkov.com>
Co-committed-by: Azrael1123 <azrael1123@noreply.dev.sp-tarkov.com>
2024-02-07 08:18:18 +00:00
Refringe
ebbc3e2029
Refactored InsuranceController for Better Attachment Handling
Made several improvements to the `InsuranceController` to ensure a more reliable and logical handling of insured items and their attachments.

- Updates `parentAttachmentsMap` declaration to `let` for mutability, enabling dynamic updates during processing.
- Updates `parentAttachmentsMap` to initially include all attachments (including attachments that should not be in-raid moddable).
- Updates `processRegularItems` logic to include `parentAttachmentsMap` in its parameters and logic. Now better ensures that attachments are correctly identified and processed alongside their parent items.
- Adds `removeNonModdableAttachments` method to filter out non-moddable attachments from processing.
- Updates deletion logic to better handle cases where items, such as armour vests and their non-removable plates, are processed to prevent orphaned items post-deletion.

Resolves #401
2024-02-07 01:16:46 -05:00
Refringe
2aa0054833
Insurance Package Removal Issue
Resolved an issue that caused insurance packages that were created/lost in the same raid with different traders to be removed all at once instead of one-by-one after they were processed. This shouldn't have been causing any notable issues as the packages were already cached/queued up for processing elsewhere in the code, but it was never the original intent to have them removed before they were processed. The fix was simply to also match the trader ID when the package removal takes place.

Possibly related to #401 #425
2024-02-06 20:08:14 -05:00
Refringe
6714d2d172
Forgot Instance of Parent Update
Updates the `replaceIDs` method call in the `LocationGenerator` class to be inline with the changes in the parent commit.
2024-02-06 18:50:42 -05:00
Refringe
42dabc057b
Improved replaceIDs Method in ItemHelper
- Implemented deep cloning of input Items to prevent mutation.
- Reordered parameters: Items (required) now precede PMC data (optional).
- Updated method calls to bring them inline with these changes.
2024-02-06 18:39:06 -05:00
Refringe
c29482394b
(More) Simple Parameter Reassignment Issues
Addresses some of the simple linting errors regarding the reassignment of function parameters.
2024-02-06 18:35:11 -05:00
Dev
d8fe911464 Cleanup dynamic loot selection, armors have their children stored in loose loot json, use existing code to pull children out instead of generating it 2024-02-06 23:17:41 +00:00
Dev
cb10ec4148 When generating armors for static loot, try and use default preset first before generating randomly 2024-02-06 23:00:39 +00:00
Dev
1101927768 Improve fence price calculation code. Prices now take into account removed item mods + mod durability 2024-02-06 20:44:40 +00:00
Dev
f48ad01b38 Add thermalvision price limit to fence 2024-02-06 19:52:10 +00:00
Dev
e20c89301d Adjust low level PMC ammos 2024-02-06 17:30:04 +00:00
Dev
4e02384e04 PMC mod spawn chance adjustments 2024-02-06 17:27:00 +00:00
Dev
1681e452bb Force muzzle devices to be a required slot
Lower muzzle chance for PMCs level 20+
2024-02-06 17:21:33 +00:00
Dev
f2865e7675 Experimental; flag mod_muzzle as required for PMCs 2024-02-06 16:59:58 +00:00
Dev
b40e41bd3d Improve sellChance logic
Two changes:

Calcualte the quality of an item and its mods, not just root item
Calcualte the average price of an offer using item + mods, not just root item
2024-02-06 15:52:22 +00:00
Dev
fcf7ff5c3d Update trader assorts, include missing armor inserts on items not dumped from live yet (prapor and ragman) 2024-02-06 14:53:10 +00:00
Dev
5f873e73b8 Move handbook override code into HandbookHelper.hydrate() - changes now apply to ragfair 2024-02-06 12:52:56 +00:00
Dev
62f51be3aa Improve readability of valid item check 2024-02-06 12:18:41 +00:00
Dev
5c52e13064 Add presents to chiristmas seasonal event gift 2024-02-06 12:18:16 +00:00
Dev
e9daf61013 Implement christmas gift system.
Gifts now give rewards, bigger the gift = bigger the possible reward
2024-02-06 12:17:41 +00:00
Dev
7bc9fdbe95 Add system to override handbook price, add christmas gift items small/med/large 2024-02-06 12:16:26 +00:00
Dev
72345abb4a Force plates to spawn in armor items found inside PMC backpacks 2024-02-06 10:53:08 +00:00
Dev
ddac44f79d Divide roubles calculated inside calculateCostOfScavInventoryAndMailMoneyToPlayer() by half 2024-02-06 10:33:59 +00:00
Dev
023697ed74 Partial fix for items flagged as being never lost on death coming back as insurance.
Items will not return but plates inside them still do
2024-02-06 10:10:56 +00:00
Dev
c6de12e6f8 Rename variables/comments for clarity 2024-02-06 09:49:51 +00:00
Deadly Alden
4fc012b422 Revamp structure of socket debug messages (!214)
**Description**
This pull request changes the WebSocket connection `handle lost` log message in the `wsOnConnection` method of the `GameSocket` class. The original log message was:

```typescript
this.logger.debug(this.localisationService.getText("websocket-socket_lost_deleting_handle");
>>> [WS] Socket lost, deleting handle, status: %s
```

Which was inconsistent with most other languages. It can be understood from context that the socket was lost, therefor deleted and closed. Instead now;

```typescript
this.logger.debug(this.localisationService.getText("websocket-socket_lost_deleting_handle");
>>> [WS] Socket lost, deleting handle
```

This is achieved through editing the languages one by one and removing the "`status: %s`" component.

**Related**
- Closes: https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/421

Co-authored-by: Deadly <info.saddiki@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/214
Co-authored-by: Deadly Alden <deadly@noreply.dev.sp-tarkov.com>
Co-committed-by: Deadly Alden <deadly@noreply.dev.sp-tarkov.com>
2024-02-06 09:07:23 +00:00
Refringe
807ba04967
Resolves Bot Generation Error
- Resolves an issue in bot generation caused by a missing parameter when calling the `shouldModBeSpawned` method.
- Adds a optional chaining operator within a condition to safeguard against undefined errors.

Contributed by: barlog_m

Thank you! :D
2024-02-05 19:16:36 -05:00
Refringe
cd6e40b66c
Error Message Propagation Issue
Resolves an issue where the error message in `getItemsToListOnFleaFromInventory` did not propagate as expected due to the pass-by-value behaviour in JavaScript. The solution was to refactor the method to return an object that includes both the items and the error message.
2024-02-05 19:03:26 -05:00
Refringe
3a2b24b9b8
Simple Parameter Reassignment Issues
Addresses some of the more simple linting errors regarding the reassignment of function parameters.
2024-02-05 19:03:26 -05:00
Refringe
34121182a1
Biome Linting Issues
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
2024-02-05 19:03:26 -05:00
Dev
d0ed738c0b lint bot json 2024-02-05 22:07:33 +00:00
Dev
9a1ef8daa2 Add missing locale 2024-02-05 22:02:19 +00:00
Dev
b7d74f1dec Add system to flag weapon slot ids as required.
Applies to stocks/recievers for PMCs
recievers for exusec/raider
2024-02-05 22:02:03 +00:00
Dev
32862866aa Remove some debug logging 2024-02-05 19:53:59 +00:00
Dev
d36593ca57 Rework fence service to handle armor/weapons separately,
made config work with a weapon/equipment min/max value
Improve price filtering system to work with weapons/equipment
2024-02-05 19:52:46 +00:00
Dev
3653ab9f83 Apply a duribility price modifier to items sold on flea 2024-02-05 19:49:42 +00:00
Dev
ce27f58664 FIx weapons/armors not showing on fence 2024-02-05 18:21:02 +00:00
Dev
f429cbd663 Update locales 2024-02-05 15:46:00 +00:00
Dev
e0cb167272 Update PMC mod item data 2024-02-05 15:37:01 +00:00
Dev
422b7878ab Add getMatchingPreset() and add workaround for silenced DVL choosing wrong barrel mods 2024-02-05 15:36:05 +00:00
Dev
a04a05996d Adjust calculateFenceStandingChangeFromKills() to take into account rep loss when fence rep between 6 and 8 or rep > 8 2024-02-05 14:44:31 +00:00
Dev
bf5f3316b1 Rename cloned variables to help with readability 2024-02-05 14:43:46 +00:00
Dev
183e71370a Reworked buyItem() to use addItemsToStash() to ensure it performs a space check prior to adding any items to stash 2024-02-05 14:07:21 +00:00
Dev
2f673d12b9 Improve weapon/equipment item purchase filtering 2024-02-05 11:38:04 +00:00
Dev
0f6b34605b Prevent duplicate equipment builds occuring when renaming an existing build 2024-02-05 09:13:37 +00:00
Dev
946172d20c Add additional helmet soft inserts to getSoftInsertSlotIds() 2024-02-05 09:02:58 +00:00
Dev
a2668a9618 Rework insurance to not duplicate items + still return soft_inserts
Added missing groin_back to `itemRequiresSoftInserts()`
2024-02-04 22:41:11 +00:00
Dev
e5bc45c6d4 Adjusted front/rear loot item plate chance to be 100%: 2024-02-04 20:30:10 +00:00
Dev
af0c6b9ee9 Add missing initialLoyaltyLevel values to standard account templates 2024-02-04 19:58:57 +00:00
Dev
d9bcb3fce8 Fix deleting an item from mail before receiving all kills server 2024-02-04 19:51:19 +00:00
Dev
9fa0bf53e5 Rework sell all scav gear button to send money as mail 2024-02-04 19:27:35 +00:00
Dev
5bde733e7b Lower airdrop weapon crate count max to 2 for mixed type crates 2024-02-04 17:01:04 +00:00
Dev
09a76f5c3f Replace placehold quest assorts with live data taken on 15th of jan 2024-02-04 15:52:44 +00:00
Dev
b6b659d2d7 Increase chance of Pscav name on scavs to 20% 2024-02-04 14:43:58 +00:00
Dev
63603f5d9a Reduce grizzly count added to PMC secure to 1 + morphine to 2 2024-02-04 14:43:37 +00:00
Dev
c43c06d2b5 Increase chance PMCs 1-15 have backpacks 2024-02-04 14:37:08 +00:00
Dev
2fb15dab94 Adjust PMC 1-15 backpack loot values - tiny chance of 10 items + weight 2/3 items more heavily 2024-02-04 14:35:22 +00:00
Dev
6d300c9d4d Add chance for 1-15 PMCs to have 2 healing items on their person 2024-02-04 14:31:26 +00:00
Dev
ef623de2d7 Increate 1-14 PMC chance to have a grenade to 44% 2024-02-04 14:30:13 +00:00
Dev
ba94183f86 Blacklist Ultralink quest item from airdrops 2024-02-04 14:10:03 +00:00
Dev
cfe470029f Refactor insurance item checking code into 2 functions to allow checking if any items were lost before sending Insurance lost mail 2024-02-04 10:19:57 +00:00
Dev
afce41d68b Improve lost insurance message system, only send lost insurance when an insured item was lost 2024-02-04 09:52:56 +00:00
Dev
8b90373965 Removed Out of Time quest 2024-02-04 09:40:52 +00:00
Dev
193161f786 Fix preset buy searches not filtering items based on search criteria/player level 2024-02-04 09:31:00 +00:00
Dev
ff4b1f95be Fixed Rhys-T helmet not having inserts for PMCs 2024-02-04 09:24:39 +00:00
Dev
2c4278cd96 Show debug message as warning + fix incorrect prapor quest assort ids 2024-02-04 09:12:27 +00:00
Dev
f2ed957579 Expand server version debug logging 2024-02-04 09:04:12 +00:00
Dev
4d88b2a94a Prevent developer profile changes bleeding into non-dev accounts 2024-02-03 23:40:20 +00:00
Dev
3dacbc98b2 Remove redundant .some() call 2024-02-03 23:11:36 +00:00
Dev
d362e17e1b prevent failQuest() from failing when no repeatable quest is found 2024-02-03 23:10:42 +00:00
Dev
714386c793 Update generateEquipment() to return true when it adds item 2024-02-03 20:29:31 +00:00
Dev
3c371a6c16 Add search criteria filtering to required search
Pull out`isDisplayableOffer` from`passesSearchFilterCriteria`
2024-02-03 20:23:26 +00:00
Dev
36d6e56d89 Improve comments 2024-02-03 19:47:39 +00:00
Dev
747510e5d2 Remove bleeds/breaks after 30 mins offline 2024-02-03 19:45:42 +00:00
Dev
1a9dc1ea2b Cleanup of setHideoutAreasAndCraftsTo40Secs to more central location 2024-02-03 19:42:49 +00:00
Dev
48e6f3052d Add item limit of 1 for TerraGroup Labs access keycard to bosskojaniy 2024-02-03 17:41:05 +00:00
Dev
ec9a877cd4 Force item limits to be used with special loot items 2024-02-03 17:34:08 +00:00
Dev
fcd7e463aa Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-02-03 17:00:04 +00:00
Dev
34d761a14f Fix edge case when getModPoolForSlot() gets default handguard for mp5 when the reciever is set to the mp5sd. Now uses correct default template 2024-02-03 16:59:54 +00:00
CWXDEV
27927dd456 Fix dev profiles on creation not having correct "shortened" crafting times
new call only happens when a creation of profile happens
2024-02-03 16:39:20 +00:00
Dev
f17d385d56 Add missing easy start bear data 2024-02-03 16:06:23 +00:00
Dev
b7f6cf5e36 Reorder profile presets to have standard first, EoD last 2024-02-03 15:55:23 +00:00
Dev
b6a57553de Enhance profile template initial trader standing system to be per trader 2024-02-03 15:53:28 +00:00
Dev
acbfc3bd81 Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-02-03 15:29:53 +00:00
Dev
579a846212 Set easy start profiles to have traders level 2 2024-02-03 15:29:39 +00:00
CWXDEV
06ce2c090e Fix Required Search 2024-02-03 15:26:15 +00:00
Dev
0d21eac38f Extend snow till the 10th of feb 2024-02-03 15:14:26 +00:00
Dev
e4df0581c6 Update starting ammo in profile templates 2024-02-03 15:14:03 +00:00
Dev
fc6d8b487a Add empty locales 2024-02-03 15:03:14 +00:00
Dev
5e1da93a69 Allow seasonal events to trigger after profile creation 2024-02-03 14:39:37 +00:00
Dev
164bf08b08 FIx armor filtering code to correctly return non-armored rigs when requested 2024-02-03 14:00:47 +00:00
Dev
8d2eaf2485 Copy over stackobject count from original reward 2024-02-03 12:47:52 +00:00
Dev
f7651fe003 fix colliding var names 2024-02-03 12:18:11 +00:00
Dev
0a6a866ae8 Correctly clone and remap default preset before returning 2024-02-03 12:15:20 +00:00
Dev
e3cf4c3c92 Fix starting quest armor rewards not showing correctly 2024-02-03 11:41:30 +00:00
Dev
055f8176d8 Remove Hippocratic Oath quest - no longer in live 2024-02-03 11:14:57 +00:00
Dev
12a9cb5ded Fix processReward() incorrectly trying to add mods to armor items without slots
Add `itemHasSlots` to itemHelper and consolodate its use across code
2024-02-03 11:00:30 +00:00
Dev
47bedcb526 improve filtering of required item searches on flea - Fixes locked items being shown in search results
Improve type usage inside `getRequiredItemsById()`
2024-02-03 10:33:11 +00:00
Dev
f2cae309ec Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-02-03 10:02:22 +00:00
Dev
e801b30d98 Fix trader assorts with an UnlimitedCount value not having a stack size of 9999999 - fixes unlimited item on prapor having stack size of 100 2024-02-03 10:01:44 +00:00
Kaeno
9f9febd624 Add missing quest images 2024-02-03 00:30:01 +00:00
Kaeno
1c00c2bb13 Keep bonus.value from text_bonus bonuses 2024-02-02 20:11:09 +00:00
Refringe
69a1723646
Fixes Linting Issues
- Reorders imports
- Removes unnecessary `else` control statements
- Simplifies some logic
- Converts key access to dot notation
- Converts Array.forEach loops to for...of loops
2024-02-02 15:00:21 -05:00
Refringe
90492f3aa2
Formatting
Have you been using the recommended VSCode extensions? ;)
2024-02-02 15:00:21 -05:00
Kaeno
8227e06d77 Black list Sacred Amulet from scav case also 2024-02-02 19:25:14 +00:00
Dev
5136d69050 Implement flea required searching 2024-02-02 19:23:08 +00:00
Kaeno
ef958a115d Blacklist Lightkeepers amulet from airdrops and fence 2024-02-02 19:02:46 +00:00
Dev
6a4330557f Add PMC name 2024-02-02 17:58:31 +00:00
Dev
36d16f0917 Add english fallback locale 2024-02-02 17:53:23 +00:00
Dev
ca02aa6a50 Fix stackable hideout crafts not being added to stash in correct format 2024-02-02 17:31:52 +00:00
Dev
83c3cd5f8b Remove unused function 2024-02-02 17:22:49 +00:00
Dev
796d63b3e2 Fix fence item not being removed after purchase 2024-02-02 17:22:12 +00:00
Dev
e6e77d49a5 Cleanup of fence offer generation, no longer errors when buying items from high level fence offer page 2024-02-02 17:15:28 +00:00
Dev
034ac83a10 Improve handling of buying less than max stacksize from fence 2024-02-02 15:56:37 +00:00
Dev
8dab47b3fd Fix selling to trader an amount above stack size causing currency to not stack 2024-02-02 15:35:02 +00:00
Dev
a1e84992a2 update english locale 2024-02-02 14:18:45 +00:00
Dev
8d59ab7c77 Replace use of dialogueHelper.addDialogueMessage inside sendInsuredItems() with MailSendService.sendMessage() 2024-02-02 11:57:10 +00:00
Kaeno
e0b5d43fd5 Fix fence generating items with same IDs causing Fence Trader to break client 2024-02-01 21:02:39 +00:00
Dev
5b04bc530e Update locales 2024-02-01 20:19:06 +00:00
Dev
ded87b3881 Show first 7 characters of commit server was built against in version label 2024-02-01 16:58:23 +00:00
Dev
31942b96eb Add marksman rifles to elimination dailies
Add weapon filtering based on range requirement of elimination quest:
> 50 = no pistols/shotguns
< 20 = no DMR/MarksmanRifles
2024-02-01 14:37:02 +00:00
Dev
a38cf7fa69 Remove redundant else from toggleItem() 2024-02-01 13:58:06 +00:00
Dev
5e94e3fef0 Cleanup of getExaminedItemTpl() 2024-02-01 13:53:36 +00:00
Dev
6032573815 Comment improvements 2024-02-01 13:31:36 +00:00
Dev
5f500655be openRandomLootContainer() Remove item after contents have successfully been added to stash 2024-02-01 13:26:18 +00:00
Dev
3587becf76 Update openRandomLootContainer() to use addItemsToStash() 2024-02-01 13:23:03 +00:00
Dev
704b337a3c removeResourceFromArea() Pass found item in slot directly to addToStash requst for small optimisation 2024-02-01 12:53:30 +00:00
Dev
d920dceb53 Remove redundant returns from various hideout functions used inside takeProduction() 2024-02-01 12:47:48 +00:00
Dev
3bf44b7863 Update handleScavCase() to use addItemsToStash() 2024-02-01 12:42:02 +00:00
Dev
d564a7a992 Comment improvements 2024-02-01 12:35:18 +00:00
Dev
16cb48ad70 Improvements to handleRecipe()
Cleaner handling of stackable rewards
Moved task condition counter lookup to own function
2024-02-01 12:31:48 +00:00
Dev
44560991b0 Improve handleRecipe()
Better handling of item rewards that need to be split into root + child (ammo boxes)
Use `addItemsToStash()`
move `recipe.isEncoded` check to earlier in function

make use of `getItem()` inside `splitStack()` instead of direct db access
2024-02-01 11:23:32 +00:00
Dev
92d949b445 Comment improvements 2024-02-01 10:24:10 +00:00
Dev
8c99b25df0 Rename interface to IOwnerInventoryItems 2024-02-01 09:58:20 +00:00
Dev
1e4d07937b Update getBTC() to make use of new function 2024-02-01 09:58:04 +00:00
Dev
406c59789a Add interface 2024-02-01 09:50:50 +00:00
Dev
8d8baec766 Add new addItemsToStash() function to InventoryHelper 2024-02-01 09:48:46 +00:00
Dev
69735b5037 Check inventory has space before adding bitcoins from craft 2024-01-31 23:39:01 +00:00
Kaeno
0973c1cdad Add missing quest item ID to forcedLootSingleSpawnById 2024-01-31 23:30:28 +00:00
Kaeno
23ceca5279 Blacklist Quest Items from Scav Case 2024-01-31 22:52:55 +00:00
Kaeno
0a16e06c89 Removed Duplicate key. Fixed some formatting 2024-01-31 21:24:05 +00:00
Kaeno
0d78bc22f0 Potential fix to bots freezing. Needs testing 2024-01-31 20:58:41 +00:00
Dev
c7ce7e57cb Update items.json 2024-01-31 18:30:02 +00:00
Dev
dbea338a8f Add missing FiR properties 2024-01-31 17:07:50 +00:00
Dev
d2e8af3341 Update JSONs 2024-01-31 17:01:46 +00:00
Dev
78e62229cc Update trader assorts
10 missing trader quest assorts replaced with placeholders
2024-01-31 16:57:40 +00:00
Dev
8be7e5b2b7 Update quest data 2024-01-31 16:39:48 +00:00
Dev
95dd27038d improve accuracy of daily quest system
Keep completed dailies inside "activeQuests" array until dailies are refreshed
Adjust post-raid quest handling to ensure previously completed/failed quests keep their original status
2024-01-31 14:38:18 +00:00
Dev
a45cc3052e Fix issue with choosing a default mod for a weapon when the bot doesnt have the default mod in their mod pool already - would result in missing vital mods causing a fallback to a default weapon preset 2024-01-30 21:14:15 +00:00
Dev
2cd92c4e7e Fix typo 2024-01-30 18:48:46 +00:00
Dev
8a5377c244 Bot weighting adjustments 2024-01-30 17:19:48 +00:00
Dev
9616f9b34b Improve armor slot compatibility checking 2024-01-30 16:32:03 +00:00
Dev
81960a23fe Fix bitcoins being returned in bundles instead of individually 2024-01-30 13:24:46 +00:00
Dev
491a5204bb optimisation: only update the current profiles hideout data 2024-01-30 12:16:58 +00:00
Dev
d0af930dc9 Fix not being able to collect bitcoins
Improved handling of server/client sync when clicking 'get iems' to reduce chance of `no bitcoins to collect` error
2024-01-30 12:16:27 +00:00
Arys
f5d56f8ae3 Increased BTR moveSpeed to 9 (!213)
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/213
Co-authored-by: Arys <arys@noreply.dev.sp-tarkov.com>
Co-committed-by: Arys <arys@noreply.dev.sp-tarkov.com>
2024-01-30 09:37:12 +00:00
Dev
c498efe18f Update cursed assault json 2024-01-30 09:34:07 +00:00
Dev
55154c8b1a improve block checking logic to be dynamic based on pool size 2024-01-29 23:02:09 +00:00
Dev
f3ec237674 Fix issue with weapon mod generation flagging mod as incompatible even though it passes compatibility checks
Stop trying to fit a mod to a weapon after 8 blocked attempts
Created streamlined mod compatability checker function
2024-01-29 22:41:08 +00:00
Dev
58d620d424 Fix weapon mod generation choosing a default mod only to keep it flagged as incompatible 2024-01-29 21:27:36 +00:00
Dev
1995fbfef0 Adjust scav vest to be less common on higher level PMCs 2024-01-29 19:35:07 +00:00
DrakiaXYZ
f160560134 Lower BTR default speed to work with change in modules (!212)
Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/212
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-01-29 19:07:45 +00:00
Dev
187c0f2263 Update PMC names 2024-01-29 17:01:07 +00:00
Dev
bf7e214b77 Add nullguard to updateFuel() when generator slot has no items array 2024-01-29 16:40:58 +00:00
Dev
099e2cd6f3 Update air filters to correctly calculate time they were being used since last hideout update tick 2024-01-29 16:05:32 +00:00
Dev
9b45d40c2b Improve dogtag bonus function for HoF area + allow any side dogtag to be used 2024-01-29 15:56:35 +00:00
Dev
ad0489a9e7 Cleanup of updateFuel()
Make function calculate drain rate for the whole period since last update ran, not just the interval period in config
Look up max fuel storage of item instead of assuming its expeditionary or the other fuel container

Reduce nesting by inventing an if
2024-01-29 15:55:43 +00:00
Dev
a9517bb1cc Remove redundant return statements from RagfairOfferGenerator 2024-01-29 11:22:04 +00:00
Dev
330b1ebf28 declare repeatableQuests as const not let inside removeOrphanedQuests() 2024-01-29 11:12:57 +00:00
Dev
2bb8965c80 Remove redundant else from updateBitcoinFarm() 2024-01-29 11:11:44 +00:00
Dev
079651045d Remove return type from updateWaterFilters() 2024-01-29 11:10:26 +00:00
Dev
4cc7813320 Replace skillType bonus property with enum 2024-01-29 10:48:53 +00:00
Dev
e88a661e7e Convert hideout area bonus property + Bonus type property into an enum and update code that uses altered property 2024-01-29 10:42:02 +00:00
Dev
dbc6bd9a0b Improve reorderHideoutAreasWithResouceInputs() debug messaging 2024-01-29 10:25:14 +00:00
Dev
e579cac907 improve applyPlayerUpgradesBonuses() debug messaging 2024-01-29 09:59:22 +00:00
Dev
8fe2508e00 Improve addItemToStash() debug messaging 2024-01-29 09:54:20 +00:00
Dev
8b691e10a9 Improve server locale handling 2024-01-27 23:33:31 +00:00
Dev
215e8f1c4b Create new SNOW event separte from new years 2024-01-27 23:08:21 +00:00
Dev
f2c2f23438 Add various handguard lower secctions to PMC weapons 2024-01-27 23:02:38 +00:00
Dev
8ec94a1322 Skip gifter when removing christmas items 2024-01-27 22:39:57 +00:00
Dev
5ffa186b0e Build fix 2024-01-27 22:38:16 +00:00
Dev
bab96ec429 Added limit of 1 for Shturman's stash key on bosskojaniy
Fixed typo in `bosskolontay` name
2024-01-27 22:30:47 +00:00
Dev
023bf7ac3f Removed return type from generateId() 2024-01-27 21:01:57 +00:00
Dev
88179f1c4c Remove return type for generateInventoryID() 2024-01-27 20:31:20 +00:00
Dev
8cf9cb8e15 Fix issue with getDynamicOfferPriceForOffer() not seeing presets correctly after ragfair rework 2024-01-27 20:00:18 +00:00
Dev
4875662d0a More PMC adjustments 2024-01-27 19:40:11 +00:00
Dev
fde85a52ce Improve PMC gear filters 2024-01-27 19:15:42 +00:00
Dev
ccb610dda6 Add config property forceOnlyArmoredRigWhenNoArmor + wire it up 2024-01-27 18:52:36 +00:00
Dev
734d821630 Improve mod item filtering code 2024-01-27 18:12:13 +00:00
Dev
8ca0c5d82b Remove faceshield from headwear section 2024-01-27 17:08:01 +00:00
Dev
b3f2e3e2a5 Stop PMCs being genered as usec with side of bear 2024-01-27 16:19:26 +00:00
Dev
8c348844ad Replace possible bad bear body id with correct one 2024-01-27 16:08:33 +00:00
Dev
30efd8b720 Only add location property to mag cartridge stacks when more than 1 is added 2024-01-27 15:03:15 +00:00
Dev
b6327b7d0d Build fix 2024-01-27 09:03:39 +00:00
Dev
ac78ce1b82 Make name consistent 2024-01-26 22:40:30 +00:00
Dev
26ebe6cfca Add modUrl for mod data 2024-01-26 22:37:40 +00:00
Dev
3ac5a6e41a Initial pass at adding new locales with fallbacks 2024-01-26 22:28:36 +00:00
Valens
63aed59c98 Ammo adjustments (!210)
Co-authored-by: VforValens <8889280+VforValens@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/210
Co-authored-by: Valens <valens@noreply.dev.sp-tarkov.com>
Co-committed-by: Valens <valens@noreply.dev.sp-tarkov.com>
2024-01-26 19:06:11 +00:00
Dev
89b16cf7c1 remove 2 lint errors 2024-01-26 17:57:42 +00:00
Dev
59bc9cb3e0 Move bot hands/head/voice over to weighted lists 2024-01-26 17:57:13 +00:00
Dev
4d98cf69b8 Update bot data 2024-01-26 16:47:56 +00:00
Dev
7755daf139 Flea price update 2024-01-26 16:26:24 +00:00
Dev
05f7f8b43f Add mods to bots manually to stop warnings on generation 2024-01-26 15:58:14 +00:00
Dev
3764d923fd Linting 2024-01-26 15:56:53 +00:00
Dev
8a824c2cae removed "location": 0 from cartridge on EoD bear profile 2024-01-26 15:30:32 +00:00
Dev
23baf3cce6 Adjust modSpawnChancePercent values to make loose armor have more plates 2024-01-26 14:25:50 +00:00
Dev
15f3223349 Reduce sandbox maxbot count 2024-01-26 13:15:25 +00:00
Dev
9b09319d3d Cleanup of cancelled player flea offer code 2024-01-26 10:49:06 +00:00
Valens
0d1a5bc59f Change 762x51 for Levels 1-14 to weight worse ammo (!209)
Changed 762x51 BCP FMJ and TCW SP to be weighed heavier to help prevent occurrences of the better ammo in the 762x51 array from spawning while low level.

Co-authored-by: VforValens <8889280+VforValens@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/209
Co-authored-by: Valens <valens@noreply.dev.sp-tarkov.com>
Co-committed-by: Valens <valens@noreply.dev.sp-tarkov.com>
2024-01-26 08:29:41 +00:00
Kaeno
09a07ece66 Fix to Items not retaining upd properties when returning them from hideout area stashes 2024-01-25 23:49:35 +00:00
Valens
b9e9e0cd4b Fix rightside_plate in multiple bot types (!208)
Fix rightside_plate to be right_side_plate matching all other entries for config/bots.json, bots/types/arenafighter, bear, and usec.json's

Co-authored-by: VforValens <8889280+VforValens@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/208
Co-authored-by: Valens <valens@noreply.dev.sp-tarkov.com>
Co-committed-by: Valens <valens@noreply.dev.sp-tarkov.com>
2024-01-25 23:29:01 +00:00
Dev
9520a2977e Move variable calculation outside of loop 2024-01-25 22:38:42 +00:00
Dev
c116adc0b9 Clenaed up how PMC names are replaced during event 2024-01-25 22:17:18 +00:00
Dev
e8ff4c01b3 Further adjustments to PMCs 1-14 2024-01-25 21:38:09 +00:00
Dev
edbc35134f PMC 1-14 changes 2024-01-25 21:11:04 +00:00
Dev
6ffbbed760 increase chance of basic headgear for 1-14 PMCs
increase chance of basic headset for 1-14 PMCs

increase chance of level 4 facecover for 50+ PMCs
2024-01-25 20:34:44 +00:00
Dev
f6dae88610 reduce mp7/bastion spawn chance 2024-01-25 17:23:09 +00:00
Dev
d9eedae831 Fix 3m armor being in wrong slot 2024-01-25 17:16:47 +00:00
Dev
f9965becc1 Fix default preset ordering 2024-01-25 15:18:50 +00:00
Dev
e8013321ce improve flea result filtering to allow weapon presets to show when searching for 1 build item but ignore presets when searching for mulitple 2024-01-25 15:09:10 +00:00
Dev
9b47c3b50e Fix being unable to buy items via equipment preset menu 2024-01-25 14:40:28 +00:00
Dev
fd7050b0ac Fix issue with weapon/equipment mod selection where it would ignore settings when mod slot was required
Fix JSON errors in bot.json
2024-01-25 13:45:42 +00:00
Dev
fc9e3f9f59 Fix server error when generating single sptBear/sptUsec 2024-01-25 12:59:45 +00:00
Dev
4fee533622 Add back paca fix 2024-01-25 12:58:58 +00:00
Dev
26c4138b5c Remove paca debug values 2024-01-25 10:57:37 +00:00
Dev
9fbed0c23f Variable cleanup of generateModsForEquipment() and removal of duplicate call to db 2024-01-25 10:55:33 +00:00
Dev
c376abfbfb pmc 1-14 equipment value adjustments 2024-01-25 10:52:34 +00:00
Dev
2c50139dba Round armor/weapon durability values to 2 DP 2024-01-25 09:30:50 +00:00
Arys
5c077dc99b Added new BTR config settings (!207)
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/207
Co-authored-by: Arys <arys@noreply.dev.sp-tarkov.com>
Co-committed-by: Arys <arys@noreply.dev.sp-tarkov.com>
2024-01-25 08:52:10 +00:00
Dev
2a51d13b91 Fix caps issuewith paca 2024-01-24 22:36:41 +00:00
Dev
7d734a18f1 Bot wave adjustments
Remove gifter from streets
Remove manual waves from streets
2024-01-24 19:49:42 +00:00
Dev
5d0ffd93d2 Added helmets category to ragfair conditions array 2024-01-24 19:33:24 +00:00
Dev
6cdd1ce643 Improve PMC bot gear filtering 2024-01-24 19:15:05 +00:00
Dev
a6eac990aa Add more missing props to ITempalteItem 2024-01-24 17:29:11 +00:00
Dev
008d431cf2 Add missing props to ITemplateItem 2024-01-24 17:20:42 +00:00
Terkoiz
d2254249e6 Fixed and expanded QTE type definitions (!206)
Co-authored-by: Terkoiz <terkoiz@spt.dev>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/206
Co-authored-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
Co-committed-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
2024-01-24 16:35:23 +00:00
Dev
852849aeb1 Extend new years date
Generate fewer btr bots
2024-01-24 14:23:44 +00:00
Dev
e6c3271b23 JSON update 2024-01-24 13:48:02 +00:00
Dev
b4af859a06 28476 2024-01-24 10:45:57 +00:00
Dev
3ec63ef31d Fix issue with addChildSlotItems() and add additional mods 2024-01-23 21:33:24 +00:00
Dev
b68164b830 Add support for sub locales - initial support for PT and ZH 2024-01-23 20:49:06 +00:00
Dev
45484227df Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-01-23 20:25:34 +00:00
Dev
dbb4bc5f03 Add missing mods to Ops-Core FAST ballistic helmet on PMCs 2024-01-23 20:25:27 +00:00
Kaeno
7f90c52386 Corrected isinsured check 2024-01-23 20:19:53 +00:00
Dev
054aea23e0 Enhance findAndReturnChildrenAsItems with the ability to filter out stored child objects 2024-01-23 20:00:36 +00:00
Dev
2e6574c917 Clean up imports 2024-01-23 16:49:00 +00:00
Dev
67e5e61d3c Adjust easy start profiles to be level 15 2024-01-23 15:48:08 +00:00
Dev
d3f9cea4c1 Fix ammobox + magazine cartridges being given to player with an incorrect FiR status, shouild match parents status 2024-01-23 15:24:02 +00:00
Dev
4ce26ea870 Refactor of RagfairAssortGenerator and associated code that touches it 2024-01-23 14:17:01 +00:00
Dev
86d34e3efe Remove dupe data from ragfair json 2024-01-23 13:25:22 +00:00
Dev
b3738b03d9 i hate commas 2024-01-23 13:21:22 +00:00
Dev
bcf506a57b Fix json issue 2024-01-23 13:03:04 +00:00
Dev
b766fa1220 Allow armor items without plates to be listed on flea 2024-01-23 12:46:29 +00:00
Dev
8816e27298 Add balaclava to vengeful zryachiy 2024-01-23 12:45:49 +00:00
Dev
27bc7cfa6e Fixed armors being listed with plates above the allowed level on flea 2024-01-23 11:42:47 +00:00
Dev
6378ac6f87 Add back CLIENT_START_TIMESTAMP saving on game start 2024-01-23 10:14:37 +00:00
OkaMoez
1c6b76163b Make accelerated time calculations independent of client (!205)
Changes server accelerated time calculation to be fully independent of client calculations.

Local testing over most of a day showed time acceleration continuing through relogging as a client, and calculated times being synced to about +- 2 seconds between server and client with no drift.

-----------
In #202 I referenced the client side formula for accelerate time:
`In Raid Time = Today's Date + Location Time + Time Since Client Connection * Acceleration`
At the time I didn't know where Location Time was set and conservatively tried to match the server calculations to the client.  Since then I've confirmed that it is set after calling `client/game/start` and holds the accelerated server timestamp from that call.  With this in mind, I'm more confident changing the server calculations and here we are.

Previously each time you started your client, the accelerated time would start counting from your irl time at launch.  This change moves that to the server, so you could leave your server running to have a more live-like experience where you won't be sure of the in raid accelerated time until you log in.

Added benefit of significantly simplifying the `getInRaidTime()` code.

Future work could be done to add save/load support to the server's timestamp to further emulate the live experience where timers won't reset to your irl time unless you wipe the data.  I'd personally lean towards saving it at a server level, not a profile level, to allow multiple profiles to share a single 'wipe'.

-----------

Co-authored-by: OkaMoez <43766412+OkaMoez@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/205
Co-authored-by: OkaMoez <okamoez@noreply.dev.sp-tarkov.com>
Co-committed-by: OkaMoez <okamoez@noreply.dev.sp-tarkov.com>
2024-01-23 10:13:53 +00:00
Dev
c51cce269f Workaround for sandbox map having Level 20 max 2024-01-23 10:02:06 +00:00
Dev
32eb8ae35c Refactor handleRecipe() to use addItemToStash() 2024-01-21 20:51:00 +00:00
Dev
5b296975e8 Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-01-21 17:54:09 +00:00
Dev
9c9d3fb5a5 Cleanup of scavcase reward blacklist 2024-01-21 17:53:59 +00:00
CZPZ
1551a5e793 feature: add probability for extra rep gain on pmc kills as pscav (!204)
Feel free to rename everything.

We can also use the new function from randomutil and replace code block below on InsuranceController.ts

```
        const maxRoll = 9999;
        const conversionFactor = 100;

        const returnChance = this.randomUtil.getInt(0, maxRoll) / conversionFactor;
        const traderReturnChance = this.insuranceConfig.returnChancePercent[traderId];
        const roll = returnChance >= traderReturnChance;
```

I killed 2 PMCs with 100% chance and gained 0.07 rep (rounding issue probably somewhere else)

![image](/attachments/00f00922-eb18-4fdc-8958-129b680af704)

Some JS problems :S

![image](/attachments/dcbeb1d1-2ee3-4809-890e-e19fe3190840)

Implements: https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/150
Co-authored-by: alimoncul <alimoncul@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/204
Co-authored-by: CZPZ <czpz@noreply.dev.sp-tarkov.com>
Co-committed-by: CZPZ <czpz@noreply.dev.sp-tarkov.com>
2024-01-21 17:39:37 +00:00
Dev
c68c9a72fb Refactor handleScavCase() to use addItemToStash()
blacklist soft armor inserts from scavcase rewards
2024-01-21 16:40:14 +00:00
Dev
8e232e8250 Update bot data 2024-01-21 12:00:16 +00:00
Dev
e7512872ef Add missing equipment mods to PMCs 2024-01-21 09:37:11 +00:00
DrakiaXYZ
e31c52e7ff Add BTR config options (!203)
Also add the cover service entry

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/203
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-01-21 08:46:12 +00:00
Dev
693dc4bbb5 Fix PMCs not spawning 2024-01-20 22:50:12 +00:00
Dev
910b5e946c Refactor removeResourceFromArea() to use addItemToStash() 2024-01-20 22:42:15 +00:00
Dev
d112d0fa6e Reworked openRandomLootContainer() to make use of addItemToStash() 2024-01-20 22:13:47 +00:00
Dev
af50cb7869 FIx getProfileTraderPurchase() failing when trader doesnt exist in profile 2024-01-20 20:37:41 +00:00
Dev
80b549a2d5 Migrate getBTC() to use addItemToStash() 2024-01-20 20:26:55 +00:00
Dev
ceba6b3064 Move isItemInStash into inventoryHelper
Cleanup of variable names
2024-01-20 20:15:03 +00:00
Dev
4bca0b7747 Migrate giveProfileMoney() to use addItemToStash() 2024-01-20 20:06:15 +00:00
Dev
399bbb2e3b Add framework for BTR config 2024-01-20 18:47:57 +00:00
Dev
446b1ef4f9 Remove duplicate locale key/value 2024-01-20 18:08:25 +00:00
Dev
13ce200f80 Small optimisations applied to reateRandomLoot() 2024-01-20 18:08:09 +00:00
Dev
80fdaf65e6 Finalise fence changes 2024-01-20 17:56:19 +00:00
Dev
42b915990e Moe majority of assort generation from FenceService into FenceBaseAssortGenerator
Generate an items children and store in fence assort base

Better handle presets
Fix `removeRandomItemFromAssorts()` not removing all of an items mods from memory
Correctly calculate an items price including its children
2024-01-20 16:20:39 +00:00
OkaMoez
8b2fa7c8dd Adjust server raid time calculations to match client (!202)
This change brings the server in raid time calculation (accelerated time/time you see when choosing a map) to parity with the client.

The time returned by `getInRaidTime()` effectively is the same, but the server can stop using `acceleration - 1` and the adjacent comment has an answer.

-----

The Tarkov client calculates current raid time via the following formula in `Session.GetCurrentLocationTime()`:
`In Raid Time = Today's Date + Connection Time + Time Since Client Connection * Acceleration`

The server currently uses the following:
`In Raid Time = Current Date and Time + Time Since Client Connection * (Acceleration - 1)`

The `Current Time` and `-1` used in the server calculation effectively cancel each other out if `acceleration > 1`.  Removing both should have no effect on the calculated time (not date).

The client side using `Today's Date + Connection Time` is kinda weird.  Using `acceleration = 1`, you'd see the calculated date move 2 days after 24 hours.  That said, I don't see the date portion of the raid time being used, so that might not matter.  Either way, I've matched the formula to avoid any edge cases causing desync.

Co-authored-by: OkaMoez <43766412+OkaMoez@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/202
Co-authored-by: OkaMoez <okamoez@noreply.dev.sp-tarkov.com>
Co-committed-by: OkaMoez <okamoez@noreply.dev.sp-tarkov.com>
(cherry picked from commit afb64c1ebf)
2024-01-20 10:02:59 +00:00
Dev
b5bca2c49b Add missing property to airdrop config 2024-01-20 09:30:18 +00:00
Dev
05533bb166 Prevent no exit data killing client start 2024-01-20 00:19:52 +00:00
Dev
a1f043d088 Fix issie with BuyRestrictionCurrent value persisting between profiles 2024-01-20 00:19:13 +00:00
Dev
4fd37e3a92 Fix all items being free 2024-01-19 22:49:31 +00:00
Dev
879af0377a Adjust airdrop values 2024-01-19 21:19:14 +00:00
Dev
134d789a0e Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-01-19 19:23:11 +00:00
Dev
1c9acbbc2e improve bot generation time 2024-01-19 19:21:51 +00:00
Kaeno
812a6a6884 Fix function removing daily/weekly quests from profile on profile load 2024-01-19 16:41:35 +00:00
Dev
cdb5baac4b Improve variable names 2024-01-19 12:10:51 +00:00
Dev
34b9d318a3 Pull some code out of addLootFromPool() into its own function 2024-01-19 11:57:25 +00:00
Dev
63ca393372 Add short circuit optimisation to isItemIncompatibleWithCurrentItems() 2024-01-19 09:56:18 +00:00
Dev
f3f008e0ec Rename function to help with clarity 2024-01-19 09:52:56 +00:00
Dev
4cb2d8171e Fix JSON issues with ravangezryachiyevent 2024-01-19 09:37:01 +00:00
Dev
c96b177416 Disable use of sorting table when buying from flea/trader/fence - fixes client error 2024-01-19 09:08:11 +00:00
Dev
0d4fdf11e3 include handling armors without plates 2024-01-18 23:29:07 +00:00
Dev
310762d66d Refactor airdrop loot generation to account for armor plate changes 2024-01-18 23:25:08 +00:00
Dev
ea0d8224e6 Add loop to try multiple armor pieces to find one that's compatible with bots current loadout 2024-01-18 22:36:14 +00:00
Kaeno
01b608d8b2 Adjust bot difficulty for ground zero 2024-01-18 22:03:16 +00:00
Dev
8f12bf479a Generate armor vest for bots first, then rig 2024-01-18 21:39:35 +00:00
Dev
ed6ba36ff3 Update map loot 2024-01-18 21:25:31 +00:00
Dev
6eeb8c58d6 Improve iRagfairConfig comments 2024-01-18 20:30:13 +00:00
Dev
c8fa31184f Prevent gifter bot being added twice 2024-01-18 12:20:28 +00:00
Dev
a3e4f6141d Adjust GIFTER_ADDITIONAL_GIFTS setting 2024-01-18 12:08:19 +00:00
Dev
bb741f681d Store and process secure container loot items for bots
Give gifter more items
2024-01-18 12:07:32 +00:00
snowythefox811
f6192f1891 Added The ability to have enhancements on armored rigs and helmets. (!200)
Added the vest and headwear classes to be eligible for armor enhancement

Co-authored-by: Snow <Notarealemail@email.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/200
Co-authored-by: snowythefox811 <snowythefox811@noreply.dev.sp-tarkov.com>
Co-committed-by: snowythefox811 <snowythefox811@noreply.dev.sp-tarkov.com>
(cherry picked from commit 35eb9feebf)
2024-01-18 09:08:22 +00:00
Dev
04edb19f14 Allow dogtags to be added to custom bots 2024-01-17 22:17:12 +00:00
Dev
cef8cbadea Assort updates 2024-01-17 21:46:57 +00:00
Dev
780647a40b Add correct assort data 2024-01-17 19:35:37 +00:00
Dev
71ba4f497a Update quests and traders 2024-01-17 18:32:59 +00:00
Dev
f38d098aae Exclude scav coop exits when choosing pmc exit 2024-01-17 16:47:53 +00:00
Dev
727a85f5fc Improve repeatable quest exit choice code 2024-01-17 16:39:55 +00:00
Dev
43cbe45376 Make players PMC equipment id unique on profile creation 2024-01-17 15:05:01 +00:00
Dev
43699d6416 Add new bot types to pmc config
remove new types from possible brain types on sandbox
2024-01-17 14:22:27 +00:00
Dev
d9186e0e48 Improve workaround for spawnpoint values 2024-01-17 10:45:25 +00:00
Dev
a572d090ba Update JSONs 2024-01-17 10:27:51 +00:00
Dev
03a451115c Temp fix to ensure dynamic loot count generator doesnt generate a negative value 2024-01-16 21:55:25 +00:00
Dev
15be241dbf FIx premature exiting of loop 2024-01-16 19:00:21 +00:00
Dev
93edb3e074 Fix player being charged multiple times
Fix issue with  `findBarterItems()` where it would incorrectly wipe out found results each loop
2024-01-16 18:25:03 +00:00
Dev
33d1395dea Add debug logging to getSortedMoneyItemsInInventory() 2024-01-16 17:24:28 +00:00
Dev
0dc2dd5f68 Update flea prices 2024-01-16 17:18:14 +00:00
Dev
220764d0f7 Update bot data
Update `ravangeZryachiyEvent` mapping to use `ravangeZryachiyEvent` bot type data instead of `bossZryachiy`
2024-01-16 16:11:48 +00:00
Dev
fbee59fede When choosing an item to add to a bot, check if the item being added would block an item already equipped 2024-01-16 13:14:48 +00:00
Dev
0166e30dd1 Reduce instances of IItemEventRouterResponse being passed into a function and then returned, its an object and passed by ref, no need to return it
Reduce instances of `IItemEventRouterResponse` being reassigned in a function

Rename `getMoney` to `giveProfileMoney`
2024-01-16 12:21:42 +00:00
Dev
9daa706325 Use correct buycount when buying from fence 2024-01-16 12:08:30 +00:00
Dev
ca1df5ee71 FIx appendErrorToOutput() overwriting warnings instead of appending 2024-01-16 12:04:55 +00:00
Dev
818bb7e37a Refactored flea purchase code 2024-01-16 11:47:40 +00:00
Dev
4d1066b51a Make use of presetHelper instead of rolling own implementation 2024-01-16 10:28:08 +00:00
Spoony
e1a8f26507 Generate ammo box Ragfair offers with cartridges (!198)
#### TL;DR
Previously, Ragfair offers involving ammo boxes weren't generated with cartridges inside of them. This copies a lot of the logic from `InventoryHelper.hydrateAmmoBoxWithAmmo()` to add ammo to offers when they are generated. Made to fix #312.

#### Testing
Purchased various ammo boxes from Flea:

![image](/attachments/340fb349-2589-4b1a-81fa-f8d63f6f1a36)

Purchased ammo boxes are listed as full:

![image](/attachments/f52057d3-efe0-40e7-b64e-8d257a818fa5)

Unloading them produces correct ammunition:

![image](/attachments/33c71f7b-d452-473e-9705-cbad1ecc3f7d)

Co-authored-by: Spoony <Spoony@example.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/198
Co-authored-by: Spoony <spoony@noreply.dev.sp-tarkov.com>
Co-committed-by: Spoony <spoony@noreply.dev.sp-tarkov.com>
2024-01-16 10:26:48 +00:00
Dev
2787b25c8d Items json changes 2024-01-15 23:14:15 +00:00
Dev
34628561ce Filter repeatable explore quest map exits per side 2024-01-15 23:13:57 +00:00
Dev
29573c1418 Add BTR trader image 2024-01-15 22:09:52 +00:00
Dev
50d1b89505 Add missing quest images 2024-01-15 22:05:37 +00:00
Dev
a749dcc272 Add LK services json 2024-01-15 21:45:35 +00:00
Dev
8e6d5330df Update locales 2024-01-15 18:21:11 +00:00
Dev
d95497728f Map data update 2024-01-15 16:59:21 +00:00
Dev
58d8b1157d update en locale 2024-01-15 16:26:57 +00:00
Dev
91150602ef Update items json 2024-01-15 16:26:27 +00:00
Dev
3cdc5a8e99 Update trader assorts using new quest data 2024-01-15 14:53:34 +00:00
Dev
22e9c1df8b Update quest data 2024-01-15 14:48:33 +00:00
Dev
825db77b1f Move trader purchases over to new system
Fix callback errors not being propigated into client error message
FIx incorrect offer id being passed into `buyItem`
Update callbacks to accept a `buyCount` parameter - solves trader purchase limits being exeeded prematurely
Exit addItemToStash early if warning/error found in output
2024-01-15 14:25:17 +00:00
Merijn Hendriks
bdc505bed6 Add locales fallback (!197)
Fixes [#310](https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/310)

Co-authored-by: Merijn Hendriks <merijn.d.hendriks@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/197
Co-authored-by: Merijn Hendriks <senko-san@noreply.dev.sp-tarkov.com>
Co-committed-by: Merijn Hendriks <senko-san@noreply.dev.sp-tarkov.com>
2024-01-15 12:45:24 +00:00
Dev
cff4a45291 Resolve fence selling helmets that lack inserts 2024-01-15 12:41:54 +00:00
Dev
3ac64a3245 Update bot data 2024-01-15 10:48:58 +00:00
Dev
0d059fbaf4 Remove ancient profile fix 2024-01-15 10:07:57 +00:00
Dev
1d9ff8ace8 Improve buyItem() to also support putting fence purchases through addItemToStash() 2024-01-14 22:30:05 +00:00
Dev
2f07d6083f Fix armor plates/visors/helmet plate inserts not having thier durability altered on ragfair 2024-01-14 22:28:53 +00:00
Merijn Hendriks
f15a2ff71d Update EFT translations (!195)
Dumped the data for Haru, noticed Aki was missing them.

Changes:

- Added Romanian language
- Updated existing languages

I'll check the rest of the data and create new branches accordingly.

Co-authored-by: Merijn Hendriks <merijn.d.hendriks@gmail.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/195
Co-authored-by: Merijn Hendriks <senko-san@noreply.dev.sp-tarkov.com>
Co-committed-by: Merijn Hendriks <senko-san@noreply.dev.sp-tarkov.com>
2024-01-14 21:46:47 +00:00
Dev
5005a5160a Improve buyItem() handling of multiple and stackable item purchases
rename `reparentPresets` to `reparentItemAndChildren` and move to `itemHelper`
2024-01-14 21:12:56 +00:00
Dev
c2f390d4ac Make all properties of ITrader optional 2024-01-14 15:06:43 +00:00
Dev
48377a0e08 Update JSONs 2024-01-14 15:03:35 +00:00
Dev
303be64880 Move code to its own variable 2024-01-14 14:38:10 +00:00
Dev
66c78cabaf Update bots 2024-01-14 14:37:28 +00:00
Dev
47a84e508b Fix some quests failing twice (chemical part 4), reducing rep twice as much as it should
Quest failure is handled by client now, no need to find and fail quests in server on quest completion

Move `getQuestsFailedByCompletingQuest()` to questHelper
2024-01-14 12:29:58 +00:00
Dev
4efb75ea58 Fix typo 2024-01-14 10:27:45 +00:00
Dev
41d491dd16 Show error when quest not found in db 2024-01-14 10:27:26 +00:00
Dev
00660747a5 Refresh map loot 2024-01-14 10:10:41 +00:00
Dev
8b03faca89 Fix ragfair offers not saving upd properties
Create replacement for `addItem()`, only used for ragfair purchases currently - goal is to fully remove `addItem()`

Dont show warning when generating armor without a default plate on fence
2024-01-14 10:09:43 +00:00
Valens
743f222141 Add valens to gifts.json (!194)
Add the "VALENS" code to the gifts system.
Consists of 1 SR-25, and 1 M1A.

Co-authored-by: VforValens <8889280+VforValens@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/194
Co-authored-by: Valens <valens@noreply.dev.sp-tarkov.com>
Co-committed-by: Valens <valens@noreply.dev.sp-tarkov.com>
2024-01-14 09:05:28 +00:00
Dev
72fdada5d7 Add vistor shot damage to those listed on flea/fence - 25% chance a damaged helmet can have a visor with bullet hits
Improved `FenceService.addModsToArmorModSlots()` to not break when it cant find a default plate tpl
2024-01-13 20:47:59 +00:00
Dev
8b355adfa6 Add soft insert type to daily reward blacklist 2024-01-13 20:02:19 +00:00
Dev
ae50835391 Fix 2 issues with quests 2024-01-13 19:15:20 +00:00
Dev
bf148dba4a First pass at implementing Place of fame dogtag bonus, bonus is slight out from what is shown on client (0.0x out) 2024-01-13 16:41:06 +00:00
Dev
46ec7bf3ba Improve handling of presets when adding to player inventory
Presets now have all child items FiR status set
2024-01-13 15:01:29 +00:00
Dev
ae6bb7a43b Small cleanup of preset handling code in addItem() 2024-01-13 15:00:31 +00:00
Dev
6cd82ce2a6 Add location property minFillLooseMagazinePercent
Make static/dynamic magazine loot have chance to not have cartridges
2024-01-13 12:30:15 +00:00
Dev
1f05fe1994 Update bot data 2024-01-13 10:55:12 +00:00
Dev
b01e3f513a update map loot. 0.14 dumps only 2024-01-13 10:53:20 +00:00
Dev
8b9cdd485f Update items json 2024-01-13 10:05:47 +00:00
Dev
14a8b34dcc Add sandbox to daily quest map pool 2024-01-13 09:51:09 +00:00
Dev
dc13b20ed5 Blacklist ammo boxes from completion quest item pool 2024-01-13 09:21:32 +00:00
Dev
48f99ecfa6 Additional changes to randomiseWeaponDurabilityValues()
Move chance to make changes check outside of function
Aliased ragfair config property
Aliased chosen child multipler value
Added comment to function
2024-01-13 09:15:11 +00:00
r2go
a87129c541 #284 fixed flea armors not having random values (!193)
https://dev.sp-tarkov.com/SPT-AKI/Issues/issues/284

Probably needs some balancing since some armors are very random, some are not at all. It feels pretty realistic I think.

Any feedback is appriciated.

Co-authored-by: r2go-beep <hans@hummelusa.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/193
Co-authored-by: r2go <r2go@noreply.dev.sp-tarkov.com>
Co-committed-by: r2go <r2go@noreply.dev.sp-tarkov.com>
2024-01-13 09:03:51 +00:00
CWXDEV
22ad266b27 why the f*ck we using spaces and not tabs :reee: 2024-01-12 23:47:41 +00:00
CWXDEV
091e4fa41b added check to make sure same item isnt used, still has an edge case, if maxRequestedAmount is too high, and we cant offer enough items, dupes will appear, but this will fix normal use 2024-01-12 23:44:58 +00:00
CWXDEV
04564d7e76 Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-01-12 22:00:02 +00:00
CWXDEV
f7bdded54d remove orphaned quests to stop softlocking quest screen. 2024-01-12 21:59:38 +00:00
Dev
0440bdab70 Reworked flea armor listing code
Randomises plate durability
Randomises insert durability
2024-01-12 21:59:30 +00:00
Kaeno
05484ff3b3 Added Missing coop extracts and vehicle extracts 2024-01-12 20:19:43 +00:00
Kaeno
5e9a1f244b Add missing quest images 2024-01-12 19:50:58 +00:00
Dev
80fa0c1b9c Introduce typo into json to follow bsg naming 2024-01-12 19:17:39 +00:00
Kaeno
664715c09e Fixed extra spawns on customs. Fixed duplicate spawns on labs. Removed Shoreline spawns due to map changes 2024-01-12 19:09:57 +00:00
Dev
a219bab82b Loot update 2024-01-12 18:41:54 +00:00
Dev
6353456b64 Update bot/map data 2024-01-12 17:59:47 +00:00
Dev
eb961b3e11 Fix saveEquipmentBuild() not correctly setting root id to first items _id 2024-01-12 17:18:10 +00:00
Dev
9b1b8f9f10 Add missing mods to kiver helmet on PMCs 2024-01-12 17:01:40 +00:00
Dev
98241d894f Rework how plates are filtered from bot equipment
Add `filterPlatesByLevel` to bot config
2024-01-12 17:00:22 +00:00
Dev
a7e6eed954 Update presetSlotsToRemoveChancePercent in trader config to allow insutrance to remove armor items 2024-01-12 13:45:37 +00:00
Dev
23ebe19938 Lower chance of ECLiPSE RBAV-AF plate carrier on low level PMCs as it doesnt support the armor level we want for them 2024-01-12 13:44:58 +00:00
Dev
78759ee72e Add weighting data for left_side_plate and right_side_plate 2024-01-12 13:44:46 +00:00
Dev
bf7dac25ae Allow fence to strip items from listed weapons that're not raid-modadble, players can sell broken guns to him from menu 2024-01-12 13:33:11 +00:00
Dev
c5806aadb8 Allow fence to list items with missing required items 2024-01-12 13:30:22 +00:00
Dev
66ab32e6c4 Make new years last until 20th of jan 2024-01-12 13:01:10 +00:00
Dev
3a76757957 Add various missing type properties for new map 2024-01-12 13:00:48 +00:00
Dev
d92f30d281 Fix insurance return all child items of an item (ammo in mags/chamber) 2024-01-12 12:32:04 +00:00
Dev
6e4d5d1aca Bot update - fix various missing soft-insert shoulder armors 2024-01-12 10:35:02 +00:00
Dev
cb18d251ba Improve selection of items to add mods for:
quest rewards
bot loot gen
map loot gen
fence assort gen

Updated `removeRandomModsOfItem()` to also skip slots with a _required prop
2024-01-11 17:42:58 +00:00
Dev
6a8e261af1 Fix typo 2024-01-11 12:48:10 +00:00
Dev
3b255f3ce4 Fix createMagazineTemplate failing when no userbuilds.magazineBuilds array exists 2024-01-11 11:53:19 +00:00
Dev
9623bd5203 Add rig to PMCs 2024-01-11 11:23:33 +00:00
Dev
0e021d246f Update PMC armor data 2024-01-11 09:56:51 +00:00
Terkoiz
b3b570824c Updated PMC name list (!192)
Updated `hazelify` name by request
Added some names of recent contributors

Co-authored-by: Terkoiz <terkoiz@spt.dev>
Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/192
Co-authored-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
Co-committed-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
2024-01-11 09:43:05 +00:00
Dev
5ba1ed95c1 Update bot data 2024-01-11 09:42:30 +00:00
Dev
3879d14761 Update map data 2024-01-11 08:33:42 +00:00
DrakiaXYZ
fcbd39c6b0 Remove delivered items from player insured items (!191)
This stops players from duplicating insured items via the BTR delivery service

Note: This does un-insure the item, I don't have any proof one way or the other for whether live causes the items to no longer be insured, but this was the easier solution to implement.

Co-authored-by: DrakiaXYZ <565558+TheDgtl@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/191
Co-authored-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
Co-committed-by: DrakiaXYZ <drakiaxyz@noreply.dev.sp-tarkov.com>
2024-01-11 08:13:27 +00:00
Dev
3ef7e3218e Update loot data 2024-01-10 23:07:06 +00:00
Dev
77ae4146c2 Fix various quest reward ids 2024-01-10 22:59:25 +00:00
Dev
53c5034edb fix variious pmc json errors 2024-01-10 22:47:48 +00:00
Dev
87bf71415f Update quest json to fix weapon reward errors 2024-01-10 22:42:03 +00:00
Dev
033b0e6805 Slightly increase pmc conversion rate
Reduce number of PMCs generated
2024-01-10 21:09:27 +00:00
Dev
219086d9bb Fix only one type of bot spawning 2024-01-10 21:08:00 +00:00
Dev
f66b2d04a9 Revert "This PR aims to resolves issue #280 (!190)"
This reverts commit e0e62d8e47.
2024-01-10 17:43:39 +00:00
Dev
5e9be7a2fd Remove unused loot ids 2024-01-10 15:41:36 +00:00
Dev
9d8efe8e2f Fix data issue with maska helmet 2024-01-10 15:25:20 +00:00
Dev
dc1e172df0 Handle generating a fence armor item and a default plate is not found
Add extra plates to pool

Centralise plate-related checks into itemhelper
2024-01-10 14:47:09 +00:00
Dev
7ee3be1e2b Round completeTime property to integer to prevent client error 2024-01-10 14:10:03 +00:00
Dev
c918875a38 Fix view profile not showing correctly 2024-01-10 13:53:26 +00:00
Dev
9a4231d8b8 Rename function profileHelper.removeCompletedQuestConditionFromProfile() to removeQuestConditionFromProfile 2024-01-10 12:37:34 +00:00
Dev
6e8028f9c9 Update map base jsons 2024-01-10 12:36:06 +00:00
Dev
297bc2786a Improve armor quest rewards
Attempt to return the armor preset found in globals.json first as this has default plates, if that fails construct item outselves based on mods _requried properties
2024-01-10 10:04:09 +00:00
Dev
55eae60329 Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-01-10 09:14:11 +00:00
Dev
2fd2c677b7 Reduce usage of magic string inside getUserBuilds() 2024-01-10 09:13:34 +00:00
Mihai
e0e62d8e47 This PR aims to resolves issue #280 (!190)
Updated itemDelivery method in InraidController to filter out insured items from the items array using the insuranceService.
Added logic to exclude insured items from being sent as part of the delivery message to the player.

Co-authored-by: mihaicm93 <45673304+mihaicm93@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/190
Co-authored-by: Mihai <mihai@noreply.dev.sp-tarkov.com>
Co-committed-by: Mihai <mihai@noreply.dev.sp-tarkov.com>
2024-01-10 08:44:03 +00:00
Dev
f59041121b Fix plate filtering code not correctly handling when no plates of desired armor level are found 2024-01-09 23:46:57 +00:00
Dev
4078d7cc89 Fix plates not spawning on bots because of capitalisation 2024-01-09 20:16:49 +00:00
Dev
443d8da7f7 FIx server error when passing failed quest data to client 2024-01-09 18:46:44 +00:00
Dev
a9c36ec205 Fix issue with armors as quest rewards not being sent with soft inserts
Centralised a soft insert check into `ItemHelper`

Add extra base types to `generateGearPool()` in equipment bot pool service
2024-01-09 16:49:59 +00:00
Dev
68f3ee013c lint bot.json 2024-01-09 16:18:15 +00:00
Dev
154578dd44 Update randomisation config to specifiy its for weapon mods + add equipment mod adjustment system
Adjust PMCs to use more gear mods at higher levels
2024-01-09 16:15:31 +00:00
Dev
f3964639bd Rename mods to weaponMods and add new object equipmentMods
regenerate bot jsons to include this new data (includes correct inclusion of equipment slot "TacticalVest" which was previously missing)

Fix issue with PMM ammo causes generation issues
2024-01-09 15:31:56 +00:00
Dev
60f96ea6aa Update bot + map data 2024-01-09 14:03:24 +00:00
Dev
571d04f957 Add pmc names 2024-01-09 12:33:50 +00:00
Dev
a742beeae9 Comment and property name cleanup inside removeDanglingTaskConditionCounters() 2024-01-09 12:27:08 +00:00
Terkoiz
98b0a579b3 Fixed achievement counters getting mistakenly cleaned up as stale quest counters (!189)
Fixes #273

Co-authored-by: Terkoiz <terkoiz@spt.dev>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/189
Co-authored-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
Co-committed-by: Terkoiz <terkoiz@noreply.dev.sp-tarkov.com>
2024-01-09 11:57:27 +00:00
Dev
01e63118c6 Rename function 2024-01-09 10:58:06 +00:00
Dev
4d663c0ef1 Add missing armor 2024-01-09 10:57:32 +00:00
Dev
586a96ee9f Merge branch '3.8.0' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0 2024-01-09 10:30:29 +00:00
Dev
bac86262d4 Improve handling of equipment mod generation 2024-01-09 10:30:00 +00:00
Aburiu
91e035d540 Added missing Hall of Fame area to BEAR/USEC EoD profiles (!188)
* Adds missing Hall of Fame area to new EoD profiles.

Should allow the area to be built without an error on EoD profiles.

Co-authored-by: Aburiu <44771615+aburiu@users.noreply.github.com>
Reviewed-on: https://dev.sp-tarkov.com/SPT-AKI/Server/pulls/188
Co-authored-by: Aburiu <aburiu@noreply.dev.sp-tarkov.com>
Co-committed-by: Aburiu <aburiu@noreply.dev.sp-tarkov.com>
2024-01-09 08:52:40 +00:00
Dev
15d53a2d38 Fix armor in bot backpacks having no soft inserts
centralise code that adds mods to equipment into one location
2024-01-08 23:27:18 +00:00
Dev
0efd2861c7 Update quest and trader assort data
new quests:
"Pyramid Scheme"
"Pets Wont Need It P2"
"Properties All Around"
"Dandies"
"Steady Signal"
"Nothing Fishy About This"

some traders are missing level 4
many quests still using old 0.13 data
some quests are out of order/ require wrong quests
2024-01-08 22:15:19 +00:00
Dev
5ffccddf94 Nullguard against missing properties 2024-01-08 21:17:23 +00:00
Dev
878284f108 Fix issue with insurance not returning soft inserts for armors 2024-01-08 21:16:53 +00:00
Dev
e18f75a60c Cast trader property to number before use 2024-01-08 21:14:13 +00:00
Dev
c9de59b5bf Add Zryachiy's balaclava to boss item collection 2024-01-08 17:45:07 +00:00
Dev
0c7cecdacd Add variable durability loss to armor plates sold by fence 2024-01-08 17:43:19 +00:00
Dev
0997c21ba3 Remove debug code 2024-01-08 17:39:28 +00:00
Dev
6dc4604a77 Update inventoryHelper.addItem() to account for items with children that have a upd object
This whole function is in dire need of a rewrite, its awful
2024-01-08 12:41:52 +00:00
Dev
aff5c69c80 Update globals with new changes from live 2024-01-08 12:39:44 +00:00
Dev
507e8eeaa7 Improve comments 2024-01-08 11:35:20 +00:00
Dev
96f75fd744 Correctly remove item + children from fence assorts when running removeFenceOffer() 2024-01-08 11:34:52 +00:00
Dev
30507acd1b Add armor to randimisation list for PMCs 2024-01-08 10:22:24 +00:00