(WIP) Gradual Romance

Started by Nationality, November 26, 2019, 06:00:57 PM

Previous topic - Next topic

Nationality

NEW UPDATE 17/12, see latest changelog in thread.

Hi, I've been silently working on this mod for a little while now - without writing an essay, it's a total overhaul of how romantic relationships work in Rimworld. I've tested it with a bunch of mods and it seems reasonably functional right now. However, I'm an amateur coder, and this is my first major mod ever, so it probably could use the eyes of people who are more experienced. It definitely needs more work, with a few missing planned features.

FEATURES --
* Adds four new relationship stages (Lovebuddy, Sweetheart, Paramour, Boyfriend/Girlfriend).
* Adds a flirt mechanic, sort of like RomanceAttempt, but less risky if you fail. Pawns are encouraged to try romance attempts after successful flirts, and discouraged by bad ones. Each flirt has entertaining, flavorful descriptions based on the Pawn's traits and personality.
* Adds an "ask to move in" interaction
* Changes everything about how romantic attraction works, and gives hints on what pawns like/dislike about each other every time they flirt/romance. Greedy colonists, as an example, prefer colonists with really nice bedrooms. In addition, it is much easier to add new attraction factors and exposes a lot of functionality in the Defs.
* Supports alien races and autopatches them to be compatible.
* Requires Psychology by The Word Mule. (Most likely incompatible with Rational Romance)

PLANNED FEATURES --
* More depth to ongoing relationships and breakups, such as quarreling.
* Secret affairs.
* Lovin' outside of bed.
* Crushes, romantic rivalries, obsessions, and other fun stuff.

I will be pretty busy for the next few days, which is why I wanted to post this now, so I can get some feedback, so I apologize if I don't respond immediately.

https://github.com/NationalityNZ/Gradual_Romance-Rimworld-mod

5thHorseman

Sounds interesting, though the link gets a 404.
Toolboxifier - Soil Clarifier
I never got how pawns in the game could have such insanely bad reactions to such mundane things.
Then I came to the forums.

Nationality

QuoteSounds interesting, though the link gets a 404.

Thanks. The link should be fixed. Not sure why it didn't work.

5thHorseman

Sweet thanks. I'll def. give it a try. Is it okay to bring into a running game? I already have Psychology running I believe.

I'll post any feedback. I esp. like the secret affair idea. When I found out affairs were just pawns changing who they wanted to sleep with I was a bit sad.
Toolboxifier - Soil Clarifier
I never got how pawns in the game could have such insanely bad reactions to such mundane things.
Then I came to the forums.

Nationality

QuoteSweet thanks. I'll def. give it a try. Is it okay to bring into a running game? I already have Psychology running I believe.
I'm not a hundred percent sure, so backup the game, but it should be.
No guarantees yet about safely removing it.

Chaos17

Thanks for your work, I am going to try it  :)

Kirby23590

This sounds interesting.... I will use this mod and see for any bugs...  Sounds very promising... :D

One "happy family" in the rims...
Custom font made by Marnador.



harpo99999

I am  using in my current game, the most irritating is when a visitor OR caravan trader has pawns that flirt/other relationship change gets a letter anouncing the change, if the letters could be restircted to the player pawns only, it would help

5thHorseman

I've many mods installed so not sure if there's a conflict somewhere but I do have Psychology and this mod installed. Psychology is loaded pretty high up and Gradual Romance is almost last (after Psychology obv.)

When I load the game, I get this error:


Failed to find RimWorld.ThoughtDef named ColdFeetSharingBed. There are 314 defs of this type loaded.
Verse.Log:Error(String, Boolean)
Verse.DefDatabase`1:GetNamed(String, Boolean)
System.Reflection.MonoMethod:InternalInvoke(Object, Object[], Exception&)
System.Reflection.MonoMethod:Invoke(Object, BindingFlags, Binder, Object[], CultureInfo)
System.Reflection.MethodBase:Invoke(Object, Object[])
Verse.GenGeneric:InvokeStaticMethodOnGenericType(Type, Type, String, Object[])
Verse.GenDefDatabase:GetDef(Type, String, Boolean)
RimWorld.DefOfHelper:BindDefsFor(Type)
RimWorld.DefOfHelper:RebindAllDefOfs_Patch2(Boolean)
Verse.PlayDataLoader:DoPlayLoad()
Verse.PlayDataLoader:LoadAllPlayData(Boolean)
Verse.Root:<Start>m__1()
Verse.LongEventHandler:RunEventFromAnotherThread(Action)
Verse.LongEventHandler:<UpdateCurrentAsynchronousEvent>m__1()


The mod seems to work otherwise. I've gotten several messages about visitors flirting and just got my first "Lovebuddies" in my own colony.
Toolboxifier - Soil Clarifier
I never got how pawns in the game could have such insanely bad reactions to such mundane things.
Then I came to the forums.

Nationality

QuoteI am  using in my current game, the most irritating is when a visitor OR caravan trader has pawns that flirt/other relationship change gets a letter anouncing the change, if the letters could be restircted to the player pawns only, it would help
Yes, that's a good idea. I'll implement it in the next patch.
QuoteWhen I load the game, I get this error:
Yes, that's a ThoughtDef I didn't fully implement that I forgot to remove in the public build. It shouldn't cause any issues, and I'll fix it when I next get around to working on the mod.

5thHorseman

Enjoying the mod so far! A couple things I noticed:

People seem to be very attracted to "Nothing in particular." It's by far the most common (and of course least interesting) thing to be attracted to.

I had a couple get together and break up 3-4 times. This is fine, but it'd be cool if you could track that and mention it somehow. "____ and _____, the on-again off-again couple, are on again."

There seem to be 2 levels that suggest the couple gets a bed. See the pic for the 2nd of those. I don't remember the first.

Also in the pic, a variable where a name should be.

I also noticed sometimes it would say something like "Longshank flirted with Longshank" or something like that. The next time I see it I'll post the exact text.

(image as a url as it's full screen)
http://pulpaudio.com/rimworld/movein.jpg
Toolboxifier - Soil Clarifier
I never got how pawns in the game could have such insanely bad reactions to such mundane things.
Then I came to the forums.

Nationality

QuotePeople seem to be very attracted to "Nothing in particular." It's by far the most common (and of course least interesting) thing to be attracted to.
The reasons that are given are not random, GR categorizes each attraction factor as "very high", "high", "low", and "very low", which depends on how much impact that factor is. You see "nothing in particular" when a character has very mild or no positive attraction modifiers. I also would like to have something more interesting, but I'm not quite sure yet how.

QuoteI had a couple get together and break up 3-4 times. This is fine, but it'd be cool if you could track that and mention it somehow. "____ and _____, the on-again off-again couple, are on again."
This is a great idea, but I probably won't include this in the next update, because this would involve relationship history tracking. I've got this planned, but I'm not ready to implement it.

QuoteThere seem to be 2 levels that suggest the couple gets a bed. See the pic for the 2nd of those. I don't remember the first.
This has been fixed in my internal build.

I will look at the grammar stuff when I can.

Nationality

WARNING - the new update might break save compatibility, so please back up any saves for updating.

NEW FEATURES:
--revised how new informal relationships form (see below)
--fully implemented the superficial trait, who despise ugly people and worship beautiful people.
--added voice attraction factor
--added breathing factor
--completed body attractiveness factor
--revised age attractiveness factor to be relative to an alien's maturity (roughly; a 1000 year old alien that lives 2000 years has the same maturity as a 40 year old human that lives 80 years. It's slightly more complicated, but that's basically the idea.)
--if you have the Bad Hygiene mod, being dirty detracts from your attractiveness.
--removed "average appearance" beauty trait
--paramours no longer trigger affairs, this is temporary

BALANCE
--the flirt style now heavily influences the chances of success, respective to the style of flirt. Ex. If a pawn tries to make a sexy flirt, but the other pawn doesn't find that pawn attractive, they are much more likely to fail. On the other hand, if two pawns have feelings for one another, but don't find each other physically attractive, their chance of success is still high if they use romantic flirts.

BUGFIXES
--beauty is now properly accounted
--pawns no longer move in together after becoming boyfriend/girlfriend (thanks to 5th horseman)
--grammar fixes (thanks to 5th horseman)

NEW FLIRT SYSTEM
Every time two pawns successfully flirt, they will gain a point of tension. There are three flavors (romantic, sexual, logical).
When two pawns reach a requisite amount of tension, they will automatically upgrade to the new relationship.
For example, if two pawns flirt and end with two points of romantic tension, they will instantly become sweethearts.
These are all configurable from the Defs, but to summarize:
SWEETHEART: Level 1 relationship - 2 romantic tension
LOVEBUDDY: Level 1 relationship - 2 sexual tension
PARAMOUR: Level 2 relationship - 2 romantic tension, 2 sexual tension
A known issue is that there's no corresponding relationship to logical tension yet, meaning it will never result in a relationship no matter how much tension you accrue. I'll need to add a few new stages to make this work.

NEXT UPDATE:
For right now, I'm satisfied with how relationships evolve. The next update will focus more on breakups and relationship decay, and dip my toe into cheating and affairs.

5thHorseman

Sweet and perfect timing, I just started a new playthrough and it's only in the 1st year so if this breaks it I've no issues starting over.
Toolboxifier - Soil Clarifier
I never got how pawns in the game could have such insanely bad reactions to such mundane things.
Then I came to the forums.

Nationality

Just pushed a hotfix - relationships were incorrectly evolving.