Join scripts: Difference between revisions
Jump to navigation
Jump to search
(Created page with "== Joinscripts == Joinscripts are used to make a client connect to a gameserver. == Format == Joinscripts follow a specific structure in JSON for it to be parsed by the client. Make sure to keep the JSON valid and to not give it malformed data. To prevent JSON erroring, it is extremely recommended to use PHP's https://www.php.net/manual/en/function.json-encode.php json_encode function to create the JSON to be used by the client. Here is an example of a joinscript:...") |
No edit summary |
||
(11 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{WIP}} | |||
Joinscripts are used to make a client connect to a gameserver. | Joinscripts are used to make a client connect to a gameserver. | ||
== | == Lua Join Script == | ||
TODO | |||
== JSON Join script == | |||
=== Format === | |||
In 2016, Roblox had elected to use JSON join'script's rather then the legacy Lua joinscript. | |||
An example of what the client will receive as a joinscript as follows: | |||
{"ClientPort":0,"MachineAddress":"127.0.0.1","ServerPort":25564,"PingUrl":"","PingInterval":20,"UserName":"John Doe","SeleniumTestMode":false,"UserId":123456,"SuperSafeChat":false,"CharacterAppearance":"https://your-website-here.com/charapp-blahlahvlah","ClientTicket":"your client ticket","GameId":3,"PlaceId":420,"MeasurementUrl":"","WaitingForCharacterGuid":"26eb3e21-aa80-475b-a777-b43c3ea5f7d2","BaseUrl":"https://your-website-here.com/","ChatStyle":"Classic","VendorId":0,"ScreenShotInfo":"","VideoInfo":"","CreatorId":42069,"CreatorTypeEnum":"User","MembershipType":"None","AccountAge":3000000,"CookieStoreFirstTimePlayKey":"rbx_evt_ftp","CookieStoreFiveMinutePlayKey":"rbx_evt_fmp","CookieStoreEnabled":true,"IsRobloxPlace":true,"GenerateTeleportJoin":false,"IsUnknownOrUnder13":false,"SessionId":"39412c34-2f9b-436f-b19d-b8db90c2e186|00000000-0000-0000-0000-000000000000|0|something random|8|2021-03-03T17:04:47+01:00|0|null|null","DataCenterId":0,"UniverseId":3,"BrowserTrackerId":0,"UsePortraitMode":false,"FollowUserId":0,"characterAppearanceId":1} | {"ClientPort":0,"MachineAddress":"127.0.0.1","ServerPort":25564,"PingUrl":"","PingInterval":20,"UserName":"John Doe","SeleniumTestMode":false,"UserId":123456,"SuperSafeChat":false,"CharacterAppearance":"https://your-website-here.com/charapp-blahlahvlah","ClientTicket":"your client ticket","GameId":3,"PlaceId":420,"MeasurementUrl":"","WaitingForCharacterGuid":"26eb3e21-aa80-475b-a777-b43c3ea5f7d2","BaseUrl":"https://your-website-here.com/","ChatStyle":"Classic","VendorId":0,"ScreenShotInfo":"","VideoInfo":"","CreatorId":42069,"CreatorTypeEnum":"User","MembershipType":"None","AccountAge":3000000,"CookieStoreFirstTimePlayKey":"rbx_evt_ftp","CookieStoreFiveMinutePlayKey":"rbx_evt_fmp","CookieStoreEnabled":true,"IsRobloxPlace":true,"GenerateTeleportJoin":false,"IsUnknownOrUnder13":false,"SessionId":"39412c34-2f9b-436f-b19d-b8db90c2e186|00000000-0000-0000-0000-000000000000|0|something random|8|2021-03-03T17:04:47+01:00|0|null|null","DataCenterId":0,"UniverseId":3,"BrowserTrackerId":0,"UsePortraitMode":false,"FollowUserId":0,"characterAppearanceId":1} | ||
=== Format Properties === | |||
{{Ambox | |||
| nocat = true | |||
| type = content | |||
| text = This is not a comprehensive list of all the properties possible within a join script. For the time being, please cross reference with the join script above. | |||
}} | |||
{| class="wikitable" style="margin:auto" | {| class="wikitable" style="margin:auto" | ||
|+ | |+ Joinscript Properties | ||
|- | |||
! Property Name !! Purpose !! Example Value | |||
|- | |||
| UserName || The username of the connecting player. || "JohnDoe" | |||
|- | |||
| CharacterAppearance || The CharacterAppearance field of the connecting player. || "https://your-website-here.com/charapp-blahlahvlah" | |||
|- | |||
| CharacterAppearanceId || The CharacterAppearanceId field of the connecting player. || 1 | |||
|- | |||
| ServerPort || The port of the server the player will connect to. || 25564 | |||
|- | |||
| ClientPort || The source port that will be used to connect to the server. (0 = random) || 0 | |||
|- | |||
| MachineAddress || The IP of the server the player will connect to. || "127.0.0.1" | |||
|- | |||
| BaseUrl || The base URL of the game. || "https://roblox.com/" | |||
|- | |- | ||
! | | CreatorTypeEnum || The type of creator the place has. | ||
{| class="wikitable" | |||
|+ CreatorTypeEnum | |||
|- | |||
! Name !! Meaning | |||
|- | |||
| User || Owned CreatorId points to a user | |||
|- | |||
| Group || Owned CreatorId points to a group | |||
|} | |||
|| "User" | |||
|- | |- | ||
| | | MembershipType || The membership the user had signed up for. | ||
{| class="wikitable" | |||
|+ MembershipType | |||
|- | |||
! Name !! Meaning | |||
|- | |||
| None || No membership (non builders club) | |||
|- | |||
| BuildersClub || Builders Club membership | |||
|- | |||
| TurboBuildersClub || Turbo Builders Club membership | |||
|- | |||
| OutrageousBuildersClub || Outrageous Builders Club membership | |||
|} | |||
|| "None" | |||
|- | |- | ||
| | | ClientTicket || [[Client authentication]] || | ||
|- | |- | ||
| | | SuperSafeChat || Whether the connecting player has Super Safe Chat enabled or not. || false | ||
|} | |} | ||
INCOMPLETE | INCOMPLETE |
Latest revision as of 21:40, 2 July 2023
This page is currently a work in progress! Information on this article may be incomplete or inaccurate. |
Joinscripts are used to make a client connect to a gameserver.
Lua Join Script
TODO
JSON Join script
Format
In 2016, Roblox had elected to use JSON join'script's rather then the legacy Lua joinscript.
An example of what the client will receive as a joinscript as follows:
{"ClientPort":0,"MachineAddress":"127.0.0.1","ServerPort":25564,"PingUrl":"","PingInterval":20,"UserName":"John Doe","SeleniumTestMode":false,"UserId":123456,"SuperSafeChat":false,"CharacterAppearance":"https://your-website-here.com/charapp-blahlahvlah","ClientTicket":"your client ticket","GameId":3,"PlaceId":420,"MeasurementUrl":"","WaitingForCharacterGuid":"26eb3e21-aa80-475b-a777-b43c3ea5f7d2","BaseUrl":"https://your-website-here.com/","ChatStyle":"Classic","VendorId":0,"ScreenShotInfo":"","VideoInfo":"","CreatorId":42069,"CreatorTypeEnum":"User","MembershipType":"None","AccountAge":3000000,"CookieStoreFirstTimePlayKey":"rbx_evt_ftp","CookieStoreFiveMinutePlayKey":"rbx_evt_fmp","CookieStoreEnabled":true,"IsRobloxPlace":true,"GenerateTeleportJoin":false,"IsUnknownOrUnder13":false,"SessionId":"39412c34-2f9b-436f-b19d-b8db90c2e186|00000000-0000-0000-0000-000000000000|0|something random|8|2021-03-03T17:04:47+01:00|0|null|null","DataCenterId":0,"UniverseId":3,"BrowserTrackerId":0,"UsePortraitMode":false,"FollowUserId":0,"characterAppearanceId":1}
Format Properties
This is not a comprehensive list of all the properties possible within a join script. For the time being, please cross reference with the join script above. |
Property Name | Purpose | Example Value | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
UserName | The username of the connecting player. | "JohnDoe" | ||||||||||
CharacterAppearance | The CharacterAppearance field of the connecting player. | "https://your-website-here.com/charapp-blahlahvlah" | ||||||||||
CharacterAppearanceId | The CharacterAppearanceId field of the connecting player. | 1 | ||||||||||
ServerPort | The port of the server the player will connect to. | 25564 | ||||||||||
ClientPort | The source port that will be used to connect to the server. (0 = random) | 0 | ||||||||||
MachineAddress | The IP of the server the player will connect to. | "127.0.0.1" | ||||||||||
BaseUrl | The base URL of the game. | "https://roblox.com/" | ||||||||||
CreatorTypeEnum | The type of creator the place has.
|
"User" | ||||||||||
MembershipType | The membership the user had signed up for.
|
"None" | ||||||||||
ClientTicket | Client authentication | |||||||||||
SuperSafeChat | Whether the connecting player has Super Safe Chat enabled or not. | false |
INCOMPLETE