Jump to content

[mod] Vulnerability Matters


Dharkx

Recommended Posts

Posted (edited)

Vulnerability Matters


Gone are the days of pawns who are incapable of violence, or are without any clothes or armor to protect them, from being invulnerable.

 

AI disclaimer: This mod was created heavily with the assistance of AI, but the mod still works well.

 

Mod Description

 

Expands RimJobWorld’s pre-existing pawn vulnerability system with new configurable modifiers which will cause a pawn to be more or less vulnerable, based on gender, age, body type, combat capability, melee skill, body coverage exposure, tagged apparel visibility/protection, environmental and other conditions.

 

Features

 

Adds new configurable pawn vulnerability modifiers in Mod Settings, based on:

  • Gender (male and female)
  • Age (young and old age)
  • Body type (hulk, thin and fat)
  • Combat related ability (equipped range and melee weapon, incapable of violence)
  • Melee threshold penalty system (penalty per missing level below threshold)
  • Exposure and body coverage with apparel rules by gender (Nudist and ideology exemptions)
  • Wearing only underwear, skimpy clothing, tight clothing, bondage apparel, or protective gear
  • In darkness (low visibility)
  • Experiencing cold or hot temperatures
  • Sleeping indoors, outdoors, or in a tent (Camping Tent mod patch)
  • Thirst need, and when actively having a shower or bath (Dubs Bad Hygiene mod patch)

 

How RJW Vulnerability Works

 

All pawns have a vulnerability level, with RimJobWorld's default value set to 120% (adjusted in RJW's mod settings).

 

If a pawn's vulnerability level reaches or exceeds the target threshold, they may be considered a victim, and may targeted by other pawns whose vulnerability stat is lower than the victim pawn's.

 

Vulnerability is built from two types of effects:

  • Percent values act as multipliers.
    • 100% means no change
    • Above 100% increases vulnerability
    • Below 100% reduces vulnerability
  • Offset values are direct additions or subtractions.
    • Positive values increase vulnerability
    • Negative values reduce vulnerability
    • 0 disables the effect

 

RimJobWorld already covers things like melee skills (positive only), health, body types (thin & hulk), food and rest need. This mod expands and adds many more considerations, as detailed further below.

 

Vulnerability Modifiers

 

Below is a list of all the pawn vulnerability stats modifiers added by this mod and their default values.
 

All modifiers can be adjusted or disabled in the mod settings:

Spoiler
  • Gender:
    • Male multiplier: x90%
    • Female multiplier: x110%
  • Age:
    • Young max age: 25
    • Young age: +0.10
    • Young age gender: Male & Female
    • Old min age: 50
    • Old age: -0.10
    • Old age gender: Male & Female
  • Body Type:
    • Body type Hulk: -0.20
    • Body type Thin: +0.20
    • Body type Fat: +0.10
  • Combat:
    • Equipped range weapon: -0.15
    • Equipped melee weapon: -0.15
    • Low melee skill threshold: 5
    • Penalty per missing level: +0.10
    • Incapable of violence: +0.50
  • Environment:
    • Darkness: x115%
    • Cold Temperature: x110%
    • Hot Temperature: x110%
  • Sleeping:
    • Sleeping indoors: x140%
    • Sleeping outdoors: x170%
    • Sleeping in a tent: x150%
  • Dubs Bad Hygiene:
    • Urgently thirsty: x110%
    • Dehydrated: x140%
    • Shower: +0.25
    • Bath: +0.30
  • Exposure:
    • Exposed nude top: +0.30
    • Exposed nude bottom: +0.40
    • Bondage collar: +0.25
    • Bondage outfit: +0.35
    • Underwear top only: +0.15
    • Underwear bottom only: +0.20
    • Skimpy top only: +0.10
    • Skimpy bottom only: +0.12
    • Tight top only: +0.05
    • Tight bottom only: +0.06
  • Protection:
    • Vest protection: -0.15
    • Armor protection: -0.25
  • Coverage Rules:
    • Males require covered: Bottom
    • Females require covered: Top and Bottom
    • Nudists exempted: Enabled

 

Body Coverage Exposure

 

The mod evaluates clothing coverage by body region rather than by the entire outfit as a single item. The exposure checks focus on the pawn's torso and legs because those are the body part groups used for top and bottom coverage decisions.

 

A body region counts as covered when at least one worn apparel item covers that body part group and is not treated as an exposed or non protective item. If an item is tagged as Vulnerability_Exposed, it is treated as exposing that body region for coverage checks unless a more specific top or bottom coverage tag is present for the same region. This lets the mod distinguish between genuinely covering clothing, underwear style coverage, skimpy or tight covers, and clothing that is visually present but still effectively exposing the pawn.

 

The mod also supports gender specific coverage requirements. For example, a male pawn may only need legs covered, while a female pawn may require both torso and legs covered before the exposure penalty is ignored. Nudists trait pawns and nudist ideologies can bypass those rules depending on your settings.

 

Apparel Tags

 

  • Apparel tags are used to classify apparel items for exposure and coverage rating.
  • You can manually edit apparel tags using the mod 'Character Editor'.
  • If an apparel item has not been patched, it is considered as a normal apparel item that provides full coverage.
  • Apparel items can have multiple tags.
    • For example a mini dress may have Vulnerability_SkimpyTop and Vulnerability_Exposed (provides skimpy top coverage 'Visible skimpy bottom', and no coverage around the waist). If the pawn is not wearing another apparel item that covers the 'Legs', for example pants, it will be county as 'Exposed nude bottom', but it they are wearing an apparel tagged with Vulnerability_UnderwearBottom, then it will be counted as 'Visible underwear bottom'.

 

Apparel Tags:

Spoiler
  • Vulnerability_Exposed
    • (provides no coverage)
  • Vulnerability_UnderwearTop
    • (apparel examples: bra, bikini top)
  • Vulnerability_UnderwearBottom
    • (apparel examples: panties, briefs)
  • Vulnerability_SkimpyTop
    • (apparel examples: tank top, open chest top or jacket)
  • Vulnerability_SkimpyBottom
    • (apparel examples: skirt or very short shorts)
  • Vulnerability_TightTop
    • (apparel examples: tight shirt or latex top)
  • Vulnerability_TightBottom
    • (apparel examples: leggings or tight pants)
  • Vulnerability_BondageCollar
    • (apparel example: slave collars)
  • Vulnerability_BondageOutfit
    • (apparel example: body strap)
  • Vulnerability_Vest
    • (apparel example: flak vest)
  • Vulnerability_Armor
    • (apparel example: marine armor)

 

 

Required Mods

 

  1. Harmony
  2. RimJobWorld

 

Patched Mods


Patched Apparel Mods:

 

Recommended Mods

 

 

Expands RJW/gameplay around privacy and nudity:

 

Future Plans

From feedback and suggestions:
 

  • Adjust current default mod vulnerability stats (are they to high or to low?)
  • Add more mod patches
  • Add more vulnerability conditions
  • Add new events that can occur for a pawn with low vulnerability, besides the usual...  

 

Mod Development and AI Usage Disclaimer

This mod was made from me, a new mod developer, but as a disclaimer - it was created heavily with the assistance of AI.

Send through any mod related issues, feedback or suggestions.
 

Update Changelogs

 

Spoiler

 

Version 1.0.4
(2026-09-10)
This update expands the mod with new age based vulnerability modifiers, fixes a temperature thought error spam issue, and further improves the mod settings UI and RJW vulnerability stat display.
 
Added:
- Added a new Age vulnerability section to the General settings tab.
  - Includes configurable Young max age and Old min age thresholds.
  - Includes configurable Young and Old vulnerability values.
  - Includes separate gender selectors for young and old age checks.
- Added Age entries to the RJW pawn Vulnerability stat breakdown when active.
 
Changed:
- Reworked the mod settings UI with additional section enable/disable toggles, updated General tab layout, connected tab styling, refreshed subtitle/tab visuals with colors, and added the Enable red labels option.
- Moved Body Type in the General tab to make room for the new Age section.
- Improved the RJW Vulnerability Matters stat breakdown so category totals and modifier lines display more clearly.
 
Fixed:
- Fixed the temperature mood thought null reference error spam that could interfere with the RJW vulnerability stat display.
- Tightened hot and cold vulnerability checks so they now only respond to the intended vanilla temperature mood thoughts.
- Fixed multiple mod settings checkboxes and section toggles so disabled settings can no longer still be changed through direct checkbox interaction.

Version 1.0.3

(2026-09-09)

This update adds mod support for Dubs Bad Hygiene, expands the mod settings layout, and improves clothing and exposure wording along with the RJW pawn Vulnerability stats UI.
 

Added:

- Added mod support for Dubs Bad Hygiene.
  - Added low thirst vulnerability.
  - Added hygiene activity vulnerability for pawns actively showering or bathing, with separate configurable offsets for showers and baths.
- Added a new "Vulnerability Matters - Clothing & Exposure" section to the pawn Vulnerability stat breakdown.
- Added grouped clothing and exposure categories in the stat breakdown for improved readability:
  - Nude Exposure
  - Minimal Coverage
  - Revealing Clothing
  - Protective Gear
  - Bondage Apparel
- Added a new Vulnerabilities settings tab.

Changed:

- Moved the Environment vulnerability modifiers to the new Vulnerabilities settings tab.
- Renamed the mod settings tab Exposure to Clothing & Exposure.
- Renamed the mod settings tab Patches to Apparel Patches.
- Updated the Clothing & Exposure settings tab labels and tooltips.

Fixed:

- Removed leftover underwear debug scan logging and related log spam.

 

Version 1.0.2

(2026-09-08)
 

Added:

- Added body type vulnerability modifiers for Hulk, Thin, and Fat.
- Added equipped ranged weapon vulnerability modifier.
- Added body type and weapon entries (with hyperlinks) to the Vulnerability pawn stats breakdown.
- Added updated tooltips and localized stat lines for new modifiers.

Changed:

- Reworked and cleaned up the mod settings general tab layout and options.
- Updated README.md.

Removed:

- Removed RJW default body type stat visibility while the mod is enabled.
 

Version 1.0.1 

(2026-09-08)
 

Added:
- Added coverage recognition for RJW body parts 'Chest' and 'Genitals'.

- Patched Mod: Vanilla Apparel Expanded Accessories
  - Added apparel tag: Vulnerability_Exposed:
    - VAEA_Apparel_BattleBanner
    - VAEA_Apparel_MiniTurretPack
    - VAEA_Apparel_Quiver

 

Version 1.0.0 

(2026-09-07)

 

Added:
- Initial release of Vulnerability Matters.
- Configurable vulnerability modifiers for gender, combat capability, melee skill, exposure, and darkness.
- Apparel tag system for body coverage, underwear, skimpy, tight, bondage, and protection categories, including Vulnerability_Exposed, Vulnerability_UnderwearTop, Vulnerability_UnderwearBottom, Vulnerability_SkimpyTop, Vulnerability_SkimpyBottom, Vulnerability_TightTop, Vulnerability_TightBottom, Vulnerability_BondageCollar, Vulnerability_BondageOutfit, Vulnerability_Vest, and Vulnerability_Armor.
- Compatibility patch support for supported apparel mods.
- Pawn vulnerability stat explanation breakdown with aggregated totals and item links for applicable apparel.
- Mod settings UI with grouped controls and tooltips.
- Localization split for settings, patches, and pawn stat explanations.

Changed:
- Expanded RJW vulnerability handling beyond base values with mod driven tuning.
- Added tag based compatibility checks across supported apparel packs.

Notes:
- Requires Harmony and RimJobWorld.
- Compatible with supported patched apparel mods listed in the README.

 


  • Submitter
  • Submitted
    09/07/26
  • Category
  • Requirements
    Rimworld 1.6, Harmony, RimJobWorld
  • Install Instructions

    Same install process used for all other mods:

    • Download ZIP folder > Extract > 'Vulnerability-Matters' folder outside of the first layer 'Vulnerability-Matters' folder.
    • Place the 'Vulnerability-Matters' folder in your Rimworld Mods folder.
    • Ensure that the install path is: Rimworld/Mods/Vulnerability-Matters
      • (this folder will show all the files and folders, such as: LICENCE, README, CHANGELOG, LoadFolders, 1.6 and About)

     

    • The mod can be safely added or removed mid save and does not require a new game.

     

    Mod Load Order:

    • Harmony (required)
    • RimJobWorld (required)
    • Patched mods (recommended but not required)
    • Vulnerability Matters

 

Edited by Dharkx
  • Dharkx changed the title to [mod] Vulnerability Matters
Posted

Hi all,

First mod I've posted here.

Please send through any feedback for current content, or suggestions for new content!

Posted

Looks really cool, but it just expands how vulnurability is computed right? This mod doesn't add anything mechanic wise, right?

Posted (edited)
11 hours ago, DaMan1 said:

Looks really cool, but it just expands how vulnurability is computed right? This mod doesn't add anything mechanic wise, right?

 

Yep correct.

The current state of the mod essentially only adds new pawn vulnerability modifiers to make a pawn more or less vulnerable based on the extensive list of adjustable new modifiers added (all listed in the Default Mods Settings section), which also includes consideration for a pawn's apparel and body being exposed.

New gameplay mechanics for actions against pawns with low vulnerability may potentially be added in the future, based on any interesting feedback or suggestions that I could look at implementing.

Edited by Dharkx
Posted
7 hours ago, Dharkx said:

 

New gameplay mechanics for actions against pawns with low vulnerability may potentially be added in the future, based on any interesting feedback or suggestions that I could look at implementing.

 

From the few years of playing RJW with rape enabled I sometimes noticed scenarios simulating Defeat Rape:

Once everyone on side in a large battle went down, a victor or 2 would automatically rape a loser.

But it felt like it became more unreliable over time, either from me trying to mess with RJW settings or RJW updates during Rimworld DLC Expansion.

It feels like it's now either related to the Rapist Trait or Precept/Meme or Winning Enemy Mechs to ever get it going off. It never triggered if the player colonists were the winning side.

 

Maybe that might spark something for you, like say downed (Which I thought was probably the main reason why it happened for me) or shackled/arrested, or some kind of combat defeat Ideology precept

Posted
20 hours ago, McLovin3 said:

 

From the few years of playing RJW with rape enabled I sometimes noticed scenarios simulating Defeat Rape:

Once everyone on side in a large battle went down, a victor or 2 would automatically rape a loser.

But it felt like it became more unreliable over time, either from me trying to mess with RJW settings or RJW updates during Rimworld DLC Expansion.

It feels like it's now either related to the Rapist Trait or Precept/Meme or Winning Enemy Mechs to ever get it going off. It never triggered if the player colonists were the winning side.

 

Maybe that might spark something for you, like say downed (Which I thought was probably the main reason why it happened for me) or shackled/arrested, or some kind of combat defeat Ideology precept


"Combat defeat" is an idea I was already thinking about implementing in some way in the future. So good idea to bring up.

I'll write down your ideas including for the "
combat defeat Ideology precept" and "colonists being on the winning side".

Posted
13 hours ago, DeadSomething said:

it doesn't create subfolders, it creates botched unreadable files all in the main folder

Screenshot_20260909_200243.jpg

13 hours ago, DeadSomething said:

the folder tree in the 1.0.3 update is botched.

 


Odd. I don't see this issue on my end and I have just re-downloaded v1.0.3 from the site.

Extract path is Vulnerability-Matters-v1.0.3\Vulnerability-Matters

Are you still having this issue? If yes try again if you haven't already, or try extracting the folders through another method. If still having issues, does v1.0.2 work fine? I did change the .zip name/folders in the upload from v1.0.2 > v1.0.3.

No one else has reported any download or file issues for v1.0.3 or any version as of yet.

Screenshot 2026-09-10 171848.png

Posted

it worked fine with the previous version.
i already tried two different tools for extraction (Ark and Archive Manager) which i also used for all other mods i manually downloaded.
i'll redownload now and see if it works now.

Posted
42 minutes ago, DeadSomething said:

it worked fine with the previous version.
i already tried two different tools for extraction (Ark and Archive Manager) which i also used for all other mods i manually downloaded.
i'll redownload now and see if it works now.


I've just released a new version of the mod (v1.0.4) which has added/changed a few things.

You can try again and see how it goes. If it still doesn't work as you expect it to for those extraction software's, try rename the .zip to "Vulnerability-Matters" and retry.
 

Posted

could you add single gender race and gene lists to StatPart_Gender for ignoring race/pawn with gene plus inverted for flipping values

both rjw genes and alpha genes add single gender genes, various HAR races are single gender

        public List<string> SingleGenderRace = new List<string>();
        public List<string> SingleGenderGene = new List<string>();
        public List<string> InvertedRace = new List<string>();
        public List<string> InvertedGene = new List<string>();
        // replace sMale, sFemale and sEnable with your settings
        public bool ActiveFor(Pawn pawn, out float amount)
        {
            var sFemale = 110;
            var sMale = 90;
            var sEnable = true;
            var statPart = RJWStatDefOf.Vulnerability.GetStatPart<StatPart_Gender>();
            amount = 1f;
            if (pawn == null || !sEnable) return false;
            var SGenR = statPart.SingleGenderRace ?? new List<string>();
            var SGenG = statPart.SingleGenderGene ?? new List<string>();
            if (SGenR.Contains(pawn.def.defName)) return false;
            else if (pawn.genes != null)
            {
                foreach (var g in SGenG)
                {
                    var gDef = DefDatabase<GeneDef>.GetNamedSilentFail(g);
                    if (gDef == null) continue;
                    if (pawn.genes.HasActiveGene(gDef)) return false;
                }
            }
            var invert = false;
            var InvR = statPart.InvertedRace ?? new List<string>();
            var InvG = statPart.InvertedGene ?? new List<string>();
            if (InvR.Contains(pawn.def.defName)) invert = true;
            else if (pawn.genes != null)
            {
                foreach (var g in InvG)
                {
                    var gDef = DefDatabase<GeneDef>.GetNamedSilentFail(g);
                    if (gDef == null) continue;
                    if (pawn.genes.HasActiveGene(gDef))
                    {
                        invert = true;
                        break;
                    }
                }
            }
            var tmp = 1f;
            switch (pawn.gender)
            {
                case Gender.Male:
                    tmp = invert ? sFemale : sMale; break;
                case Gender.Female:
                    tmp = invert ? sMale : sFemale; break;
            }
            if (Mathf.Approximately(tmp, 0)) return false;
            if (Mathf.Abs((float)(tmp * 0.01) - 1) < 0.01f) return false;
            amount = tmp;
            return true;
        }

rjw addition already adds a more advanced vulnerability by age which accounts for HAR and VRE androids

    really old are more vulnerable and really young are exponentially more vulnerable

Posted (edited)
19 hours ago, Dharkx said:


I've just released a new version of the mod (v1.0.4) which has added/changed a few things.

You can try again and see how it goes. If it still doesn't work as you expect it to for those extraction software's, try rename the .zip to "Vulnerability-Matters" and retry.
 

thanks, will do and report back

EDIT: yep, that looks much better :)

Screenshot_20260911_114117.jpg

Edited by DeadSomething
Posted
3 hours ago, DeadSomething said:

thanks, will do and report back

EDIT: yep, that looks much better :)

Screenshot_20260911_114117.jpg


good to see. If you have any future issues with anything let me know

Posted
14 hours ago, ESeeker said:

could you add single gender race and gene lists to StatPart_Gender for ignoring race/pawn with gene plus inverted for flipping values

both rjw genes and alpha genes add single gender genes, various HAR races are single gender

        public List<string> SingleGenderRace = new List<string>();
        public List<string> SingleGenderGene = new List<string>();
        public List<string> InvertedRace = new List<string>();
        public List<string> InvertedGene = new List<string>();
        // replace sMale, sFemale and sEnable with your settings
        public bool ActiveFor(Pawn pawn, out float amount)
        {
            var sFemale = 110;
            var sMale = 90;
            var sEnable = true;
            var statPart = RJWStatDefOf.Vulnerability.GetStatPart<StatPart_Gender>();
            amount = 1f;
            if (pawn == null || !sEnable) return false;
            var SGenR = statPart.SingleGenderRace ?? new List<string>();
            var SGenG = statPart.SingleGenderGene ?? new List<string>();
            if (SGenR.Contains(pawn.def.defName)) return false;
            else if (pawn.genes != null)
            {
                foreach (var g in SGenG)
                {
                    var gDef = DefDatabase<GeneDef>.GetNamedSilentFail(g);
                    if (gDef == null) continue;
                    if (pawn.genes.HasActiveGene(gDef)) return false;
                }
            }
            var invert = false;
            var InvR = statPart.InvertedRace ?? new List<string>();
            var InvG = statPart.InvertedGene ?? new List<string>();
            if (InvR.Contains(pawn.def.defName)) invert = true;
            else if (pawn.genes != null)
            {
                foreach (var g in InvG)
                {
                    var gDef = DefDatabase<GeneDef>.GetNamedSilentFail(g);
                    if (gDef == null) continue;
                    if (pawn.genes.HasActiveGene(gDef))
                    {
                        invert = true;
                        break;
                    }
                }
            }
            var tmp = 1f;
            switch (pawn.gender)
            {
                case Gender.Male:
                    tmp = invert ? sFemale : sMale; break;
                case Gender.Female:
                    tmp = invert ? sMale : sFemale; break;
            }
            if (Mathf.Approximately(tmp, 0)) return false;
            if (Mathf.Abs((float)(tmp * 0.01) - 1) < 0.01f) return false;
            amount = tmp;
            return true;
        }

rjw addition already adds a more advanced vulnerability by age which accounts for HAR and VRE androids

    really old are more vulnerable and really young are exponentially more vulnerable


hello. I don't really play with any different gender types/races/genes from vanilla, so trying to understand this.
 

To confirm, are you asking for this exact behavior in the Vulnerability gender stat part?
 

- If a pawn’s race defName is in the “SingleGenderRace” list, ignore the gender multiplier completely
- If a pawn has an active gene from the “SingleGenderGene” list, ignore the gender multiplier completely
- If a pawn’s race defName is in the “InvertedRace” list, swap the male/female percentages
- If a pawn has an active gene from the “InvertedGene” list, swap the male/female percentages
- Otherwise, use the normal Gender Male/Female percentages from the mod settings

Also, are you asking for this to be just hardcoded values in the stat part itself, or also to be implemented as mod setting lists using defNames?

Posted
4 hours ago, Dharkx said:


hello. I don't really play with any different gender types/races/genes from vanilla, so trying to understand this.
 

To confirm, are you asking for this exact behavior in the Vulnerability gender stat part?
 

- If a pawn’s race defName is in the “SingleGenderRace” list, ignore the gender multiplier completely
- If a pawn has an active gene from the “SingleGenderGene” list, ignore the gender multiplier completely
- If a pawn’s race defName is in the “InvertedRace” list, swap the male/female percentages
- If a pawn has an active gene from the “InvertedGene” list, swap the male/female percentages
- Otherwise, use the normal Gender Male/Female percentages from the mod settings

Also, are you asking for this to be just hardcoded values in the stat part itself, or also to be implemented as mod setting lists using defNames?

not hardcoded since certain HAR mods have unofficial addon mods that enable/disable single gender

HAR races I use/found:

    <li Class="dharkx.rjw.vulnerability.matters.StatPart_VulnerabilityAge">
        <SingleGenderRace>
            <li>Moosesian</li><li>Alien_Miho</li><li>Yuran_Race</li><li>MeowKurin</li>
            <li>VV_Vivi</li><li>Arachne</li>
            <li>Alien_Mucus</li><li>Rjw_Slime_Blue</li>
            <li>Alien_Moyo</li> <!-- 'Moyo2.0-Blood stained business' Alien_Moyo appear to have low sexual dimorphism(with RJW Addition reduces it further) -->
            <li MayRequire="qyt.patch.GloomyDragonian">Dragonian_Race</li> <!--'only female gloomy dragonian'(qyt.patch.GloomyDragonian) makes Dragonian_Race female only-->
            <li>Anty</li><li>AT_Hiveguard</li><li>AT_dreadnought</li><li>AT_Oppressor</li><li>AT_Lacerator</li><li>AT_TriJaw</li> <!-- 'Anty the war ant race' warmonger ant-girls, integrated RJW compatibility with base Vulnerability at 0.5 -->
        </SingleGenderRace>
        <SingleGenderGene>
            <li>rjw_genes_female_only</li><li>rjw_genes_male_only</li>
            <li>AG_Female</li><li>AG_Male</li>
            <li>VREA_AG_Female</li><li>VREA_AG_Male</li> <!-- VRE Android prefixes genes with 'VREA_' -->
        </SingleGenderGene>
        <InvertedRace>
            <li>Rakkle</li> <!-- 'Rakkle (unofficial update)' males appear(thumbnail) similar with female clothes(bikini) -->
        </InvertedRace>
        <InvertedGene />
    </li>

 

mods enabling males for female only race: 'Male <Maru/Ratkin/Rabbie>' for <Maru/Ratkin/Rabbie>, 'Male Kurin'(id: odysseylotus.malekurin) for Kurin_Race(Kurin HAR Edition),

    'Male Wolfein Continue' for Wolfein_Race, 'Male <Kiiro/Milira> Expanded'(femboy, virtually identical to female) for '<Kiiro/Milira>_Race'

    <!-- replace 'Male Race Mod' with each of the 7 male mods and 'Race Name' with respective race -->
    <Operation Class="PatchOperationFindMod">
    <mods>
        <li>Male Race Mod</li>
    </mods>
    <nomatch Class="PatchOperationAdd">
        <xpath>Defs/StatDef[defName="Vulnerability"]/parts/li[@Class="dharkx.rjw.vulnerability.matters.StatPart_VulnerabilityAge"]/SingleGenderRace</xpath>
        <value>
            <li>Race Name</li>
        </value>
    </nomatch>
    </Operation>

 

anties(all types), dragonian, ratkin(female), rabbie(female) use thin as default bodytype

Posted

Loved how you hid the AI disclaimer in the fine print, you'll go far in corporate America!!!  But for real, was pretty pumped until I got to that, since this is both a pretty relevant mod, but also a mod that can easily drop TPM to near 0... does this mod at least cache the vulnerability values until a change to reduce checks?

Posted
On 9/12/2026 at 7:04 PM, ESeeker said:

not hardcoded since certain HAR mods have unofficial addon mods that enable/disable single gender

HAR races I use/found:

    <li Class="dharkx.rjw.vulnerability.matters.StatPart_VulnerabilityAge">
        <SingleGenderRace>
            <li>Moosesian</li><li>Alien_Miho</li><li>Yuran_Race</li><li>MeowKurin</li>
            <li>VV_Vivi</li><li>Arachne</li>
            <li>Alien_Mucus</li><li>Rjw_Slime_Blue</li>
            <li>Alien_Moyo</li> <!-- 'Moyo2.0-Blood stained business' Alien_Moyo appear to have low sexual dimorphism(with RJW Addition reduces it further) -->
            <li MayRequire="qyt.patch.GloomyDragonian">Dragonian_Race</li> <!--'only female gloomy dragonian'(qyt.patch.GloomyDragonian) makes Dragonian_Race female only-->
            <li>Anty</li><li>AT_Hiveguard</li><li>AT_dreadnought</li><li>AT_Oppressor</li><li>AT_Lacerator</li><li>AT_TriJaw</li> <!-- 'Anty the war ant race' warmonger ant-girls, integrated RJW compatibility with base Vulnerability at 0.5 -->
        </SingleGenderRace>
        <SingleGenderGene>
            <li>rjw_genes_female_only</li><li>rjw_genes_male_only</li>
            <li>AG_Female</li><li>AG_Male</li>
            <li>VREA_AG_Female</li><li>VREA_AG_Male</li> <!-- VRE Android prefixes genes with 'VREA_' -->
        </SingleGenderGene>
        <InvertedRace>
            <li>Rakkle</li> <!-- 'Rakkle (unofficial update)' males appear(thumbnail) similar with female clothes(bikini) -->
        </InvertedRace>
        <InvertedGene />
    </li>

 

mods enabling males for female only race: 'Male <Maru/Ratkin/Rabbie>' for <Maru/Ratkin/Rabbie>, 'Male Kurin'(id: odysseylotus.malekurin) for Kurin_Race(Kurin HAR Edition),

    'Male Wolfein Continue' for Wolfein_Race, 'Male <Kiiro/Milira> Expanded'(femboy, virtually identical to female) for '<Kiiro/Milira>_Race'

    <!-- replace 'Male Race Mod' with each of the 7 male mods and 'Race Name' with respective race -->
    <Operation Class="PatchOperationFindMod">
    <mods>
        <li>Male Race Mod</li>
    </mods>
    <nomatch Class="PatchOperationAdd">
        <xpath>Defs/StatDef[defName="Vulnerability"]/parts/li[@Class="dharkx.rjw.vulnerability.matters.StatPart_VulnerabilityAge"]/SingleGenderRace</xpath>
        <value>
            <li>Race Name</li>
        </value>
    </nomatch>
    </Operation>

 

anties(all types), dragonian, ratkin(female), rabbie(female) use thin as default bodytype


v1.0.5 released.

Soo ive made an attempt for this and have updated StatPart_Gender and StatPart_Age to include the below and more

Let me know if this helps with what you were asking for and works after your tests so you / other modders can create patches. If it doesn't, if you let me know exactly what you need on my end and I can then try make another attempt at some stage later
 

        public List<string> SingleGenderRace = new List<string>();
        public List<string> SingleGenderGene = new List<string>();
        public List<string> InvertedRace = new List<string>();
        public List<string> InvertedGene = new List<string>();
Posted
18 hours ago, ghostfalll said:

Loved how you hid the AI disclaimer in the fine print, you'll go far in corporate America!!!  But for real, was pretty pumped until I got to that, since this is both a pretty relevant mod, but also a mod that can easily drop TPM to near 0... does this mod at least cache the vulnerability values until a change to reduce checks?


I could give you a corporate response about the AI disclaimer.. but i've decided to add one final disclaimer at the top of the mod so its very clear, for those who may be concerned...

Also in my tests I never experienced any performance related issues from this mod, but I have done an optimization update! Let me know how it runs for you now - v1.0.5

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...