📌 Project Overview
MCA: Romantic Expansion is a NeoForge addon for Minecraft Comes Alive (MCA) that adds romantic interaction systems between real players.
> ⚠️ Not MCA Social Expansion. That mod enhances villager NPCs.
> This mod is strictly player-to-player. Your relationships, your rules.
✨ Key Features
💐 Bouquet Gifting
Right-click any player with a bouquet to send a romantic gesture.
- Recipient gets an interactive Accept / Reject GUI
- Bouquet transfers to their inventory upon acceptance
- 30-second cooldown to prevent spam
💍 Engagement Ring Proposal
Craft an engagement ring and right-click your desired partner.
- Proposal GUI displays the proposer's name
- Upon acceptance:
- Ring transfers to partner with custom NBT data
- Triggers MCA's built-in proposal system
- Tooltip shows partner's name
- 25-second cooldown between proposals
💒 Wedding Ceremony
Both players must hold wedding rings in their inventory.
- Either player can initiate the ceremony
- Confirmation / Cancel GUI for both parties
- Upon confirmation:
- Both rings are consumed
- MCA marriage system executes
- New rings are created with each other's names
- Tooltips display: "Given by [Partner]" / "Received from [Partner]"
- 30-second cooldown to prevent abuse
🏷️ Persistent Ring NBT System
Rings permanently store your partner's UUID and name.
| Ring Type | Tooltip Style | Message |
|---|---|---|
| Engagement | Gray, italic | "Engaged to [Player]" |
| Wedding | Gold, italic | "Married to [Player]" + Blessing (light purple) |
Rings remain personalized across server restarts.
🏷️ Tags
minecraft-comes-alive mca romance multiplayer player-interaction social neoforge 1.21
All Versions
+ Add Version| Name | Game version | Platforms | Published | Downloads | Actions |
|---|---|---|---|---|---|
| 19d ago | 1 | ||||
| 19d ago | 1 | ||||
| 19d ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 2mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 3mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 4mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 6mo ago | 1 | ||||
| 6mo ago | 1 |
Optimized the umbrella stand model—now using an umbrella will consume a small amount of durability.
Optimized the umbrella stand model—now using an umbrella will consume a small amount of durability.
1.20.1: Fixed the bug preventing babies from being born.
Optimized the umbrella stand model—now using an umbrella will consume a small amount of durability.
Version 1.0.0-primary-26.2
🎉 New Content
Wedding Outfit System
Gender-specific wedding outfits: Male version features thicker arms, female version defaults to slimmer arms
Male design: Broad-shouldered silhouette with 4-pixel-wide arms, embodying a strong, masculine presence
Female design: Tailored fit with 3-pixel-wide arms, showcasing elegant, refined lines
Multi-cultural wedding outfit textures, covering various cultural styles:
Chinese
Western
East African
West African
Ancient Greek
Japanese
German
Scottish
Slavic
Curios integration: Wedding outfits can be equipped via Curios slots without affecting armor
🛠️ Optimizations & Improvements
Gender system optimization: Enhanced stability and caching mechanisms for gender data retrieval
Pregnancy system refinement: Improved pregnancy detection, probability calculations, and cycle management
Code refactoring: Cleaned up redundant code and improved mod performance
❌ Removed Content
Bridal Carry System (temporarily removed due to technical reasons)
The feature is currently unstable due to changes in the riding mechanics in MC 26.2
Removed related Mixins, network packets, and client-side rendering code
Planned for reintroduction in a future version
⚠️ Compatibility
✅ Compatible with MCA 7.7.7+
❌ NOT compatible with MCA below 7.7.7
✨ 14 New Cultural Wedding Outfits (18 Total)
Cultural Style Groom Bride
🇨🇳 Chinese chinese_wedding_male chinese_wedding_female
🇪🇺 Western western_wedding_male western_wedding_female
🌍 East African Style east_african_wedding_male east_african_wedding_female
🌍 West African Style west_african_wedding_male west_african_wedding_female
🏛️ Ancient Greek Style ancient_greek_wedding_male ancient_greek_wedding_female
🌸 Japanese Style japanese_wedding_male japanese_wedding_female
🇩🇪 German Style german_wedding_male german_wedding_female
🏴 Scottish Style scottish_wedding_male scottish_wedding_female
🇷🇺 Slavic Style slavic_wedding_male slavic_wedding_female
📌 All outfits are craftable & support Curios API. Game content only.
🔧 Technical Updates
Full Curios API support
Multi-language localization
Rendering optimization
🛠️ Dependencies
MCA Reborn 7.7.7+
Curios API 5.14.1+
Minecraft 1.20.1 (Forge)
🌍 Welcome Global Players!
We aim to showcase traditional wedding attire from around the world. If your hometown has unique wedding clothing styles, share your suggestions on Discord!
💬 Discord Feedback:https://discord.com/channels/747184859386085380/1523500594638225478
MCA Romantic Expansion v1.1.3-1.21.1 This update includes:
✨ New Content
Added 14 new wedding outfits from various cultural styles (East African, West African, Ancient Greek, Japanese, German, Scottish, Slavic, etc.)
Retained the original 4 outfits (Chinese Male/Female, Western Male/Female), totaling 18 wedding outfits
All outfits support Curios accessory slot integration
Multi-language localization support (Chinese, English, Japanese, French, German, Russian, Spanish, etc.)
📌 Special Note
This update is a game content expansion. All wedding outfits are cultural-style decorations intended to showcase design inspiration from traditional attire around the world. They do not represent any real-world cultural affiliation or political stance.
🔗 Feedback Channel
We welcome you to share suggestions for traditional wedding attire from your hometown on Discord to help us continue enriching the game content!
### 🐛 Fixed: Princess Hold Dimension Teleport Crash
Fixed a server crash issue reported by CurseForge users: When a player in a princess hold jumps into a dimension teleportation portal (such as the Underworld or End), it causes the related players to crash and be unable to rejoin the server, and may prevent the server from shutting down normally.
- Problem Description**
- When a player in a princess hold enters a dimension teleportation portal, the riding relationship between the held player and the carrier player is damaged across dimensions
- The affected players crash when attempting to rejoin the server and cannot reconnect
- Damaged player data may prevent the server from shutting down normally
- Fix Solution**
- Added dimension teleportation event listener (
EntityTravelToDimensionEvent) to trigger before entity teleportation - When the teleporting player is in a princess hold (as a carrier or passenger), cleanly break the princess hold in advance
- The carrier player can still pass through the teleportation portal normally, while the held player remains in the original dimension, fundamentally avoiding cross-dimensional damage
### 🔧 Technical Changes
- Added
onEntityTravelToDimensionevent handler to theMCARomanticExpansionmain class - Reused
CarryRuntime.stopCarryForto remove the riding relationship, clear the pairing status, and broadcast client synchronization - Applies to all dimension teleportation portals (Underworld portal, End portal, and mod dimension portals)
> Note: This fix only prevents new crashes. For damaged player save files (NBT containing a reference to the player's
RootVehicle tag), manually edit the corresponding player .dat file to remove this tag, or delete the player data file to allow them to rejoin.### 🐛 Fixed: Princess Hold Dimension Teleport Crash
Fixed a server crash issue reported by CurseForge users: When a player in a princess hold jumps into a dimension teleportation portal (such as the Underworld or End), it causes the related players to crash and be unable to rejoin the server, and may prevent the server from shutting down normally.
- Problem Description**
- When a player in a princess hold enters a dimension teleportation portal, the riding relationship between the held player and the carrier player is damaged across dimensions
- The affected players crash when attempting to rejoin the server and cannot reconnect
- Damaged player data may prevent the server from shutting down normally
- Fix Solution**
- Added dimension teleportation event listener (
EntityTravelToDimensionEvent) to trigger before entity teleportation - When the teleporting player is in a princess hold (as a carrier or passenger), cleanly break the princess hold in advance
- The carrier player can still pass through the teleportation portal normally, while the held player remains in the original dimension, fundamentally avoiding cross-dimensional damage
### 🔧 Technical Changes
- Added
onEntityTravelToDimensionevent handler to theMCARomanticExpansionmain class - Reused
CarryRuntime.stopCarryForto remove the riding relationship, clear the pairing status, and broadcast client synchronization - Applies to all dimension teleportation portals (Underworld portal, End portal, and mod dimension portals)
> Note: This fix only prevents new crashes. For damaged player save files (NBT containing a reference to the player's
RootVehicle tag), manually edit the corresponding player .dat file to remove this tag, or delete the player data file to allow them to rejoin.## v1.0.8 — Love Letter System
### ✉ New: Love Letters
A handwritten letter that can be tucked into books and gifts, waiting for its recipient to discover.
- Writing**
- Craft with paper, book, and pen
- Sneak + right-click to open editor, fill in recipient name and message
- Right-click anytime to read a written letter
- Hiding & Delivery**
- Sneak + right-click while holding any item in offhand to hide the letter inside it
- The host item's appearance remains unchanged—no one can tell it contains a letter
- Only the recipient will have the letter extracted when using the item; other players use it normally, unaware
- Reply & Affection**
- After receiving a letter, click the "Reply" button while reading to write back (on page 2)
- Reply is written on the same letter item—no new item created, preventing duping
- After replying, both parties gain +3 affection each
- Reading without replying does nothing—hearts need answers to grow
- Replies can be written even if the recipient is offline, but affection only increases when both are online
- Once replied, the original sender can also extract the letter from the hidden host item to read the reply
### 🏆 New Achievement
| Achievement | Description |
|-------------|-------------|
| Message in a Bottle | Reply to a love letter—two hearts draw closer |
### 🔧 Technical Changes
- Added
LoveLetterItemwith NBT storage for recipient, sender (incl. UUID), message, and reply - Reply stored as "page 2" on the same item—no new item created
- Extended
LoveLetterSavePacketwithisReplyfield, reusing the same packet for writing and replying - Added
LoveLetterReplyTriggerachievement trigger - Reading UI displays both original letter and reply; shows "Reply" button if not yet replied
- Hide/extract logic fully preserves reply data
- Extraction permissions: recipient can extract; after reply, original sender can also extract
- Affection gain integrated with existing
AffectionManagersystem
> 2026-06-28 · Minecraft 1.21.1 · NeoForge 21.1.228
### ✨ Added
- Public API v1.0.0**:
IAffectionManager·IRelationshipManager·IRomanticEvent· 16 static methods - 8 Cancellable Events**: Affection/Proposal/Marriage/RomanticEvent/SharedUmbrella etc., all support
setCanceled(true) - Developer Documentation**:
API_DEVELOPER_GUIDE.md
### 🐛 Fixed
- Custom event inheritance & NeoForge 21.1 event bus compatibility
- Engagement status detection now uses
partnerUUID getCustomEvents()access modifier fixed
### 📦 Technical
- Network Protocol
1.0.0· Java 21
### 🐛 Bug Fixes
- Fixed issue where gift boxes could be overwritten infinitely
- Fixed GUI not displaying sender/partner names for bouquet and marriage requests
- Fixed race condition causing same-gender pregnancy in multi-threaded environment
- Fixed MCA gender field case inconsistency causing gender reading failures
- Fixed incorrect gender setting command prompt
### ✨ New Features
- Added
/marriageconfigcommand for same-gender marriage configuration (supports global and per-player override)
### ⚙️ Technical Improvements
- Replaced
HashMapwithConcurrentHashMapfor thread safety - Added 5-second protection period during gender changes to prevent pregnancy check interference
- Only opposite-gender marriage is allowed by default. Server admins can enable same-gender marriage via the command.**
Fixed: Resolved gender data reading issue with MCA mod
Fixed gender detection failure caused by MCA's case inconsistency (Gender vs gender)
Added automatic gender data repair on player login
Optimized gender reading logic to prioritize correct NBT tags
Improved: Enhanced pregnancy mechanism stability
Added gender cache to prevent unexpected gender reset by MCA
Improved logging for easier troubleshooting
1. **Pregnancy Period System** - Detect players of opposite genders sleeping in adjacent beds; triggers a pregnancy period when conditions are met
2. **Probability Mechanics** - Base 15% chance, doubled for married couples, halved for players who already have children, bonus when both players are fully satiated
3. **State Management** - Pregnancy period lasts 10 minutes of game time, automatically removed upon death
4. **Child Birth Trigger** - Automatically creates a baby item when the pregnancy period ends
### New Commands
/pregnancy status- Check your pregnancy period status/pregnancy complete- Manually complete the pregnancy period (OP only)/pregnancy cancel- Cancel the pregnancy period (OP only)
This mod adds family expansion features for MCA. All content is age-appropriate and family-friendly.
Updated the wedding dress and brooch, the red veil and hairpin, and the groom can now remove the bride's red veil!
Bouquet Gifting System - Right-click any player with a bouquet to send a romantic gift; recipient receives an interactive GUI with Accept/Reject options
Engagement Ring Proposal - Craft an engagement ring and right-click your desired partner; upon acceptance, the ring transfers with the partner's name permanently stored
Wedding Ring Marriage - Both players must have wedding rings; either player can initiate a wedding ceremony with a confirmation GUI
Smart NBT Ring System - Rings permanently store partner UUID and name, persisting through server restarts
Enhanced Tooltips - Rings display relationship status (engagement rings show "Engaged to [Player]" in gray italic; wedding rings show "Married to [Player]" in gold italic with a blessing message)
Cooldown System - 30-second cooldown for all interactions to prevent spam abuse
🛠️ Technical
Full dedicated server support with proper @OnlyIn(Dist.CLIENT) separation
NeoForge 21.1.228 network API using StreamCodec
DataComponents with CustomData for persistent NBT storage
ConcurrentHashMap-based per-player cooldown management
🔧 Dependencies
Minecraft: 1.21.1
NeoForge: 21.1.0+
MCA (Minecraft Comes Alive): 7.7.7+