Augment your game with Nametag+

Don’t want to read through the post? Get it here now: Releases · AwesomePossum212/nametag-plus · GitHub

About

Nametag+ is designed with the principles in mind:

  • Performance
  • Modularity
  • Contributability

It is designed as a rewrite of my older opensource nametag system with changes to better follow the above principles including

  • Less polling (but still some as a result of Roblox’s lack of event for a player’s properties loading in)
  • More versatile and accessible functions for developers
  • Uses only module scripts
  • Less intrusive documentation
  • Open source on GitHub
  • Licensed under Unlicense

I’m hoping that through these changes, the system will be more usable in professional games, in contrast to the previous system which was intended moreso as a learning resource for beginning developers.

Why beta?
I chose to release it as beta because there is still the possibility of new major changes or features being released; this project is by no means complete (and due to it being open-source could continue to change for a long time). There should not be any bugs; see the contributing section for how to respond if you find one.

Usage

Head over to the releases page at the GitHub repository for Nametag+ to get started. There you can find a list of all released versions past and present. Releases include both a model with just the module (advanced) or a place file with some example implementations (beginner).

Features

Nametag+ includes most of the features from the old system and much more!

  • 100% free to use in your game, no attribution or limitations (read the license for more info).
  • Automatically link with player health and team color.
  • All-new Configuration module allows you to efficiently and simply change presets for the entire system, as well as reference those presets throughout your game.
  • Easily link to a player’s rank in a group
  • Highly performant and almost entirely event-based.

Contributing

Found a bug? Want to suggest a new feature? Looking to show off how you use Nametag+? Read the Contributing Guide! Do note that any contributions you make will be released irrevocably under Unlicense.

Feedback

If you have general ideas about how to improve Nametag+, need help with implementation, or want to show off what you’ve made, head over to the discussions page.

Demo

Here’s what it looks like by default. Note that you can change the Configuration module script to make the colors, fonts, and other properties just about anything you want!

You can try out the test place here. Note that it may not necessarily reflect the most up-to-date version of Nametag+.

41 Likes

Neat system, very cool! I don’t know where I could use this personally, but I know others who could use it.

1 Like

The main idea of this is to provide a way for developers to add titles and custom designs to nametags that wouldn’t otherwise be possible with Roblox’s default tags. For example, you could:

  • Add cosmetic titles that a player can display as proof of their achievements
  • Link the mainStat to a player’s role in a group to show their rank
  • Show a stat for a player (i.e. wins, points, etc.)
  • Give players roleplay names

Although the old system was mainly intended for roleplaying groups who wanted a low-tech drag-and-drop solution (in addition to beginning scripters looking to learn Luau), this new system is more focused on providing a more general module for anyone to use in their game.

2 Likes

cool, it’ll help people who do not know how to create one
albeit i personally will never use this

1 Like

v1.0.2 - Display Name Patch

A user recently requested that I add support for the recently released display name project, so I decided to incorporate it as an optional setting. A player’s username is still by default displayed underneath their display name while this is on unless it is overridden with changeTag.

Picture

Info, update guide, files, and more

3 Likes

Really good nametags, but they sit too high on my head. How can I move them down?image

1 Like

i really love thx for make it :heart: :grinning:

1 Like

Thanks for catching that! I’ll release a patch for that later today. It should be fairly straight forward, literally only one number in Configuration has to be changed.

EDIT: Pretty sure I just overcompensated for the tag to fit well with my avatar (I wear antlers).

2 Likes

You should try hiding the @username and fixing the positions when the player’s DisplayName is the same as their username.

1 Like

I did consider doing that, but I wanted everyone’s name tags to remain consistent so no one is wondering why someone doesn’t have a username name. Note that you can always override the display name manually if you’d like, and the module can be configured not to show display names.

On another note, I will probably not have a patch ready for the two main issues until tomorrow. Sorry for the delay!

1 Like

v1.0.3 - Group rank and nametag height patch

Fixed some issues with the recent display name patch. Also changed the default height for the nametag to correct the behavior that @zayeiru spotted. Note that this may cause some visibility issues for some users with large hats. If someone is interested in designing a more dynamic system for determining nametag height, feel free to fork and submit a PR.

Would you be interested in a free-model installer that automatically loads in the latest version using require()?
  • Yes
  • No, needs to be more secure
  • No, I like being able to intuitively fork my own version
  • No, for another reason (reply or DM me)

0 voters

Note that the GitHub version would still be maintained as the primary method of accessing Nametag+. The free-model would make it easier to update without having to manually copy/paste from GitHub. However, some people may be uncomfortable with a loader executing external code in their game.

Hi there, I love these nametags and despite small adding adaptations to suit my game, they have been perfect and not an issue. I was just wondering if at some point you might add a teams/group feature where a user can manually give themselves a nametag by doing a command.

I know I didn’t explain that well so I will give a clearer example. Let’s say you’re in a cafe game and you’re at a training, the host could use a command in order to give people tags such as trainer, supervisor, team a, team b. This is similar to a lot of name commands that come with free admin however ideally I think it would be better if the font could be adapted so fit with the rest of the game.

I am fully aware this would probably be quite a hard feature to programme that may not necessarily fit the audience you currently have, but it’s just a suggestion!

1 Like

The best way to do this would be to use .changeTag() and connect it to a chat event to enable the command (or alternatively, if you are already using an admin system that supports custom commands, set it up with that).

local nametagModule = require(game:GetService("ReplicatedStorage"):WaitForChild("NametagModule"))
local nametagConfig = require(game:GetService("ReplicatedStorage"):WaitForChild("NametagModule"):WaitForChild("Configuration"))
local updateRank = function(targetPlayer, rank)
	local tag = nametagModule.getTag(targetPlayer)
	if nametagConfig.options["useDisplayName"] == true then
		nametagModule.changeTag(tag, "ExtraStat", {Text = rank})
	else
		nametagModule.changeTag(tag, "MainStat", {Text = rank})
	end
end)
AdminChattedChangeRankEvent:Connect(updateRank)

Note that the above example requires you to process the chat message and extract the player and rank yourself.

Alternatively, if you don’t want to code a whole lot, changing the player’s team color will outline their name with the team color automatically (assume you are using the default configuration). This could allow you to tag players based on team. If you are interested in testing the behavior, the green block in the testing place demonstrates it.

2 Likes

Just tested it and it’s perfect, thank you!

1 Like

Very cool, Altough there is one thing that i don’t like very much about it. I think that It’s a bit large, but from there, it still looks awesome.

1 Like

Is it possible to give an effect to the chat tags? An example being a recurring rainbow color effect on the players name tag.

1 Like

This is an interesting idea. A bit outside the scope of the project, but integrating chat tags would definitely be a useful addition. I’m not an expert on how exactly chat tags work, so I’d probably need to do some more research. I’ve opened an issue on the repo here with more info:

Right now it seems like the best option would be to create an add-on to create this behavior because it would be really inconsistent if it was added to the main system.

My bad I accidentally said chat tags but meant the Nametags, I use them as titles and would like to give players a selection of title effects, can this be implemented with ease? Apologies for my typo but on a side note integrating chat tags would for sure be useful as well.

1 Like

This certainly is possible, though I wouldn’t expect anything to fancy (These are limitations of keeping the codebase manageable).

1 Like