game.IsConsoleServer

You can presuppose that if someone is an Xbox owner then they will not know how to properly take care of a pet. (I’m speaking from personal experience.)

6 Likes

It’s not a good example of a use case because I chose to store tutorial text on the server. I take back what I said.

You describe it in the past tense. Is it no longer a requirement? If so, is the current blocker just time/resources?

I’m not sure if it’s still a requirement.

@Seranok Is there anything in the JobId that might indicate the server is an xbox one?

Nope.

I don’t know for sure, but I believe the requirement was lifted just under a year ago (or at least for one game it was).

Rocket League was the first Xbox game able to play with PC players. Not sure if any more have been allowed since then.

2 Likes

So a little off topic (maybe not???), but why can’t we just unlock this: http://wiki.roblox.com/index.php?title=API:Class/UserInputService/GetPlatform

It does exactly what this thread is looking for, it’s already implemented requiring very little work to unlock, and … well, it has actual use cases. Some examples I can quickly list are:

  • rewarding players for using a specific platform
  • ensuring the User Experience is correctly adjusted to the platform type, regardless of being “cross-platform” (cause lets face it, even you build a “common core” like Microsoft did with Windows 10 and made the API more UWP-like, there’s still going to be times where knowing exactly what platform you’re on will allow developers to correctly adjust their games for the best experience)
  • another random idea i had but forgot, so ill edit it in later if i remember (whoops)
1 Like

Engineers are trying to force proper design. They’re afraid users will use it to determine input type instead of using the appropriate methods. There have been a number of threads providing good reasoning for determining user platform (e.g. the one I linked earlier), so now it’s just a matter of resources and whether the client team values preventing one of the very, very many ways the API can be misused over the use cases presented on these threads.

1 Like

GetPlatform doesn’t do what this thread is looking for. If it was unlocked, it would always return Windows on game servers because that’s what they run on. You can already make your own GetPlatform by hacking at the RNG.

We want to be able to tell if the server specifically hosts Xbox users as a stopgap measure until Roblox unifies Xbox and PC servers.

2 Likes

I personally just use UserInputService & see what kind of input devices are connected

Devices:
Keyboard = Computer
Gyroscope + TouchEnabled = Phone
Gamepad + NO Keyboard = Console

Then I send the first player’s platform results to the server. Works fine for me (at least as of what I know of)

1 Like

I wrote a entire module to return the device being used based on input and it follows with a Keybind name like:

If player input for BIND_NAME has DEVICE then does input equal DEVICE_BIND_VALUE.

Or in other words I have a folder (Bind Name), and it contains 2 strings (Keyboard, Gamepad) and each has a string based on the bind desired (Keyboard is ‘E’, Gamepad is ‘Y’ value). If input:Match(“Aim”) -> device gets interpeted, looks at folder, compares, validates.

But I would still like to have access to “Is Keyboard” enabled and a InputObject data type for what the input device was.

This exists: http://wiki.roblox.com/index.php?title=API:Class/UserInputService/KeyboardEnabled

3 Likes

Presence of a mouse or keyboard isn’t useful for this.

SX425

1 Like

We just announced that we are moving towards unifying our entire platform under cross-platform play. See this thread.

1 Like