Steam Workshop Fallout 4
Does Fallout: New Vegas have a steam workshop? Update Cancel. A d b y Z e n e f i t s. Download the new hire checklist to help onboard new employees. How could Fallout 5 learn and improve from Fallout 76 and 4? Bonus points if you involve New Vegas somehow. Does Fallout: New Vegas end after the main quest? Bethesda Game Studios, the award-winning creators of Fallout 3 and The Elder Scrolls V: Skyrim, welcome you to the world of Fallout 4 – their most ambitious.
Faster WorkshopFaster Workshop is an F4SE plugin that optimizes workshop loading times by replacing some of the most expensive and inefficient regions of workshop loading code with far more efficient versions.On top of this, it also does two more things:. Provides a hotkey to instantly enter Workshop mode. Fixes the issue with workshop icons not loading when navigating through them quickly.Testers with a current workshop load time of 15s (from activating a Workshop to having the build menu appear) report a drop in load time to less than half a second. Those with a lower starting load time report near-instantaneous Workshop loads with the plugin installed.AboutAs you acquire more mods that add content to your game, you may have noticed the game freezing up (video freezes and you cannot move) for increasingly longer periods of time when you attempt to start Workshop mode. Even when these mods have nothing to do with the Workshop!What's going on? It boils down to the game using some incredibly inefficient code to figure out what objects you can build in workshop mode.
Whenever you start Workshop mode, the game evaluates the conditions on every single constructible object in the game to find out if they belong in the workshop - this includes even non-workshop items like weapon mods and chems. And it does that not just once (!), but repeats this loop for each and every workshop submenu you have!If you install a mod that adds two new submenus to your workshop, one would reasonably expect to incur just a small overhead of a couple of additional checks. Instead, in reality, this causes two more loops through every single craftable object in the game.As you install more mods that add any kind of craftable object to the game, entering the workshop will inevitably and perhaps noticeably slow down, even if these objects have nothing to do with the workshop.And to make it all worse, every time you exit the workshop, the game tears down all this data it worked so hard to build and starts over!Do I need this mod?When you start workshop mode, is there any noticeable delay before the build menu appears?
If so, this mod can help.If you do not currently experience any lag when starting Workshop mode, congratulations! You have a beefy-enough rig, or do not have many (workshop) mods installed. But do keep this mod in mind in case you need it in the future. The rate of load time increase is not linear in the number of mods you have installed - it is far worse, so you may see load times shoot up quickly if you install certain kinds of mods. (see About section for more detailed information)How it works (technical). This F4SE plugin rewrites code that handles workshop object loading.
On the first workshop load of the game session, the plugin goes through the constructible objects once and maps keywords to their constructible objects. Now, instead of looping through the entire COBJ list every time a mapping of COBJ to KWYD is needed, it is a constant-time operation to look up this information from the prebuilt map. Conditions will now only be evaluated on COBJs that belong in the workshop category, instead of all loaded COBJs.InstallationInstall with your preferred mod manager, or copy the files in the download to your Fallout 4 Data folder.Make sure that you start the game with the F4SE loader, otherwise F4SE will not be active.This is an in-memory code patch. It does not attach any scripts to objects or your save and is safe to install or remove at any time.RequirementsFallout 4 game version 1.10.50 or higher., 0.6.4 or higher.The, if you want to assign a hotkey for starting Workshop mode. Not necessary otherwise.AcknowledgementsMany thanks to the xSE team, for F4SE.
Credits and distribution permission. Other user's assets Some assets in this file belong to other authors. Author notesYou are free to reuse sections of code found in this framework, so long as it does not interfere with this framework.
Please check the top of the file you are borrowing from for a list of contributors and credit the appropriate people. While much of this was written by kinggath, the basis of the WorkshopScripts was built upon the work of the Unofficial Fallout 4 Patch team, the core idea for the threading engine and much of the code for the locking system was created by 1000101 (yes that's his username.).Not to mention as this will be a community driven project it is likely to have many more contributors in the future - so please credit them!.Added new bForceWorkshopItemLink property to the ThreadPlaceObject. This is true by default.This was added so that not all items have to automatically linked to the workshop if sent.If set to false, the created item will only be linked if it has the WorkshopObjectScript (or extended version) or if it has WorkshopResourceObject 0. Usb secure dongle x adalah. Since script type checks and av checks can only be checked after an objectreference has been created, this allows for scripts using this threading system that only need the link in these specific scenarios, to use the threading asynchronously.Added Message suppression options to the holotape, previously these had only been available via MCM.Added bApplyDrawCount and bApplyTriCount properties to ThreadPlaceObject. These are false by default.When set to true, if the placed object have the corresponding WorkshopCurrentDraws or WorkshopCurrentTriangles AVs set, these will be applied to the workshop which will update the build limit meter.This is disabled by default because each of these adds an additional query to the item and two more to the workshop ref, which means they are going to slow the thread. In other words, these should not be used for large batch operations.
Version 1.1.4c.Added PreventLooting script which can be added to forms to force an object to return to where it was originally or just be deleted if the player loots it. This is particularly useful for book type objects that mods are using to display information via script, but don’t want the player keeping the item.The NPC flagged as the settlement leader can now longer be made immortal during an assault unless they are a settler type.Added WorkshopNPCScript to WorkshopFramework.Most useful change is that there is now a custom event on WorkshopParent called WSFWWorkshopNPCTransfer which is triggered by WorkshopNPCScript when the player transfers an NPC between settlements. Previously there was no way to know this other than to monitor every single settler individually for its OnWorkshopNPCTransfer event. Version 1.1.3.Assault quests will now correctly fail and clear out of the quest log when failure conditions are met.Attackers and Defenders that need to be killed in order to complete Assault quests will now have protected status cleared.Added bForceDefendersKillable and bForceAttackersKillable options to the Assault quests which allow for toggling the Protected status off during Assaults.Defenders during a Subdue assault, will no longer remain in the RemainingDefenders alias, which will prevent them from tracking via quest markers when a certain percentage are down.
Version 1.1.0.Added new WorkshopControlManager quest.This allows for easily assigning control of a settlement to a particular faction.Altered functions involved with consuming workshop resources in WorkshopProductionManager. There is now a V2 of each of them that accepts an argument abCheckOnly for the sake of simply testing if enough resources exist without actually consuming them.Added GetContainerKeyword and GetContainerForItem functions for querying for the container to use based on the workshop and base item that would be involved with that container.Added ResourceShortage system.ResourceShortages are a way for mods to report that a settlement resource is too low. This gives a centralized location for mods to check for additional needs in a settlement beyond the normal rules governing settlements (ie. Food must be higher than population, Defense must be higher than food+water, etc).This could be used for things like reports, or dynamic systems like auto-assignment, or dynamic resource generation/construction. Sim Settlements could use this information to prioritize which plots/work objects to build first from a City Plan.To report a shortage, call RegisterResourceShortage(WorkshopScript akWorkshopRef, ActorValue aResourceAV, Float afTargetWorkshopValue) on WorkshopResourceManager.Note that afTargetWorkshopValue is the total value it should have for that shortage to be considered resolved. If your mod logic requires settlement food be at 40 to no longer be considered short, you would send WorkshopResourceManager.RegisterResourceShortage(someWorkshopRef, FoodAV, 40.0).Only the highest shortage for each AV is stored.
For example, if you report a shortage of 2 food, and another mod reports a shortage of 4 food, the shortage of 4 will take priority. If a higher shortage already exists, RegisterResourceShortage will return false, otherwise it will return true. (Note it will also return false if akWorkshopRef or aResourceAV are None).ResourceShortages will be tested after new workshop objects are built, on demand when WorkshopResourceManager.UpdateResourceShortages(WorkshopScript akWorkshopRef) is called, and daily on a timer.The test checks for two things: Is the shortage resolved, has the shortage expired.A shortage is resolved if the workshop’s AV matches or exceeds the amount reported as needed.A shortage expires after 2 in-game days. This is to ensure that a shortage doesn’t become permanent if circumstances change and the mod that registered doesn’t correctly refresh the shortage.Registering the shortage again will refresh it. Mods should plan on re-registering shortages periodically, or reacting to the ResourceShortageExpired event in order to ensure their shortages remain relevant.Only the largest shortage for each AV is stored.Once a shortage is resolved a custom event (ResourceShortageResolved) will be fired with the workshop, ActorValue, and current value of that AV. Mods can register for this Event to react to the resolution.-.Once a shortage expires, a custom event (ResourceShortageExpired) will be fired with the workshop, ActorValue, and current value of that AV. Mods can register for this Event to react to the expiration (perhaps by re-registering the shortage if it still exists according to the mod’s gameplay logic).ScrapObject thread will now move items deep below the world before enabling them to test for AVs to hide this from the player.Added a MessageManager quest which allows the player to control circumstances when messages show up.
1.0.7 - “Last” Bug Squashed-Fixed a bug where some players would stop recruiting new settlers beyond 10 at their settlements.-Added a new option called “Consume Basic Resources Only”.-This makes settlers only consume Purified Water and vanilla crop foods daily. By default, settlers are allowed to eat any type of food or water, which can lead them to consume rarer resources.-Added a new option to enable/disable the Workshop Tutorial Messages.-Note that once disabled, enabling again will reset all of the tutorial messages as if you haven’t seen them yet.
Version 1.0.6. Scrap Crash Prevention-ThreadScrapObject now tests objects before deleting them to ensure they don’t have the keywords/AVs that could potentially include them in the power grid.-This safe method will also apply to the API function WSFWAPI.RemoveSettlementObject, so that other mods may easily take advantage of this and avoid causing issues.-Added new argument to AssignmentRulesOverridden CustomEvent, the new 4th argument includes the last item to be assigned.
Fallout 4 Vault 88 Designs
This will allow handlers to decide if they want to prioritize maintaining the last requested assignment or not.-Argument 0 of AssignmentRulesOverridden will now be WorkshopCaravanKeyword instead of None when the rule is for overriding caravan unassignment. Handlers will need to test casting as a keyword or a WorkshopObjectScript to determine what was overridden.-Added new function UnassignActorPrivateSkipExclusionsV2, which replaces UnassignActorPrivateSkipExclusions (old version now points to the new for backwards compatibility). The new version adds a field to accept the last assigned form (either the workshopObjectScript or WorkshopCaravanKeyword), so that if an unassign exclusion is triggered, the AssignmentRulesOverridden event will have the information it needs. Version 1.0.5. 1.0.5 - Better Locks and Threading-Switched to Utility.WaitMenuMode for the locking mechanism in all control quests.-GetLock on all quests extended from LockableQuest now use a variable wait time.
Rather than waiting 0.1 seconds, before the loop starts, a random value between 0.10 and 0.50 is assigned as the wait time, then each loop that the lock is still being held that much time will be allowed to pass. This should greatly reduce the likelihood of a quest becoming dead-locked due to an excessive number of simultaneous calls.-GetLock on all quests extended from LockableQuest now have an auto-clearing lock feature after a request has lasted a certain amount of time, any extending quest may override the total wait time. The default time is currently very long (between 10 and 50 seconds - see previous change to wait time), and is not expected to be hit unless a large burst of requests come in that cause the quest to essentially become dead-locked.-Added more streamlined version of the batch object creation code to the API.-ThreadPlaceObject now has a bFadeIn property.
Fallout 4 Mods
When set to false, and bStartEnabled = true, the item will pop into existence - this is much faster than fading.-API calls to create settlement objects will use the new bFadeIn property to ensure the items are created as quickly as possible.-HUDFramework Wrapper will now return on all functions if it is not installed, rather than allowing the calls to error out.-WorkshopResourceManager now uses a queue to handle resource objects built in remote settlements. Before it was using an edit lock function in the WorkshopObjectBuilt event handler - which when hit with something like a Sim Settlements City Plan or Transfer Settlements blueprint would completely lock up.-Added WorkshopObjectManager quest to handle special case workshop objects that require a lot of handling. In the future, this will be used to centralize some of the things currently being handled by events on individual objects via WorkshopObjectScript - which can end up causing bursts of threaded activity which can occasionally put too heavy a load on the VM.-Added WorkshopObjectScript extended script called InvisibleWorkshopObject.
This allows for creating workshop objects that act as handles for something that is normally invisible, such as Animation Markers. The InvisibleWorkshopObject has a new field called ControlledObjectForm which will hold the base form of the item that should remain visible - a reference of this will be created when the InvisibleWorkshopObject is placed. The InvisibleWorkshopObject will automatically disappear when the player exits workshop mode, leaving the ControlledObject it spawns enabled.-Added new Holotape/MCM option to disable the Shelter Mechanic so that you no longer receive happiness penalties from not having a roof over your beds. The Shelter Mechanic is a system in the base game that is very buggy. For many users, this system does not correctly detect roofs and it can feel like the happiness penalty is permanent no matter where beds are. Version 1.0.4.
Happy Robots Patch-The same temporary fix used for the mod Unique NPCs, will now also apply to the mod Better Settlers.-Reduced log output during production in WorkshopFramework.log to make it easier to analyze.-Fixed a bug with the Food and Water detection which could result in happiness penalties.-Fixed a bug in food and water production.-Fixed a bug with the Robot Happiness code, you will likely need to visit each settlement that was affected for the fix to take place. Though first try sleeping 24 hours to see if it resolves itself remotely.-Fixed several issues with Interior workshops in player homes.-Fixed compatibility issue with the mod Basement Living. Version 1.0.1.
1.0.1 - Post Launch Quick Fix- Eliminated all vanilla edits to forms. Now the only edits are to the Workshop Scripts, this should fix incompatibilities with multiple mods that were editing the WorkshopParent quest properties.- Adjusted Settler injectable Actor record to inherit the Base Data and Spell List from NPCs sent to it.
Fallout 4 Walkthrough
This will allow mods to inject named settlers and handles a corner case introduced by Far Harbor.- Fixed an issue where assigning an NPC to a vanilla crop would fail to assign them to additional crops forcing you to assign each crop one at a time.- Fixed an issue that could prevent items from being consumed which would negatively affect happiness.- Put in a temporary fix to allow the mod Unique NPCs to work. Will add a better method for a mod like it to be injected in the future.
Above is a Live Stream I did on release day which talks about some of what this framework can do.