/autoBodyAE

Randomized configurable bodies for Skyrim: Anniversary Edition

Primary LanguageC++GNU General Public License v3.0GPL-3.0

autoBody AE

A SKSE/SKSEVR Plugin for distributing CBBE and HIMBO presets throughout the gameworld AE VR

  • Configurable through morphs.ini files (optionally created by JBS2BG), just like Racemenu's Bodygen
  • Faction and race support! Formatted in morphs.ini like this:
    • All|Female|TownWhiterunFaction
    • All|Female|NordRace
    • Uses EditorIDs just like Bodygen does.
  • Reimplementation of Obody's ORefit algorithm!

Differences from Bodygen

  • Addition of more extensive config options, faction bodies, two different preset loading locations (just in your bodyslide SliderPresets, or specifically in the mod preset folder), whether or not faction bodies take priority, etc.
  • Automatically prevents ALL clothed presets from loading
  • Male support!
  • Can use actor's weight settings, a specific weight, or totally random weights. No more fiddling in JBS2BG!
  • In-game actor tweak menu mapped to the ; key. Change their preset if you don't like it, and it'll stay that way!
  • Regenerate Actor Spell! Re-run the generation algorithm on any actor at will!

Development/Compile Requirements

  • CMake
    • Add this to your PATH
  • The Elder Scrolls V: Skyrim Special Edition
    • Add the environment variable Skyrim64Path to point to the root installation of your game directory (the one containing SkyrimSE.exe).
  • The Elder Scrolls V: VR Edition
    • Add the environment variable SkyrimVRPath to point to the root installation of your game directory (the one containing SkyrimVR.exe).
  • PowerShell
  • Vcpkg
    • Add the environment variable VCPKG_ROOT with the value as the path to the folder containing vcpkg. For dependency management.
  • Visual Studio Community 2022
    • For the build tools.
  • CommonLibSSE
    • Add this as as an environment variable CommonLibSSEPath instead of /external
  • CommonLibVR
    • Add this as as an environment variable CommonLibVRPath instead of /external

User Requirements

Building

git clone https://github.com/napmouse/autoBodyAE
cd autoBodyAE
# pull commonlib, skip if you've defined it in the path
git submodule init
# to update submodules to latest build (warning may result in build problems)
git submodule update

AE

cmake --preset vs2022-windows
cmake --build build --config Release

SSE

cmake --preset vs2022-windows-sse
cmake --build buildsse --config Release

VR

cmake --preset vs2022-windows-vr
cmake --build buildvr --config Release

Credit/thanks

  • Sairion350 for their original work on OBody, which I referenced extensively and copied wholesale in a few places (specifically for event handling and ORefit).
  • Ryan-rsm-McKenzie for their work on CommonLibSSE and their lovely example plugin, without which this project would not have been possible.
  • My buddy Mike, for being my rubber duck.
  • Scrab, for their assistance with a particular feature of the CommonLibSSE library
  • Alandtse, for his work on the VR port, PRs and bug reports.