Quickchat radial menu

The past few days i’ve been working on making a better version of the old roblox safechat that they used to have. Ever since people cant easily chat with each other anymore, it became hard to communicate in teamwork games, roleplay games and in general. That is why I made a quickchat system that allows everyone in your game to say predefined phrases.

The phrases are sorted in categories, which can be accessed via a radial menu. Even better is that it is very easy to implement your own categories and phrases, and categories can be nested as deep as you want. Each category can hold a maximum of 8 subcategories or phrases.

I made it work with gamepads, touch input and of course with a mouse.
https://create.roblox.com/store/asset/75860042834082/Quickchat-Radial-Wheel

13 Likes

I love this system
Also how do you actually do the radial segments system
Is it just images

1 Like

Firstly, this looks really nice and is clearly the sort of thing games need. However, having read this post: Quick Chat [Chat with pre-defined messages!] It is unclear to me if this is officially allowed yet…

I know at a minimum Roblox have mentioned their commitment to this on a roadmap, but it would be great if the acceptability of it could be clarified to avoid unfortunate moderation actions.

2 Likes

I have all segment sizes in one decal, and then use rectsize and rectoffset to pick the correct one. theyre all imagelabels, and depending on your mouse position it is calculated if youre hovering over an item

1 Like



(Also, long time no see, guy whose server I moderated for 3 days, after being fired for abusing my power)

3 Likes

Omg, It’s the creator of Innovation Inc. Spaceship


perfect, now we need this back too. (ignore that I stole this image from another devfourm post)

2 Likes

I asked someone who asked roblox staff and they came back to me saying pre-made message systems like this are allowed, I don’t know about this specific implementation but the concept is allowed. :+1:

1 Like

do you know if the phrases are auto localized? (translated to different languages)

this is so awesome
ill DEFINITELY be adding this into all my games
thanks so much

this works so well, but the mouse stays locked and I can’t move it when in first person

Also going through your most recent responses for an option might also be a good idea to implement

This can be simply fixed by adding a button with 0 size and turning modal on when the menu is open

Yeah, I did know that but it would be a good idea to implement this into the main script too

image
The colors don’t match when player is in a team. I can fix this easily but I thought I’d let you know, since this will happen to people often

Also, how to use it with gamepad? I can’t select options, but maybe I just don’t know how to use gamepads

1 Like

This looks like a great resource? Is it possible if you can add some simple ui animations?

1 Like

Oh youre right! Also, it uses the new contextaction API, but because that is still in beta, there is currently a bug that input detection from the gamepad gets sunk into other inputs.

1 Like

This module is how I learned that there’s this new system, lol. I’ve never ever used controllers before so it was challenging, but I wanted my project to be everything-compatible…

For people who have the same problem with gamepads, I solved it by temporarily using ContextActionService for this specific input instead:
(event on line 296 won’t be fired anytime soon due to roblox bug)


(so I added CAS Binding at priority on line 386)

And also unbinded it in CloseMenu() function.

Honestly I’m not a fan of new Input Action System, I think it’s a downgrade from CAS… The only good thing about it is how easy it is to disable and enable InputContexts, while with CAS I would need to unbind actions or add more checks. Which is ironic, because Context Action Service doesn’t have an easy way to enable/disable inputs depending on context…

1 Like