Player Level = Boss Spawn Chance* 1.1.0

Please do not ask when mod authors will update their mods to 3.9.X
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.

Makes the spawn chance equal to player level multiplied by a configurable number, without having to restart the server.

This mod follows this very simple equation:

Boss spawn chance = Player level * configurable multiplier

-1.1.0 version has an optional algorithmic equation that is similar to Proportional Bosses.



Conflicting mods:

  • Realism's "boss changes" options
  • SWAG + Donuts
  • Better Spawns Plus
  • Works with Questing Bots spawning, and is my personal recommendation w/ this mod. Let me know if it's not working by sending me logs and modlist.

DEFAULT SETTINGS ARE SET TO WHAT I FEEL IS FUN, GOONS AND CULTISTS AT 1/2 LEVEL.

CULTISTS SPAWN AT RANDOM TIMES DURING THE RAID, EVEN AT 100%


Use:

Drag and drop into your sptarkov folder, config is in user\mods\crustyselenium-playerlevelequalsbossspawnchance\config\config.json

The mod updates the spawn chance every time a raid has ended, and when you start the client.

The config.json file contains the modified bosses, and a preset multiplier that I've somewhat-arbitrarily set to what I feel is fun. The multiplier is MULTIPLIED to your level, so if you are level 50, and the multiplier is set to 2, the boss will have a 100% spawn chance. If you have a multiplier set to 0.1, and you are level 50, the boss will have a 5% chance of spawning. Anything above 100% will just be a 100% chance, and all decimals are rounded up.


Configs:


Basic config:

Code
-"enabled" - enable or disable the mod. Default: true
-"debugSpawnChanceMessages" - enable or disable console messages that displays modified spawn chances. Default: false
-"bossesMultiplier" - contains a map by map and boss by boss multiplier with the aforementioned multiplier. You can also enable/disable the mod's effect on specific bosses on specific maps. Default: dev settings

Advanced config:

Code
-"advancedEnabled" - Turns on an algorithmic determination of boss spawn chance. Uses the next values and player level to determine chance. The chance determined by this function is ALSO multiplied by the number in the basic config. Default: false
-"sigmoidFunctionParamters" - parameters used in the sigmoid function. Default: dev settings
 - "MaxSpawnPercentage" - maximum chance for any boss to spawn. Default: 100
 - "QuarterPercentLevelSpreadSigmoid" - How many levels away from the next value to be another 25% chance away. Default: 8 (For example: if next value is 35 and this is 8, at level 43 and 27 the spawn chance is 75% and 25% respectively)
 - "levelToHaveHalfPercentSpawnChance" - What level the player needs to be for the spawn chance to be at 50%. Default: 35
-"defaultSpawnChances" - Changing these values won't do anything. These are the vanilla settings released by the SPT dev team, use them to compare what you want other values to be.


This was made because I don't like fighting the goons every other raid at level 11 on a hardcore profile, and I don't want to modify the actual json files and restart the server every hour or so. I might add some more functionality later, but I'm okay with anyone else messing with it.


Inspired by Proportional Bosses, which has sadly fallen out of maintenance.

  • Version 1.1.0

    • Enabled advanced functions for an algorithmic control of boss spawn chances
    • Made better debug messages
    • Added SOME mod incompatibilities
    • Cleaned up the code a bit


    Read mod page for guide on new features.

    I HIGHLY suggest deleting the old mod before updating, but isn't necessary. (There's a old config file that in the old version that WON'T do anything in the new updated version)

  • Version 1.0.0

  • Is there any way to configure this so that the Goons will spawn in on Factory? I cant seem to find them for the Tourists Quest

    • This mod only uses vanilla spawns from the SPT database files, which sadly doesn't include events other than the peacekeeper/skier and bloodhounds spawns.


      For the 3.10 update I plan on implementing a rudimentary system to allow addings bosses to any map through the configs, but that's going to be a while from now.


      If you have some json prowess you could add a boss spawn possibility to the spt location file and in the mod config, and it'll work. But modifying SPT_Data files is frowned upon unless you really know what you're doing.

  • has anyone tested this with SWAG yet?

    • I've done a very small amount of testing, and found that it WORKS. BUT sometimes swagnuts will prevent the bosses from spawning, even if the chances are at 100%.

    • hmm...are you saying the spawn chance in swag was set to 100 or in this mod? I ask because to me it would make sense that they do not spawn 100% if this mod is taking precedence over SWAG.

    • It mostly depends on load order, SWAG will take precedence on all bosses if it loads after this one, and this one will take precedence for the vanilla bosses if it's loaded after.


      I'm looking into an update that will make this compatible with SWAG. But you could just alter spawn chances w/SWAG itself, so I don't really have it as a priority.

    • For now though, I'll make this officially incompatible with swagnuts, and will disable itself w/a red note in console if found running with it.

    • damn, well thanks for the replies and looking into it. Was hoping I could add your mod and get the best of both worlds. I really like the idea of boss spawn chance increasing with progression (its a convenience for the lazy).

  • Hello, I got this error

    How can I fix it?

    The application had a critical error and failed to run

    Exception produced: SyntaxError


    Stacktrace:

    SyntaxError: G:\EFT SERVER\user\mods\crustyselenium-playerlevelequalsbossspawnchance\config\config.json: Unexpected token '}', ..."ltiplier":}

    "... is not valid JSON

    at parse (<anonymous>)

    at Object.Module._extensions..json (node:internal/modules/cjs/loader:1453:39)

    at Module.load (node:internal/modules/cjs/loader:1207:32)

    at Function.Module._load (node:internal/modules/cjs/loader:1023:12)

    at Module.require (node:internal/modules/cjs/loader:1235:19)

    at Module.require (pkg/prelude/bootstrap.js:1851:31)

    at require (node:internal/modules/helpers:176:18)

    at Mod.<instance_members_initializer> (G:\EFT SERVER\user\mods\crustyselenium-playerlevelequalsbossspawnchance\src\mod.ts:21:25)

    at new Mod (G:\EFT SERVER\user\mods\crustyselenium-playerlevelequalsbossspawnchance\src\mod.ts:13:1)

    at Object.<anonymous> (G:\EFT SERVER\user\mods\crustyselenium-playerlevelequalsbossspawnchance\src\mod.ts:191:20)

    • You modified the config in a way that made it unreadable for the mod.


      An easy fix to to reinstall the mod.


      Make sure that each "multiplier" value in the json file actually has a numerical value. If you don't want to modify a specific boss spawn chance, delete the whole line of that boss.


      What specifically are you trying to change in the config?

  • so whta does the advancedConfig.json file do?

    • Nothing right now, it does include the default vanilla spawn chances in there if you want to compare.

      I have an update planned that will allow users to have more complicated algorithms to determine spawn chance. For now it just does nothing.

  • Just note this will conflict with Realism's "Boss Changes" option since it does the same thing

    Thumbs Up 2