Description
🎭 Roleplay Companion
"Aye. I've been hit harder than that before breakfast." — The Veteran
Roleplay Companion helps you stay in character in World of Warcraft Classic Era. Give each character a personality, and the addon suggests in-character speech, emotes and reactions that fit your race, class and archetype: when you level up, when a fight begins, when you walk into a new zone, or when you target a stray rabbit on the road.
You never have to stop and think of a line. When a moment comes, a suggestion appears in your chat
frame. Press F7 to say it, or just ignore it. Type /rpcedit any time to change how your character says a line for good.
✨ At a glance
| | Feature | What it does | |:-:|---|---| | 🧠 | 21 personality archetypes | Choose a voice for each character. Every archetype has its own manner, instincts, advice, nerves and victory lines. | | 💬 | Emotes, speech & reactions | Contextual suggestions, target reactions (corpses too), and a keybind for a random in-character cue. | | 🗺️ | Zone stories | Lore for every Classic Era zone, dungeon and raid, told in your character's voice. | | 📣 | Callouts | Your own lines for 39 game events, from Level up to Pet died to Friend came online, with ready-made lines for every personality. | | ✍️ | Edit Variants | Rewrite, add or delete any phrase so the personality sounds like yours. |
🧠 Choose a personality
Every character gets an archetype, and every archetype speaks in its own voice. Each trait (manner, instinct, advice, danger, victory) has five phrasing variants chosen at random, so your character doesn't repeat the same words every time.
| Archetype | Temperament | Sounds like… |
|---|---|---|
| ⚔️ The Veteran | Experienced, pragmatic, blunt | "Aye. I've been hit harder than that before breakfast." |
| 🌅 The Idealist | Hopeful, principled, a little naive | "There has to be a better way. Let us find it." |
| 🃏 The Trickster | Clever, sarcastic, mischievous | "That was almost a plan. Good thing I brought a better one." |
| 🔮 The Mystic | Spiritual, introspective | "The wind changed before the danger came. I would not ignore that." |
| 🎲 The Wildcard | Unpredictable, impulsive | "It may be a terrible idea. Let us see what happens." |
| 🛡️ The Protector | Watchful, loyal, brave | "Stay close. Nothing gets through me while I am standing." |
| 📚 The Scholar | Curious, analytical, precise | "Before we touch it, perhaps we should learn what it does." |
| 🤝 The Diplomat | Measured, persuasive | "We do not need to agree. We only need to find a way forward." |
| 🧭 The Wanderer | Restless, adaptable | "I have not been there yet. That sounds like reason enough." |
| 🗿 The Stoic | Controlled, resilient | "We can discuss the pain after the work is done." |
| 🎭 The Performer | Dramatic, charming | "Friends, try to look surprised. This is the exciting part." |
| 🏕️ The Survivor | Resourceful, wary | "I have lived through worse. That does not mean I plan to enjoy this." |
| 🌹 The Romantic | Passionate, sentimental | "If we are going to do this, let us make it worth remembering." |
| 🔥 The Rebel | Defiant, independent | "Because they said no is exactly why I am going." |
| 🕯️ The Mentor | Patient, quietly demanding | "Again. Slowly this time, and watch what the enemy does." |
| ⚡ The Zealot | Devoted, uncompromising | "There are lines one does not cross, no matter the cost." |
| 🤨 The Skeptic | Dry, cautious | "That is a convincing story. Now show me the evidence." |
| 💗 The Caregiver | Compassionate, attentive | "You can be strong later. For now, let me help." |
| 🔭 The Explorer | Adventurous, curious | "Look at this place. How could anyone pass by without stopping?" |
| 💰 The Opportunist | Alert, ambitious | "The plan has changed. Fortunately, so have our options." |
| 🕊️ The Peacemaker | Empathetic, conflict-averse | "Put down the weapons. We have not run out of choices yet." |
Not quite right? Open the Edit Variants tab, pick an archetype and a trait, and add or delete phrasings until it sounds like your character.
💬 Emotes, speech & reactions
- Contextual suggestions. The companion watches what's happening around you and offers a line that fits. A frequency setting (0–100) controls how chatty it is.
- Target reactions. Target a critter, a fallen foe or a boss corpse and your character comments on it in their own voice:
🐇 The Skeptic: "It is a rabbit. Probably just a rabbit." 🐉 The Protector: "The golden dragon has fallen. Check the living before celebrating."
- Random cue keybinds. Bind keys for a random emote, speech, reaction or cue for when you want something in character right away.
- The Emotes, Speech & Reactions tab previews the built-in cues for your current archetype.
🗺️ Zone stories
71 handwritten lore entries cover every Classic Era zone, capital, dungeon and raid, from Elwynn Forest to Naxxramas.
Press Share Zone Story and your character posts a short tale about where you are to raid, party or say, opening with a quip in their own voice:
🔥 "Seen worse roads than this." Deep within Blackrock Mountain's molten heart, Ragnaros the Firelord slumbers upon a lake of fire, freed by Dark Iron sorcery gone horribly wrong.
Turn on Auto-share zone story on arrival to have your character speak up whenever you reach a new zone. If you're in combat, the story waits until the fight is over.
📣 Callouts: your lines, your moments
The Callouts tab lets you write lines for 39 game events in 9 categories. Each trigger shows its stock WoW icon so you can find it at a glance.
| Category | Triggers |
|---|---|
| 🏆 Milestones | Level up · Died · Resurrected · PvP rank earned · Reached Exalted · Skill maxed · New spell learned · Elite or boss slain |
| ⚔️ Combat | Combat begins · Combat ends · Low health · Critical hit · Killing blow · Interrupted a spell · Combo points full |
| 💎 Loot | Epic loot · Gold gained · Bags full |
| 📜 Quests | Quest accepted · Quest turned in |
| 🔵 Power | Low mana · Rage high |
| ✨ Spells & Buffs | Cast a spell · Began / finished channelling · Buff gained · Buff lost · Changed form or stance |
| 🌍 World | Arrived somewhere restful · Entered a new zone |
| 👥 Social | Joined a group · Friend came online |
| 🐾 Pet | Pet summoned · Pet dismissed or lost · Pet died · Pet low health · Pet attacks · Pet became unhappy · Pet gained a level |
For each callout you can:
- 🎚️ Tune the trigger: health and mana thresholds, minimum gold, combo points, or a specific spell, buff or form name.
- 📍 Choose where it fires: anywhere, open world, dungeons, raids or battlegrounds.
- 📢 Choose the channel: Auto (raid › party › say), say, emote, party or raid.
- 😄 Pair it with an emote:
/cheer,/salute,/bowand more, played with your line. - 🔤 Use tokens such as
<LEVEL>,<FACTION>,<ITEM>and<TARGET>, which are replaced with the real values. - ⏱️ Set a cooldown and chance so callouts stay occasional.
Every trigger speaks in your personality's voice out of the box. Leave a callout without phrases of its own and it says one of the lines written for your archetype and that trigger. The 12 core triggers and the 7 pet triggers each have lines for all 21 personalities. Write your own and they take over. For example, a Stoic on a pet's death:
🐾 Pet died: "
<PET>is dead. I will say nothing more." 🎉 Level up (Idealist): "Level<LEVEL>! Every step makes me better able to help."
Rewrite them, delete them or add more. Your changes are saved per character.
⌨️ Keybinds & commands
Find the keybinds under Key Bindings › AddOns › Roleplay Companion:
| Keybind | Action |
|---|---|
| F7 (default, change it in Settings) | Say the current suggestion |
| Random Emote | Perform a random in-character emote |
| Random Speech | Say a random in-character line |
| Random Reaction | React in character to your target |
| Random Cue | Any of the above |
| F8 (Speak Callout, if free) | Say the pending callout |
| Share Zone Story | Tell a story about your current zone |
| Command | What it does |
|---|---|
/roleplaycompanion |
Open or close the companion window |
/roleplaycompanion emotes · settings · callouts · about |
Open a specific tab |
/roleplaycompanion minimap |
Show or hide the minimap button |
/rpcedit |
Open the Edit Line tab on the last reaction line, to change how your character says it |
/rpcemote · /rpcspeech · /rpcreaction · /rpcrandom |
Trigger a random cue |
/rpccallout test <trigger> |
Preview a callout without waiting for the event |
/rpcreset |
Reset critter reactions |
🗺️ Minimap button: left-click opens or closes the window, drag moves it, right-click opens Settings.
Hide it from the Settings tab or with /roleplaycompanion minimap.
🧩 Data broker support: if you use a LibDataBroker display (Titan Panel, ChocolateBar, Bazooka and so on), you get a Roleplay Companion launcher. Left-click it to open the window.
⚙️ Settings
- ✅ Enable companion: turn every suggestion on or off at once.
- 🗡️ Minimise on combat: hide the window when a fight starts and bring it back afterwards.
- 🗺️ Auto-share zone story on arrival
- 🎚️ Prompt frequency (0–100): how often contextual suggestions appear.
- ⌨️ Speak suggestion keybind: rebind the say key (F7 by default).
🛡️ Plays by Blizzard's rules
Classic Era doesn't let addons speak for you whenever they like, and Roleplay Companion doesn't
try. Suggestions stay in your chat frame until you choose to say them. A key press sends one,
/rpcedit lets you change it for good, and ignoring it does nothing.
🧪 Status & feedback
This is an early pre-release for Classic Era. It works, it's being actively developed, and it will have rough edges. Bug reports and suggestions are very welcome. Leave a comment here with what happened, your archetype, and any Lua error text (BugSack helps).
Made with ❤️ by Honour Bound Game Studios
🌐 honourbound.games · 🎮 Steam Curator
"Look at this place. How could anyone pass by without stopping?" — The Explorer



