Gamepad Virtual Cursor - Studio Beta

This feature is really good! Just wondering, is it not live yet for players to test? I have it enabled in my Studio Beta feature and it works fine in studio Play Test mode. However; when I actually play the game through ROBLOX Player, I get the old wonky UI selection feature.

or is it just me…?

2 Likes

It’s currently in “Studio Beta” so there currently testing within studio only and won’t be added till it’s out of beta.

3 Likes

Question - are you using proximity prompts at all? We added the ability to customize them yet we don’t see any developers actually customizing them in their games. Generally we need to prioritize the work we do, and it isn’t clear how often the cursor customization would actually be done.

Are either of you using a customized mouse cursor in your games?

1 Like

I can’t really say for other developers but myself I use the customization all I can with proximity prompts. Every time I use them for each of my projects they contain a new style

Example 1 - https://gyazo.com/708e524316a2fa72b4c7327119158e25
I used the proximity prompts feature for handling the core half of the interaction system then I used the Custom style mixed with a bit of checking for duplicates to add to the table of interactions on that interaction.

Example 2 - https://gyazo.com/ada8a7568951d0660eaa2ee7682a9ec8
I made a custom UI here as well. UI behind it is fairly bad and could use improvements but this was one of the first times I made it.

Example 3 - https://gyazo.com/21e985c2746c728ff2ddbe30dcc4c77e
This is for one of my current projects same UI as an example two but refurnished the coding half.

Example 4 - https://gyazo.com/8b530e015427724ba2ffaa0beb1c83ab
I’m working on a side project for a prison group and the interaction system is also using Proximity Prompts with custom UI.

You may not see developers customizing their prompts cause they are either not sure how to or they’ve made their own interaction system. I spent maybe a week learning the events and understanding of the ProximityPromptsService just to allow for more advanced UI.

And on Example 3 that game supports all platforms, Consoles, PC, Mobile, Tablet and with the UI being mostly white and customizable through the users UIColor settings It does help us developers Improve the quality of our games through using these systems. Like the ACM menu I love the ability to customize every aspect of our game Including core UI. And sadly the ACM menu wasn’t supported with recent updates such as UICorner or UIGradient neither was the UI inside the PlayerGui for better customization.

And for the

Are either of you using a customized mouse cursor in your games?

I actually disliked the default shift-lock Icon so I dug into Roblox Images and found another and ended up replacing that with a + like symbol as well changing the Keybind to CTRL instead of Shift to allow a shift function.
https://gyazo.com/266a3a9f1301bd2014abc8249f38ed98

4 Likes

As much as it hastens development for consoles, I have to say. I strongly disagree with this, and I am saying this as a player, why?
This gives the developers as excuse to not make console specific controls. Why make a functional menu when that uses directional buttons to navigate when there’s a virtual cursor? There are none, no games that uses virtual cursors to navigate menus, they all use directional buttons, all UI elements accessed without a cursor, because that’s best for the player experience. With this update, it seems like developers can ignore console UX altogether since it solves the problem for them. As much as it makes it easier to develop, the players will definitely mind.

I once gotten around the limitations using a controller as a mouse, and it was a terrible experience. Games with menus designed for mouse/touch isn’t the same for controllers, they are significantly different.

Instead of using this: I daresay, anti-pattern, Roblox should instead focus on making it easier to navigate UIs on controllers. Even though Roblox already provided the tools to implement this, it is rare for a game to use it.

Please, even if there’s this option, don’t ignore this huge UX problem by implementing a native console menu navigation.

3 Likes

That is wrong. Heavily wrong. I can’t exactly name the games, but many games I have played before on xbox had a console mouse. You would be suprised at how many games do this. Please don’t trash this idea, the UI navigation on console by default is trash enough. A mouse cursor can make UI so much easier to use on console.

Also, here is a game that has an xbox mouse:
https://www.roblox.com/games/2984072291/Zombie-Stories-Beta

EDIT: Here are some topics that have use cases + resources:

3 Likes

Outside of Roblox? None, professional game studios that has a dedicated UI/UX Designer knows that using a virtual cursor for interacting with UI isn’t the best for player experience, simply put-- “awkward to use” isn’t enough to describe it.

If I were to increase the scope of a virtual cursor, the closes that comes to mind are world maps. Some games allows world maps to be accessed with a list. [Fig. 1] Rarely, some even combine button controls for UI action buttons and a virtual cursor. However, they are VERY different, you know why? These virtual cursors can NEVER, and EVER allow the user to use a confirmation button to activate a button. They are ALWAYS binded to a key. Also, they are locked inside the surface of where they operate, cursors can never leave their surface to interact with UI buttons.

[Fig.1] Valkyria Chronicles allows the player to access the map using a list, using shoulder buttons to tab through pages and directional buttons to move the selection. In Command Mode, it is entirely possible to select troops without the use of a virtual cursor.

UI/UX Designers existed and experimented with UI navigation, it’s best to follow what the professionals do, because they know what they’re doing. With knowledge of game literacy(yes, that concept exists), players are left with some instinct that some buttons always does regardless of the game, it always stays consistent game-to-game. X and Y buttons always shows an info box, or an item context-sensitive action. B always backs out, and A always confirms. (Exception for the Japanese players. A is Back/Cancel while B is Confirm.)

Let’s talk about the example game you provided, frankly, the game can be made better if it had console navigation controls. Seriously. Programming it for console without the use of a virtual cursor would be easier, even a game designer like me with beginner programming skills can do it. It is a fancy tech demo, that’s what it is. You know how it would be easier if you could use directional buttons to navigate the UI instead? There are software that allows game controllers to be used in place of a mouse, and let me tell you, they’re very awkward to use. You should try using a controller to navigate the web, even caret browsing then seems like the better option.

Roblox provided CAS to develop for console, why not use this terrible virtual cursor when that exists.

When you do know of a game outside of Roblox that uses virtual cursors to activate UI elements (somehow), I’d say that the devs could do better, it’s just a lazy way of tackling a software design problem. Again. This is a UI/UX design smell.

Edit: Looking at your post again makes it seem like you conflated the terms use case and usability. Just because this solution has proper use cases for it doesn’t mean that its usable.

2 Likes

Sorry I thought this was in roblox.

Good point, they did provide CAS. I guess the only argument against that would be that some people can’t script using CAS but then again, to make functioning UI you need to script. I apoligize, I read the post incorrectly.

Will you have a way to change it to the old function of the view button?

I use the proximity prompts, but I don’t customize them.

Great to hear, thank you for the great feedback.

1 Like

One note on shift lock - suggest you figure out the best “default” controls for your game and implement that, rather than shift-lock. There is also a nice option for cameras in the system menu settings, where you can toggle the camera so you can move the camera without holding the right trigger. Could use that as the default for your game if it makes sense.

2 Likes

Appreciate your POV. The reality is developers don’t always have the time to do “everything”, if they are going to school, working a full time job, etc. This is a nice fallback if developers don’t spend time working on specific support for gamepads. Try playing Destiny, they make use of a virtual cursor, among many others.

7 Likes

The virtual cursor beta is ending soon, thank you to everyone who tried it and gave feedback! The next step for virtual cursor is a developer setting to opt in or out of the feature in their experiences. Initially it will be just opt in but will move to being enabled for all once developers have had time to incorporate virtual cursor. We know some games won’t work well with virtual cursor and we will work directly with those developers to resolve their issues and concerns. More details coming soon!

2 Likes

If I may ask, what will the customization abilities have been added alongside this update?

Hey! We appreciate the feedback around customization you have! We’re focusing on making sure we can get virtual cursor working well in all games. We want to avoid making any permanent changes (like releasing a fully developer facing API) while we see how virtual cursor interacts with more games on Roblox. We are looking at the feedback about customization though, but for now the functionality will be largely the same.

2 Likes

Hia! Any ETA on when this featured will be enabled?

Hello! We’ll be releasing the opt in/out setting soon to enable virtual cursor in your experiences, but if you’re asking about when the feature will be the default system, don’t worry, we don’t plan on doing that any time soon.

1 Like

Awesome! So this is something I’ll be able to use in my production experience soon?

That’s correct! We’ll post a new announcement once the changes are live!

2 Likes