I love TextChatService, so much better than the old one!
I’m sorry for the developers that are using custom chat
I literally just finished reading about the legacy chat
I wonder if unmaintained games will break.
The new chat system isn’t terrible but does anyone have a better method of figuring out if the chatbox is visible? I have a radio UI that I adjust the height of depending on if the chatbox is visible or not and with the old system I could just check the visibility directly in playergui but dont have an efficient method of doing so in this system
StarterGui:SetCore("ChatActive", false)
Player:SetAttribute("chatBoxHidden2", true)
Player:SetAttribute("chatBoxHiddenConfirmed", true)
Player:SetAttribute("lastFocus", tick())
game:GetService("TextChatService"):FindFirstChild("ChatInputBarConfiguration"):GetPropertyChangedSignal("IsFocused"):Connect(function()
local ChatInputBarConfiguration = game:GetService("TextChatService"):FindFirstChild("ChatInputBarConfiguration")
if ChatInputBarConfiguration.IsFocused == false then
local start = tick()
Player:SetAttribute("lastFocus", start)
Player:SetAttribute("chatBoxHidden2", false)
Player:SetAttribute("chatBoxHiddenConfirmed", false)
repeat
task.wait()
until tick() - start > 4 or Player:GetAttribute("lastFocus") ~= start or ChatInputBarConfiguration.IsFocused
if Player:GetAttribute("lastFocus") ~= start then
Player:SetAttribute("chatBoxHiddenConfirmed", false)
return
elseif ChatInputBarConfiguration.IsFocused then
Player:SetAttribute("chatBoxHiddenConfirmed", false)
return
elseif tick() - start > 4 then
Player:SetAttribute("chatBoxHidden2", true)
Player:SetAttribute("chatBoxHiddenConfirmed", true)
end
else
Player:SetAttribute("chatBoxHidden2", false)
Player:SetAttribute("chatBoxHiddenConfirmed", false)
end
end)
local lastChatActive = StarterGui:GetCore("ChatActive")
local chatActivatedAt = nil
local check = nil
RunService.RenderStepped:Connect(function()
local chatActiveNow = StarterGui:GetCore("ChatActive")
if chatActiveNow == true and lastChatActive == false then
Player:SetAttribute("chatBoxHiddenConfirmed", false)
chatActivatedAt = tick()
elseif chatActiveNow == false and lastChatActive == true then
Player:SetAttribute("chatBoxHiddenConfirmed", true)
end
if chatActivatedAt and tick() - chatActivatedAt > 4 then
local lastFocus = Player:GetAttribute("lastFocus")
local timeSinceLastFocus = tick() - lastFocus
local ChatInputBarConfiguration = game:GetService("TextChatService"):FindFirstChild("ChatInputBarConfiguration")
if timeSinceLastFocus > 4 and not ChatInputBarConfiguration.IsFocused then
StarterGui:SetCore("ChatActive", false)
Player:SetAttribute("chatBoxHiddenConfirmed", true)
chatActivatedAt = nil
check = nil
else
check = tick()
end
end
lastChatActive = chatActiveNow
end)
rip any game that needs a custom chat system
For anyone using LegacyChat, that feel like still using LegacyChat:
(Includes a more modern look, bug fixes and features)
Why is TextChannel:SetDirectChatRequester() returning the error “:SetDirectChatRequester() is not enabled”? That api should be working by now, unless (we) got something wrong
Update
Hopefully it works now (pretty sure it didn’t work before even when calling it before adding TextSources)
One aspect of the “migration” component that’s worth delving into more detail is the mechanics on how it is intended to work.
The current strategy is not to simply set the TextChatService.ChatVersion to TextChatService, as that has a potential of breaking and disrupting many older experiences.
Instead we are exploring a “compatibility mode” that will continue running your old legacy chat scripts in the background but preventing them from being visible. This will work most often if your chats are integrated well into the top bar’s chat button. In case we cannot hide your old chat, we also plan to no-opt the ChatService:FilterStringAsync and TextFilterResult:GetChatForUserAsync responses to be an empty string. The plan is to instead show the default TextChatService UI in place so users can still socialize in experiences that were not able to be updated in time.
Running two versions of chat in an experience is non-ideal, even if one is hidden, so we do ask that if creators can they manually migrate to TextChatService for the best results, however Roblox is committed to backwards compatibility.
finally…
though… where are meshpart emission maps ( please roadblocks i need this)
also how would this be applied? disable chat for those who are on the list? disable messages for those who sent it from the list???
Will the legacy Chatted event be deprecated or broken after the deadline? Whilst my game now uses the new TextChatService, I still rely on the Chatted event in a few places within my game for it to function correctly.
Cue everyone not understanding that you can still use custom chats with this, you just have to pipe messages through TextChatService.
yeah chatted event is completely broken for textchat
so you have to change it to onincomingmessage
Very nice, i love textchatservice. Keep up the good work!!
TextChatService may be new, but some games rely on legacy because of its certain features.
Not a fan of this.
Any hope and plans on fixing this
And adding a feature to update text properties live, instead of each time when hovering over chat?
Re-posting these feature-requests since the current state of TextChatService still unfortunately does not cover my needed use-cases. It’d be ideal to at-the-minmum exclude these sort of cases for needing to use TextChatService until a more solid solution can be implemented:
I really dont like how Roblox have still not achnowledged the lack of functionality parity and huge performance and API issues with the new chat service, despite many developers stating them in the previous post about this change.
No organisation should start a change or migration of a critical service before it can fully replicate all functions of the old system, and yet TextChatService very much fails this key checkbox required for any technical change.
Our released game uses animated UIgradients in the chat, which right now isn’t possible—so I’d like to ask again to keep this as a high-priority feature.
I’d also like to mention that it seems you aren’t able to add UIgradients to the actual message, and only to the prefixed text. We worked around this by setting the text to “ “ (setting it to “” caused it to still render the default text), and setting the prefix text to the actual message content.
Could you please update the dialog ui
Most of this post is still kinda confusing and unclear in some areas, like are we allowed to keep custom chats with textchatservice api or will that also get removed in april? Are there gonna be full gui customization options for the textchatservice or are we just stuck with the ugly default look? And much more
No, i will never migrate to TextChatService, as it is an useless and stupid chat service that nobody needs. I do not agree with these changes and I will refuse to migrate to that ugly new text chat service. As a 2017 roblox user, I do not agree to these changes and i do not wish to migrate in my game.
Forcing us won’t help. I will find a way to bring back the Legacy Chat System on Roblox. No matter what. I do not let me forced by a stupid company that doesn’t care about their community.