How do I make client-sided object?

The brick in grey was originally standing up, and now it isn’t, due to another player knocking it over. I don’t know why it happened.

image

I tried running it again, and I still had the same issue.

1 Like

Are you positive that this is because of the other player and not the gravity? Setting the Anchored property for the object to true should fix it whatsoever.

Can you specify what issue you mean? Considering you’ve been talking about two different things back and forth?

Here’s a gif:

https://gyazo.com/d85d8c2f97b4ac1d4735901303195809

There is a player affecting another player’s client object.

Then that is not done using a localscript as I said. That’s a server-sided object.

I just checked again and in studio it says it’s a local script.
image

However, the part is still server-sided. Can you check if there’s a server script cloning it as well?

There is no server script cloning.

What’s your code currently? Only thing I can think of is that the object is never cloned, and just a part in workspace from the beginning considering both players can see and interact with it (which makes it server-sided as well).

local LocalModel = game.ReplicatedStorage:WaitForChild("Model"):Clone()

LocalModel.Parent = workspace

It’s the one we started with.

Does the workspace only consist of the baseplate before you playtest?

No, I had some things placed there, such as killbricks and things like that.

Do you mind sharing your .rblx file? Something’s not quite right here. Either you’re not telling me something or you might’ve forgotten something.

ClientObjectThing.rbxl (24.2 KB)

2 Likes

Alright. I see what you mean now. That’s extremely odd and I’ve no idea why Roblox does that. Though anchoring it would be a temporary solution for now.

A workaround could be to exclude other players from its collision group using the same service I linked to you earlier in the thread.

2 Likes

Hmm, alright then.
[30 Characters]

1 Like

Also, I tried other random objects, like shrinking platforms on touch, and they are server sided as well.

You could have your objects in ReplicatedStorage and clone them whenever you need to.

Make this happen in a local script inside of StarterPlayerScripts And it will only load for the client!
If you want scripts to run Inside of a Client-Sided Object, you can have the script set as a ModuleScript and require it when you load your objects.

Hope this helps! :slight_smile:

1 Like

I have done it by making a ClientSideObject string value in a part. In a local script in StarterPlayerScripts I have made a for loop that runs through each descendant of workspace, and if the descendant finds that string value, it clones the object, destroys the original one, and puts the clone in workspace.

2 Likes