A downloadable tool

Download NowName your own price

[RPG Maker MZ Plugin] Character Affinity System – Build Deeper NPC Relationships

CharacterAffinitySystem is a plugin for RPG Maker MZ that helps you create deeper, more emotional connections between your characters. It allows you to manage individual affinity values for each character, tie them to in-game time, and trigger switches based on affinity thresholds.

If you're developing a romance simulation, friendship system, or branching narrative based on relationships, this plugin is a powerful tool to enhance your game.

Plugin Features

Affinity Management per Character
Assign unique variables to each character to track their affinity levels. For example, giving a gift to an NPC can increase their affinity by +10.

Time-Based Affinity Growth
Link affinity to in-game time (default: variable 2). For instance, affinity can automatically increase by +1 every 30 seconds.

Event Trigger System
When a character’s affinity reaches a certain value (e.g., 50), a switch will turn ON. You can use this to trigger custom dialogue, side quests, or relationship events.

Easy Configuration via Plugin Parameters
No coding required. Everything is managed through plugin parameters and simple plugin commands.

Important Setup Notes

Before using the plugin, configure the AffinitySettings section in the plugin parameters.

  • Set the character ID, the variable ID used to store affinity, the threshold value, and the related switch.

  • Make sure the affinity variables don’t overlap with those used by your time system. For example, if variables 2–4 are used for time, set affinity to start from variable 5 or higher.

  • If no settings are found, a warning will appear in the developer console.

Usage Instructions

  1. Install: Place CharacterAffinitySystem.js in your js/plugins/ folder and activate it in the Plugin Manager.

  2. Configure: Use the plugin parameters to define character IDs, variable IDs, thresholds, and switches.

  3. Use Plugin Commands in Events:

    • adjustAffinity 1 10 – Increase character 1’s affinity by 10

    • setAffinityTrigger 1 50 1 – Turn ON switch 1 when character 1’s affinity reaches 50

    • linkAffinityToTime 1 true 1 – Increase affinity by 1 based on time progression

Example Use Cases

  • Romance Simulations: Give gifts to NPCs and trigger romance events at certain affinity levels.

  • Friendship Systems: Grow bonds by spending time with characters, unlocking new dialogue.

  • Story Branching: Change the game’s ending based on who has the highest affinity with the player.

Download

Download NowName your own price

Click download now to get access to the following files:

CharacterAffinitySystem.zip 3.8 kB

Leave a comment

Log in with itch.io to leave a comment.