Developer Deeplinking [Beta]

This is true. Because the new desktop client is more of an app, deeplinking support made a lot more sense, as you can link to a lot more things in the app.
My understanding is that it does not permanently keep you in the new desktop client. Let me know if you see other behavior

5 Likes

Could this be used in a malicious way, e.g. A Model has some hidden “features” when a certain link is used to enter the game for backdoor access

3 Likes

There is currently no URL parameter for joining a specific server available at the moment.

5 Likes

You can use launch data for when you’re running social media campaigns to understand the impact of your various marketing channels! You could even tag a different one to every graphic or tweet you make to understand which marketing effort has the biggest impact.
That’s just one example, I’m sure there’s many more

7 Likes

ok, but i think this thing is cool, now when creating discord bots with deeplinking, it can open the client and instantly play the game.

7 Likes

It’s a bit confusing. I don’t have access to the new desktop client, and had to sign in through the new app. I’m usually familiar with the client automatically authenticating from the signed in user on the website. It’s definitely a bit weird, and may throw off those that have security on their mind.

I was able to verify the in-app login was legitimate (no in-game menus, “Terms” and “Privacy” links opened in my browser, etc…) but definitely threw me off for a bit. Other than that, this is a great feature to have! I also appreciate having the ability to have players immediately open the game. It’s now possible to have something to follow a specific player into a game if they are running into any issues, and help track user acquisition!

Oh also, when leaving, it goes through the on-boarding stuff, which disappears after the player joins another game through the site. Home button is no longer an option. Confusing, but not a big deal I guess.

7 Likes

Now this… This will be of great help to teams. The most obvious solutions being instructions for server navigation or pre-made inputs.

5 Likes

Can these links be used on the chat inside the app? (many links are randomly censored)
Are you planning on giving developers the ability to add data to the link sent with the core invite gui?

2 Likes

I’m assuming it’s limited to 200 bytes and you can use JSON for more complex data, if so this should be split into two different bullet-points, since right now this reads as ‘you can only send 200 bytes but if you want more, you can use JSON’

6 Likes

This is good feedback, particularly around the authentication from web to client on desktop. Thanks for the call out, i’ll pass it along to the relevant teams

5 Likes

Update to clear up any confusion. Your assumption is correct.

4 Likes

Also, while I am happy that this feature exists (I had a game that relied on game-codes which can now use this feature to automatically open the correct game-code) I am unsatisfied with the 200 byte limit, I would love if Roblox could support more than this for long json encoded strings, for example, in a promotion I could have a referrer, refferal-platform, discount-code, promotion-type, and room-code (which is almost certain to bypass the limit when encoded) all in the same url, preferably the only limitation should be the url max size of 2,500 characters that most browsers impose.

5 Likes

Will there be any way for us to allow users to copy these links (client-side) to their clip-boards in-game? Ideally would be cool to generate links in-game that users can then share.

Doesn’t need to be full clipboard copy access, just an API to copy a link to the clipboard using this feature e.g Player:CopyLaunchDataToClipboard(launchData: string) - as an example, Player:CopyLaunchDataToClipboard("exampleDataHere") would give the clipboard https://www.roblox.com/games/start?placeId=<placeId>&launchData=exampleDataHere


As an example use case - in Islands we have it set up so that users have “join codes” (e.g. POP123) for their islands, which they can input into some UI to join each other in-game with. It is quite a common thing for users to share out their join codes to their friends, or to the wider community (especially with published islands/shops) and join each-other through those.

I feel like a case like this is a good use of this sort of feature, and could simplify the process of this quite a bit by allowing users to just share these join “links”, to allow other players to join directly without needing to load into the game first, then open a UI to input these codes.

20 Likes

Interesting, maybe this could be used somewhat like a substitute for codes :eyes:
Will be interesting to see what people come up with :slight_smile:

2 Likes

How am I supposed to know if I formatted the launchdata correctly? I have no idea what any of that means

You should have given us tools to use or at least an explanation; pretty sure launchdata can’t just be plain text

1 Like

We currently support copy/paste in text inputs, which I believe you can use in this use case.
There are currently no plans for API support for a “copy to clipboard” functionality. Hope that answers your question!

1 Like

If you don’t mind me asking why this is the case even if it was locked behind plugin access only would further improve our experience in studio with the assistance of plugins.

2 Likes

You can use a URL decoder to see what that string will look like when passed into the client. There are many URL encoders/decoders you can utilize.
We’ll look to make the documentation more clear on this point.

2 Likes

No offence, but this isn’t really intuitive, the fact that we have to ask a player to ‘pretty please highlight all of this text, hit ctrl + c and then it will be on your clipboard’ isn’t good ux at all.

8 Likes

I tried this before asking and didn’t get the result I was looking for

okay, I think I get it now; I’m supposed to append the encoded data at the end of the URL

3 Likes