(1) Adds Orientations. All pawns will now have a trait indicating their sexual orientation, either asexual, bisexual, gay or straight. (Don't worry; the mod doesn't "waste" a trait slot on this, as orientation traits are assigned only *after* regular trait assignment is complete.)
By default, pawns have a 50% chance to be bisexual, a 20% chance to be gay, a 20% chance to be straight, and a 10% chance to be asexual. I set the percentages this way because biological, sociological and historical evidence strongly suggest that, in the absence of cultural imperatives to the contrary, bisexuality is actually the "default" status for most humans. However, the percentages are all configurable in the mod's "options" menu, so you can set things up however you prefer for your own games.
(2) Adds New Traits. The mod adds two new traits, "Faithful" and "Philanderer," which influence how likely a pawn is to cheat.
(3) Adds New Activities. The mod adds long walks as a date option for couples, allowing them to socialize and improve their relationships. It also adds casual hookups as a joy activity for single pawns.
(4) Improves Romantic Behavior in General. Pawns will no longer make romance attempts if they've been recently rebuffed, and won't target pawns for such attempts who are currently in mental break or with whom they already have a romantic relationship. Pawns will neither initiate nor receive romance attempts if they have a high opinion of their current lover. And pawns who are gay or straight will be more likely to rebuff romance attempts by pawns of the "wrong" gender, will be more likely to breakup with partners of the "wrong" gender, and will never accept marriage proposals from pawns of the "wrong" gender. Finally, the impact of the Ugly trait on romantic attraction is lessened for pawns who have that trait themselves.
(5) Makes Culture Matter. There is now a cultural component to pawns' romantic interactions, with female pawns from tribal and imperial backgrounds more forward (more likely to initiate romantic encounters or to propose marriage) than males from those cultures, and male pawns from medieval and urbworld backgrounds more forward than females from those cultures.
(6) Adds Support for Polyamory. Polyamorous pawns prefer relationships involving multiple partners to simple monogamous relationships. You can decide in the mod's "options" menu how likely pawns are to be polyamorous. Like the orientation traits, Polyamorous is an "extra" trait assigned after normal trait assignment is complete, so allowing pawns to be polyamorous won't in any way limit their access to other traits. The default chance for polyamory is 0%, as the system isn't yet fully tested, and even if it all works as intended, it may still complicate colony management in unexpected ways.
(7) Adjusts Romance-Related Mood Penalties. Penalties and/or stack limits for rebuffs and other romantic failures have been reduced. You should no longer see pawns hitting on someone a few times, getting rejected, and then going on a murder spree as a result.
(8) Fixes Some Problems in the Game's Romance-Related Code. Female pawns will now be just as likely as male pawns to initiate romance attempts or to propose marriage, subject to the cultural variations mentioned above. Gay pawns will be no less likely than straight pawns to be parents. And male and female pawns will both now prefer partners near their own age but potentially accept either younger or older partners, unlike in vanilla, where men have a strong preference for younger women and women for older men.
"Rational Romance" can safely be added to a game in progress. (Pawns without orientation traits will be assigned them as they enter into social interactions for which orientation is relevant.) The mod cannot, however, be removed from a game in progress.
This mod is NOT compatible with "Psychology." "Rational Romance" isn't likely to be compatible with any other mods altering RimWorld's romance systems, either.
Mod requires:
Harmony
The mod utilizes Pardeike's "Harmony Patch Library." (No additional download is required, as the library is included with the mod.)
Obviously, "Rational Romance" owes a great deal to SeveralPuffins' "Romance Diversified." In particular, the code for the new social activities comes directly from that mod. Other mods from which I borrowed code bits and/or ideas include "Less Stupid Romance Attempt" by Dazz Aephiex (for improvements to romantic behavior), "Grim Reality" by SheiFoxy (for alterations to mood penalties), and "Everyone is Queer" by Suzi (for general problem fixes).
Some of the code related to polyamory is borrowed from Linq/Word-Mule's "Psychology" mod.
If you're a modpack maker and want to include "Rational Romance" in your pack, or if you're a modder and want to use it as the basis of a derivative mod, please feel free to do so. I ask only that you let me know about it.