Superceded by BetterChat V3 | Discontinued
Old post
Warning
I want to acknowledge this version will be soon outdated by the predecessor V3. I’m doing this because this version is not easy to maintain and it’s entire system is inefficient in my opinion. Check the current solution of this thread for any updates. V3 is an entire ground-up rewrite with significantly better user-experience in mind than what this project is. I’d recommend using that over this when it’s released in it’s entirety.
Introduction
Hey everyone! I’ve been working on a cool custom chat system for roughly the past month. I believe it’s stable enough for release as of now. This was branched off of my chat fork that I released. This one is feature-packed, easier to set up, and more functionality for developers. It’s also fully open-sourced if you want to see how it works. Although, I may not recommend learning from my code since it’s messy and this is my first ever custom chat system.
Features
Better Chat is feature-packed with a lot of features. I’m planning on introducing more features as the system grows in popularity.
- Highly customizable configuration that allows you to configure a lot of aspects of the system.
- Rich Text support with a basic markdown format that allows you to use bold, italics, bold italics, strikethroughs, underlines, and even a custom color tag format.
- Support for Roblox’s new attribute system to allow developers to quickly modify specific users chat properties without the need of making a plugin or forking.
- Support for Roblox’s privacy settings and terms. This means that the system will not work on Xbox, does not allow you to speak to people you have blocked, and will not function if your privacy settings have chat disabled.
- A basic permissions system that allows you to quickly give specific groups of users specific chat colors and chat tags.
- The ability to select messages in the chat and copy/paste parts of them.
- A plugin system that allows you to modify the system’s internals without requiring to fork the source code. This allows you to send custom messages, create new channels, quickly make Discord webhooks, and more! I’ve created some plugins that’ll be included in this post for developers.
- A custom Rich Text supported bubble chat system that has an API included using the plugin system for developers to give non-player-objects the ability to use chat bubbles.
- An emoji dropdown menu that allows you to quickly send emojis in the chat to further express yourself.
- DisplayName support, with an ability to hover over display names to reveal the actual username, and an option to make them italicized. If you don’t like display names, you can disable them in settings.
- A player mentioning system that comes with an autofill dropdown menu when mentioning a user.
- Support for most administrative systems such as HD Admin, Kohl’s Admin Infinite, and more. Some systems may require a custom plugin to work properly, but once done it’ll work smoothly.
- An automatic scaling system that allows the UI to function and maintain the same look on all devices.
- There are many more features coming in the future, and that I’ve probably forgotten to list.
Showcase
Here’s a showcase that features the UI, user mentions, and rich text.
If you don’t like the roundness of the UI, you can easily configure that in the settings!
Want to try it out first?
If you want to try it out first before putting it into your game, you can check out the official testing center! This game will feature updates before they’re pushed out to the general public.
BetterChat V1 [deprecated] - Roblox
Installation
If you think the system looks cool, it’s also super easy to set up in your games! Let’s get into how to install it in a few simple steps.
- Take the official loader model and add it to your game, preferably in ServerScriptService.
- Go to the explorer, click on the “Chat” service and disable “LoadDefaultChat.”
- You’re done! You can now configure the system with the settings module and add your plugins!
Rich Text Basics
- Italics are easy to do, here’s an example:
*italics*
or_italics_
- Bold text:
**bold**
- Italic Bold text:
***italic bold***
- Underlines:
__underlines__
- Strikethrough:
~~strikethrough~~
- Color text:
(Really red / brick color support)
,(255,0,0 / RGB support)
,(#FF0000 / hex color support)
Documentation
If you want to begin creating your own plugins, check out our official documentation! This documentation will have information on the custom plugin API. If you have any requests for the API system, don’t hesitate to contact me.
Official Plugins
I’ve created some plugins using the API system and these are now public.
Plugin Name | Description | Plugin Type |
---|---|---|
HD Admin Wrapper | By default, HD admin does not work with the chat system, but this plugin makes HD admin work with the chat system perfectly. | Server |
Friend Notifier | This plugin is by default one of the plugins that’s here when you insert the loader. It will create a system message when your friends join the game! | Client |
Credits
@Repotted - UI inspiration + base ideas.
@RogChamp - ISO8601 method for the webhook system.
@PysephDEV - Custom wait function.
@Xsitsu - Name color system implemented into the default chat.
@TheGamer101 - The emote command in the chat system, also part of the default chat.
@IrakliDoesStuff - First tester + a large majority of the ideas.
Resources
Discord Server
- Join our official Discord server for support, update information, and more!
Bug Reports + Support
If you experience any bugs or need support with the system, do not hesitate to contact me. You can contact me with the following:
- Replying to this post
- My discord (Toxic#2799)
- PMing me on DevForum
- Joining the Discord Server
Ideas
If you have any ideas about the system, join our Discord server. I’m down for listening to community input on new ideas!
Polls
[poll type=regular results=always public=true chartType=bar]- Yes
- No
- Yes
- No
- Yes
- No