Skip to content

This is the GitHub repository for the "BiRaitBec WorkBase Improved" mod for Fallout 4. It contains all the source code and assets used in the mod's creation.

License

Notifications You must be signed in to change notification settings

rux616/biraitbec-workbase-improved

Repository files navigation

BiRaitBec WorkBase Improved

by rux616

Table Of Contents

Overview

Summary

An evolution of the BiRaitBec WorkBase file.

The original BiRaitBec guide (no longer supported), and the updated guide at the Collective Modding Discord server (which is still being supported) specify that the user install the original WorkBase file, but that one doesn't generate clear errors and is generally hard to diagnose.

This edition attempts to address those shortcomings.

This mod is also available at the GitHub project.

(TOC)

Features

  • Checks to see if the script is being run from a protected folder (Program Files, the user profile folder, etc.)
  • Checks to make sure the needed Visual C++ 2012 Update 4 (or later) redistributable files are installed
  • Checks to make sure enough free space is available
  • Will only (re)build archives it needs
  • Incremental status is printed to the screen
  • Logs are generated in the Logs folder
  • In "Standard" mode, repack archives are detected in the Repack7z folder and automatically extracted
  • Original BA2 archives can be used directly from the Fallout 4 Data folder
  • Verifies the repack archives, original BA2 archives, and patched BA2 archives via XXH128 hash
  • Optionally has an Extended Validation mode where files are validated after every step
  • Fixes known bad patched files
  • Cleans up after itself (WARNING: The PatchedFiles folder should be considered volatile regardless of mode and is NOT a safe place to store files long term)

(TOC)

Requirements

  • Visual C++ 2012 Update 4 redistributable
  • One of the following Fallout 4 versions:
    • v1.10.163.0
    • v1.10.980.0
    • v1.10.984.0

(TOC)

Installation

  • Extract this archive to somewhere outside of the user folder. (Use C:\WorkBase for example.)

(TOC)

Repack Files

These are the files from the BiRaitBec Guide as well as the Vault Fix file from the SavrenX HD 1K Buildings and Interior mod which are supported.

Performance:

Main:

Quality:

Vault Fix:

Recommended if using the Performance, Main, or Quality repack sets.

Restyle:

(TOC)

Instructions

Introduction

WARNING: The PatchedFiles folder should be considered volatile regardless of mode and is NOT a safe place to store files long term.

There are three modes of operation for BiRaitBec WorkBase Improved:

  • Standard (recommended)
    • Original BA2 archives: Vanilla
    • Automatic extraction of repack archives: Yes
    • Use vanilla original BA2 archives in conjunction with the repack archives.
  • Hybrid
    • Original BA2 archives: At least one alternate (4estGimp/Luxor/Luxor 2k/PhyOp)
    • Automatic extraction of repack archives: Yes
    • Use alternate original BA2 archives in conjunction with the repack archives.
  • Custom
    • Original BA2 archives: Vanilla or at least one alternate (4estGimp/Luxor/Luxor 2k/PhyOp)
    • Automatic extraction of repack archives: No
    • Use custom assets

In all modes, the installer will first look at the OriginalBa2 folder when looking for the original BA2 archives. If it doesn't find an archive there, it will then attempt to look in the Fallout 4 Data folder.

If any non-vanilla original BA2 archives are found, the script will automatically switch to Hybrid mode if no texture files are present in the PatchedFiles folder. If texture files are found in the PatchedFiles folder, the script will switch to Custom mode.

WARNING: The PatchedFiles folder should be considered volatile regardless of mode and is NOT a safe place to store files long term.

Currently, the following original BA2 archives are supported:

Vanilla:

  • Game version 1.10.163.0, Steam build ID 4460038
    • (All archives)
  • Game version 1.10.890.0, Steam build ID 14160910
    • (All archives)
  • Game version 1.10.894.0, Steam build ID 14349213
    • (All archives)

Alternates:

  • 4estGimp - SavrenX HD Textures Performance BA2 Set (v0.95)
    • (All archives)
  • Luxor's Fallout 4 HD Overhaul (mod version 1.3)
    • DLCCoast - Textures.ba2 (file version 1.3)
    • DLCNukaWorld - Textures.ba2 (file version 1.2.1)
    • DLCRobot - Textures.ba2 (file version 1.2)
    • DLCworkshop01 - Textures.ba2 (file version 1.2)
    • DLCworkshop02 - Textures.ba2 (file version 1.2)
    • DLCworkshop03 - Textures.ba2 (file version 1.2)
    • Fallout4 - Textures1.ba2 (file version 1.3)
    • Fallout4 - Textures2.ba2 (file version 1.3)
    • Fallout4 - Textures3.ba2 (file version 1.3)
    • Fallout4 - Textures4.ba2 (file version 1.3)
    • Fallout4 - Textures5.ba2 (file version 1.3)
    • Fallout4 - Textures6.ba2 (file version 1.3)
    • Fallout4 - Textures7.ba2 (file version 1.2.2)
    • Fallout4 - Textures8.ba2 (file version 1.2.2)
    • Fallout4 - Textures9.ba2 (file version 1.2.2)
  • Luxor's Fallout 4 HD Overhaul 2k (mod version 1.01)
    • DLCCoast - Textures.ba2 (file version 1.0)
    • DLCNukaWorld - Textures.ba2 (file version 1.0)
    • DLCRobot - Textures.ba2 (file version 1.0)
    • DLCworkshop01 - Textures.ba2 (file version 1.0)
    • DLCworkshop02 - Textures.ba2 (file version 1.0)
    • DLCworkshop03 - Textures.ba2 (file version 1.0)
    • Fallout4 - Textures1.ba2 (file version 1.01)
    • Fallout4 - Textures2.ba2 (file version 1.01)
    • Fallout4 - Textures3.ba2 (file version 1.0)
    • Fallout4 - Textures4.ba2 (file version 1.0)
    • Fallout4 - Textures5.ba2 (file version 1.0)
    • Fallout4 - Textures6.ba2 (file version 1.0)
    • Fallout4 - Textures7.ba2 (file version 1.0)
    • Fallout4 - Textures8.ba2 (file version 1.0)
    • Fallout4 - Textures9.ba2 (file version 1.0)
  • PhyOp's Overhauled Optimized Textures (v1.2a)
    • Custom
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Custom Brahmin Pack Fix
      • Fallout4 - Textures1.ba2
    • Custom Face Sculpting Fix
      • Fallout4 - Textures4.ba2
    • Custom Street Sign Fix
      • Fallout4 - Textures7.ba2
    • Custom Original Pip-boy
      • Fallout4 - Textures2.ba2
    • Custom Original Weapon Colors
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • Fallout4 - Textures8.ba2
    • Custom Performance
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures7.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Custom Performance Brahmin Pack Fix
      • Fallout4 - Textures1.ba2
    • Custom Performance Face Sculpting Fix
      • Fallout4 - Textures4.ba2
    • Custom Performance Original Pip-boy
      • Fallout4 - Textures2.ba2
    • Dark
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Dark Brahmin Pack Fix
      • Fallout4 - Textures1.ba2
    • Dark Face Sculpting Fix
      • Fallout4 - Textures4.ba2
    • Dark Street Sign Fix
      • Fallout4 - Textures7.ba2
    • Dark Performance
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures7.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Dark Performance Brahmin Pack Fix
      • Fallout4 - Textures1.ba2
    • Dark Performance Face Sculpting Fix
      • Fallout4 - Textures4.ba2
    • Light
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures7.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Light Brahmin Pack Fix
      • Fallout4 - Textures1.ba2
    • Light Face Sculpting Fix
      • Fallout4 - Textures4.ba2
    • Light Performance
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures7.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Light Performance Brahmin Pack Fix
      • Fallout4 - Textures1.ba2
    • Light Performance Face Sculpting Fix
      • Fallout4 - Textures4.ba2
    • Light Potato
      • DLCCoast - Textures.ba2
      • DLCNukaWorld - Textures.ba2
      • DLCRobot - Textures.ba2
      • DLCworkshop01 - Textures.ba2
      • DLCworkshop02 - Textures.ba2
      • DLCworkshop03 - Textures.ba2
      • Fallout4 - Textures1.ba1
      • Fallout4 - Textures2.ba2
      • Fallout4 - Textures3.ba2
      • Fallout4 - Textures5.ba2
      • Fallout4 - Textures6.ba2
      • Fallout4 - Textures7.ba2
      • Fallout4 - Textures8.ba2
      • Fallout4 - Textures9.ba2
    • Light Potato Face Sculpting Fix
      • Fallout4 - Textures4.ba2

(TOC)

Common

NOTE: The script will automatically attempt to locate and use original BA2 archives from the Fallout 4 Data folder if it doesn't find them in the OriginalBa2 folder.

Currently supports the BA2s from vanilla, 4estGimp - SavrenX HD Textures Performance BA2 Set, Luxor's Fallout 4 HD Overhaul, Luxor's Fallout 4 HD Overhaul 2k, and PhyOp's Overhauled Optimized Textures.

  • [Optional] Copy the original BA2 archives from the Fallout 4 Data folder to the OriginalBa2 folder.

(TOC)

Standard

This mode is designed to be a mostly automatic process which validates both input and output files.

  • Put the repack files you have downloaded into the Repack7z folder.
  • Double click on "Installer.cmd". (If it just opens up in Notepad or something, right click it and choose "Open" instead.)
  • A dialog box will pop up asking you to choose an output folder for the patched BA2 archives. By default it goes to the PatchedBa2 folder, but you can choose a different folder. Do not choose the Fallout 4 Data folder.
  • The script will then proceed to validate and extract the the repack archives, then create and validate the patched BA2 archives.

Notes:

  • Only works with vanilla original BA2 archives (if non-vanilla original BA2s are detected, mode is switched to "Hybrid" if no texture files are present in the PatchedFiles folder, or "Custom" mode if they are).
  • If using the Restyle repack set, the "Author's Choice" options are automatically chosen.

(TOC)

Hybrid

This mode is similar to "Standard" mode in that it's a mostly automatic process, but it allows alternate original BA2 archives (4estGimp/Luxor/Luxor 2k/PhyOp) to be used instead, sacrificing patched BA2 archive validation to do so.

  • Put the repack files you have downloaded into the Repack7z folder.
  • Put the alternate original BA2 files (4estGimp/Luxor/Luxor 2k/PhyOp) into the OriginalBa2 folder.
  • Double click on "Installer.cmd". (If it just opens up in Notepad or something, right click it and choose "Open" instead.)
  • A dialog box will pop up asking you to choose an output folder for the patched BA2 archives. By default it goes to the PatchedBa2 folder, but you can choose a different folder. Do not choose the Fallout 4 Data folder.
  • The script will then proceed to validate and extract the the repack archives, then create (but NOT validate) the patched BA2 archives.

Notes:

  • Only works with alternate original BA2 archives and if no texture files are present in the PatchedFiles folder (mode is switched to "Custom" mode if there are texture files present in the PatchedFiles folder).
  • If using the Restyle repack set, the "Author's Choice" options are automatically chosen.

(TOC)

Custom

This process is basically the traditional BRB install process as has been described in the guide and is done the same way.

  • Extract all the repack files to the PatchedFiles folder (creating it first, if necessary).
    • WARNING: The PatchedFiles folder should be considered volatile regardless of mode and is NOT a safe place to store files long term.
  • Double click on "Installer.cmd". (If it just opens up in Notepad or something, right click it and choose "Open" instead.)
  • A dialog box will pop up asking you to choose an output folder for the patched BA2 archives. By default it goes to the PatchedBa2 folder, but you can choose a different folder. Do not choose the Fallout 4 Data folder.
  • The script will then proceed to validate the original BA2 archives and create the patched BA2 archives.

(TOC)

Advanced Usage

To utilize these parameters, you will have to open a PowerShell window, navigate to the folder where BRB WorkBase Improved is extracted, and invoke the script manually. For example: .\Tools\lib\Installer.ps1 -ForceOperationMode Standard -ExtendedValidationMode. Alternatively, you can edit the Installer.cmd file and change the -Command parameter to the previous example.

(TOC)

Supported Command Line Parameters

These (and only these) parameters are supported.

  • ExtendedValidationMode: Activates Extended Validation mode
  • MakeDLCOptional: Make it so that the DLC archives are optional instead of required to have a successful run

(TOC)

Unsupported Command Line Parameters

Most of these were added for my own convenience while testing or for debugging purposes. I take no responsibility if your computer implodes when using them.

  • NoClearScreen: Prevents the script from clearing the screen when starting up
  • OriginalBa2Folder: Changes the OriginalBa2 folder
  • PatchedBa2Folder: Changes the PatchedBa2 folder
  • WorkingFilesFolder: Changes the WorkingFiles folder
  • ForceTempWorkingFiles: Forces WorkingFiles folder to be in the TEMP folder, is overridden by 'WorkingFilesFolder' if both are used
  • ForceOperationMode <Custom|Hybrid|Standard>: Forces "Custom", "Hybrid", or "Standard" mode of operation
  • SkipPowerShellVersionCheck: Skip checking that this script is being run by a supported version of PowerShell
  • SkipProblematicDirectoryCheck: Skip checking that this script is not being run from a problematic directory
  • SkipVisualCppRedistFileCheck: Skip checking the Visual C++ Redistributable file versions
  • SkipOriginalBa2Validation: Skip validation of original BA2 archives
  • SkipChoosingPatchedBa2Dir: Don't display the dialog box to choose the patched BA2 folder and instead choose the default (.\PatchedBa2)
  • SkipRepackValidation: Skip the validation of the repack archives
  • SkipFreeSpaceCheck: Skip the free space check on the various drives
  • SkipRepackExtraction: Skip the extraction of the repack archives
  • SkipExistingPatchedValidation: Skip validation of any existing patched BA2 archives
  • ForcePatchedBa2Hashing: Force the script to hash a patched BA2 file after creation, even if the size doesn't match any known archives
  • AllowUnchanged: Allow unchanged patched BA2 archives to be created (don't throw an error)
  • SkipFinalCleanup: Don't delete the .\PatchedFiles folder after the script is complete
  • NoPauseOnExit: Don't pause on exit

(TOC)

Troubleshooting

This script has a lot of built-in checks that will tend to have very clear error messages. However, if you run into something that's not clear, post a message on the Nexus Mods mod comments page or make an issue on the GitHub project.

Known Issues

  • Sometimes when attempting to running the Installer script, the console window will open then immediately close again. If this happens, you can run it by doing the following:
    • Click the Start button, type "Command Prompt" and hit "Enter" to open up a new Command Prompt window.
    • Type the name of the drive you have WBI extracted to (for example C: or D:) and hit "Enter".
    • Type cd followed by the folder where you have WorkBase Improved extracted to in quotes (for example cd "D:\Path to\WorkBase Improved") and hit "Enter".
    • Type the command Installer.cmd and hit "Enter".
  • The script appears stuck at "Patched BA2 archive folder:".
    • The script has opened up a window to enable you to choose the folder where the patched BA2 archives will go. Sometimes this window gets hidden behind others, so hit the Windows+Tab key combination, look for a window titled "Browse For Folder", then click on it.
  • The script appears to be stuck at some part of the process.
    • Try scrolling down. Sometimes if you scroll up, the window won't continue to follow the script output.
  • In some cases, there is something called Group Policy that may be applied to a computer. If Group Policy disables PowerShell scripts, this script simply will not work. The Group Policy disabling PowerShell must itself be disabled before this script will work.
  • In rare cases the script might fail with an error about it not being able to get information about your drives.
    • Open an elevated command prompt.
      • Open the Windows menu.
      • Type "command prompt".
      • Choose "Run as administrator".
    • Once the elevated command prompt has been opened, type the following commands, hitting the <enter> key after each one.
      • sc config vss start= demand
      • sc config smphost start= demand
      • sc stop SMPHost
      • sc stop vss
      • sc config winmgmt start= disabled
      • net stop winmgmt
      • Winmgmt /salvagerepository %windir%\System32\wbem
      • Winmgmt /resetrepository %windir%\
      • sc config winmgmt start= auto
    • Reboot your computer.
    • Try the script again.
  • Don't rename the repack files. This script has some limited flexibility for recognizing file names appended with things like "(1)" or " - Copy" and such, but not much more than that.

(TOC)

Logs

Logs will be located in the Logs sub-folder. There will be 2 or 4 files generated per run, depending on how far the process gets: current.install.log and install_<timestamp>.log, and current.tool.log and tool_<timestamp>.log, where <timestamp> is the timestamp of when the process was started, for example 20220201T205350Z. The current.*.log files will be overwritten every run, while the *_<timestamp>.log files serve as a more permanent record.

The install log generally mirrors what is seen on screen, and the tool log is the output of the various tools used, such as 7za.exe and archive2.exe. When asking questions or attempting to get help for errors, please include at least the current.install log.

(TOC)

Copyright and Licenses

Copyright 2022 Dan Cassidy

All my code in this tool is licensed under the GPL 3.0 or later.

Everything else in this mod created by me is CC-BY-SA licensed.

This tool is bundled with the following programs, each having their own copyrights and licenses:

This tool also uses the following source code; each has their own copyrights and licenses:

(TOC)

Credits and Thanks

(TOC)

Contact/Support

If you find a bug or have a question about the mod, please post it on the mod page at Nexus Mods, or in the GitHub project.

Another method for support is to come to my channel on the Collective Modding Discord server. Once you have joined, go to the welcome channel to familiarize yourself with the rules of the server, and once you're finished, come to the "🔧-chaotic-cognitions" channel.

If you need to contact me personally, I can be reached through one of the following means:

(TOC)

About

This is the GitHub repository for the "BiRaitBec WorkBase Improved" mod for Fallout 4. It contains all the source code and assets used in the mod's creation.

Topics

Resources

License

Stars

Watchers

Forks