About This File
# RJW — Robotic Genitals Redux
RJW — Robotic Genitals Redux is a content mod that introduces **11 robotic sex organs** designed for VRE Android colonists: three tiers of breast, penis, and vagina, plus two tiers of anus. It bridges **RimJobWorld**, **Vanilla Races Expanded — Android**, and **Equal Milking** into a single, cohesive package, giving your android pawns functional reproduction, resource production, and a child growth-acceleration system.
---
## What This Mod Adds
### Robotic Breasts
Three tiers of surgically installed breast implants. Each replaces the natural breast and adds tier-specific capabilities.
#### T1 — Robotic Breast
- Armoured appearance.
- No lactation. No milk product.
- Functions purely as a cosmetic and protective body part.
#### T2 — Advanced Robotic Breast
- Enters lactation on install; exits lactation on removal.
- **Produces chemfuel** passively through a hediff comp.
- **Cannot breastfeed directly** — infants are turned away with an on-screen message.
- Compatible with Equal Milking: when milked via Equal Milking's system, the output is **chemfuel** instead of standard milk.
#### T3 — Archotech Robotic Breast
- Enters lactation on install; exits lactation on removal.
- **Allows direct breastfeeding.**
- Produces **T3 Growth Milk**, a unique substance that accelerates child growth.
- Compatible with Equal Milking: when milked via Equal Milking's system, the output is **T3 Growth Milk** bottles.
---
### Robotic Penises
Three tiers of surgically installed penile implants that replace the natural organ.
#### T1 — Robotic Penis
- Cosmetic. Infertile. Provides basic body-part coverage but no reproductive or ability-based function.
#### T2 — Advanced Robotic Penis
- Grants the **Neutroamine Injection** ability — heal a partner through sexual intercourse.
#### T3 — Archotech Robotic Penis
- Grants the **Clone Female** ability: clones the target female's genome into herself, guaranteeing pregnancy. Requires the target to have an unfertilised ovum.
---
### Robotic Vaginas
Three tiers of surgically installed vaginal implants.
#### T1 — Robotic Vagina
- Cosmetic. Infertile.
#### T2 — Advanced Robotic Vagina
- Two built-in abilities:
1. **Turn Semen to Neutroamine** — converts semen currently stored in the womb (from RJW sexual interactions) into neutroamine, at a 1:20 ratio per unit of semen.
2. **Convert Semen Filth to Neutroamine** — a targeted area ability: select any cell within 10 tiles; the ability scans a 3-tile radius around it for `FilthCum` and `FilthGirlCum` filth on the ground and converts each stack into 1 neutroamine at a 1:1 ratio. Casting takes 180 ticks (3 seconds) with no cooldown.
- Infertile. Cannot become pregnant.
#### T3 — Archotech Robotic Vagina
- Grants the **Clone Male** ability: clones the genome of a target male into the user, guaranteeing pregnancy. The target must be capable of ejaculation and fertile.
---
### Robotic Anuses
Two tiers of surgically installed anal implants.
#### T1 — Robotic Anus
- Cosmetic appearance. Light armour coverage.
#### T2 — Advanced Robotic Anus
- Vibrating, self-lubricating design.
- Grants sexual satisfaction bonuses after anal intercourse.
There is **no T3 anus** in the current version.
---
### Summary — All 11 Organs at a Glance
| Body Part | T1 | T2 | T3 |
|-----------|:--:|:--:|:--:|
| **Breast** | Cosmetic + armour; no lactation | Lactation + chemfuel production; no breastfeeding; Equal Milking → chemfuel | Lactation + breastfeeding; T3 Growth Milk; Equal Milking → T3 Growth Milk |
| **Penis** | Cosmetic; infertile | Neutroamine Injection ability | Clone Female ability |
| **Vagina** | Cosmetic; infertile | Turn Semen to Neutroamine + Convert Semen Filth to Neutroamine abilities; infertile | Clone Male ability |
| **Anus** | Cosmetic + light armour | Vibrating; anal sex satisfaction bonus | — *(not yet implemented)* |
---
## T3 Growth Milk — Full Mechanics
T3 Growth Milk is a consumable substance produced by T3 Archotech Robotic Breasts, available both as a **bottled drinkable item** and through **direct breastfeeding**.
### The Growth Boost Hediff
When consumed by a pawn whose **base aging rate exceeds 100%** (i.e., a child still undergoing accelerated biological aging), a `T3 Growth Boost` hediff is applied with a remaining duration proportional to the dose. While active, three stats are **doubled (×2):**
| Stat | Where to See It | Applies To |
|------|----------------|-------------|
| **Aging rate** | Pawn Information tab → "Aging rate" | All child pawns and animal juveniles |
| **Learning efficiency** | Pawn Information tab → "Learning efficiency" | Only pawns with a Learning need (human children aged 3–13) |
| **Daily growth points** | Child Growth Rating tab → "+N / day" | Only pawns with a Learning need (human children aged 3–13) |
### Dosing
| Intake Method | Duration per Unit of Milk |
|---------------|:-------------------------:|
| Drinking a bottled T3 Growth Milk item | **2 hours** |
| Breastfeeding directly from a T3 breast | **4 hours** (double the bottled rate) |
- **Stacking:** drinking multiple bottles or multiple breastfeeding sessions adds the hediff time cumulatively. There is no upper limit.
- **Hediff severity bar:** always shows 100% (the bar is a visual placeholder). Actual remaining time is displayed in brackets next to the hediff label, e.g. `T3 growth boost [3.2 hours]`.
- **Float-precision timer:** time is stored and calculated as a floating-point number — the display shows decimals such as "2.15剂 / 8.6 hours."
### Robustness: Auto-Removal When Aging Rate Returns to 100%
When a pawn's **base aging rate** (before the ×2 multiplier) drops to 1.0 (i.e., they reach biological adulthood at age 20 under default difficulty settings), the `T3 Growth Boost` hediff is **automatically removed** and a notification message is shown. This prevents the hediff from lingering on adult pawns who no longer benefit from accelerated growth.
If a pawn is later de-aged (e.g., through dev tools or mod mechanics) so that their base aging rate rises above 100% again, the hediff can be re-applied through a fresh dose of T3 Growth Milk.
### Adults (Aging Rate = 100%)
If a pawn whose base aging rate is already 100% (a full adult) consumes T3 Growth Milk, **no hediff is applied**. A message informs the player that the aging rate is already 100% and the milk has no effect.
### Animals
Animals receive only the aging-rate doubling. They do not have the Learning need, so learning-efficiency and growth-point boosts are skipped. Messages adapt accordingly and do not mention inapplicable effects.
### On-Screen Messages
Every consumption event produces one or two locale-aware messages in the top-left message area:
- **Bottled consumption:** one message — who drank, how many bottles, duration, and which effects apply (adapted to whether the pawn has a Learning need).
- **Breastfeeding:** two messages — first a grey informational line showing milk quantities before feeding, after feeding, and the net amount consumed; then a green notification with the dose, duration, and effects.
All messages are fully translated across the mod's six supported languages.
---
## T2 Vagina — Semen-to-Neutroamine System
The T2 Advanced Robotic Vagina provides two distinct neutroamine-generation pathways:
### Womb Conversion — "Turn Semen to Neutroamine"
- Uses an RJW-style ability (`Verb_CastAbility`).
- Converts semen currently stored in the wielder's womb (from RJW Menstruation Cycle) into neutroamine at a ratio of **5% womb capacity = 1 neutroamine**.
- The ability is targeted on the wielder herself.
### Filth Sweeping — "Convert Semen Filth to Neutroamine"
- Also uses an RJW-style ability, but functions as a **targeted area ability** (`Verb_CastAbilityOnCell`).
- The player selects any cell within a **10-tile range**. The ability scans a **3-tile radius** around the selected cell for `FilthCum` and `FilthGirlCum`.
- **Every filth stack found is converted into 1 neutroamine** at a 1:1 ratio.
- The caster spends **180 ticks** (3 seconds at normal speed) performing the conversion. A progress bar fills, and white highlight circles preview the affected area during targeting.
- No cooldown — it can be used repeatedly as long as filth exists.
- Prior to casting, the ability checks whether any valid semen filth exists in the targeted area; if none is found, the player is notified before wasting the cast.
---
## T2 Penis — Neutroamine Injection Ability
The T2 Advanced Robotic Penis grants the **Neutroamine Injection** ability, which heals a sex partner through the act of intercourse. The ability triggers during RJW sexual interactions. Only the T2 or higher robotic penis can use this ability.
---
## T3 Penis & Vagina — Cloning System
T3 reproductive organs carry the **gene-dominant** trait: any offspring produced inherits the android xenotype exclusively, overriding the other parent's genetic contribution. Each T3 organ provides a targeted cloning ability.
### T3 Penis — Clone Female
- Clones the target female's genome into herself.
- The target female becomes pregnant with a clone of herself.
- **Requirement:** the target female must have an unfertilised ovum present.
- Guaranteed fertilisation — no random chance.
### T3 Vagina — Clone Male
- The wielder clones the genome of a target male pawn into themselves.
- The wielder becomes pregnant with a clone of the target.
- **Requirements:** the target male must be capable of ejaculation and be fertile.
- Guaranteed fertilisation — no random chance.
---
## VRE Android Integration
This mod patches several VRE Android systems to prevent human-genitalia bleed-through and ensure robotic genitalia function correctly. The integration is automatic and requires no player configuration.
### 1. Hydraulic Genitalia on Generation (Patch 4)
**VRE Android pawns no longer spawn with human genitals — they receive hydraulic genitals.**
When a VRE Android pawn is generated, the `rjw_genes_hydrolic_genitalia` gene is added **after** the pawn's xenotype is fully applied. This triggers `Gene_GenitaliaType.PostAdd()`, which calls `ChangeGenitalia()` to automatically replace any natural genitals with hydraulic counterparts. The gene is injected dynamically rather than hardcoded into the xenotype def, which avoids conflicts with other mods that modify VRE xenotypes.
### 2. Gender Reassignment Surgery Protection (Patch 11)
**VRE Android pawns no longer receive "was male" / "was female" sex-change hediffs when generating or installing genital parts.**
When a VRE Android undergoes surgery that swaps body parts, VRE's gender-change system attempts to add `hediff_was_xxx` tags, which would revert the android's mechanical genitals to biological human parts. Patch 11 intercepts these tags at the `GenderHelper.ChangeSex(Pawn, Sex, Sex)` level, specifically on the `Recipe_InstallPart` code path, keeping the android mechanical.
### 3. Hediff Tag Blocking (Patch 10)
**VRE Android pawns no longer enter lactation through childbirth or drugs. Lactation is now triggered by installing a T2 or T3 robotic breast, and ends on removal.**
At the lowest hediff-application level (`HediffSet.AddDirect`), four `hediff_was_*` gender-change tags and five `Lactating*` lactation hediffs are blocked from being applied to VRE Androids. **Exception:** when the android has T2 or T3 robotic breasts installed, the `Lactating` hediff is permitted so that milk production works. This exception is checked dynamically based on the pawn's installed hediffs.
### 4. Hidden Synthetic Part Prevention (Patch 8)
**Prevents synthetic genitals and hydraulic genitals from simultaneously spawning on VRE Android pawns.**
VRE Android's `GetAndroidCounterPart` normally adds hidden synthetic counterparts to `Genitals`, `Chest`, and `Anus` body parts. Patch 8 returns `null` for those specific body-part slots, preventing hidden synthetic parts from being created on androids wearing robotic genitals.
### 5. Natural Birth Gene Leakage Fix (Patch 3)
**Prevents cloned babies from inheriting the VRE Android parent's Xenotype and PawnKind.**
Without intervention, VRE Android mothers would pass human genetics to their babies during Biotech childbirth. Patch 3 intercepts `PregnancyUtility.ApplyBirthOutcome` and, when the birthing pawn is a VRE Android, replaces the `geneticMother` with the father so the baby inherits the android parent's xenotype.
---
## Equal Milking Integration
### Lactation Management (Patches 12 & 13)
- **Installing** a T2 or T3 robotic breast → adds the `Lactating` hediff (monitored at the `HediffSet.AddDirect` level).
- **Removing** the last robotic breast → removes the `Lactating` hediff (monitored at the `Pawn_HealthTracker.RemoveHediff` level).
- State-driven: the system checks "does this pawn currently have any T2 or T3 breasts?", not "was a surgery just performed?"
### Milk Product Override (Patch 15)
- **T2 breasts** → Equal Milking's `GetMilkProductDef` returns **chemfuel**.
- **T3 breasts** → returns **T3 Growth Milk**.
- If neither is present, Equal Milking's default product is unchanged.
### Breastfeeding Interception (Patch 14d)
A combined Prefix + Postfix on `EqualMilking.ChildcareHelper.SuckleFromLactatingPawn`:
- **Prefix:** if the feeder has T2 breasts, breastfeeding is **blocked** entirely (`return false`), and an on-screen message informs the player. If T3 breasts are present, the current milk fullness is recorded.
- **Postfix:** after a successful T3 breastfeeding session, the consumed milk amount is calculated from the fullness delta (`milkBefore − milkAfter`). A T3 Growth Boost hediff is applied at **4 hours per unit of milk consumed** (double the bottled rate). A two-line message is shown: a grey milk-amount summary, then a green effect notification.
---
## Surgery Recipe Fixes
All robotic organ installation surgeries originally had **double skill requirements**: the XML defined a `Crafting` skill requirement on top of the inherited `Medicine` requirement from the parent recipe template (`RJW_Recipe_PartBase`). Both skill checks had to pass simultaneously, making surgeries harder than intended. The redundant `Crafting` requirement has been removed; surgeries now require only the `Medicine` skill.
---
## Full Harmony Patch Reference
| # | Target Method | Type | Purpose |
|:--|------|:--:|------|
| 1 | `CompGatheringSpot.Tick` | Transpiler | Gathering spot compatibility |
| 2 | `CompPowerTrader.SetUpPowerSupply` | Transpiler | Power supply compatibility |
| 3 | `PregnancyUtility.ApplyBirthOutcome` | Prefix | VRE Android gene leakage fix — replaces genetic mother with father |
| 4 | VRE Android `GeneratePawn` | Postfix | Adds hydraulic genitalia gene to VRE Androids on generation |
| 5 | `DevelopmentHelper.CalculateBodyPartDevelopment` | Prefix | VRE Android breast/penis size locked to 1f |
| 6 | `ExUtil.CalculateFertility` | Prefix | VRE Android fertility preserved at original value |
| 7 | `PawnCapacityWorker_Fertility.CalculateCapacityLevel` | Prefix | VRE Android RJW fertility clamped to 0 |
| 8 | VRE Android `GetAndroidCounterPart` | Prefix | Blocks hidden synthetic genital/chest/anus parts on VRE Androids |
| 9 | — *(removed)* | — | Was a `GenderHelper.ChangeSex(Pawn, Action)` Prefix; removed because it inadvertently blocked valid organ-swap surgeries |
| 10 | `HediffSet.AddDirect` | Prefix | Blocks `hediff_was_*` and `Lactating*` tags on VRE Androids (except Lactating when T2/T3 breasts are present) |
| 11 | `GenderHelper.ChangeSex(Pawn, Sex, Sex)` | Prefix | Blocks sex-change tags on the `Recipe_InstallPart` code path for VRE Androids |
| 12 | `HediffSet.AddDirect` | Postfix | T2/T3 robotic breast installed → adds `Lactating` hediff |
| 13 | `Pawn_HealthTracker.RemoveHediff` | Postfix | Last T2/T3 robotic breast removed → removes `Lactating` hediff |
| 14a | `Pawn_AgeTracker.BiologicalTicksPerTick` (getter) | Postfix | T3 Growth Boost → ×2 aging rate; auto-removes hediff when base aging rate reaches 100% |
| 14b | `Pawn_AgeTracker.GrowthPointsPerDayAtLearningLevel` (getter) | Postfix | T3 Growth Boost → ×2 daily growth points (Learning-need pawns only) |
| 14c | `Pawn_AgeTracker.CalculateGrowth` | Postfix | T3 Growth Boost → ×2 actual growth accumulation (Learning-need pawns only) |
| 14d | `EqualMilking.ChildcareHelper.SuckleFromLactatingPawn` | Prefix + Postfix | T2 breasts → block breastfeeding; T3 breasts → apply T3 Growth Boost at 4h per unit of milk |
| 15 | `EqualMilking.EqualMilkingSettings.GetMilkProductDef` | Postfix | T2 breasts → milk product = chemfuel; T3 breasts → milk product = T3 Growth Milk |
---
## Localisation
Six languages are fully supported. All organ names, descriptions, ability labels, ability descriptions, surgery labels, and on-screen runtime messages are translated.
| Language | Coverage |
|----------|:--------:|
| **English** | Full |
| **简体中文 (Simplified Chinese)** | Full |
| **繁體中文 (Traditional Chinese)** | Full |
| **日本語 (Japanese)** | Full |
| **한국어 (Korean)** | Full |
| **Русский (Russian)** | Full |
---
## Dependencies
### Hard Dependencies (must be installed — the mod will not load without them)
| Mod | packageId |
|-----|-----------|
| **Harmony** | `brrainz.harmony` |
| **Vanilla Races Expanded — Android** | `vanillaracesexpanded.android` |
| **RimJobWorld** | `rim.job.world` |
| **RJW Genes** | `Vegapnk.rjw.genes` |
| **Equal Milking** | `EqualMilking` |
### Soft Dependencies (load-after ordering only; the mod works without them)
| Mod | packageId | Purpose |
|-----|-----------|---------|
| **RimNudeWorld** | `shauaputa.rimnudeworld` | Load order compatibility |
| **Sized Apparel** | `otyoty.sizedapparel` | Load order compatibility |
| **RJW Menstruation Cycle** | `rjw.menstruation` | Load order compatibility |
---
## Installation
1. Subscribe to all five hard-dependency mods on the Steam Workshop (or install them manually).
2. Subscribe to this mod, or download the release and place the `RJW - Robotic Genitals Redux` folder inside your RimWorld `Mods` directory.
3. Enable the mod in RimWorld's mod menu. Ensure it loads **after** all its hard dependencies. The mod's `About.xml` declares `loadAfter` rules for all dependencies, so the game should order it correctly by default.
4. Start or load a save. The mod is safe to add mid-save.
---
# RJW — Robotic Genitals Redux(中文介绍)
RJW — Robotic Genitals Redux 是一个内容模组,为 VRE Android 殖民者添加了 **11 件机械性器官**——乳房、阴茎、阴道各有三个等级,肛门有两个等级。它让你的仿生人拥有克隆、资源产出和儿童成长加速系统。
---
## 模组添加了什么
### 机械乳房
三个等级的机械乳房。每个等级提供不同能力。
#### T1 — 机械乳房
- 外观和护甲。
- 无泌乳,无产物。
- 纯外观和防护性身体部件。
#### T2 — 中级机械乳房
- 装入后进入哺乳期,卸下后退出。
- **被动产出化合燃料**
- **禁止直接哺乳**
- 兼容 Equal Milking:通过 Equal Milking 挤奶系统获得的产物是 **化合燃料**。
#### T3 — 顶级机械乳房
- 装入后进入哺乳期,卸下后退出。
- **允许直接哺乳。**
- 产出 **T3 成长乳汁** ——一种能加速儿童成长的独特物质。
- 兼容 Equal Milking:通过 Equal Milking 挤奶系统获得的产物是 **T3 成长乳汁** 瓶。
---
### 机械阴茎
三个等级的机械阴茎,每个等级提供不同能力。
#### T1 — 机械阴茎
- 外观用途。不孕。提供基础身体部位覆盖但无生殖或能力功能。
#### T2 — 中级机械阴茎
- 授予 **「中子胺注射」** 能力——通过性爱治疗目标。
#### T3 — 顶级机械阴茎
- 授予 **「克隆女性」** 能力:将目标女性的基因组注入目标女性体内,使其必定怀孕。需要目标体内有未受精卵子。
---
### 机械阴道
三个等级的机械阴道,每个等级提供不同能力。
#### T1 — 机械阴道
- 外观用途。不孕。
#### T2 — 中级机械阴道
- 两个内置能力:
1. **「将子宫精液转化为中子胺」** — 将子宫内储存的精液(RJW Menstruation Cycle)按子宫容量5%=1中子胺的比例将精液转化为中子胺。
2. **「将精液污渍转化为中子胺」** — 目标区域型能力:选中 10 格内的任意格;该能力扫描周围 3 格半径的 `FilthCum` 和 `FilthGirlCum` 地面污渍,按 1:1 比例将每堆精液转化为 1 个中子胺。施法耗时 180 ticks(3 秒),无冷却。
- 不孕。无法怀孕。
#### T3 — 顶级机械阴道
- 授予 **「克隆男性」** 能力:克隆目标男性的基因组到自己体内,使自己必定怀孕。目标需要有射精能力和生育力。
---
### 机械肛门
两个等级的外科植入肛门。
#### T1 — 机械肛门
- 外观,轻甲。
#### T2 — 中级机械肛门
- 震动与自润滑设计。
- 肛交后提供性满足度加成。
---
### 总览 — 11 件器官一览
| 身体部位 | T1 | T2 | T3 |
|---------|:--:|:--:|:--:|
| **乳房** | 外观+护甲;不泌乳 | 泌乳+化合燃料;禁止哺乳 | 泌乳+哺乳;T3 成长乳汁 |
| **阴茎** | 外观;不孕 | 中子胺注射 | 克隆女性 |
| **阴道** | 外观;不孕 | 子宫精液→中子胺+地面精液→中子胺;不孕 | 基因主导;克隆男性;完全生育力 |
| **肛门** | 外观+轻甲 | 震动;肛交满足度加成 |
---
## T3 成长乳汁 — 完整机制
T3 成长乳汁是一种由 T3 顶级机械乳房产出的消耗品,以 **瓶装可饮用物品**和 **直接哺乳** 两种形式存在。
### 成长加速 Hediff
当衰老率 **超过 100%** 的 pawn(即仍处于加速生长期的儿童)摄入后,会添加一个 `T3 成长加速` hediff,持续时间与摄入剂量成正比。激活期间,以下三项属性 **翻倍(×2):**
| 属性 | 查看位置 | 适用范围 |
|------|----------|----------|
| **衰老率** | 角色「信息」面板 → "衰老率" | 所有儿童与动物幼崽 |
| **学习效率** | 角色「信息」面板 → "学习效率" | 仅有学习需求的 pawn(3–13 岁人类儿童) |
| **每日成长点数** | 儿童「成长评级」面板 → "+N / 天" | 仅有学习需求的 pawn(3–13 岁人类儿童) |
### 剂量
| 摄入方式 | 每单位乳汁持续时间 |
|----------|:------------------:|
| 喝一瓶 T3 成长乳汁物品 | **2 小时** |
| 直接从 T3 乳房哺乳 | **4 小时**(瓶装的 2 倍) |
- **可叠加:** 喝多瓶或多次哺乳,hediff 时间累加。无上限。
### 健壮性:衰老率恢复至 100% 时自动移除
当 pawn 的 **基础衰老率**(乘以 2 之前的值)降至 1.0(即默认难度下生物年龄到 20 岁成年),`T3 成长加速` hediff 会**自动移除**并弹出通知。这避免了 hediff 残留在不再受益于加速成长的成年人身上。
如果 pawn 之后被降龄(通过开发者工具或模组机制),使其基础衰老率重新超过 100%,可通过重新摄入 T3 成长乳汁再次添加 hediff。
### 成年人(衰老率 = 100%)
基础衰老率已为 100% 的 pawn(完全成年人)摄入 T3 成长乳汁时,**不添加 hediff**。弹出消息告知玩家:"衰老率已是 100%,没有效果。"
### 动物
动物仅衰老率翻倍生效。动物没有学习需求,学习效率和成长点数增幅自动跳过。消息内容相应调整,不提及不适用的效果。
### 屏幕消息
每次摄入事件在左上角消息区产生一至两条本地化消息:
- **瓶装摄入:** 一条消息——谁喝了、几瓶、持续多久、生效效果(根据是否有学习需求自动调整)。
- **哺乳:** 两条消息——先一条灰色提示行显示哺乳前/后乳汁量和净消耗量;再一条绿色通知显示剂量、时长和效果。
所有消息在模组支持的六种语言中均已翻译。
---
## T2 阴道 — 精液转中子胺系统
T2 中级机械阴道提供两种独立的中子胺产出途径:
### 子宫转化 —「将子宫精液转化为中子胺」
- 使用 RJW 风格的能力(`Verb_CastAbility`)。
- 将 wielder 子宫内储存的精液(RJW Menstruation Cycle)按 **子宫容量5%=1中子胺** 的比例转化。
- 目标为 wielder 自身。
### 清扫地面精液 —「将精液污渍转化为中子胺」
- 使用 RJW 风格的能力(`Verb_CastAbilityOnCell`),可通过 Gizmo 直接选目标格。
- 玩家在 **10 格范围内** 任选一目标格。能力扫描目标格周围 **3 格半径** 的 `FilthCum` 和 `FilthGirlCum`。
- **每堆精液转化为 1 个中子胺**,1:1 比例。
- 施法耗时 **180 ticks**(正常速度 3 秒)。进度条填充,施法前瞄准时白色高亮圈预览影响区域。
- 无冷却——只要有精液污渍就可以反复用。
- 施法前会检测目标区域是否有有效精液污渍。
---
## T2 阴茎 — 中子胺注射能力
T2 中级机械阴茎授予 **「中子胺注射」** 能力,通过性行为治疗伴侣。该能力在 RJW 性交过程中自动触发,无需手动激活。仅 T2 或更高级机械阴茎可用。
---
## T3 阴茎 & 阴道 — 克隆系统
每个 T3 器官都有定向克隆能力。
### T3 阴茎 — 克隆女性
- 克隆目标女性基因组到目标女性体内。
- 目标女性怀上目标女性的克隆后代。
- **前提条件:** 目标女性体内必须有未受精卵子。
- 必定受精。
### T3 阴道 — 克隆男性
- 克隆目标男性基因组到自身。
- 自身怀上目标男性的克隆后代。
- **前提条件:** 目标男性必须有射精能力和生育力。
- 必定受精。
---
## VRE Android 集成
本模组拦截多个 VRE Android 系统,防止人类生殖器"泄露"并为仿生人提供正确的机械生殖器功能。集成全自动,无需玩家配置。
### 1. 生成时添加液压生殖器基因
VRE Android pawn 生成时,不会再携带人类生殖器,而是携带液压生殖器。
VRE Android pawn 生成时,在其异种类型完全应用**之后**添加 `rjw_genes_hydrolic_genitalia` 基因。触发 `Gene_GenitaliaType.PostAdd()`,调用 `ChangeGenitalia()` 将任何天然生殖器替换为液压生殖器。基因使用延迟动态注入而非写死在 xenotype def 中,避免与其他修改 VRE 异种类型的模组冲突。
### 2. 变性手术保护
VRE Android pawn 生成时/安装生殖器部件时,不会再出现“曾是男性”、“曾是女性”等变性hediff。
当 VRE Android 接受更换身体部件的手术时,VRE 的变性系统会尝试添加 `hediff_was_xxx` 标签,这会将仿生人的机械生殖器还原为生物人类部件。Patch 11 在 `GenderHelper.ChangeSex(Pawn, Sex, Sex)` 层面、具体针对 `Recipe_InstallPart` 代码路径拦截这些标签,保持仿生人机械属性。
### 3. Hediff 标签拦截
VRE Android pawn不再通过分娩和药物进入哺乳期,而是在安装 T2 或 T3 机械乳房时,自动进入哺乳期,移除时结束哺乳期。
在最低层的 hediff 应用层面(`HediffSet.AddDirect`),四个 `hediff_was_*` 变性标签和五个 `Lactating*` 哺乳 hediff 被阻止添加到 VRE Android 身上。**例外:** 当该仿生人装有 T2 或 T3 机械乳房时,`Lactating` hediff 会被放行以允许产奶。此例外基于 pawn 当前安装的 hediff 动态判断。
### 4. 隐藏合成部件预防
避免VRE Android pawn生成时合成生殖器和液压生殖器同时生成。
VRE Android 的 `GetAndroidCounterPart` 通常会为 `Genitals`、`Chest` 和 `Anus` 添加隐藏的合成对应部件。Patch 8 对这些部位返回 `null`,阻止隐藏合成部件在装备机械生殖器的仿生人身上生成。
### 5. 自然分娩基因泄露修复
避免通过克隆诞生的婴儿获得VRE Android父母的Xenotype和PawnKind。
无此修复时,VRE Android 母亲在 Biotech 自然分娩中会把人类基因遗传给婴儿。Patch 3 拦截 `PregnancyUtility.ApplyBirthOutcome`,当分娩 pawn 是 VRE Android 时,将 `geneticMother` 替换为父亲,使婴儿继承仿生人父/母的异种类型。
---
## Equal Milking 集成
### 哺乳期管理(Patch 12 & 13)
- **装入** T2 或 T3 机械乳房 → 添加 `Lactating` hediff(监听 `HediffSet.AddDirect` 层面)。
- **卸下** 最后一件机械乳房 → 移除 `Lactating` hediff(监听 `Pawn_HealthTracker.RemoveHediff` 层面)。
- 状态驱动:系统检查"此 pawn 当前是否装有 T2 或 T3 乳房?",而非"是否刚做了手术?"。
### 奶产品覆盖(Patch 15)
- **T2 乳房** → Equal Milking 的 `GetMilkProductDef` 返回 **化合燃料**。
- **T3 乳房** → 返回 **T3 成长乳汁**。
- 两者都没有 → Equal Milking 默认产物不变。
### 哺乳拦截(Patch 14d)
在 `EqualMilking.ChildcareHelper.SuckleFromLactatingPawn` 上组合 Prefix + Postfix:
- **Prefix:** 若哺乳方有 T2 乳房,**完全阻止** 哺乳(`return false`)并弹出提示。若有 T3 乳房,记录当前乳汁饱满度。
- **Postfix:** T3 哺乳成功后,从饱满度变化量(`哺乳前 − 哺乳后`)计算实际消耗乳汁量。以 **每单位乳汁 4 小时**(瓶装的 2 倍)的比例添加 T3 成长加速。显示两条消息:灰色乳汁量摘要,然后绿色效果通知。
---
## 本地化
全面支持 **六种语言**。所有器官名称、描述、能力标签、能力描述、手术标签和运行时屏幕消息均已翻译。
| 语言 | 覆盖程度 |
|------|:------:|
| **English** | 完整 |
| **简体中文** | 完整 |
| **繁體中文** | 完整 |
| **日本語** | 完整 |
| **한국어** | 完整 |
| **Русский** | 完整 |
---
## 依赖
### 硬依赖(必须安装 — 否则模组不会加载)
| 模组 | packageId |
|------|-----------|
| **Harmony** | `brrainz.harmony` |
| **Vanilla Races Expanded — Android** | `vanillaracesexpanded.android` |
| **RimJobWorld** | `rim.job.world` |
| **RJW Genes** | `Vegapnk.rjw.genes` |
| **Equal Milking** | `EqualMilking` |
### 软依赖(加载顺序;不装也能用)
| 模组 | packageId | 用途 |
|------|-----------|------|
| **RimNudeWorld** | `shauaputa.rimnudeworld` | 加载顺序兼容 |
| **Sized Apparel** | `otyoty.sizedapparel` | 加载顺序兼容 |
| **RJW Menstruation Cycle** | `rjw.menstruation` | 加载顺序兼容 |
---
## 安装
1. 在 Steam 创意工坊订阅全部五个硬依赖模组(或手动安装)。
2. 订阅本模组,或下载发布包并将 `RJW - Robotic Genitals Redux` 文件夹放入 RimWorld `Mods` 目录。
3. 在 RimWorld 模组菜单中启用本模组。确保它加载顺序排在全部硬依赖之后。本模组的 `About.xml` 已声明全部依赖的 `loadAfter` 规则,游戏会自动正确排序。
4. 开始新游戏或加载存档。本模组可安全中途加入已有存档。