Client-Side Scripting and Server-Side Scripting: Difference between revisions

Defining some best practices for old ROBLOX
(Better code)
(Defining some best practices for old ROBLOX)
 
Line 2: Line 2:


The '''client''' is the software that you and other players run on the computer in order to play the game. Client-side scripts run on every player's computer.
The '''client''' is the software that you and other players run on the computer in order to play the game. Client-side scripts run on every player's computer.
 
== Servers ==
==Servers==
[[Image:Servers.JPG|200px|thumb|List of servers]]
[[Image:Servers.JPG|200px|thumb|List of servers]]
Servers hold the data that the clients need. Using servers, data can be transferred from one client to the all the others. Server-side scripting affects the server. The server sends data to the clients, so if the data is affected, so are the clients. Parts are groups of data, so if a server-side script adds a part to the server, the part will be visible to all the clients. Most scripts are server-side so players can interact with each other; it is an online hangout. To create server-side scripts, you must insert the object "Script." Server-side scripts do not run in StarterGui or StarterGear. This can be used as an advantage, so that the scripts will only run once it is copied into a new player's Backpack or PlayerGui. You have probably been using mainly server-side scripts in your scripting journey so far. Let's create a simple server script.
Servers hold the data that the clients need. Using servers, data can be transferred from one client to the all the others. Server-side scripting affects the server. The server sends data to the clients, so if the data is affected, so are the clients. Parts are groups of data, so if a server-side script adds a part to the server, the part will be visible to all the clients. Most scripts are server-side so players can interact with each other; it is an online hangout. To create server-side scripts, you must insert the object "Script." Server-side scripts do not run in StarterGui or StarterGear. This can be used as an advantage, so that the scripts will only run once it is copied into a new player's Backpack or PlayerGui. You have probably been using mainly server-side scripts in your scripting journey so far. Let's create a simple server script.
Line 30: Line 29:
# Another window should open up. This window is the view of the player that was created.
# Another window should open up. This window is the view of the player that was created.
}}
}}
== Best practices ==
These are some best practices for clients in [[Help:Contributing|the scope of this wiki]].
* [[Tool]] code that needs to read the [[Mouse]] properties or connect to [[Mouse]] events should be in [[LocalScript]]s. Any other [[Tool]] code should be in [[Script]]s.
** [[Script]]s may connect to [[Tool]] [[Activated]] instead of connecting to [[Mouse]] [[Button1Down]]. When a [[Player]] clicks somewhere, the [[Humanoid]] [[TargetPoint]] will update on the server.
* Put code for User GUIs in [[LocalScript]]s.
** For example, have a [[LocalScript]] in the User GUI connect to a [[StringValue]] [[Changed]] to display a global message instead of having a [[Script]] in [[Workspace]] control the User GUI directly.
[[Category:Scripting Tutorials]]
[[Category:Scripting Tutorials]]