Virtual's Custom Quest Loader 2.0.3

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.

A mod dependency to assist mod authors with importing quests, images, zones and language files into the game with additional functionality and a GUI tool.

[tabmenu]


  • Version 2.0.3

    SPT 3.10


    Changes

    • Updated to 3.10

    (Modders check out Haven Zone Creator for a better zone creation experience)

  • Version 2.0.2

    SPT 3.9.x


    Changes

    • Changed the way rotations are stored. They are now actually used when zones are created. Any zone with existing rotation values will need to be added back into the GUI editor and redone.
    • Updated to 3.9.x
  • Version 2.0.1

    SPT-AKI 3.8.1, 3.8.2, 3.8.3


    Additions

    • Added a new option to the GUI Zone creation tool - Any Zones added by the loader can now be loaded back into the creation tool. This should assist modders with altering, fixing or viewing their already existing zones.

    (If you downloaded this and it had issues extracting, it's because it was compressed with 7zip and the windows extraction tool doesn't like it. I have fixed the download zip to counter this)

  • Version 2.0.0

    SPT-AKI 3.8.0


    Additions

    • The biggest one - VCQL now includes a client mod. This is for custom zones, with an included GUI tool for zone creation. Mod authors can now create / visualize custom zones for quests like 'place item', 'exploration', 'kill in area', 'launch flare' etc.
    • Added zone importing.
    • Added assort importing.
    • Added trader image importing.
    • Added quest date ranges (Thanks to shibdib for the pr).
    • Added Korean locale support.
    • Added a config option to allow all quests, even with a sideExclusive property, to be available to the user.

    Changes

    • Changed the side exclusive property away from 'side' to 'sideExclusive' as it was causing issues with outdated versions.


    Massive thanks to the SPT community for helping with this update and a special thanks to the following people in particular:

    • CJ - Supplying the client zone loading code, updated from Boop's API (Boop goated).
    • Boop - Original author of the Quest Zones API.
    • Groovey - Submitting a PR with the flare zone loading code.
    • Timber - Helping with materials / transparency / collision of unity objects for the tool.
    • And a special thanks to the mod authors who use VCQL and give me feedback!

    For a more in-depth view of the update, view the repository where I have more documentation.

  • Version 1.4.3

    Added support for side specific quests.


    Quests can have the "side" value set to either "Pmc", "Bear" or "Usec".


    EDIT: THIS FEATURE WILL CHANGE FOR 3.8.0, SEE MAIN PAGE.


    SPT-AKI 3.7.x

  • Version 1.4.2

    Updated package


    SPT-AKI 3.7.x

  • Version 1.4.1

    + Small fix to change the way the locales are obtained from the server, as some locales weren't properly matched and some would have missing lines.

    No need to update if you are using the English locales.


    SPT-AKI 3.6.x

  • Version 1.4.0

    - Didn't like the spaghetti code, so I re-wrote it all.

    - Mod no longer uses asynchronous methods - for mod creators that need to adjust quests from the server aswell.

    - Placeholder feature now checks individual locales, not the files that contain them.

    - Updated package to 3.6.x, will be compatible with 3.5.x however.

    - In most cases, users will not need to update to this version


    SPT-AKI 3.6.x

  • Version 1.3.0.1

    Updated Package to 3.5.8

    Works on 3.5.x

  • Version 1.3.0

    Added a feature to help when a locale folder does not have any files - locales from a predetermined placeholder locale (default is 'en') will be copied over instead.

    This is to allow locales without quest translations to be accessible in their language.

    (E.G. if a quest pack only has English locales then they will also be added to every other locale.)


    Package version is set to 3.5.7 but works on SPT-AKI 3.5.x

  • I have seen a few users mention that quest zones sometimes do not work. Nothing has been reported so I am unsure if this is a genuine issue or user error. If you are sure that you have downloaded everything correctly, and you still cannot complete the quest, please comment the issue alongside your list of mods so I can look into it.


    Is it installed properly?

    For 3.8.0 and above, you will see 'Virtual's Custom Quest Loader' in user/mods AND you will see 'VCQLQuestZones.dll' in BepInEx/plugins. If you are missing the client mod (.dll), then the zones won't be loaded but there will be no error.

  • Moving forward, all current and new mods using VCQL will be required to link to this page, instead of including the download within the mod. This has caused confusion for users and creates more issues for support when out of date versions override others.


    This does not have to be immediate, however the next update from mods using VCQL should reflect this change.


    TLDR: VCQL should not be bundled with another mod.

    Thumbs Up 1
  • ty mate

  • Im currently having an issue where when going through the 7zip process to put into my spt folder it does not show a bepinex and user folder and i have tried multiple different placements and can not get anything to work

    • also in the server it says missing package.json

      Thumbs Up 1
    • sometimes it doesnt transfer all files. open ur .zip and tranfer files manually

  • Bro, please add support for Ukrainian language (ua) in locales.

    • EDIT: I see they are under 'uk'. I'll look into it.

      Heart 1
  • I'm currently having an issue. When I click on the tasks tab while in game, I see nothing. Just an empty list. It then breaks all other tabs I have. Cannot go into gear, overall, health, anything.


    When back at the main menu, I can only go into the gear tab, and I actually have to go into the traders tab to see the quests.


    I found a post on Reddit that said VCQL bundled with another mod could cause this issue. I had Sanctum Falls installed, which that is the case for. I uninstalled that mod entirely but the issue still persists. Any other ideas? Thank you.

    • Currently having the same issue as well

    • UPDATE: I insalled Quest Skipper and skipped two tasks (Priscillu's tagilla with a frag and Head Hunter Skull F*cked) which solved my issue.

    • Sanctum Falls does not bundle VCQL. No mods do at this time. You may have either a broken quest from one of your mods, or you have left over quest data in your profile that is breaking your game (happens when you install a quest, start it, then delete the mod). The above method could be a solution to that, just need to identify which modded quests you have active.

    • The guy above was right. Skull Fucked from the Head Hunter trader does indeed cause this issue. Happened to my buddy, and skipping the quest with profile editor fixed it.

      Thumbs Up 1
  • Hi Virtual,


    I was trying to make my own personal trader quest on my own trader (trader is working fine standalone) and was encountering this error message.


    SyntaxError: D:\SPT\user\mods\Virtual's Custom Quest Loader\database\quests\Sofiya_Quest.json: Unexpected non-whitespace character after JSON at position 10

    SyntaxError: D:\SPT\user\mods\Virtual's Custom Quest Loader\database\quests\Sofiya_Quest.json: Unexpected non-whitespace character after JSON at position 10

    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 D:\SPT\user\mods\Virtual's Custom Quest Loader\src\mod.ts:88:26

    at D:\SPT\user\mods\Virtual's Custom Quest Loader\src\mod.ts:61:65

    at Array.forEach (<anonymous>)

    SyntaxError: D:\SPT\user\mods\Virtual's Custom Quest Loader\database\quests\Sofiya_Quest.json: Unexpected non-whitespace character after JSON at position 10

    SyntaxError: D:\SPT\user\mods\Virtual's Custom Quest Loader\database\quests\Sofiya_Quest.json: Unexpected non-whitespace character after JSON at position 10

    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 D:\SPT\user\mods\Virtual's Custom Quest Loader\src\mod.ts:88:26

    at D:\SPT\user\mods\Virtual's Custom Quest Loader\src\mod.ts:61:65

    at Array.forEach (<anonymous>)


    I do have a lot of mods in SPT and almost all the VCQL traders (the updated ones specifically)


    Tried fixing it with a Json formatter and it still didn't fix it.

    (I basically just copy and pasted the cat example code from github)


    Here's the code:


    • I see where you got this from. The examples on the repo were not updated, and this is the old structure. I've updated them just now. This example however is showing all the features of VCQL in a single quest - like time gates, side specifications, custom assorts etc. I probably wouldn't use this as your first quest.

      Grab debut from 'quests.json' in your SPT files - or any beginner quest from an existing custom trader - and dive into that. Also know that as we move to 3.10, MongoIDs will be a requirement for all ID-related fields. I'd have a look in the modding channel in Discord about this as it will definitely impact you, and it'll be easier to do now rather than later.


      If you need any help, feel free to ask in the SPT Discord and someone can probably get to you a lot quicker - and the real-time responses help fix issues.

    • Thanks for the tip.


      I'll look into it and start coding later after my real job lol.


      I was actually trying to make something more complicated before like a quest requiring 2 zones and the reward is the mod trader will be unlocked and a gun reward (lol im diving straight into fire) but was also encountering an error so i tried using the sample code. =)


      I'll check up on discord should I encounter another error.

    • Hi Virtual,


      Thanks for assisting. I finally have my first working quest all with zones and trader unlock yaay!

      Heart 1
  • Hey Virtual! With the addition of sandbox_high to the map list, do you think it would be possible/more efficient to add code to VCQL directly to convert quest locations to "sandbox_high" when the player level exceeds the cap for the normal "sandbox" map? Noticed the "issue" after updating Coyote to 3.9 and am unable to complete Skier's introduction quest because it is pointing towards "sandbox" with no reference to sandbox_high.


    Now you *could* just have modders duplicate their entire quest trees for sandbox, change the IDs of the quests/zones/map, and it would still work but it just seems a lot more efficient to automate that process through the framework (if possible).


    If you don't feel like it/too much of a hassle, totally understand! Thought I'd at least make the suggestion.

    • I could probably implement this for zones but quests would be too large. The server would have to search every quest and all possible condition configurations just to change the location, which would be a significant amount of code since they are so dynamic. If I get a gust of motivation to do something big then I could look into it, but I simply do not have the energy or time right now. I appreciate the suggestion.

      Heart 1
    • Totally understand, appreciate the response and your amazing framework!

  • when i click download from here it just takes me to github and then doesnt show a download option that i can see atleast. new to using mods and such so any help with this is appreciated

  • I can;t seem to get Custom Quest Loader to run properly on my server.

    I have copied the folder "Virtual's Custom Quest Loader" to ../user/mods however when I start the server i Get this error:


    • Resolved by deleting mod.js in the src folder.

  • Why it always says is missing a package.json??

    Thumbs Up 1
    • That would be because you either didn't actually install the mod, or you installed it incorrectly.

    • How does one reinstall correctly? i have this message as well

  • Hi, fyi your latest release includes .js files with windows paths (

    const ConfigTypes_1 = require("C:/snapshot/project/obj/models/enums/ConfigTypes"); )

    - which can cause problems. If you simply ship the typescript file instead and remove the js and sourcemap, everything should be fine for everyone, the other files will be rebuilt correctly upon startup. Thanks.

    • Ah, the result of rushing to release. I'll make sure to fix those up on future releases so people expanding to other platforms don't have the same issue.

      Heart 1
  • Does the download method mentioned only work on windows 10? Because I tried it and SPT just stopped working and now I have to completely redownload.

    • Nope. It will work on Windows 10, 11 etc. If you are using another OS such as Linux, I wouldn't know - I haven't tested it.

  • this mod not yet updated..
    (edit it has been updated to v2.0.2)

    search on github SPT 3.9.0 v2.0.2

  • Should we replace VCQL with the version packaged with custom traders (like Lotus and Scorpion) or use only this version?

    • I've just checked the latest downloads for both of these mods and neither of them package VCQL. You should use the latest version where possible.

    • Maybe I'm confused - here's what I'm seeing.

      https://i.imgur.com/Uo0rxPb.png

      Is their VCQL additive to your mod?

    • Okay, I just looked into it. I was making an incorrect assumption here and was not installing the VCQL compatibility folder they package. Apologies for the mistake.


      What I'm presuming now is when we drop the user/mods folder into our SPT installation, and the specific trader mod asks if we want to overwrite, we select "Yes"? Scorpion had I think 4 overwrites, and Lotus had 114.

    • Yeah those are fine to overwrite. The files will be placed where they need to be. The overwrites are probably just duplicate folders actually.

  • Does anybody know, can i make a task for quest that affiliated to something in pmc hideout?

    for example a few tasks, that required an second level of workbench or third level of shooting range?

    Don't really want to affiliate it to hideout management skill, so if anybody know - i would like to know too.

  • Everytime i try to hand over a quest item it says quest handover error

    • More than likely an issue with whatever quest / trader mods you have installed. You will have to contact the mod author for the quest or jump in the discord for some help.

  • So I doubt it matters since you didn't mention it but does load order matter at all should I worry about it being before or after traders

    • Shouldn't matter, but just to be sure you can set the mod to load after your trader mods.

  • Hey, just one little question. Can we have some kind of GUI for easier quest making in future? It would be so nice to have it :)

    • I believe another author is working on a GUI tool for making / editing quests. I have attempted this in the past and it worked, but it got deleted by accident :(

    • dang, that's definitely sad.

      But still, having a GUI for this mod in soon would be pretty great, cuz me & my friend are making a large story mode that's not affiliated with original quests by BSG :)

    • Have you heard any updates about this GUI? If you can't get the other mod author to post their GUI I beg you to remake yours Virtual!

    • You can find updates on it in the discord, posted by 'Ru Kira'. You will probably have to ask them for more info as I've only seen snippets.

  • Hi, great mod! It is possible to create a quest in which you need to kill targets using specific ammo?

    • There's like a 10% probability that adding in the ammo type to the whitelisted attachments array would work, but you can give it a go. I haven't seen anyone get this working.

    • As expected it is not working that way. I think it is EFT limitation because even GamePanelHUD mod don't have option to display ammo that we used to kill. Thank you anyway!

      Thumbs Up 1
  • It always says the package.jsom is missing. Any tips what im doing wrong?

    • That indicates that you haven't installed the mod, or havent installed it properly. Within `/user/mods` there will be your list of mod folders. In each one, you should see a 'package.json' file. If you don't, then you have installed it incorrectly, or you have installed a mod that requires VCQL, but haven't yet installed the loader.

  • Thank you for making this mod! I am a Chinese player and I want to ask may I repost your mod to our website? Of course I will indicate the source and your name

  • hi, i'm getting an error.... quest handover error : condition not found or incorrect value qid:.... with the double agent quests when i go to hand in. any thoughts? sorry for 3.80 sorry my bad, forgot i copied the quest folder over from an older install. now i dont remember where i got the double agent questline. investigating now. sorry again to have wasted your time. found it, sorry again was using an old version of lavax's and your quest packs. will wait and see if new ones come up

  • Experiencing an issue where once I hit Level 10, I can no longer get past the first loading screen. When I remove this mod, it fixes it, but I was really looking forward to the extra content that this mod is required for. Is there any known fix to this?

    • This will be an issue with your mods that actually add the quests to the loader. I'd recommend to go through those mods and find which one has a bad quest or related bad data (like an assort).

    • I have tested it, and the issue even happens when there are no mods installed that add quests. The only time the issue gets fixed is when I take this mod out out of the load order. Are there any mods that you know of that have any sort of incompatibility with this mod?


      Edit: This is even happening when VCQL is the only mod in the load order

    • I got a fresh download of the mod and reinstalled it, that seemed to fix the issue

    • Very strange, I am happy you fixed it though.

  • Is it possible to add more than three new traders at once without blocking the traders with your character portait? E.g. I installed Artem, Mercenary and the three traders from A.E.S. and every trader after Jaeger+2 trader portraits is obstructed by my player info (Name, roubles, euros, my rep and character-portrait)

    Is there a scroll bar i didn't see or a keybind?

    • Self solved:
      You need to turn on intermediate trader screen in game options to see the necessary screen.

    • There is a mod for horizontal scrolling in that menu.

  • One question that I can't find any information for: can you install multiple custom quest mods at the same time? Like, if I installed two completely unrelated custom quest giver mods (for example, the "ultimate questing traders" mod as well as the "Maxim" mod) would both of them function, or would it just break everything?

    • VCQL is made to support multiple trader / quest mods. So if there is any issues between the two mods, it will be from their own traders, not the quests. Typically you are fine to install multiple trader mods.

  • hello im having the same issue as comment below, trying to install for the goblin king quests, iv got the trader on i can buy the items but im not getting any quests. when i load the server i get '0 custom quests loaded' im pretty sure iv followed all the steps correctly

    • So GK has a folder path going to Virtual's Custom Quest Loader which purely contains some quests and locales files. When you install VCQL first, then drop GK's files in, they will go straight to this location. I've checked GK's download and it worked first go for me. So I'd just double check that. Otherwise just manually put the files from GK into VCQL.


      Edit - I now see that rocka has fixed the download lol

    • yeah there was a folder missing thanks the reply and mod <3

  • I have an issue. So, custom traders (saria shop, goblin king and one popular girl trader that i've forgot the name) does not have ANY custom quests from them, it's literally just NOTHING which is sad(

    • See above and the latest comment on GK's comment section. I asked quite a few mod authors to change the way VCQL was bundled, so it's possible the folder structure was overlooked.

    • The other one I cant help with. Saria shop doesn't use VCQL.

    • Thanks, i'll try

  • Are you open to a PR? Or can I just share a modified version of this with my quests?


    I added the ability to add date checks to quests for seasonal things.

  • hello how 2 install mod