Assort editor 1.1.0

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 webtool to edit your existing trader assort prices, for balancing reasons. 2 boxes of matches a bit too cheap for that fully kitted MDR762, but you like the mod otherwise? This can fix that in an easy to understand way. No fiddling with .json files!

This will edit prices for your trader mods, as long as the traders use an assort.json. Support for questassort.json to show quest requirement for a better overview.


Tested with Lotus and Legs the trader, but should work with any mod that includes an assort.json file.


  1. Place assort.json and if available, questassort.json next to the EXE. Then launch.
  2. Open browser and go to 127.0.0.1:5000


Screenshots

Overview of all assort items (main page)


edit page, with the ability to add, remove and change quantity of barter requirements.

  • Honestly a great idea for a mod, but what's the installation process?

    I put it in the mods folder and it gave me a bunch of errors. It's probably just me being dumb though

  • it will be great the abillity to add or remove items and a way to edit at

    trader level they unlock...

  • Does this work with the base traders like Prapor and Peace Keeper?

    If yes, then any idea what that file name is in the game files?

    • hi its possible , go to :


      \SPT - 3.9.8\SPT_Data\Server\database\traders\


      and you will find all the traders folders, inside each folder is an assort.json file


      it works , i been able to modifi a bunch of trades to barter.. awsome

  • I'm confused about this process. Do I need to put both the assort.json and questassort.json files from the trader folder into the Assort_editor folder? Then, do I launch Assort_editor.exe and go to the website? If so, it's not working for me

    • yes , copy them both to assort editor folder, open the Assort_editor.exe and go to the link

      given , should open all the trades in that file , when you finishing editing , close the app ando copy the edited file assort.json from assort editor folder to the mod folder

  • I have question. Is it normal (I highly doubt it) that unpacking using 7z took me more than 1 and a half hour to unpack this mod?

    • No that's not normal. There's something wrong with your system in that case

    • No other zip, rar, 7z took that long ever. That was weird.

  • is it possible to make this also edit the trader level the item is sold at?

    • Certainly. Can't provide an estimate for when, but should be easy enough to add it. 😁

  • I spent so much time editing in trader assort.json that such mod would be godsend.


    But I wonder if I can use it on SPT 3.7.x version?


    Can I change assort values:

    "UnlimitedCount": true, (true/false)

    "StackObjectsCount": 1850000, (any number)

    "BuyRestrictionMax": 3, (any number)

    "BuyRestrictionCurrent": 0 (any number)

    • Can you show me an assort.json which has BuyRestrictionMax and BuyRestrictionCurrent? The other two should be possible

    • Practically all trader assort.json items have those values:


      "StackObjectsCount":

      "BuyRestrictionMax":


      some items have in addition those values:

      "UnlimitedCount":

      "BuyRestrictionCurrent":


      Sometimes item have only "StackObjectsCount" without all the other 3 vatues.

    • The traders I have tried it on (Legs, Lotus) do not have BuyREstrictionMax or BuyRestrictionCurrent. Can you point me to a specific one?


      Code
                "upd": {
                    "UnlimitedCount": false,
                    "StackObjectsCount": 2
                },

      example from Legs

    • Well I am on 3.7.X so I do not have new traders.
      I gave example from Mechanic, Ragfair, Therapist. But I tweaked all the traders as I want them to have way less available item numbers for example instead of 100k or 1M to 1-2 items.

      So as I already mentioned I see items having only StackObjectsCount while others have UnlimitedCount": true some have also "BuyRestrictionMax": and sometimes they also have BuyRestrictionCurrent":
      I would only care to be able to delete UnlimitedCount": true as it is the same as changing it to false. Also I would like to be able to greatly reduce those ridiculous numbers of items (except ammo) by tweaking "StackObjectsCount": "BuyRestrictionMax":\

      As for "BuyRestrictionCurrent" to be honest I do not touch this value as I have no idea what it is responsible for.

    • I agree, I can't wrap my head around what "current" means, when Max is available as well fro buy restriction count.

      I will take a look and see if i can't find these values :)

  • Is it possible to make a bot loadout editor? Trying to manually add a gun to a boss or follower is kind of a headache.

    • That's unfortunately out of scope for this specific app, but maybe in the future. Don't wait for it, though. 🫡

    • Okie, Thank you for replying.

  • Yo this looks great compared to modifying assort.json manually for some custom traders who's prices are just too low for everything they sell compared to vanilla. Do you still need to modify the prices of each item manually with this GUI, or is there by chance a multiplier? Would be awesome if I could choose a trader, lets say lotus, & simply increase the cost of all items she sells by like 1.2 for example while ignoring barter trades.

    • No, there is not, but it would be trivial to do something like that without needing a GUI. You can make a very simple script that just looks for items in the barter scheme that have roubles, USD or EUR as requirement, and multiply those "count" values by whatever multiplier you desire.

      I would say such a feature is currently not planned for implementation, but here is a script that can accomplish it, as written by ChatGPT:


      all you need is python, and it can be ran from commandline with:

      python multiply_currencies.py assort.json updated_assort.json --global_multiplier 1.2

      Heart 1
    • Holy sh!t, I just tried it and it worked perfectly :evil: Big thanks boss!!! You totally could have just said it wasn't a feature but went the extra mile for me, very much appreciated!

      Heart 1
  • Hey man, virus total does not like this file at all


    Idk what you can do about that but here is the result of app.exe


    I am assuming this is because it is an unknown exe file but


    not my area of expertise


    image.png?ex=6688ace3&is=66875b63&hm=4efe27b4d80f68d10bf2ebb246b0968536cc34f197000f70980664ba7e710e67&

    • Compiled through different means, which seems to have helped:
      Assort_Editor.zip on virustotal
      Assort_editor.exe on virustotal

      Thumbs Up 1
    • The zip was always squared away - but the exe still wont run for me bc defender and antivirus quarantine it


      and not for nothing against you, but I am trying to get it to run without providing an exe file an exception


      Ya know?

      Thumbs Up 1
    • the source code is still available to run, without compilation. It's just a python app so it's functionally the same uncompiled

      edit: Also, curious your windows defender trips on it, mine seems to have no problems with it 🤔

      Thumbs Up 1
    • It zaps it out of existence if I try to open it


      I'll grab the source and see if I can make that work

    • Why not just simply add it to exception?

  • does this have the ability to add items to specific traders?
    wanted to add an expensive gas-mask to a trader

    • No, not yet.

      Currently it functions only to edit what is already there. So it's a balancing tool currently.

      i plan to expand on it and make it able to do everything you can do manually.

      Heart 1
  • Nice !
    Now we need some way to show base prices for custom items :) !

  • I was literally about to start editing my assorts tomorrow


    This is a life saver!


    The timing is incredible

    Heart 1
  • Finally we can stop editing json files in the coal mines!

    Heart 1
  • This is DOPE! I was going to make a program to do this. :love: <3 :thumbup:

    Heart 1
  • dope. will save me so much time editing prices - thank you!

    Thumbs Up 1 Heart 1