Hackers will find it and fire it multiple times when its exposed.
you can passcode them by sending it the password as an argument and checking if whatever fired it had the password
Hackers can see the passcode by decompile the script.
When the server receives a request, it should fire all clients to run a certain effect. You would create an script specifically for the effects, and when a client receives it, it would play that specific effect. this can technically be exploited, so make sure to do sanity checks before allowing a client to tell everyone else that they want to run a effect 100 times a second.
I dont have much experience eith unreliable remote events, but apparently they should be used for stuff like this. Essentially, it will run instantly, and sometimes it will successfully go through.
Use a RemoteEvent for when doing an attack, perform checks, and when its legit, use UnreliableRemoteEvents to all clients telling them to run a certain effect.
What I mean by checks, is store when a player last used a certain attack. If it seems like they used it too early, ignore that, or if it seems like the attack would never had hit, ignore it. Do checks on stuff that matters, like attacks, hitboxes, rewards.
I wouldn’t run hitboxes on the server, it would make it seem like sometimes even though you hit someone directly, they never registered it. Running hitboxes on the clients and performing sanity checks when they are registered to the server makes gameplay feel more responsive.
Does this work?
player access remoteEvent
LocalScriptName = “Test”
on server event
check the name of the local script script if its the same then
get Access
If not the same then
player kicked or banned
Thank you for all this information!
But I’m left wondering In past scripts I’ve created, people have told me to do the checks of bullets on the client, and replicate the bullet to other players in the server, but how would I replicate it on the server? just cloning it?, also If i make it on the server, the client who fired the bullet will see 2 bullets
Do not replicate it to the server. You should code the effect on server. But do not run it on server. You can send the effect from server to all clients in range. And let clients play the effect so it does not create work on server.
Calculate on server, not client. Server should be used for calculating, you know, damaging players, finding them. Effects should be done client-sided. Idk why some people here trying otherwise.
Just fire clients to play a particle or slam effect etc. Or in your case, create data of the bullet on the server, calculate where it lands, what it touchs, but i think bullet should only exist on client for best result. Remember you don’t need to give players all the work aswell.
they cant see source code with dex or script decompilers no Exploits has made it yet.
I feel my brain power increasing as I’m reading all this!
But then this one question just gets stuck In my head, If i don’t make the effect on the server, how does games like Strongest Battlegrounds manage to do “grab effects” where one player grabs the another and make it look smooth and with no delay for both players?
Script decompilers do exist, only on local scripts though. thats how synapse worked and other third party softwares still have them
anchor them, play animation for both characters with special keyframe names, that should be enough
I just tackled this problem the other day, so I’ll go ahead and explain what I did.
I play the effect on the player’s client then tell the server to tell the other connected clients to play the effect on their ends. Every client can easily access all effects because I store all functions for client effects in a module located in ReplicatedStorage. The effects never actually get played on the server!
Special keyframe names? can you explain that further?
Oh, so GetMarkerReachedSignal isn’t as good or does it work the same?
Can something like this be done while the players are anchored?
No no script decompilers as of right now work they are all patched
This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.