π₯πNynaleath's Basic Relationship System
A lightweight dynamic relationship system for your AI Dungeon scenarios. Tired of NPC relationships changing just because the AI wants to satisfy the player's actions? An NPC is explicitly gay, but suddenly becomes attracted to the player anyway? A character is supposed to dislike something, yet immediately agrees with the player about it? Or two characters barely know each other, but somehow become best friends after three conversations? Basic REL is designed to help prevent these inconsistencies. Instead of relying entirely on the AI to remember and interpret every interaction, Basic REL keeps persistent relationship values between the player and tracked NPCs and provides the AI with additional context about how those relationships should behave. β¦ Simple, but dynamic Basic REL tracks two independent relationship dimensions: π₯ Friendship β How positively or negatively the NPC feels toward the player. π Romance β The NPC's romantic feelings toward the player. Friendship and romance develop independently. An NPC can become a close friend without falling in love. An NPC can develop romantic interest without immediately becoming a close friend. A good conversation can improve friendship without magically creating romance. β¦ Character consistency Basic REL uses information established in NPC Story Cards, including: β§οΈ Gender and sexual orientation π Existing crushes and love interests π Existing relationships and marriages πΈ Hobbies π Likes π Dislikes Romantic compatibility is enforced according to the NPC's established orientation. If an NPC is incompatible with the player, flirting does not magically change their sexuality. The system prevents the AI from inventing a sudden exception, hidden attraction, or "despite their orientation" romance simply because the player made a romantic advance. Friendship remains independent, so an NPC can still like, respect, trust or care about the player without being romantically attracted to them. β¦ Preferences matter NPC hobbies and likes can create small friendship bonuses when the player shares or positively engages with them. Dislikes are handled more carefully. Simply mentioning something an NPC dislikes does not automatically damage the relationship. However, repeatedly praising, defending or insisting on something the NPC strongly dislikes can gradually reduce friendship. This allows shared interests and disagreements to influence relationships without making every difference feel like a major conflict. β¦ Gradual progression Basic REL is designed around small, believable changes. Casual interactions produce small changes. Meaningful conversations and supportive moments produce larger ones. Strong negative interactions can damage the relationship significantly. Romance develops separately and is affected by both the NPC's friendship with the player and their existing romantic situation. The goal isn't to prevent romance. It's to make relationship progression feel like something that actually developed through the story. β¦ Automatic Relationship Status Basic REL can automatically generate a Relationship Status Story Card for the NPCs you choose to track. The card displays: π₯ Friendship π Romance along with their current relationship level. The displayed numbers are rounded for readability, while the system internally keeps the actual decimal values used for calculations. This allows small bonuses and penalties to accumulate naturally without being lost to display rounding. The system also includes lightweight scene tracking to help determine which NPC is currently involved in the player's interaction. When multiple NPCs are present and an action is ambiguous, the system avoids guessing instead of assigning the interaction to the wrong character. β¦ Features β’ Independent Friendship and Romance tracking β’ Gradual relationship progression β’ Romantic compatibility enforcement β’ NPC gender and sexual orientation awareness β’ Existing crush/relationship/marriage mechanics β’ Hobbies, Likes and Dislikes mechanics β’ Consequences for repeated preference conflicts β’ Automatic Relationship Status Story Cards β’ Rounded display with precise internal decimal values β’ Lightweight scene tracking β’ Persistent relationship data β’ Hidden internal relationship context β’ Automatic configuration Story Card β’ Standalone system β’ Designed for reusable AI Dungeon scenarios π Make NPC relationships feel consistent. Basic REL isn't meant to decide how your story should develop. It's there to help make sure your NPCs remember who they are while it happens. Version 2.0 It has not been tested with Inner Self, Auto Cards, or other community-created AI Dungeon scripts. Compatibility with other scripts may vary. π For installation instructions and the complete code: https://github.com/Nynaleath555/Basic-Relationship-System
