
ALP - Algorithmic Level Progression 5.5.0+beta
Created by DewardianDev
226.1K Downloads
SPT 3.11.4 Compatible
The one and only randomized loadout/progression mod. Makes bots level with the player, experience the wipe! 100% randomly generated kits. Bots will use gear and ammo they have with map appropriate weapons.
-
Pmcs now level with the player
There are 5 tiers, early game 90% of pmcs will be between levels 1 and 14.
When the player hits level 15 (for example), pmcs will spawn as follows, 40% 1 - 14, 45% 15 - 24 etc… (configurable) -
NEW - Scavs, rogues, bosses, etc.. now also progress as the player levels
This is highly configurable, and the effect is relatively subtle.
Basically, when you are low level, all enemies are more likely to use lower tier gear and ammo.
As you level, they will have a higher chances of using better gear.
This does not add any weapons to bots, but it does slightly weight which ones will be used.Note: By default, bosses are now affected by these changes. This makes certain bosses harder (Rashala) in the beginning, and others easier (goons).
**This can be turned off in the config by setting “enableNonPMCBotChanges”: false
-
Pmcs clothing choice is based off of the PMC’s level. Now you may be able to recognize high-level players by their clothing (if not their meta gear).
-
Pmcs loadouts are tiered to the four trader levels.
They will only have access (mostly) to gear that a pmc would at the appropriate trader tier.
Levels 1 - 14 (by default) are trader tier 1, levels 40 - 55 are trader tier 4 (all trader items unlocked), level 55+ is the tier 5 uber chad, they have access to everything (weighted chance) so these bots could use goon gear, or Tagilla’s Facemask. -
Pmcs gear is algorithmically weighted
They will favour the best gear at whichever trader tier they are at.
This is quite complex, but an example should make this clear; At trader tier 1, a bot chooses their weapon based off of the best ammo they have available to them. So a bot may choose a Mosin over a pistol, due to the higher pen of the ammo. BUT as the bullet per minute is low on a mosin, the bot may be more inclined to choose a higher rate of fire AK, with ammo of slightly lesser Pen.There are MANY MANY such weighting changes, and upon unlock of a trader tier, a bot may choose a weapon from a previous tier that is now viable because of unlocked ammo.
-
**ALL Bots will use weapons appropriate for the map they are on!!
Think, more smgs/shotguns/automatic weapons on factory and less sniper rifles/markman rifles, with the reverse on woods.
This is controlled via multipliers seen in the AdvancedConfig.
NOTE: the advanced config is not really meant for the average person to tinker with, do not ask for help if you break things. -
Night Time vs Day Time loadouts Night time Pmcs are more likely to use NVGS, IR devices, silencers.
-
RANDOMNESS Bots in the game are not predictable, and there is a random chance that a lower level pmc or bot may choose better gear, better ammo, or a sight that they picked up. The same is true for higher leveled players, although there is weightings to choose the best equipment, you may still see a high level player sporting a scav vest on occasion, or rocking a crappy shotty with flachette!
-
Scav LOOT now redone! Scavs loot is now live-like with a massively expanded loot pool, randomized weightings, all customizable in the config!
Built for balance and a live-like feel in mind while also giving that rare chance to find those rarely spawned items.
Balance is based off of the inverse Flea price of items, IE: a weighting of 1 for Marked room, 3000 for Marlboros.
If you’re really digging the mod, consider supporting my caffeine addiction ☕:
Courtesy of qliqoei
https://youtu.be/jvkjCfNDVKM?t=75
Courtesy of Gamer Visuals
https://youtu.be/anqtJE6SP_g?t=208
The following are STRONGLY recommended.
- SAIN
- LOOTING BOTS
And a spawn mod of your choice - MOAR - An ultra-lite alternative to SWAG
OR - SWAG + DONUTS (When updated)
DO NOT INSTALL BOTH MOAR AND SWAG! Choose one! (Looting bots integration now detected automatically, no config changes needed.)
Although the above are not required, this mod is intended to be paired with them for the best experience
My other mods that go well with ALP:
=== INSTALL STEPS ===
1. Drag and drop the user folder into your SPT directory.
2.Update your user/mods/order.json so that ALP is after mods you want included with ALPS bots.
3**. Optionally** Change a few config options (see below).
Thats it!
Example order.json :
{
“order”: [
“ServerValueModifier”,
“All”,
“the”,
“compatible”,
“gear/trader mods”,
“AlgorithmicLevelProgression”,
“All”,
“the”,
“creaky”,
“weird”,
“broken”,
“gear/trader mods”,
]
}
Have an error? Try the above!
ALP now runs after DB Load, like most server mods; this means you can now use the load order.json to resolve many issues previously seen.
Simply place mods you suspect are conflicting AFTER ALP in the load order.json.
This includes custom traders that may have previously been incompatible with ALP!
To test newly added mod compatibility one can now simply move custom weapon/equipment mods BEFORE ALP in the order.json and test.**
** Although ALP works with many mods, I do not guarantee compatibility, it’s up to you test and debug issues yourself!
==== Configuration Options ====
// Turn on and off the pmc bot adjusted equipment
“enableProgressionChanges”: true,
// Turn on and off the pmc bot adjusted levels
“enableLevelChanges”: true,
// PMCS will wear level appropriate clothing (IE level 34 will wear plaid)
“leveledClothing”: true,
// This enables bots that are not PMCs to progress with the player (in a limited capacity)
“enableNonPMCBotChanges”: true,
// The below two “shift” items that would be unlocked at a certain loyalty level to a later level
// For example if you needed to finish a quest at tier 2 traders to unlock some ammo, it would be shifted to tier 3
“questUnlockedItemsShifted”: true,
// This is much the same as the above, this shifts traded items
// For example if you could trade for some armor at tier 2, it would be shifted to tier 3
// In general, turning the above on can make bots create meta builds earlier and in general makes pmcs better equipped sooner.
“tradedItemsShifted”: true,
// Allows bots to use items from custom traders like Priscillu
// Enable this by setting it to: true
“addCustomTraders”: false,
// This is a blacklist for when you multiple traders installed and the “addCustomTraders” set to true.
“customTradersToExclude”: [
“insertTheTraderNameToIgnoreTheirItems”
],
// Feel free to add any item id’s you don’t want pmcs to use here:
“customBlacklist”: [
“get id’s from here https://db.sp-tarkov.com/search/”,
“5example3208of34not8f83real8a1id”
],
// This dictates at what level bots obtain trader tiers.
// 1 - 14 for example are for tier 1 traders
// NOTE: These cannot overlap or have gaps: 1-14, 15-24, 25-39, 40-100
“levelRange”: {
“1”: {
“min”: 1,
“max”: 14
},
“2”: {
“min”: 15,
“max”: 24
},
“3”: {
“min”: 25,
“max”: 39
},
“4”: {
“min”: 40,
“max”: 54
},
“5”: {
“min”: 55,
“max”: 100
}
},
// This is the ratioed weighting of bot tiers per your level.
// For example, if you were level 5, as per above, between 1 - 14, would put you at tier “1”
// therefor you would have a weighting of pmcs of:10,5,2,1
// In this example, it is far more likely to have low tier 1 bots (10x) then tier 4 for example
// THE BELOW SETTINGS ARE TO SIMULATE AN EARLY WIPE EXPERIENCE
// AS YOU LEVEL, THE WIPE AND PLAYER DISTRIBUTION PROGRESSES
“botRangeAtLevel”: {
“1”: [
10,
5,
2,
1,
0
],
“2”: [
10,
13,
7,
4,
1
],
“3”: [
8,
10,
11,
4,
2
],
“4”: [
8,
10,
10,
7,
5
],
“5”: [
7,
8,
10,
10,
7
]
},
// This sets the randomness for each specified piece of equpment.
// 0 is meta, 1 is completely random, 2 will make pmcs prioritize the worst gear.
“randomness”: {
“Ammo”: 0.3,
“Holster”: 0.3,
“Headwear”: 0.1,
“FirstPrimaryWeapon”: 0.4,
“Earpiece”: 0.3,
“Backpack”: 0.3,
“Eyewear”: 0.2,
“TacticalVest”: 0.1,
“ArmorVest”: 0.1,
“FaceCover”: 0.2
},
Example:
Imagine a pmc can wear a usec hat, or a Ulach helmet, at 0, the weighting may look like this:
Hat > 5, Ulach > 150,
Resulting in the pmc almost always choosing a ulach over a hat.
At 0.5, the top and bottom chances are smoothed around a median, like so
Hat > 35, Ulach > 100,
And at 1, all items within that category will have equal chances:
Hat > 54, Ulach > 54
// Just keep this off
“debug”: false
**==== nonPmcBotsConfig ==== Below explains the configuration options for the nonPmcConfig.json found in the config folder of this mod. This may seem complex, feel free to leave this file as is for a vanilla plus experience.
// This adds all usable keys to the loot pool for scavs (low random chance)
“addRandomizedKeysToScavs”: true,
// The disparity between super rare and common items
// Increase this to make rare loot more rare, vice versa to make rare loot more common.
// Recommended settings: 0.2 - 3
“lootDisparityMultiplier”: 1,
// Size of the key pool (randomized on game start) 0.5 === 50%
“percentageOfKeysInSpawnPool”: 0.5,
// Add ids of items you’d like the scavs NOT to have in their loot pool
“scavLootBlacklist”: [ ],
// Add additional items to the scavs loot pool via the item ID, automatically weights the item for balance.
“additionalScavLoot”: [“5c94bbff86f7747ee735c08f”],
// These values increase the randomness of the ammo or equipment used by bots
// (1 = 100% randomness, 0.5 = 80% randomness… it’s confusing)
// Basically be careful here, this is highly sensitive
// Even slightly increasing this will produce dramatic effects
// I recommend to keep it off, or below 0.2, try increments of 0.05
“botAmmoRandomness”: 0,
“botEquipmentRandomness”: 0,
// This is the configuration for nonPmcBots
“nonPmcBots”: [
{
// Name of the bot, or bot group (see below for bot group explanation)
“name”: “assault”,
// These are this bots tiers
“tiers”: [
[1, 14],
[15, 30],
[31, 45],
[46, 100]
],
// These values add equipment to bots, this can be best explained like so.
// There is a “Constants” folder with lists of items, prioritized from worst > best
// The numbers below specify how much and which portion of that list is added to a bot.
// 0,0.3 > would result in the bottom 30% of that equipment type being added to that bot.
// 0.5,1 > the same but the top 50% of that equipment type.
// 0,1 > All of that equipment type that exists (largely) will be added to that bots spawn pool.
“Headwear”: [0, 0.3],
“ArmorVest”: [0, 0.3],
“TacticalVest”: [0, 0.3],
“Backpack”: [0, 0.3],
“Ammo”: [0, 0.5]
},
]
Bot groups are lists of bots that can have the same nonPmcBot configurations.
If you understand JSON than the examples are quite obvious.
allBossFollowers is under nonPmcBots, and is comprised of a list of that type.
TO PREVENT WIERDNESS, ONLY ADD EACH BOTTYPE TO EITHER A GROUP OR THE “nonPMCBots” LIST, not both.
EXAMPLE:
If you wanted to add a custom setting for “bosssanitar”, you would first remove him from the
“allBosses” list, then add him to the “nonPmcBots” list, with his own custom config.
Creating your own groups is easy, create a new list similar to “allBosses” but named “whatever”
Then move the bottype names over that you want your new configuration to effect.
When done add your “whatever” config to the “nonPmcBots” list.
34.1K Downloads
Updated to 3.11.3
- Reduced loadout changes to bosses
- Advanced users: added an array to remove bots from nonPmcBot changes (just add the name).
That’s all for now!
26.8K Downloads
Small feature update
- Reduce overall nonPmcBot gear pool size (increased performance).
- Increase nonPmcBot equipment randomization a bit (should help with Toz/3m/quest related gear later on).
- Prevent nonPmcBots using boss gear (or bosses using other bosses’ gear)
- Significantly update sniper equipment and weightings.
- Update backpack weightings (should help with scavs over preference with certain very heavy large raid bags).
That’s all for now!
4.3K Downloads
Small Update
- Fix bug with pmc loot not being removed when looting bots installed
- Add per level weapon weighting to all nonPmcBots
Bots will use appropriate weapons for appropriate maps.
That’s all for now.
4.6K Downloads
Small Update
- Remove zombie magazines
- Remove broken mxc magazine
- Remove scabbard weightings
That’s all for now.
3.0K Downloads
3.10 UPDATE
-
Rewrote nonPmcBot equipment distribution
-
Added expanded equipment [pool to all bot types in the game, including bosses, guards, zombies (if using MOAR), configure or delete entries via the nonPmcBotConfig.json, or just turn off nonPmcBotChanges in the config if you only want pmcs to have tiered gear as you level.
This has the following effects to gameplay:
- This adds gear to bosses like Rashala whom in normally has nothing, meaning it makes Rashala a bit harder.
- This adds worse gear at lower levels to other bosses too, so you a bit of an easier time with the harder bosses at lower levels.
-
A whole bunch of small bug fixes.
Still to do:
1. Make all bots prefer certain weapontype for appropriate maps (done for pmcs long ago, working on it for the rest).
2. Find and remove the zombie 9999 magazine pistol.. (happy hunting).
That’s all for now.
Have fun!
9.7K Downloads
Bug fix
- Should fix armor vest usage
- added some support for blacklist
That’s all for now.
Details
-
GUID
Not Available
-
License
-
Source Code
There is a bug with the leveled clothing option in the config that causes pmcs to spawn as living mannequins and also can cause occasional floating equipment (non functional bot spawns) to happen.
Turn off: leveledClothing
in the config for now to resolve until next patch.
Hi, just a question.
If I run this on the headless client, would it assume the player is always level 1?
Or does it go by avg level of lobby?
Using 5.5.0 Beta, I’m getting errors.
These seem to be related to the Goons.
Required slot ‘mod_gas_block’ on barrel_ar15_457mm mod_barrel was empty on assault Weapon 5d43021ca4b9362eab4b5e25 weapon_lone_star_tx15_designated_marksman_556x45 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_handguard’ on reciever_ax_accuracy_international_axmc_std_86x70_pb mod_reciever was empty on marksman Weapon 627e14b21713922ded6f2c15 weapon_accuracy_inernational_axmc_86x70 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_handguard’ on reciever_ax_accuracy_international_axmc_std_86x70_pb mod_reciever was empty on marksman Weapon 627e14b21713922ded6f2c15 weapon_accuracy_inernational_axmc_86x70 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_foregrip’ on handguard_t5000_orsis_t5000m_std mod_handguard was empty on marksman Weapon 5df24cf80dee1b22f862e9bc weapon_orsis_t5000_762x51 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_handguard’ on reciever_ax_accuracy_international_axmc_std_86x70_pb mod_reciever was empty on marksman Weapon 627e14b21713922ded6f2c15 weapon_accuracy_inernational_axmc_86x70 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_foregrip’ on handguard_t5000_orsis_t5000m_std mod_handguard was empty on marksman Weapon 5df24cf80dee1b22f862e9bc weapon_orsis_t5000_762x51 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_foregrip’ on handguard_t5000_orsis_t5000m_std mod_handguard was empty on marksman Weapon 5df24cf80dee1b22f862e9bc weapon_orsis_t5000_762x51 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_handguard’ on reciever_ax_accuracy_international_axmc_std_86x70_pb mod_reciever was empty on marksman Weapon 627e14b21713922ded6f2c15 weapon_accuracy_inernational_axmc_86x70 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_foregrip’ on handguard_t5000_orsis_t5000m_std mod_handguard was empty on marksman Weapon 5df24cf80dee1b22f862e9bc weapon_orsis_t5000_762x51 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_handguard’ on reciever_ax_accuracy_international_axmc_std_86x70_pb mod_reciever was empty on marksman Weapon 627e14b21713922ded6f2c15 weapon_accuracy_inernational_axmc_86x70 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_handguard’ on reciever_ax_accuracy_international_axmc_std_86x70_pb mod_reciever was empty on marksman Weapon 627e14b21713922ded6f2c15 weapon_accuracy_inernational_axmc_86x70 was generated incorrectly, falling back to weapon preset see error above Required slot ‘mod_foregrip’ on handguard_trg_sako_m10_forend_15_inch mod_handguard was empty on marksman Weapon 673cab3e03c6a20581028bc1 weapon_sako_trg_m10_86x70 was generated incorrectly, falling back to weapon preset see error above bot: followerbirdeye lacks a mod slot pool for item: 5a16bb52fcdbcb001a3b00dc helmet_wilcox_skull_lock bot: followerbirdeye lacks a mod slot pool for item: 5a16bb52fcdbcb001a3b00dc helmet_wilcox_skull_lock bot: followerbirdeye lacks a mod slot pool for item: 5a16bb52fcdbcb001a3b00dc helmet_wilcox_skull_lock bot: followerbirdeye lacks a mod slot pool for item: 5a16bb52fcdbcb001a3b00dc helmet_wilcox_skull_lock bot: followerbirdeye lacks a mod slot pool for item: 5c066ef40db834001966a595 helmet_armasight_nvg_googles_mask Also these errors below happen :
If you need more info, just say so.
Thanks for the mod
this mod makes lag and shutter in my game..sad
I’m running into an issue where PMCs will wear helmet mounted headsets in their ears slot, regardless of helmet too.
Hello guys,
First of all i want to thank DewardianDev for the awesome work and all the time you put into updating it.
I have red all the comment section and search on discord too but i can not figure out ammo for PMC.
I have my PMC set to lvl 60, all the enemy PMC i face have high tier ammo.
I want to make them use some low tier ammo too.
I tried to modify into :
config>randomness>ammo : 1.5
I also tried to modif into “nonpmcbotconfig”:
pmcbot>ammo : [0.0,4]
but they are still always using god tier ammo.
What am i doing wrong ?
Yeah, unfortunately, the part that decides what loot is given to scavs is completely busted. It’s almost reversed compared to what’s expected: PMCs spawn with 3-4 lvl plates and shitty FMJs, while level 5 plates on scavs are pretty much default (they can easily do 6), they are also using top tier ammo like 995 and PPBS. We’re playing with a friend, levels 30 and 20.
I feel like gear quality for scavs should be hard limited. I’ve disabled non-pmc loadout for now.
Found a error: Algorithmic Level Progression failed to makeclothing changes.
Try turning off custom clothing in the config!
Error: Cannot read properties of undefined (reading ‘clothing’)
>regular drunk scav
>by studying with raiders and rogues, you learned the basics of military craft and tactics, and even advanced further in this matter, literally further than the PMC
>having the most drippiest drip in the entire Tarkov
>MK16 + 4 mags 5.56 M995
>TX-15 + 3 mags 5.56 SSA AP
>RPK + 2 drums 5.45 PPBS
>9A91 + 3 mags 9x39 AP
> any nade (even VOG or RGO)
>AP4-6 plates (a bit damaged)
>regular drunk scav snipler
>sipping moonshine on top of a mountain, looking into the distance at the beautiful forest, feeling damn good that you managed to beat Birdeye and steal his drip
>AXMC + 4 mags .338 FMJ
>Defender west AP5 plates
>In the same time PMC rarely have at least AP3 ammo in loadout
>Rarely have a common helmet
>Rarely have at least AP4 armor in loadout
The most peak and baZed mod sheeesh
I don’t know what will happen to me if I fight against raiders or rogues - I think they’ll just call in an AC-130 or launch a nuclear warhead bc they stole a nuclear suitcase
Are you still working on the bug that causes bots to have high level plates even at level 1? No rush, just curious.