Winry Chat - Update Log for Version 1.4
After the hotfix dropped, we got to work straight away on the newest version. There are a list of features we’re looking to include over time, as and when possible. This release focuses on Gamepad Support and an Integrated On-Screen-Keyboard for testing and devices that don’t have an on-screen keyboard.
We’re also deprecating the GetKeyCodeIdAsEnumValue(number) function, as we noticed there is a workaround with the Studio Command Bar to set Enum attributes to scripts. While we do intend to remove this function later, it will still be made available to developers who wish to use this function for the time-being.
This update matters on a personal level too. During my studies at university, I developed a plethora of custom tools for Unity Engine and Unreal Engine that allowed for better Controller/Gamepad support. Some of which are open-source to this day. By adding this support for gamepads, we hope to expand the accessibility of ROBLOX’s Chat System for platforms that otherwise may not be able to use it. Unfortunately, we can’t do this for PlatformChat or ROBLOX’s integrated features.
New Features
-
Gamepad Support for XBOX, PlayStation and Nintendo Switch accessories. We see you, console gamers!
-
WINRY VIRTUAL KEYBOARD - An Integrated On-Screen Keyboard for all platforms. This has primarily been designed for ROBLOX Studio, ROBLOX for Desktop (UWP) and ROBLOX for 64-bit Windows, however, it should work for all paltforms regardless. Instead of this just being an integrated UI, you will be able to copy this new On-Screen Keyboard independently of WinryChat and adapt it to your own works.
Official XBOX, PlayStation and Nintendo Switch Pro Controllers have been tested with this, and work as intended. If unexpected behaviour is encountered, please report the full accessory title and encountered behaviour.
New Settings (Attributes)
FocusChatKeyCode : Enum.KeyCode
Changes the keyboard button used for focusing chat. Default: Enum.KeyCode.Slash
GamepadFocusChatKeyCode : Enum.KeyCode
Changes the keyboard button used for focusing chat. Requires GamepadSupportEnabled to be true to have an effect. Default: Enum.KeyCode.DPadUp
ToggleChatVisibilityKeyCode : Enum.KeyCode
Changes the keyboard button used for showing and hiding chat. Default: Enum.KeyCode.DpadDown
GamepadToggleChatVisibilityKeyCode : Enum.KeyCode
Changes the keyboard button used for showing and hiding chat. Default: Enum.KeyCode.DpadUp
GamepadSupportEnabled : boolean
Whether Gamepad Support is enabled for the WinryChat UI. Includes built-in UI Focus Navigation support. Default: true
Changes
-
FocusChatKeyCodeId has been removed and replaced with FocusChatKeyCode, an attribute with the type
Enum.KeyCode
.
-
GetKeyCodeIdAsEnumValue(number) now marked as DEPRECATED.
- The placeholder text for the Text Input Field now uses
UserInputService:GetStringForKeyCode(Enum.KeyCode)
instead of the “Name” property of an Enum.KeyCode
value.
- Placeholder text for the Text Input Field now automatically changes it’s wording depending on if the player is using a Gamepad or Keyboard and Mouse.
Closing Notes
This was a triumph. I’m making a note here, huge success. It’s hard to overstate my satisfaction…
Seriously. I stumbled upon GuiService looking for something else 7 hours ago now… wrote this update devlog as I was going along and now we’re at release at 4:10 AM GMT on 31/01/25. I spent the best part of 7 hours designing, debugging and polishing an on-screen keyboard for everyone to enjoy. And big note!
We’ll be Open-Sourcing Winry Virtual Keyboard soon after on it’s own for developers to use in their experiences, but it’s shipping with WinryChat 1.4 first. This virtual keyboard has Mouse support as well, but works independently of your keyboard. It also resizes based on your screen size!
All completely for free, and it will follow the same NO-ATTRIBUTION License as WinryChat does!
Winry Virtual Keyboard can be found alongside Winry Chat as “OnScreenKeyboard”.
Example Images - WinryVirtualKeyboard
Lastly. You will be able to have this designed entirely to your preferences too… Though neon pink is not recommended and is for demonstration purposes only.