[BETA] Quest Randomizer 0.2.2

Please do not ask when mod authors will update their mods to 3.10 or if they can upload older versions of their mods.
Bothering mod authors will lead to warnings and repeat offenses will lead to eventual bans.

Tired of running the same quests every time you start a new playthrough? This mod might spice things up. Changes kill quests and handover quests. LOOKING FOR TRANSLATORS. For all Tarkov languages: SEE https://crowdin.com/project/spt-questrandomizer

REQUIRES A NEW PROFILE TO WORK OR YOU WILL RUN INTO ISSUES

WHEN UPDATING, DELETE THE OLD FOLDER. OTHERWISE YOU MAY ENCOUNTER ISSUES.


LOOKING FOR TRANSLATORS. For all Tarkov languages: SEE https://crowdin.com/project/spt-questrandomizer


[BETA] This is still in development stage and while I've worked hard to ensure each release is stable. Updates might brick mostly everything.

Quest randomizer

Tired of running the same quests every time you start a new playthrough? This mod might spice things up. Change the kill requirements for quests so you fight new enemies with new weapons in new places. Also changes the hand over item quests to require new items. Perhaps some items will be more useful now. You wont know until you encounter each quest.

Will change the following:

  • Randomize the item hand over of quests.
    • Uses a list of items in tiers similar to my Barter Economy mod. See the confg/itemtierlist.jsonc file for more details.
  • Randomize kill quests in the following ways (configurable in the config)
    • Add kill objectives to quests that dont have them.
    • Add/Randomize gear requirements.
      • See the config/gearlist.jsonc file for more details.
    • Add/Randomize the kill targets.
    • Add/Randomize the distance requirement.
    • Add/Randomize the required location.
    • Add/Randomize the required time of day.
    • Add/Randomize the required weapons. Using both a bunch of tailor-made categories, and individual weapons.
      • See the config/weaponcategories.jsonc file for more details
      • Once the server has started once with this mod. You can find an auto-generated category list in all supported languages in the categories/ folder of this mod.
    • Add/Randomize the body part requirement.

Here's is the config file to give some insight in how this mod can be configured. (There is a lot more you can chance too in the previously mentioned files.


    "questBlacklist": //These quests wont be edited
[
        "5c0d190cd09282029f5390d8", //Grenadier
        "60e729cf5698ee7b05057439" //Swift one
],

    "chanceToAddLocations": 0.15, //Chance to add a location requirement to kill quests.
    "locationCount": 2, //Total locations that the quest will be valid on.
    "chanceToAddTimeOfDay": 0.05, //CHance to add a time of day requirement to kill quests.
    "chanceToAddBodypart": 0.05, //Chance to add having to target specific body parts to kill quests.
    "chanceToAddDistance": 0.05, //Chance to add a distance requirement to kill quests. (Currently >=/<= 20-100m, Might add options for this later)
    "chanceToAddWeapon": 0.5, //Chance to add weapon requirement to kill quests. Will do a weighted selection from the weaponcategories.jsonc file.
    "chanceToAddGear": 0.05, //Chance to add gear requirement to kill quest. Will do a weighted selection from the gearlist.jsonc file.
    "addGearCount": 3, //How many different gear pieces will be selected. Every gear piece is an alternative. You only ever need to wear 1 of them.

    "chanceForSpecificWeapon": 0.15, //Chance to instead of a weapon group, select a specific weapon from the "SpecificWeapon" array in weaponcategories.jsonc

    "adjustKillCountFactorsUpDown": [0.2,0.2], //How many kills a quest will need. It's randomly increased/decreased by a multiplier between the factors. So default settings makes the multiplier between 0.8-1.2

    "addKillObjectiveToQuestChance": 0.5, //Chance to add a kill objective to quests that dont naturally have them.
    "addKillObjectiveKillCount": 5, //Base kill count to added objectives. Then multiplied by the factors above.

    "handoverItemUnknownItemValueDivider": 15000, //The divisor that determines the tier of an item. Rounded to nearest tier. An item worth 34000 rubles with be 34000/15000 ~ 2.
    "adjustHandoverCountFactorsUpDown": [0.2,0.2], //Adjusts how many items are needed for a handover quest. See how it works above.
    "handoverItemBlacklist": //Any quest that requires you to handover an item from this list will be skipped entierly and left alone.
[
        "5696686a4bdc2da3298b456a", //Dollars
        "5449016a4bdc2d6f028b456f", //Roubles
        "569668774bdc2da2298b4568" //Euros
]

  • Version 0.2.2

    • Fix filepath in linux (capitalization)
    • Fix missing locale for usec/bear in kill quests (name changed in 3.10)
    • Fix easy quests with weapon requirements becoming invisible.

    Can be applied to existing profile. Will not fix the locale for invisible quests requirement. (Should only be stirrup in default settings(use pistols to complete the quest))

  • Version 0.2.1HOTFIX

    Fix crash on startup.

  • Version 0.2.1

  • Version 0.2.0

    • Check for missing properties more. (Adds compat with AQM)
    • Enabled quest whitelist by default (Which by default includes all vanilla quests)
    • Changed quest whitelist location to be it's own folder. This is to make it easy to enable/disable whitelists from other mods. You might not want to randomize AQM, but maybe you've played a ton of other quests mods before, and want them randomized.
    • Add a trader whitelist, letting you decide what traders to randomize and not. This is in addition to all previously mentioned whitelisting stuff.
    • XP multiplier for quests. In case you want to have more or less xp from quests. Useful for ensuring the quest progression matches level and trader progression.
    • Added first iteration of generated quests. (They're still quite bare-bones, but will be improved upon in the future.)
      • Added generated weapon quests.
      • Added generated sniper quests.
      • Added generated handover quests.
    • Fixed bug that made "hard" locations sometimes appear on "easy" quests.
    • Added multiple options for compatibility with mods that add new weapons to work with quests. (See readme.md for more info)

      LOOKING FOR TRANSLATORS. SEE https://crowdin.com/project/spt-questrandomizer
  • Version 0.1.0

    • Major rework. Quests are now on a per-profile basis. I have tried to test this as extensively as possible. But consider this even more of a beta than previous releases.
    • Add localization for weapon groups. (Uses locale, then en, and lastly the weapon group name string)
    • Cleaned up console spam if Debug isn't enabled.
    • Unload profiles if they've been inactive for a while.

    LOOKING FOR TRANSLATORS. SEE https://crowdin.com/project/spt-questrandomizer

  • Version 0.0.9

    LOOKING FOR TRANSLATORS. SEE https://crowdin.com/project/spt-questrandomizer

    • Fix issue with quests handover-tasks sometimes not being randomized.
    • Show found in raid requirements (oops)
    • Safeguard against other mods adding broken items to quests.
  • Version 0.0.8


    LOOKING FOR TRANSLATORS. For all Tarkov languages: SEE https://crowdin.com/project/spt-questrandomizer

    • Massive reworks of behind the scenes. (Quest generation coming soon)
    • Remove ZONE requirements for now. (This might have bricked quests in earlier versions, for that I sincerely apologize.)
    • Added ratios between scavs/pmcs/any so that quests that convert to other things will have their kill counts adjusted.
  • Version 0.0.7


    LOOKING FOR TRANSLATORS. For all Tarkov languages: SEE https://crowdin.com/project/spt-questrandomizer

    • Added weapon- and mod-category items into the handbook so you can see them in-game.
    • Portuguese translation - Many thanks to SoundBlaster1998
    • Chinese translation - Many thanks to Echo
    • Added mod categories, and reworked the whole weapon categories file. You can now add weapon mod categories to other categories. Example adding silencer mod category to AKM-series weapon category.
    • Added more weapon and mod-categories to the default config.
  • Version 0.0.6

    0.0.6

    • Added missing "Bloodhound" to name list.
    • Updated RU translation
    • Allow parents to be used in the handoverItemBlacklist and added "Ammo" parent to that list as a default.
    • Added ES-MX Translation - Many thanks to ``UralreadyDead`
    • Added chanceHandoverNeedsFIR property to decide if handover quest items needs to be found in raid.
    • Added chanceToEditHandoverCondition property to decide if we even want to edit handover stuff.
    • Added chanceToEditKillConditions property to decide if we even want to edit kill stuff.
    • Easy quests now also don't randomize as much for kill quests. (renamed config property to easierQuestList)
      • Uses Easier map list
      • Does not ADD body part requirements
      • Does not ADD time of day requirements
      • Does not ADD distance requirements
      • Does not ADD/EDIT gear requirements
      • Does not EDIT weapon requirements
    • Added chance and config for handover quests requiring from categories rather than individual items.
    • Added chanceToAddHandoverCondition which is a chance to add a handover condition to quests.
    • Localization for handover categories. (Working on doing the same for weapon categories.)
  • Version 0.0.5

    • Korean Translation - Many thanks to Rising_Star
    • Spanish Translation - Many thanks to Strungerman
    • Add a list of quests that can't get "harder" maps. Configurable in config.
  • hey lads just wanted to add a simple uninstall tut 1 remove mod 2 open spt profile editor lock all quest 3 open server should be good all my quest reset in my testing may corrupt save not shur just what i did and mine is fine all quest progress is the same just had to re complete all of them

  • i Take it i shouldn't uninstall this mod with any Active quests either? or is a new profile needed for that too?

    i Love the idea of this mod but i was running into some funny stuff like a quest required me to have 2 helmets getting kills, maybe i misinterpreted it but i was never awarded kills for it. odd stuff like that. il try and reread the config file but is there settings to just randomize items and kills but not add other requirements? like weird gear combos

    • i changed a bunch of setting to 0 so ill give er a try and see how i like it, thanks for making it so configurable.

    • it should be 2 different helmets as OPTIONS. You only need to wear one. Unless something broke in the 3.10 update.


      As for uninstalling. I have no idea. I would not recommend doing it on an active profile.

  • I wonder if the works with Dynamic maps and quest tracker.

    getting pretty bored doing the same quests at the same order so this Mod would be a life saver for me if its compatible

    • Im currently running both of those mods without issues.

  • Running on a linux server build with latest Hotfix Version, to fix this error message - rename the folder from "leaves-questrandomizer" to "leaves-Questrandomizer" (with captializing Q).

    Error: Cannot inject the dependency "leavesSettingsManager" at position #8 of "LeavesQuestManager" constructor. Reason:

    ENOENT: no such file or directory, open 'user/mods/leaves-Questrandomizer//config/config.jsonc'

    Error: Cannot inject the dependency "leavesSettingsManager" at position #8 of "LeavesQuestManager" constructor. Reason:

    ENOENT: no such file or directory, open 'user/mods/leaves-Questrandomizer//config/config.jsonc'

    at /snapshot/project/node_modules/tsyringe/dist/cjs/dependency-container.js:324:23

    at Array.map (<anonymous>)

    at /snapshot/project/node_modules/tsyringe/dist/cjs/dependency-container.js:295:38

    at InternalDependencyContainer.construct (/snapshot/project/node_modules/tsyringe/dist/cjs/dependency-container.js:297:11)

    at InternalDependencyContainer.resolveRegistration (/snapshot/project/node_modules/tsyringe/dist/cjs/dependency-container.js:166:51)

    at InternalDependencyContainer.resolve (/snapshot/project/node_modules/tsyringe/dist/cjs/dependency-container.js:109:33)

    at Questrandomizer.postDBLoad (/opt/server/user/mods/leaves-questrandomizer/src/mod.ts:81:56)

    at PostDBModLoader.executeModsAsync (/snapshot/src/loaders/PostDBModLoader.ts:63:45)

    at PostDBModLoader.onLoad (/snapshot/src/loaders/PostDBModLoader.ts:26:24)

    at App.load (/snapshot/src/utils/App.ts:53:26)

    • Nice catch. Will be fixed in the next version.

      Thumbs Up 1
    • I would 200% appreciate if you could check if the issue persists with the latest (0.2.2) version. I think I fixed it, but I dont have a linux installation to check on.

  • It's been incredible watching the leaps and bounds this mod has taken in such a short time, to the point that it can now fill out hundreds or even thousands of new quests each with randomized tasks and rewards. With the suite of mods you've made I shouldn't be surprised at this point, but it's amazing the changes you've been able to make to this game.


    One question for clarification in the weapon categories: "Precision Sniping", for instance, includes "required weapon mods" and lists "Big Silencers AND Bipods AND Raptar". Does this mean one of the listed sniper rifles must have all three of those things to qualify as a "precision sniping" weapon for the quest requirement? I might be misinterpreting it because I'm pretty sure several of the listed guns can't have all of those (namely the mosins). If I have to kill 10 PMCs with "Precision Sniping", is an SV-98 by itself good enough, or does it need all those "required" attachments to qualify at all?

    Edit: Ah, it seems that this is exactly the case. Just had to read more of the weaponcategories.jsonc file. Answered my own question, thank you. Will probably remove those mandatory parts for the generated sniper quests, myself.

    • Hey, I made it all configurable for a reason. Happy you're enjoying it.

      Thumbs Up 1
  • Can't load my profile if I delete the old folder prior to installing the new version

    • Unfortunatley during the beta period I cannot guarantee that upgrading will work.

      You might have to make a new profile.

    • Probably need to wait for 3.10, I couldnt log in after reverting changes due to some sort of bug. My game had some other annoying bugs prior to that anyways so whatever

    • I was just nervous to wipe profile like we had to months back? figured a lot of time to get it back but damn it was so quick lol. Just moved some sliders to give levels, and then added profile editor to skip missions I didn't want to do again.

  • I have completed some localization of simplified Chinese, perhaps not very accurate, hoping to help Chinese players.

    • Anything is better than nothing. Thank you.

  • So I've noticed that if I load your mod after the custom quest mods, it gives me an error, but once I load your mod first and then the custom quests, there doesn't seem to be a problem.


    Also, the quest mod I am using is the Andrudis Questmaniac - Revived


    Just an observation, more testing is needed

    • QuestManic has missing properties in the quests. Its not like it's technically wrong, but it's a property that's always present on BSG quests so I didnt check if its missing. This will be fixed in the next version.


      not that it really makes sense to run quest randomizer ON questmaniac.

    • to be fair I didn't really care about randomizing Questmaniac, I kind of just downloaded it to see what it's like.

      Also, it didn't randomize any quests in Questmaniac, not sure what's the cause of that.


      I do believe a toggle for custom traders would be nice

    • The reason it didnt randomize them is that it loaded after randomizer. (remember, loading randomizer first crashed the server xD)


      As for a toggle for custom traders, I could certainly do that. Its a pretty solid idea. What you can already do is use the whitelist, that is shipped by default to only allow vanilla quests to be randomized.

  • Thank you for the effort, but I think it must be conflicting with something I have loaded. I think the only quest modifiers I have are SVM requirements and S4A, but I'll try again with a fresh install eventually.


    hub.sp-tarkov.com/gallery/image/1833/

    • Is the only issue that the numbers are off? If so, its def a bug, but far from a game-breaking one.

  • TypeError: Cannot read properties of undefined (reading '_props')

    TypeError: Cannot read properties of undefined (reading '_props')

    at Questrandomizer.editHandoverItemTask (D:\SPT\user\mods\leaves-questrandomizer\src\mod.ts:386:37)

    at Questrandomizer.editQuest (D:\SPT\user\mods\leaves-questrandomizer\src\mod.ts:361:47)

    at Questrandomizer.getEditedQuest (D:\SPT\user\mods\leaves-questrandomizer\src\mod.ts:174:44)

    at Questrandomizer.postDBLoad (D:\SPT\user\mods\leaves-questrandomizer\src\mod.ts:245:54)

    at PostDBModLoader.executeModsAsync (C:\snapshot\src\loaders\PostDBModLoader.ts:63:45)

    at PostDBModLoader.onLoad (C:\snapshot\src\loaders\PostDBModLoader.ts:26:24)

    at App.load (C:\snapshot\src\utils\App.ts:51:26)
    So I got something like this, no idea what I have done wrong here, is it possible that there will be some mods incompatibilities?

    • It is very possible. I would guess whatever quest mod added the quest has an item for handover that is missing properties. I can put in a safeguard against it in the next version. But it is not technically an issue with my mod, but someone who has made a bad item.

    • So is there a way to disable this as of now? Really would like to play with your mod, but have the same issue as posted above and server won't start with it.


      Have mods that adds quests to the game (quite a bunch), so maybe there is a way to remove quests that other mods add from altering?

    • I'd love to know what mod causes this. If you could message me in either SPT or Fika discord I could give you a test version that should fix it and show what causes it.

    • Uploaded a fix.

  • I love the idea. Nice work. Is there a way to separate the kill quest for scavs and pmc. Killing 5 scavs is much easier than killing 5 pmcs? I would like to have fewer pmc kill quest with a lower number while having more scavs kill quest with a higher number.

    • It's been a thing I've considered, but never gotten to. It's on the todo list. But I cannot promise when.

  • Is there a way to stop these custom names like "Viet-fucking-nam" and "BRRRRT" for kill quests? it gets pretty annoying trying to decipher the naming conventions each time a new quest is added. Otherwise the mods great and really shakes things up.

    Thumbs Up 1
    • Well, they're custom categories. You can remove any categories you don't like in the config files.


      there is also the categories folder in the mod folder that has a list of all categories.


      HOWEVER, next update will bring the weapon and mod categories (new) into the handbook so you can easily look up any categories fast and painlessly.

    • Ah ok, perfect. Looking forward to future updates since it really adds replayability to the game. Thanks!

  • I would like to help with an English -> Portuguese translation :)

  • This may be wildly outside the scope of what you intend with this mod, but would it be possible, especially using your established values here and with the Barter Economy mod, to make new quests and then have this formula fill in their details? Like, create 200 new "blank" quests, run this algorithm on them, and have a ton of new stuff to do with generated rewards?

    Quests like QuestManiac are long abandoned now, so something like this could fill a huge niche.


    I have no idea how complex this would be over just changing existing quests, so I'm speaking from a place of ignorance on this though.

    Heart 1
    • I actually have this as an internal plan for the future. I just have so many things I want to do. But it is def on the todo list.

      Heart 3
  • How does the randomization work? I figured it would reroll everything each profile wipe, but i accidentally re-wiped after starting it up and the requirements on the starter quests are exactly the same as the first. :/

    • I originally really wanted to have it be character bound, but looking into doing that would have rewrite basically the entierty of the server-side handling of quests. So it generates quests on first upstart. If you wanna re-roll them, you have to delete the \user\mods\leaves-questrandomizer\assets\generated folder

    • I was wrong, I found a way to do it. Quests are now on a per-profile basis.

      Heart 1
  • What a great idea...awesome job mate

  • I would like to help with a latin american spanish translation, if its from english to spanish of course

  • Im german and could help with the Translation
    Discord: Zyeari

    • Do you feel like the current german translation is bad? It's made by a friend of mine who doesn't have a lot of knowledge of tarkov. So it wouldn't surprise me.

    • i dont play in german... i just saw that you search translator so i just thought im here for you to translate, find typos and/or context typos

    • Fair enough. I would certainly appreciate any inputs on languages that I don't speak myself.

    • im happy and ready to help in my free time just add me on discord and i can look for typos or help to translate

      Discord: Zyeari

  • i have a lot of custom traders & they all come with quests with VCQL, if i use this mod with a new profile, no quests are available. only a 1/3 of my custom quests show up. but not all mod quests. and none of the vanilla quests. any ideas?

    • No. I will look into this. If you could suggest some trader mods that uses VCQL that cause this issue, I would much appreciate it.

    • Scorpion , Lotus , Viper , Coyote , Mercernary , Yilmaz , Hea Hunter , Priscilu , Red , Legs The Trader , Artom

    • So, it causes issues with essentially all VCQL traders? Got it.

    • I cannot replicate. Someone who has this issue, feel free to tag me in either SPT or Fika discord so we can discuss the issue. I tried with lotus and everything worked fine.

  • Sounds cool. If you need RU still, lemme know, I may throw some in the pot.

    • I really appreciate the offer. I have a RU translation right now, but if you spot any issues with it, you can feel free to let me know.

    • A'ight.

    • Oh, shoot! So the RU Translation is almost ready?! Awesome!

    • RU translation is done afaik. (Not done by me)

      Is it good, is it bad? Who knows. I don't

      Heart 1
    • me neither, if I see anything out of order, I'll let u know.

      Thumbs Up 2
  • La traduction française n'est pas idéale..


    Certains noms d'items ne sont pas traduis correctement et d'autres ne veulent rien dire

    • All item names are from the game itself. But if you'd like to see changes etc. I can certainly make changes, but I don't actually speak french myself, so you still have to communicate in english here.

  • Awesome idea, until I got a mission to kill 6 Scavs in the lab. :D :D

    Looking forward to future updates <3

    Happy 1
    • Radiers do technically count as scavs, so its not impossible. But agreed, that might become an issue.

    • Added a list of early quests that can't get the "harder" maps.

      Heart 1
    • Cool!

  • I think i can help with the spanish translation if you want.

  • I can help you out with KR translation! Please let me know if you're still looking for the KR translator.

  • I'm running a clean save with no other mods or plugins installed with the 0.4 version but I don't seem to see any quests come up? I even went into a raid and relogged into spt to see if it just needed to refresh but nothing still. Am I missing something to do or is this a bug?

  • Amazing, great work and thanks for making this, DeadLeaves! <3


    Now all we need is a way to randomize all types of quests...getting sick of running Ground Zero and giving Prapor his pocket watch on a new profile :kannatiredofthis:

  • Beautiful mod Idea, looking forward for translations! <3

  • I love u

    Heart 1