PurpleTag | Overhead Tag

PurpleTag, an overhead tag system made by CurrencyType.

PurpleTag is an open-sourced and lightweight overhead nametag system that supports AFK animations/ranktexts and can be easily accessed by other scripts to change a players AFK status, their name, or their rank.



AFK (window unfocused)

AFK (touching AFK line detector)

Disguised (badge/rank/name hidden)

Grab the script:


The configuration script itself explains what everything does, here’s how you access it:

Model > PurpleTag Script > Configuration

Easy as that! There’s not much of a setup, and you don’t have to move anything at all (the script does it for you!)

Now, I didn’t make PurpleTag alone, here are a few of the people/scripts that helped me:


@MasterScootScoot | Major help with the code.

Events are stored in ReplicatedStorage > RankFolder.

List & Description of Events
+ afkTable <table>: Fired by the handler every time the table of AFK players is updated.
- isAFK <username>: bindableFunction, returns a bool (true for the player is afk, false if they are not), called with a username (string).
+ changeAFK <isAFK (bool)>: Changes the players AFK status, can also be fired on the server with :FireClient(instance, isAFK)
- hidePlayer <plr, doHide (bool)>: Either makes the player disguised (true) or undisguises them (false) based on doHide.
+ resetRank <plr, eraseTemp (bool)>: Reset's the players tag and either keeps (false) or erases (true) any temptags made by "changeRank" based on eraseTemp.
- changeRank <plr, rank (string)>: Changes the provided players rank on their overhead to the provided string (rank).

This is PurpleTag’s first version, and the first time it has been released to anybody but a select few testers.

If you find any bugs, or have a suggestion, reply below and I’ll get back to you as soon as I can.


PurpleTag V1.1

Bug Fixes
+ Removed the bug where everybody would get a rainbow tag by default.
- Fixed the model actually being my portfolio admin system (oops).
+ Added a license so people can't just take my code and resell it.
+ Added support for UserId's instead of just usernames.
+ Added a model thumbnail.
+ A user-toggleable debug panel for me, so I can help you fix bugs.
Planned / To-Do
+ Heavily optimize code.
+ Make a better less glitch-prone AFK animation.
+ Add an event for checking if a user is AFK/grabbing the entire table instead of it being sent over every time it's updated.
+ Make customizable name/rank prefixes, such as '[DEV]'.
1 Like

I cant Seem to Find a Way To Add Specific Players to a Custom Rank. I Wanted to Add “Penguin” As a Test. But after looking at configuration I couldn’t figure it out. Unless this feature isn’t out Yet.

Edit: I didn’t look at Planed To Do. Sorry

1 Like

Hey! It actually is possible, the config should look something like the following:

["Customs"] = {
    ["usernamehere"] = "customnamehere",

I’ll be adding support for UserID’s + multiple users + ranks for the same tag soon.
The To-Do is talking about the feature to add rank/user/userid based prefixers, like
[Dev] or [Mod] without making a custom tag for the user.

1 Like
['Customs'] = {
	['CurrencyType'] = 'PurpleTag Creator',

It Looks Like This (Above). But i compared the 2 scripts and figured out how to change it. Thanks!
After Messing around with Custom Ranks I wanted the Rank to Be Something Other Than white. So i messed around with TagColor and as expected, i couldn’t figure it out.

Heres My script that i used:

['Customs'] = {
	['DavidPlays65447'] = '[TestRank]',
['Tags'] = {
	['[TestRank]'] = {
		['TagText'] = '[TestRank]', -- the text of the tag
		['TagColor'] = Color3.fromRGB(252, 189, 0),
		['ImageID'] = 7733715400, -- imageid of the icon, if none put 'false'

Can you find whats wrong?

Could you look for errors in your studio output for me?

Would also like to point out that a “tag” in the configuration is the “Creator” badge looking thing above my head in the screenshots.

For some reason, this system won’t work. Any idea why?
This is what it gives me in the console

I’ve just published an update (1.6) to patch this issue, I didn’t have a failsafe on the moving of items. (oops!)

Grab the latest model from the marketplace and reinsert it, you might want to copy your old configuration (which will still work.) into the new model.

It still doesnt work. Instead it gives me this:

P.S: You should remove that it destroys ThumbnailCamera because it says it cant destroy it because it doesnt exist when the script is directly moved to ServerScriptService.

I’ve thought about this and have removed the thumbnail camera, this should work now, thanks!

Recommanded. I’m using it for a SCP game I’m working on, just gotta change the font, text color etc and it’s fit perfectly! PurpleTag can definitly in 3 quick changes adapt to your game.

1 Like

I’m not sure if I’m being stupid or what but I can’t find out how to disguise?

Look under "List & Description of Events" in the main post.

Hey, the system completely doesn’t work for me. This is the only thing in the console about the system.
(I sent you a friend request on discord btw)

PurpleTag V1.7

Bug Fixes
+ Added a new AFK handler, report an errors on this thread.
+ Optimized code.
Planned / To-Do
+ Make customizable name/rank prefixes, such as '[DEV]'.

amazing, literally so useful, there arent a lot which can easily be customized and still is good. It helps me a lot since im lazy + not that good at scripting anything character based

1 Like

Can you make it that we can have more than one rank over our head? like maybe the option to make more than one and be able to set it for more than one person.

Possibly in a future update if I see more demand for it from other groups, as of now I just suggest you use the tag/badge feature that can also be rank/person specific as it allows you to show sub-ranks/special titles.


What’s that? An update sneak peak?




  • The ability to use DisplayNames instead of Usernames.
  • Fix of disguise system.
  • More optimization of AFK code.

How do you feel about this update?

  • Love It!
  • Like It
  • Not Sure
  • Dislike It
  • Hate it!

0 voters