MusicManiac added a new file:
QuoteDisplay MoreThis has content. This can be used as dependency.
Welcome to Consumables Galore. Easy way to add stims and foods into your games. Even you can create a stim/food/drink now! And Stims Galore has following functions:
- Newly created items are properly added to flea
- (Optional) Added to trader of your choosing
- (Optional) Added to all quests that require similar stims to be found/turned in
- (Optional) You can even make crafts for them.
- (Optional) Added to spawnpoints so they can spawn on maps
- All items are on on-need basis. Don't want items to be in the game? Just delete it's file.
Comes prepacked with
- Old Meldonin (called "Meldonin v13.5 Injector")
- Old Odbolbos (called "Obdolbos v13 Injector")
- Elephant, a stim that combines Mule + SR3D-E.H.E.T.S. (which allows you to have your carry weight be boosted to big boy values, since you can't stack carry weight multipliers in base game so you gotta combine 2 stims into one to benefit from carry weight modifiers from both)
- Couple of stims from More Stim Injectors
- Adrenaline+ injector
- Another like 4 stims and 4 pills
- Couple of drinks and foods.
Installation is very simple, just drop the folder into your user/mods category.
Config is done on per-item basis. Each item is a json file located in items folder. In there you can edit a whole lot of things. If you need help figuring the config, just check next tab.
If you don't like the item, just delete the item file from items folder. Make sure that you don't have them in your inventory/stashMod loads all items that it finds in items folder. 1 item per file.
USE PROVIDED ITEMS AS REFERENCE POINTS FOR YOUR OWN ITEMS
If you come up with cool items, comment with your item file and I maybe can add it.
Now towards json itself, lets have a look at prepackaged Elephant stim:Code: Elephant.jsonDisplay More{ "cloneOrigin": "5ed51652f6c34d2cc26336a1", "id": "elephant_stim", "fleaPrice": 190000, "handBookPrice": 200000, "includeInSameQuestsAsOrigin": true, "addSpawnsInSamePlacesAsOrigin": true, "spawnWeightComparedToOrigin": 0.5, "Buffs": [ ... }
"cloneOrigin" - the base game item that we gonna use as baseline for our stim. This means we'll use it's model, animation, sound, properties, etc. To find id you wanna use, use https://db.sp-tarkov.com/search/ . You're interested in "_id" which can be found at very top.
"id" - id of our new items. Gotta be unique.
"fleaPrice" - flea price of our item. Accepted values: "asOriginal", value between 0-10, value above 10. "asOriginal" uses same flea price as stim we copying from. Useful for variations of existing drugs (check Meldonin v13.5 or Obdolbos v.13 files), value between 0 and 10 is treated as multiplier. So if you set it to 1.6 price will be 1.6 times of original price. Anything above 10 is treated as flat value in roubles.
"handBookPrice" - absolutely same system.
"includeInSameQuestsAsOrigin" - if set to true, this adds new item to all quests where you need to find/hand in as our original is. For example, if you make new item that's based on vanilla one but with better/worse/slightly different effects you can set it so quests that require original also accept this stim."addSpawnsInSamePlacesAsOrigin" - adds stim into same spawn locations as origin item.
spawnWeightComparedToOrigin - weight multiplier relative to original item spawn weight. <1 means your item is more rare. >1 means your item is more common.
Code: Elephant.json - continuationDisplay More"Buffs": [ { "BuffType": "StaminaRate", "Chance": 1, "Delay": 1, "Duration": 1800, "Value": 0.5, "AbsoluteValue": true, "SkillName": "" }, { "BuffType": "SkillRate", "Chance": 1, "Delay": 1, "Duration": 1800, "Value": 10, "AbsoluteValue": true, "SkillName": "Endurance" }, ... ],
"Buffs": - very simple, it's an array of buffs/debuffs that your item gives. To find a reference, go to Aki_Data/Server/database/globals.json and ctrl+f for "Buffs": { it will get you to the very top of list of buffs used by game, including stims. Just browse that. Buffs in item json must be in same format as Buffs in globals. Use provided items as reference point.
Code: Elephant.json - continuationDisplay More"locales": { "en": { "name": "Elephant Injector", "shortName": "Elephant", "description": "A crazy mix of M.U.L.E. stimulant injector and SR3D-E.H.E.T.S. Injector, which effectively combines effects of 2 stims together." } }, "trader": { "traderId": "54cb57776803fa99248b456e", "loyaltyReq": 4, "price": 195000, "amountForSale": 10 },
"locales" - understandable.
"trader" - (OPTIONAL) here you can add 1 trader that will sell your stim. In all provided files traderId is therapist. If you wanna use someone else - gotta provide their id. Rest of fields are self-explaining.
Code: Elephant.json - continuationDisplay More"craft": { "_id": "elephant_stim_craft", "areaType": 7, "requirements": [ { "areaType": 7, "requiredLevel": 3, "type": "Area" }, { "templateId": "5ed51652f6c34d2cc26336a1", "count": 1, "isFunctional": false, "isEncoded": false, "type": "Item" }, { "templateId": "ehets_stim", "count": 1, "isFunctional": false, "isEncoded": false, "type": "Item" }, { "templateId": "5d1b3a5d86f774252167ba22", "count": 2, "isFunctional": false, "isEncoded": false, "type": "Item" } ], "productionTime": 10400, "needFuelForAllProductionTime": false, "locked": false, "endProduct": "elephant_stim", "continuous": false, "count": 1, "productionLimitCount": 0, "isEncoded": false }
"craft": - (OPTIONAL) this is where you can add 1 craft recipe for your new item. Take a note that id must be unique, area type 7 is medstation. In requirement you can put what is required for craft. Area level, items, tools. "templateId" is items consumed. "endProduct" must be your item id. Rest is self-explanatory. You can browse base game crafts in Aki_Data/Server/database/hideout/production.json.
Use https://db.sp-tarkov.com/search/ for ID finding.
Adrenaline Plus has some extra stuff to look at.Code: AdrenalinePlus.jsonDisplay More"MaxResource": 2, "BackgroundColor": "red", "effects_health": { "Energy": { "value": -10 } }, "effects_damage": { "Contusion": { "delay": 0, "duration": 110, "fadeOut": 20 }, "Pain": { "delay": 0, "duration": 30, "fadeOut": 20 } },
The effects_health and effects_damage are there for ppl also to use, check https://db.sp-tarkov.com/search/ for different stims to see what they do.
Wanna add stims/food/drinks to your mod but don't wanna bother with figuring it out or just want to save coding time? Use this as dependency. When shipping your mod, just include in it empty folder MusicManiac-ConsumablesGalore/items/ with your items inside and link to this as dependency.
Big thanks to RainbowPC and his Lots of Loot as I directly took their function that digs inside loot tables. Made my life much easier by saving me a good hour of figuring out how to dig through them.
Another thanks to papershredder432 and his More Stim Injectors as I took some stims from there.Also thanks to Riisn for providing a good amount of 15 items for the mod
If you wanna be true homie or say thanks for time I've spent modding the game, feel free to send me a coffee on kofi