Adds ammo variants, reloading parts, and weapon mods as loot; provides comprehensive options for configuring and integrating Gun Runners' Arsenal; fixes item naming conventions; and improves recipes.
Other user's assetsAll the assets in this file belong to the author, or are from free-to-use modder's resources
Upload permissionYou are not allowed to upload this file to other sites under any circumstances
Modification permissionYou must get permission from me before you are allowed to modify my files to improve it
Conversion permissionYou are not allowed to convert this file to work on other games under any circumstances
Asset use permissionYou must get permission from me before you are allowed to use any of the assets in this file
Asset use permission in mods/files that are being soldYou are not allowed to use assets from this file in any mods/files that are being sold, for money, on Steam Workshop or other platforms
Asset use permission in mods/files that earn donation pointsYou are not allowed to earn Donation Points for your mods if they use my assets
Author notes
I give permission for any of my mods to be translated and uploaded to the Nexus. You do not need to ask me first. For any other changes, please contact me first.
Please consider the following recommendations for translations:
1. Please clearly state the mod version of your translation and link back to the original file, so users can check they have an up-to-date version. 2. Do not change the name of any files, including the mod esp/esm files. This is because some other mods may search for the mod by name in their own scripts. 3. Also, do not translate or change the name of any options contained in INI files, since these are referenced by name in scripts too. However, you can freely change any instructions contained in INI files. 4. You can post your translated esp/esm files along with any of the original mod assets, and you do not need to ask for permission. However, please consider posting only the esp/esm file whenever possible, and requiring users to download the original file for the assets. This will allow the users to endorse the original file and contribute to downloads to help mod visibility. 5. If you find any scripted messages (created by the functions MessageEx ot MessageExAlt) that cannot be translated without editing the script, please contact me and I will move the message to a form instead.
File credits
This author has not credited anyone else in this file
Donation Points system
Please log in to find out whether this mod is receiving Donation Points
Simplified the method of removing the empty line at the start of mod descriptions if the tags are removed, and fixed instances where it didn't work.
If the "(Gun Runners' Arsenal)" tag is replaced with "(Custom)" (i.e. if iGRANewWeapons=1), the line return after the tag is removed and replaced with a space. This means the text flows on one line instead of being split over multiple like in the vanilla game, which is inconsistent with how other text is arranged.
Version 3.0.9
Fixed an oversight that meant that the "(Gun Runners' Arsenal)" tag would not be removed from the description of some weapon mods if the option to merge them onto vanilla weapons was used. This is also responsible for spurious bug reports that the merge option wasn't working—it was, but the tag was still there.
The leading 'new line' character in the description of weapon mods that have had their tags removed is now also automatically removed so that the description starts on line 1 like for all vanilla weapon mods.
Version 3.0.8
Made the startup script run instantly to maybe solve items not being renamed for users who were quick on the draw pressing Continue.
Version 3.0.7
Removed the automatic inventory refresh when adding items to Ammo Junk. This prevents the inventory list from jumping around or resetting position. However, as a side effect, this means that the weight or value of the Ammo Junk item may not update until you close you inventory and open it again.
Version 3.0.6
Removed the Powder Charge recipe change, which was leftover from previous versions.
Version 3.0.5
Fixed an error with the vanilla 12.7mm Pistol Silencer (instead of the 12.7mm SMG Silencer) being swapped for 12.7mm SMG suppressor if the GRA New Weapons option was set to merge.
Version 3.0.4
Changed the icon used when adding items to ammo junk from the junk icon to a gift box, as the junk icon would be bugged if you were using Consistent Pipboy Icons.
Added a chance of Mini Nuke ammo to the Gun Runners tier 5 stock if the GRA Mini Nuke merge option is enabled, as previously the new Mini Nukes would only be available from the Commissary in Lonesome Road.
Version 3.0.3
Added a new option to make GRA versions of the Laser Pistol, Plasma Pistol, Plasma Defender, and Ripper use the vanilla sounds (disabled by default).
Fixed the Ammo Junk option, which I think was broken in the last version. Judging by the lack of bug reports, I assume no-one used that feature ;)
Version 3.0.2
Fixed (Hand Load) tag not being removed from ammo.
Fixed a slight oversight with merging the (GRA) weapon mods that made it possible in some cases to obtain the vanilla 12.7mm Submachinegun Silencer and Assault Carbine Extended Magazines if they had spawned in before the option was enabled.
If the option for merged (GRA) mods is enabled after already installing one of the two mods mentioned above, you will be 'refunded' the unattached version of the new weapon mod.
Added spaces to the INI to make it more readable if you aren't using Notepad++ and syntax highlighting.
Version 3.0.1
Fixed and obscure inconsistency where the optimised ammo option would default to off if you deleted the INI, rather than on as it stated in the INI.
Version 3.0.0
Almost complete remake of the mod, so that it is (almost) universally compatible and much more customisable.
Added options for fully integrating the GRA content with the vanilla leveled lists, including allowing the new weapon mods to be applied to vanilla weapons.
Added the option to remove GRA merchant stock from travelling merchants (enabled by default), or restricting GRA stock to just the Gun Runners merchants. If the latter option is enabled, Alexander and Vendortron will be given the additional items as stock that they previously did not have.
Added more options for removing item name tags.
The consistent ammo naming option now reads the ammo names from a text file, allowing customisation or translation.
The new ammo recipe names will better fit the vanilla naming convention if you disable the new consistent ammo naming convention option.
Added more options for the new ammo recipes, allowing for anything from complete ammo crafting and breakdown to only having the vanilla crafting options.
Added more options for customising GRA content. Anything from doing nothing to completely removing all GRA content is possible.
Added an "Ammo Junk" feature, which allows you to sell surplus reloading parts to clean your inventory out.
Remade the GRA options using scripts rather than hard edits, so that there are no compatibility issues with other mods.
Removed MCM (bye bye).
Removed the Low Condition Loot (duplicate of the feature in Famine, and it fits better there).
Optimised scripts.
Removed the changes relating to Mad Bomber integration, as they will be part of JSawyer Ultimate Edition, Push's Tweaks in the next version.
Version 2.74
The new ammo parts will now sort correctly when using ySI Sorting Ycons.
Version 2.73
GRA Merged: Fixed incorrect Laser Pistol mods showing if the weapon was modded with the recycler and another mod.
GRA Merged: Fixed the (Custom) text still being shown on some weapon mods.
Upped the version of the other files for parity.
Version 2.72
Fixed some non-custom weapons having insane values.
Version 2.71
GRA weapons in the Gun Runners stock will now correctly have full condition, like in the vanilla game.
The loot system will now hook into Famine to prevent having to run duplicate scripts.
Low condition loot will be automatically disabled if the same option is in use in Famine.
Version 2.70
Low Condition Loot now affects containers and items placed in the world, as opposed to just enemies.
Fixed weapon mods not spawning in loot. (It'd be smart to actually make a UDF return a value if you put the effort in to write it...)
Some script optimisations.
Version 2.62
Fixed the Low Condition Loot option not being properly applied to weapons dropped when an NPC dies.
Version 2.61
Accidently left a debug on in the last release, which gave ammo variants a 100% chance of spawning. Oooops.
Version 2.60
Optimised all scripts, due to dramatic speed increases of NVSE functions in xNVSE. (If you're somehow still not on xNVSE, you should upgrade now.)
Removed the change to the gamesetting that would preven NPCs from dropping their weapons. This is no longer needed due to the script changes above.
Fixed a bug where having all loot options disabled except Low Condition Loot would prevent the Low Condition Loot feature from functioning.
Version 2.52
Disabling the ammo renaming but enabling the tag removal in the INI will now remove all tags from ammo, previously handled by the ammo renaming script.
Version 2.51
Fixed the MCM entry still showing if the MCM was disabled in the INI.
Fixed the item name options in the INI not working.
Version 2.50
Wasteland merchant containers will now be updated immediately to reflect the vendor options (the new patch on the JSawyer Ultimate patch page adds support for the restored Crimson Caravan Traders).
Added support for INI customisation. If you download the INI, all setting changes will be persistent across saves, i.e. you cannot have different option configurations for different characters. The INI also have two new options, which allow the item renaming and (GRA) prefix removal to be disabled. You can also disable the MCM for the mod, if you want to stop it from running additional scripts in the background.
GRA Merged: Fixed incorrect modded models for the Laser Pistol.
GRA Merged: Integrated the 5.56mm Pistol, 25mm Grenade APW, Battle Rifle, Katana and all associated mods into vanilla vendor lists, rather than merchants having guaranteed stock. (Soon to be featured in Qolore's Miscellaneous Tweaks Collection probably lol.)
Made an additional "Merged" version of the patch for JSawyer Ultimate, available from the JSawyer Ultimate patch page. This is intended for users of JSawyer Ultimate and Mojave Arsenal who want to merge the GRA weapon mods more cleanly into the vanilla game. In addition to patching conflicts, it also implements all GRA weapon mods and non-custom weapons into vanilla leveled lists, meaning you don't need JSawyer Ultimate's or Mojave Arsenal's optional plugins.
Version 2.40
Added a new option to decrease the condition of all loot from enemies and containers, disabled by default. This does not affect the damage enemies deal. This is intended as an economy-preserving option, so that it's less easy to get rich by selling raiders' weapons, and is more lightweight and 'vanilla' than using an economy mod.
Version 2.31
Condensed the energy ammo recycling recipes into a single recipe entry to cut down on menu clutter if you don't have any drained ammo.
Removed the Fission Battery requirement for energy ammo conversion and overcharge. These recipes will now show only if you are carrying energy ammo.
Version 2.30
(This update was prompted by me getting INFURIATED how Gun Runners' Arsenal adds super high-tech pulse rounds to random wasteland merchants and also makes Mini Nukes and the Fat Man far easier to obtain than the devs clearly originally intended.)
The optional file for merged weapon mods will now force-disable custom weapons (so you don't have to manually do it in the MCM).
Fixed a long-standing and oft overlooked vanilla issue that would cause GRA merchant stock to respawn every time you entered a merchant's cell (inclusion in UPNVSEP is a possibility in the future).
Changes made to the merchant stock options will now be immediately reflected, rather than requiring a delay for merchant inventories to respawn.
Added options to toggle GRA's new ammo and non-custom weapons (5.56mm Pistol, 25mm APW, Battle Rifle, and Katana) at vendors.
Removed the "Mark Cell as Safe" option, as it hasn't actually done anything or been required for a long while (I thought I'd remove this ages ago).
Removed some test objects and scripts that were leftover from when I was optimising the scripts, along with some other now-unused scripts that were only referenced by the now-deleted scripts. Also scripts.
Removed some edits to GRA weapon mod leveled lists that weren't strictly required.
Was tempted to remove the MCM for an INI, but was too SCARED.
Version 2.27
Removed an extra space from the Electron Charge Pack, Optimized item name.
Changed Rocket recipes to match the convention.
Version 2.26
Fixed the NAWEMO fix. Fixception.
Version 2.25
Fixed item distribution when using NAWEMO.
Version 2.24
Changed the form type of the Energy Ammo dummy item (seen in the crafting menu) from misc to ammo, so that Universal Item Sorter will sort it correctly.
Version 2.23
Decreased the drop rate of ammo variants for better balance after some testing.
Version 2.22
Fixed a hard-to-notice bug which caused dying NPCs to unequip their weapons on death.
Managed to squeeze an extra 0.00002 s speed increase out of the script. I'll stop now.
Version 2.21
Added a check to make sure merchant-owned containers aren't edited, even though I don't think this was a problem anyway.
Another round of script optimisations. I've been using some free time to test alternative scripting methods against each other, from which I've made some interesting discoveries regarding various methods commonly used by mod authors and more optimised alternatives. From my tests, Mojave Arsenal's new loot script should run around 2x faster than the previous version on average, and over 5x faster in the most intensive situations. Add that to the optimisations in the last version, and the overall extra speed I've managed to eek out of the script is pretty amazing, especially considering it was already lightweight to begin with.
Version 2.20
Various script optimisations related to ref walking (some of which quite large). That's not to say that the previous versions were not optimised, or that the difference is even noticable. We're working in the milliseconds range and less here, but I'm clocking script speed increases ranging from 5x up to and over 10x depending on conditions and probabilities. Simply put, you shouldn't have to worry about performance with this mod.
Changed the implementation method for ammo variants again, and tidied up the distribution to be a bit more 'vanilla'. This is split into three main aspects.
1. The chance of ammo variants is now rolled per calibre, rather than per round. This means there is a lower chance that ammo held in a container or by an NPC will be replaced.
2. If ammo is replaced, typically only one variant is selected, and there is more of it than in previous versions—around half of the calibre will be replaced. Basically, you should see ammo variants less often, but there's more of it when it does occur. This replaces the previous method of randomly replacing each round with a different ammo variant, resulting in small numbers of many different ammo variants in every inventory.
3. All uses of the function LeveledListReplaceForm have been removed. I suspect that this function is causing NVAC-suppressed crashes on my active save, I just can't pinpoint exactly why. Better to be save than sorry.
Removed the Mark Cell as Safe option from the MCM, as it hasn't been required (or done anything) for a while now.
Removed adaptive support for Universal Item Sorter in light of potential errors caused by the function ListAddForm. This will be re-added, but requires some changes on UIS's end first.
For interested mod authors, I've found that using old-style GetNextRef loops for ref walking is much faster than using the newer GetRefs array method. Plus, you can cut out checks for empty arrays, etc, which wasn't part of my testing, so the benefit of the old method may be even greater. Also, foreach item <- ref loops are quite substantially quicker than the GetAllItems array method, even if you are only scanning for a single item type, but the speed is proportionally more dependent on the number of items a ref is holding. However, the foreach method was still twice as fast as GetAllItems even on a ridiculously overburdened NPC, and since most refs will be carrying only a handful of items, it's safe to say foreach is dramatically better for performance.
Version 2.15
Fixed a bug which could cause an NVAC-suppressed crash error when using the KillAll function.
Version 2.14
Removed Names Bash tag.
Version 2.13
Added Bash tags.
Version 2.12
Bug fixes.
Version 2.11
Added automatic support for Universal Item Sorter (new ammo parts will have the correct reloading part prefixes added, rather than being classed as misc).
Version 2.10
Added support for container respawns, even though there are hardly any in the vanilla game. Mostly this feature is for modded setups.
Added an event handler to redirect miguick's NAWEMO to the new distribution script and preserve the dynamic compatibility with that mod. Thanks to miguick for pointing this out to me.
GRA Mod Integration: Released an optional file that integrates the new GRA mods to vanilla weapons. Disable Custom Weapons in the MCM if you use this. Note: this is unsupported. If you mod a vanilla weapon with a GRA mod, then uninstall the plugin, the game can crash when the weapon is loaded as the weapon mod data no longer exists. You have been warned.
Version 2.00
Added dependency on JohnnyGuitar NVSE.
Upped the JIP NVSE requirement to the most recent version at the time of writing (55.45).
Removed dependence on my old loot system that was dynamically shared between JSawyer Ultimate, Water Overhaul, and Mojave Arsenal. The newly overhauled method reduces the universality of the ammo variant feature slightly (though I doubt there will be any issues), but reduces the scripts running during gamemode and definitively solves any errant CTD issues. Loot for the ammo variants feature is now only edited once each time the setting is toggled using scripts. Weapon mod and ammo part distribution is still carried out in real-time, but using a new method.
Fixed weapon mod spawning on NPCs. You might actually see some of these now.
Fixed a bug which caused reloading parts to be dependent on the ammo variants option.
Restricted weapon mod spawning to NPCs only, as creatures are unlikely to have the mental capacity to effectively modify their items.
The "PWBMoArsenalNamingFinish" event is now dispatched after the scripted naming changes done by this mod. Other mods can listen for this event and then overwrite the changes.
Version 1.16
Loot in ash/goo piles can now be modified by the loot system shared across JSawyer Ultimate, Water Overhaul, and Mojave Arsenal. Ensure that you update all of them to their most recent versions.
Version 1.15
Fixed a handful of recipe naming inconsistencies.
Re-ordered all breakdown recipe outputs so that the recipe menu shows the correct count in brackets after the recipe name. (Thanks to VariableEagle for pointing these two out.)
Version 1.14
Added .44 Special case for crafting, loot, merchants, etc.
Fixed 9mm junk rounds being erroneously renamed to "9mm, HP".
Version 1.13
Fixed the infamous dead actor clothing visual bug... for good.
My loot editing system now communicates between JSawyer Ultimate, Mojave Arsenal, and Water Overhaul to reduce script load when any combination of these mods are used. (Ensure the other mods are up-to-date.)
I've established a hierarchy for the "Safe Cell" lists in my mods, so you now only need to edit one if you use any combination of them. The order of precedence is: JSawyer Ultimate, Mojave Arsenal, Water Overhaul (the lower ones are greyed-out).
Version 1.12
Fixed new case boxes not unpacking.
Version 1.11
Corrected typos in some breakdown recipe names.
.38 Special recipes now correctly include the new case.
Version 1.10
Changed breakdown recipe names to match the new ammo naming convention.
Added recipes for crafting and breaking down all ballistic ammo variants. Breakdown recipes have the same requirements as standard rounds; special variants (except Surplus/Special) require Hand Loader by default (optional); pulse rounds are optional.
Added cases (and case boxes) for .22LR, .223, and .38 Special, and distributed to the appropriate leveled lists. All are available from merchants, loot, and breakdown. Spent .223 and .38 Special cases can be recovered, but .22LR cannot as it's rimfire.
Added case boxes to reloading part loot.
Version 1.07
Minor change to how items are distributed.
Version 1.06
Added an additional check so that loot in persistent containers is not modified.
Version 1.05
Minor fixes.
Version 1.04
An insignificantly minor behind-the-scenes debug tweak - because it was bugging me. That is all. (There I go again with the debug pun...)
Version 1.03
Fixed a visual bug which sometimes caused dead actors to still be wearing removed apparel.
Version 1.02
Swapped the broken BSA for loose files.
Version 1.01
Random reloading parts (found in toolboxes, etc) are now level dependent, meaning higher calibre parts cannot be found at low levels.
Mojave Arsenal provides a highly customisable and compatible collection of tweaks and quality-of-life improvements related to weapons and ammo, including the option to seamlessly integrate the Gun Runners' Arsenal DLC content with the rest of the game.
There's a configuration to suit every kind of load order, with no patches.
Expanded Loot
In the vanilla game, ammo variants, reloading parts, and weapon mods were almost exclusively obtainable only from merchants. Mojave Arsenal provides the option to dynamically distribute these items in loot, with individual toggles for each kind of item. The chances for each type of item spawning have been well balanced, so you won't be finding valuable weapon mods in every container, and you won't be gaining masses of extra ammo. Item locations are appropriate to the type of item:
Ammo Variants - Rounds like AP, HP, etc are found alongside normal ammo. Surplus and Bulk ammo can also spawn, and are always present in higher quantities.
Reloading parts - Crafting components like lead, cases, powders, and primers are found alongside the relevant ammo.
Weapon Mods - Scopes, silencers, and other weapon mods can be found alongside the relevant weapons.
Item distribution is carried out in real-time, and so will adapt to changes made by your current mods. This means that mods which add new weapons or weapon mods are supported automatically - so yes, WME and WMX are supported without the need for a patch.
GRA Integration and Options
The Gun Runners' Arsenal DLC divides opinion. Some people like it because it adds flash new items, but wish it was better integrated with the vanilla game, and others (like me) think that it ruins the game balance so much that it would be better off removed entirely.
Mojave Arsenal provides options to suit every taste.
For every aspect of the DLC, you can choose to either:
Disable the content entirely,
Keep the default DLC integration, or
Seamlessly and fully integrate the content with the vanilla game.
This means that, for the first time, it is possible to fully integrate the DLC with the vanilla game using just an INI option and without the need for patches with other mods. This includes allowing the new weapon mods added by the DLC can also be applied to the vanilla versions of the weapons.
Mojave Arsenal is also the only mod to provide true integration of GRA content: the items are added to vanilla merchant lists, so they will have the same frequency and distribution as vanilla ammo, weapons, and weapon mods, rather than certain merchants having guaranteed stock.
Other configurations allow for the possibility of doing nothing at all (the DLC will behave as normal), or disabling every aspect of the DLC entirely, for a true vanilla experience.
Mojave Arsenal's new integration of GRA effectively supersedes any other mods that integrate or disable aspects of GRA.
Consistent Item Naming
The vanilla game isn't very consistent when it comes to ammo naming. For example, regular 9mm rounds are called "9mm Round", whereas 9mm hollow point rounds are called "9mm, Hollow Point"—no "round". It's fairly hit and miss when the game abbreviates ammo names: hollow point rounds are called "Hollow Point", whereas jacketed hollow point rounds are called "JHP", etc. The same goes for ammo crafting recipes, which often have different names to the ammo they create. As this mod makes ammo variants more common, these inconsistencies can become more noticeable.
Mojave Arsenal provides the option to overhaul the vanilla item names with a new and consistent convention. With this enabled, all ammo and recipes follow a common naming convention. Regular 9mm rounds are renamed to "9mm, FMJ", and the hollow point rounds become "9mm, HP", etc.
Remove Item Name Tags
Mojave Arsenal provides options to remove the following tags found in the name of items:
(GRA)
(Hand Load)
(Junk)
(Mad Bomber)
(Vigilant Recycler)
Full Ammo Crafting
Recipes to craft and breakdown all ballistic ammo variants have been added based on vanilla conventions and breakdown losses, and meticulously balanced. By default, all special ammo variants such as AP, HP, etc require the Hand Loader perk to craft, albeit with lower skill requirements than the respective cartridge's Hand Load. Other options include:
Remove the hand loader requirement for AP, HP, and +P variants.
Disable crafting of AP, HP, and +P variants.
Craft surplus ammo types.
Craft incendiary ammo types.
Craft explosive ammo types.
Craft pulse ammo types.
Disable breakdown recipes for ammo variants.
Empty case items for .22LR, .38 Special, .44 Special, and .223 have been fully integrated into the game to facilitate crafting and breaking down these rounds. The cases will also be received from firing the respective ammo, with the exception of .22LR, as it's a rimfire cartridge (thus crafting .22LR rounds also doesn't require primers).
De-Cluttered Crafting
To reduce clutter in crafting lists, energy ammo conversion and overcharge recipes are unavailable unless you actually have Energy Ammo in your inventory. The same applied to recycling recipes and drained ammo. In addition, efficient recycling recipes have had the "Efficient" removed from their name so they sort to the expected place in crafting menus.
Ammo Junk
Since reloading parts are weightless and worthless, you tend to accumulate a lot of unused parts in case (pardon the pun) you need to use them in future. This clutters up you inventory, and can be annoying to scroll through.
To try and solve this, Mojave Arsenal includes an "Ammo Junk" option. With this enabled, dropping worthless reloading and ammo parts will add them to a consolidated Ammo Junk item. The value and weight of this item will be the combined total of all the items you junk. You can then sell this item to a merchant to get rid of the items.
Dropping the Ammo Junk will instead drop all the items contained in it.
Almost every feature of the mod can be fully customised using the INI file contained in the config folder. Full details are included in the file.
Load order is not really important, but I recommend loading this mod high up.
Uninstallation
Simply uncheck and delete the mod. This mod will have no permanent effects on your game.
Compatibility
From version 3.0 onwards, Mojave Arsenal should be almost universally compatible, without the need for patches. You should not use any patches for pre-3.0 version of the mod, as they are probably no longer required—this includes the JSawyer Ultimate Edition patches.
My Mods
I spend a lot of time creating and supporting my mods, so any donations are gratefully received.