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

71 Commits

Author SHA1 Message Date
e2eb56a60a Added more nullguards (!356)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: SPT/Server#356
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-28 14:35:38 +00:00
8727f6150e primery-dependencies (!355)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: SPT/Server#355
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-28 14:04:20 +00:00
Dev
f56da3c1a8 Updated various classes to make use of databaseService 2024-05-28 14:52:22 +01:00
173a726f33 Removed all null references in favor of undefined (!354)
Co-authored-by: clodan <clodan@clodan.com>
Reviewed-on: SPT/Server#354
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-27 20:06:07 +00:00
Dev
cd965bb733 Refactored 2 functions to accept a request object instead of 5+ parameters generateModsForWeapon() and chooseModToPutIntoSlot()
Store meta-data on weapon as its being generated e.g. if it has an optic/front sight/rear sight
use above meta-data to force a low/high profile gas block on weapon during generation
2024-05-21 23:22:16 +01:00
d13e86ba46 Rebranding to SPT (!345)
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>
2024-05-21 17:59:04 +00:00
cb169a18b9
Project Code Format
Ran the `npm run format` command to bring the entire project in-line with the formatting rules.
2024-05-17 15:32:41 -04:00
Dev
d95423b0f1 Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.9.0-DEV
# Conflicts:
#	project/assets/configs/core.json
#	project/package.json
#	project/src/models/eft/common/IGlobals.ts
#	project/src/routers/dynamic/BundleDynamicRouter.ts
2024-05-15 16:39:41 +01:00
f8d1227dfd Introduced a new ICloner interface with 3 implementations, one of them being a recursive cloner which is faster and more efficient than its counterparts by more than 50% (!328)
Co-authored-by: clodan <clodan@clodan.com>
Co-authored-by: Dev <dev@dev.sp-tarkov.com>
Co-authored-by: chomp <chomp@noreply.dev.sp-tarkov.com>
Reviewed-on: SPT-AKI/Server#328
Co-authored-by: Alex <clodan@noreply.dev.sp-tarkov.com>
Co-committed-by: Alex <clodan@noreply.dev.sp-tarkov.com>
2024-05-13 17:58:17 +00:00
Dev
9323db5b1c Improved debug logging in filterPlateModsForSlotByLevel() + improved variable names 2024-05-12 10:29:18 +01:00
Dev
572f6a5668 Improved getModPoolForSlot()
Comment changes
Variable change
Only log debug message when default mod not found + multiple choices exist in pool
Fixed possible nullref if `getMatchingPreset()` returns null
2024-05-12 10:15:08 +01:00
Dev
72a1eb0a34 Improve comments inside modIsFrontOrRearSight() 2024-05-12 09:31:40 +01:00
50c7a26a58
ESLint Pass
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.
2024-05-07 23:57:08 -04:00
Dev
d49bf4a378 Replace single letter variables with better names 2024-04-23 21:07:34 +01:00
Dev
fe7d09e075 Improved logic inside isModValidForSlot() to better handle edge cases 2024-04-22 09:39:32 +01:00
df93245e9d Fix incompatible default mods being used in required slots (!299)
This prevents weapons from getting the default mods for their base preset when they won't fit other required mods.

This was observed on the AK-74M, where the weapon generator would choose the VDM CS gas tube, which is incompatible with the default AK-74 polymer handguard (6P20 Sb.9).

When this occurs, the generator will bypass the default mod selection and instead choose from the loot pool assigned to the handguard in the bot configs.

SPT-AKI/Issues#596

Reviewed-on: SPT-AKI/Server#299
Co-authored-by: Brent <wiggyvidyadev@gmail.com>
Co-committed-by: Brent <wiggyvidyadev@gmail.com>
2024-04-18 14:29:16 +00:00
Dev
1dda9efbd7 Move ExhaustableArray into its own file + make it implement interface 2024-02-25 11:17:33 +00:00
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
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
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
422b7878ab Add getMatchingPreset() and add workaround for silenced DVL choosing wrong barrel mods 2024-02-05 15:36:05 +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
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
90492f3aa2
Formatting
Have you been using the recommended VSCode extensions? ;)
2024-02-02 15:00:21 -05: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
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
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
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
9fbed0c23f Variable cleanup of generateModsForEquipment() and removal of duplicate call to db 2024-01-25 10:55:33 +00:00
Dev
1c9acbbc2e improve bot generation time 2024-01-19 19:21:51 +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
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
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
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
01e63118c6 Rename function 2024-01-09 10:58:06 +00:00
Dev
db13df89d9 Add plate filtering system based on bot level 2024-01-07 15:34:59 +00:00
Dev
c6135802be Refactor equipment mod parameters 2024-01-07 14:46:25 +00:00
Dev
17c4d6cec0 Rework on equipment generation to process mods on an item if the item supports them instead of if the bots mods array has mods
Add new bots to bot.json
2023-12-28 18:36:37 +00:00
Dev
f3fee2bc39 Update bot difficulties + fix various mod errors 2023-12-28 10:58:29 +00:00
Dev
31198120a1 Add missing param 2023-12-28 00:07:41 +00:00
Dev
06c60b9fd9 Log bot role on error 2023-12-28 00:06:45 +00:00
Dev
369a8a6cca Begin work on updating equpiment code to handle required mods 2023-12-27 23:29:37 +00:00
Dev
2148eaafe5 Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
# Conflicts:
#	project/src/context/ApplicationContext.ts
#	project/src/context/ContextVariableType.ts
#	project/src/controllers/QuestController.ts
#	project/src/di/Container.ts
#	project/src/generators/weapongen/implementations/ExternalInventoryMagGen.ts
2023-11-30 10:20:37 +00:00
Dev
a1d6596f8d Fix multiple typos 2023-11-29 11:36:20 +00:00
Dev
0d205ed50c Merge branch 'master' of https://dev.sp-tarkov.com/SPT-AKI/Server into 3.8.0
# Conflicts:
#	project/src/controllers/HealthController.ts
2023-11-18 14:13:08 +00:00
Dev
c2aaf9c6fb Add workaround for stm-9 generating with an impossible configuration and being reset to default 2023-11-17 12:40:23 +00:00