You are viewing a potentially older version of this package. View all versions.
s0apy-RPNames-1.5.2 icon

RPNames

Name yourself something cool!

Date uploaded 3 weeks ago
Version 1.5.2
Download link s0apy-RPNames-1.5.2.zip
Downloads 1032
Dependency string s0apy-RPNames-1.5.2

This mod requires the following mods to function

BepInEx-BepInExPack-5.4.2100 icon
BepInEx-BepInExPack

BepInEx pack for Mono Unity games. Preconfigured and ready to use.

Preferred version: 5.4.2100
Marioalexsan-Multitool-1.0.1 icon
Marioalexsan-Multitool

Swiss army knife of APIs for mods.

Preferred version: 1.0.1
Soggy_Pancake-CodeYapper-2.2.0 icon
Soggy_Pancake-CodeYapper

A simple library to abstract away networking

Preferred version: 2.2.0
Nessie-EasySettings-1.3.0 icon
Nessie-EasySettings

A mod API for easily adding options to the settings menu.

Preferred version: 1.3.0

README

RPNames

Give yourself a custom, animated, and colorful roleplaying title above your name! All titles are synced with other players in multiplayer.

Mod Screenshot For thunderstore

Features

  • Fully In-Game GUI: No more editing config files! Press F8 (configurable) to open a stylish, animated menu and configure your title on the fly.
  • Per-Character Profiles: Your title settings are saved for each character slot automatically.
  • Network Synced: Other players with the mod (and CodeTalker) will see your custom title exactly as you designed it.
  • Steamworks Global Names: RPNames uses Steam persona names to fill blank global nicknames and player labels by default. Any local name you have entered is preserved. You can turn this off in the Steamworks config section.

Rich Customization Options:

  • Text Animations:
    • Static: A simple, non-moving title.
    • Scroll: The title reveals itself letter by letter, then reverses.
    • Marquee: Your title scrolls across a set width, like a news ticker.
    • Typewriter: Types out the title, pauses with a blinking cursor, backspaces, and repeats.
  • Coloring Effects:
    • Single Color: Pick any color using an in-game color picker or by entering a hex code.
    • Gradient: A smooth transition between two colors.
      • Can be static or animated to pulse between the start and end colors.
      • In-game color pickers for start and end colors.
      • Adjustable animation spread/speed.
    • Rainbow: The entire title cycles through the colors of the rainbow.
    • Wave: A beautiful rainbow wave effect that flows through the text.
    • Static Rainbow: Applies a fixed rainbow pattern across the text.
  • Formatting & Presets:
    • Choose from over 10 different bracket styles (or none at all).
    • Position the title on a new line, with or without a gap.
    • Select from a list of classic preset titles to get started quickly.
  • Profile Management:
    • Copy/Paste: Easily copy your current design and paste it into another character's profile.

How to Use

  1. Once in-game with your character loaded, press the F8 key to open the settings menu.
  2. Type your desired title in the text box at the top.
  3. Use the dropdown menus and sliders to customize the animation, coloring, and formatting.
  4. When you are happy with your title, click "Set & Save Title" at the bottom. Your title will be applied and saved for the current character.
  5. To remove a title, simply click the "Clear Title" button.

Installation

  • Requires BepInEx.
  • Download the latest release and unzip it.
  • Place RPNames.dll into your BepInEx/plugins folder.

Dependencies

  • CodeTalker (Required for Multiplayer): This mod relies on CodeTalker to send and receive title data between players.
    • If you are playing single-player, you do not need CodeTalker.
    • If you are playing multiplayer, every player who wants to see or show custom titles must have both RPNames and CodeTalker installed.
  • SteamGlobalName (Optional): Its functionality is now integrated into RPNames. If you keep the standalone mod installed while testing, disable its Steam-name feature when enabling RPNames' integrated option.

Configuration

The mod's configuration file is located at BepInEx/config/RPNames.cfg.

  • Menu Key: You can change the key used to open the menu (F8 by default).
  • Steamworks — AutoSetGlobalNameFromSteam: Enabled by default. Steam persona names only fill blank global nicknames; nickname entry is left alone while its field is focused, and any local name you enter is preserved. Clearing the field allows Steam autofill again. Turning this off may affect related functionality, but RPNames will continue to work normally—whether to disable it is your choice. Updates pause during gameplay so they do not overwrite the in-game RPNames tag.
  • CharacterProfiles: This stores all your profile data in JSON format. It is strongly recommended to only edit your titles through the in-game menu to avoid errors.

CHANGELOG

Changelog

1.6.0 - x.x.x

Added:

  • Titles are now saved per character through Multitool, so they follow the character instead of a slot number in the config. Multitool is a new dependency.
  • EasySettings support: the Steam toggle and the menu key are on the main Mods page. EasySettings is optional.
  • "Import old title from config" button in the settings menu, shown for slots that still have a title in the old config.

Fixed:

  • Sharing a mod profile or config no longer gives other people your titles on their characters.
  • The Steam nickname bookkeeping is no longer written to the config, so a shipped config can't overwrite anyone's nickname state.
  • The cfg no longer fills up with every character's profile JSON.

Updated:

  • CharacterProfiles in the config is now legacy-only and is cleared per slot as old titles are imported.

  • Without Multitool installed, titles fall back to the old config storage and a warning is logged.

  • SGN: Steam ID in the state: the nickname state now records which Steam account filled the name, and that ID is saved along with the rest of the state. Filled in by the mod: if the field still holds the name RPNames put there and it differs from the current Steam name, it’s replaced with the current account’s name. An account switch logs “Steam account changed”. The same path handles someone renaming their Steam persona. Typed by the player: if they entered their own nickname, it’s left alone, and the old bookkeeping is cleared as before. That custom nickname stays when they switch accounts. Toggle off: still restores the original nickname.

1.5.0

Added:

  • Added a Steamworks config toggle to use Steam persona names for the global nickname and player labels. It is enabled by default and can be disabled to use the local nickname.

Fixed:

  • SteamGlobalName is no longer a dependency; its functionality is integrated into RPNames.
  • Steam persona updates are paused during gameplay so they cannot overwrite RPNames' in-game tag.
  • Existing local global nicknames are now preserved; Steam names only fill blank nicknames.
  • Steam autofill waits while the local nickname field is focused, allowing a local name to be entered without racing the Steam name update.
  • Mod screenshot for Thunderstore

Updated:

  • The look of the icon is more better than before, I gave it blue instead of green - Matching the UI in-game. Ui design my beloved

1.4.7

Fixed:

  • Game would lock up at spawn if launched modded without Steam initialized. RPNames' networking calls would throw repeatedly (once per frame, forever) when Steamworks wasn't available, instead of failing gracefully — this now logs a single warning and disables networked titles for that session instead of hammering the game with exceptions. (Bug found by Xesy)

1.4.6

Fixed:

  • Tags for everyone already on the server could disappear and never come back if you disconnected and reconnected without fully restarting the game (dedicated servers only). The full sync request now also fires off the IN_GAME condition change instead of relying solely on gaining player authority, with a backup poll check as well, so a reconnect can't slip through uncaught anymore.
  • Stale profile data no longer lingers forever for players who've already left — a player's entry is now cleaned up the moment their object is destroyed instead of sitting around as dead weight. (Initial version of this fix relied on a Harmony patch that may not have actually applied — reworked it to use a small marker component instead so it's guaranteed to fire.)

Debug:

  • Added logging around the full-sync request/response chain so a failure here actually shows up in the log instead of just... nothing.

1.4.x - x.x.5

Fixed:

  • The scroll position variable was being reset to 0 every frame inside the GUI function. I moved it to a class-level variable so it remembers where you scrolled.
  • "hex color sliders are syncing with others." bug.
  • Changelog error

Added:

  • Added Confirmation to "Clear All": Clicking "Clear All" now swaps the button to a "Confirm Clear? [Yes] / [No]" prompt to prevent accidents.
  • Custom Presets: Added a "Save as Preset" button next to the Title text field. Added a "Delete" (X) button next to custom presets in the list. These save to the config file so they persist between restarts.

1.4.3

  • Fixed: Implemented proper listener cleanup to prevent registration errors when re-hosting a lobby in the same game session.
  • Fixed: Corrected a critical issue where network listeners were being registered multiple times, causing errors and preventing title synchronization when joining or re-hosting a lobby. All listeners are now correctly registered only once at startup.

1.4.2

  • Fixed Again: Corrected an issue where network listeners were being registered multiple times...?

1.4.1

  • Dependencies: Codeyapper updated to -> 2.2.0

1.4.0

  • Dependencies: Codeyapper updated to -> 2.1.0 (Tested on experimental branch (v2.2.x))
  • Fixed: Corrected an issue where network listeners were being registered multiple times, causing errors and preventing title synchronization when joining a lobby. Listeners are now correctly registered only once when the client connects.

1.3.2 - x.x.8

  • UI: Title/Pronoun limit is now 32 -> 50 Chars max.
  • Changed pictures on Readme.
  • Fixed: Late-Join Sync issue.
  • Fixed: 3 found Codetalker issues.
  • Codetalker: Update yo (Added what soggy asked to add.. Compression and Decompression).

1.3 - x.x.1

  • Feature: Added a dedicated Pronouns system. You can now add pronouns and select a bracket style for them in the settings menu, separate from the main title.
  • Fixed: Resolved a critical desynchronization bug that caused player titles to randomly not appear for other players. The fix ensures title visibility is consistent for everyone in the lobby.
  • UI: Minor layout improvements to the settings menu for clarity.
  • Feature: Added full customization for pronouns. They can now have their own unique coloring, gradients, and animated effects, independent of the main title.
  • Feature: Added a "Share Title Coloring" option for pronouns for easy color matching.
  • UI: The settings menu has been reorganized with collapsible sections and a scrollbar to accommodate the new options without clutter.
  • Fixed: (NOT RLLY A FIX I ONLY JUST TOUCHED THE README A LITTLE BIT YOU CAN IGNORE THIS LINE)

1.2.2

  • Fixed: Resolved a bug that caused player titles to disappear for the host when changing maps.
  • Fixed: Resolved a bug that caused the animation titles going crazy if mixed with rainbow/gradient animations.

1.2.1

  • Fixed: Resolved a critical bug that caused the game to hang on the character screen when leaving one server and joining another. The mod's network state is now correctly reset on disconnect.
  • Fixed: The mod's custom UI style no longer "bleeds" into the main menu or other UIs after disconnecting from a server.
  • Fixed: Titles now display correctly for players who do not have a @GlobalNickname enabled.
  • Fixed: Local player's title color now loads correctly on entering the game, instead of appearing black until re-saved.
  • Added: A "Color Speed" slider to control the animation speed for Rainbow, Wave, and animated Gradient effects.

1.2.0

  • Massive Network Overhaul: Replaced all network packets with highly efficient binary serialization to eliminate JSON overhead and drastically reduce packet size.
  • Bundled Syncing & Client-Side Animations: Reworked the entire networking model to eliminate packet spam and reduce traffic on player join.
  • Added Animation Speed Slider: You can now control the speed of all text animations.

1.0.0

  • Initial release.