Jump to content

Pregnancy Normal-map Swapper NG 1.0.2


  

Pregnancy Normalmap Swapper NG is a rewrite of Pregnancy Normalmap Swapper by handroid, reimplemented from scratch as a pure C++ SKSE plugin. The original mod used an ESP with Papyrus scripts, this version replaces all of that with a native DLL, eliminating the ESP dependency and any save-game impact.

 

The plugin automatically swaps body normal map textures based on RaceMenu body morph values. As a morph like `PregnancyBelly` increases, the plugin transitions through progressive texture stages for smooth visual progression.

 

No ESP. No save-game impact. Everything happens at runtime — install or remove at any time.

 

Features:

  • Automatic normal map swapping driven by RaceMenu/SKEE body morphs
  • Monitor multiple morphs simultaneously with configurable combine modes (additive, average, maximum)
  • Per-race texture support with auto-detection of texture stages
  • Weight-variant textures (maps actor weight to different texture sets)
  • Race alias via `Use.txt` (vampire races can share base race textures)
  • Papyrus ModEvent API (`PNSUpdateRequest`) — backward-compatible with the original PNS
  • Force-update hotkey (default: LShift+LAlt+Y, configurable)
  • Periodic polling with configurable interval
  • Works on player and NPCs automatically — no SPID needed
  • Drop-in replacement for PNS v2.x (same texture layout, same API, no ESP required)

 

Normal map textures are NOT included. You need a compatible texture pack such as dw's Pregnant Normal Maps for CBBE 3BA.

 

Requirements

  • SKSE (Skyrim Script Extender)
  • Address Library for SKSE Plugins
  • RaceMenu (provides the body morph and NiOverride APIs this plugin depends on)
  • A compatible normal map texture pack placed in `Data/textures/PNS/`

 

Install Instructions

  1. Extract the archive into your Skyrim `Data/` folder, or install with your mod manager
  2. Install a compatible normal map texture pack into `Data/textures/PNS/`
  3. (Optional) Edit `Data/SKSE/Plugins/PNS-NG/Config.json` to customize settings
  4. Launch the game through SKSE

 

Your folder structure should look like:

Data/
├── SKSE/Plugins/
│   ├── PregnancyNormalmapSwapperNG.dll
│   └── PNS-NG/
│       └── Config.json
└── textures/PNS/
    └── _Default/
        └── female/
            ├── femalebody_1_msn_p1.dds
            ├── femalebody_1_msn_p2.dds
            └── ...

 

 

Upgrading from PNS v2.x: Remove the old mod/plugin (keep the textures), install this version.

 

Credits:

Changelog:

Quote

v1.0.2

Fixed

  • Partition p1 could be applied when the morph value was 0. SKEE sometimes reports a tiny epsilon instead of exact zero. Added tolerance so values within 0.01% of the range minimum are treated as zero (no override).

Changed

  • Include documentation files (docs/ and README.md) in the mod zip package

 

v1.0.1

Fixed

  • Texture partitions now documented as starting at `p1`, no `p0` texture is needed. When the morph value is at or below the minimum, the plugin removes the overlay and restores the original normal map automatically. Existing `p0` files on disk are harmless but ignored.
  • Updated README and texture authoring guide to reflect 1-based partitions.

 

v1.0.0

Initial release as Pregnancy Normalmap Swapper NG — a full rewrite of PNS v2.x.

 

Features

  • Pure C++ SKSE plugin, zero ESP, zero save-game impact
  • Automatic normal map swapping based on RaceMenu/SKEE body morphs
  • Multiple morph support (`MorphNames` array) with configurable combine mode (`MorphCombineMode`)
  • Per-morph key aggregation modes: additive, averaged, maximum (`MorphMode`)
  • Cross-morph combination modes: additive, average, maximum (`MorphCombineMode`)
  • Per-race texture support with auto-detection of partition count
  • Weight-variant textures mapped from actor weight
  • Race alias via `Use.txt` for vampire/variant races
  • Papyrus ModEvent API (`PNSUpdateRequest`) — backward-compatible with PNS v2.x
  • Force-update hotkey configurable as an array of DirectInput scan codes
  • Periodic polling with configurable interval
  • Actor filtering (gender, keywords, child exclusion)
  • Config at `Data/SKSE/Plugins/PNS-NG/Config.json`
  • Linux cross-compilation support via `clang-cl` + `xwin`
  • Drop-in replacement for PNS v2.x (no ESP, same texture layout, same API)

 

 

Edited by Muzako


What's New in Version 1.0.2

Released

v1.0.2

 

Fixed

  • Partition p1 could be applied when the morph value was 0 — SKEE sometimes reports a tiny epsilon instead of exact zero. Added tolerance so values within 0.01% of the range minimum are treated as zero (no override).

 

Changed

  • Include documentation files (docs/ and README.md) in the mod zip package
Install Instructions

 

1. Extract the archive into your Skyrim `Data/` folder, or install with your mod manager
2. Install a compatible normal map texture pack into `Data/textures/PNS/`
3. (Optional) Edit `Data/SKSE/Plugins/PNS-NG/Config.json` to customize settings
4. Launch the game through SKSE
Pregnancy Normalmap Swapper by handroid
SKSE Team

×
×
  • Create New...