Whats the difference from Remote Events and Bindable Events, and when should I use them in a script?

I have a notepad containing everything I want to learn about scripting so I can expand my scripting knowledge slowly but surely.

I learned about Remote Events and how I can use them to fire events, but I haven’t really learned about Bindable Events, and Im a bit confused on how they work and what’s the difference between them and Remotes.

I also want to know, in what cases should I use these “difference” events, and why.

BindableEvents are used to communicate with Scripts of the same type as the one called.
For example, if I fire a RemoteEvent from the Client, who receives the Call is the Server, if I do this with the Server, the Client specified who receives the Call is the Client

With the BindableEvent, if I call through the Client just another script of the same type as the one that gave “Fire”, which in this case is the Client, it can receive the Call, if I give Fire through the Client, the Client receives it, if I fire through the server only who receives is the Server.
Better example:
Lines with X is why they can’t communicate.

BindableEvent
Client -----X---- Server
Client ----------- Client
Server -----X---- Client
Server ----------- Server
Remote Event
Client --------- Server
Client ------X----- Client
Server --------- Client
Server ------X---- Server


I hope it made you understand.

11 Likes

Bindable Event:

ServerScript/Server > ServerScript/Server
LocalScript/Client > LocalScript/Client

Remote Event:

ServerScript/Server > LocalScript/Client
LocalScript/Client > ServerScript/Server

1 Like

Do you have any examples where I can use them in a script?

1 Like

image
image
image

RemoteEvent is almost the same thing, you pass parameters and it executes, but remember the Rule, RemoteEvent is of different types and BindableEvent are of equal types only.

1 Like

Could you also explain how this works?

for i = Timer, 0, -1 do
end

Because I’ve never seen 3 parts in a for loop, and Im also not sure how it works.

You can read about: Loops (roblox.com)
Well, it’s not complicated.

1 Like

for i = Timer, 0, -1 do
end

i – is equal to the index so number

0 – is the end Goal

-1 – is by how much it should subtract

So it just counts down from 30 until it hits the end goal which is zero

Hope that helps :slight_smile: