Hello, I have a mannequin system in the game, where 4 outfits are loaded onto the mannequin, and you can swap between them on the client so only you can see them. I also want to make it where you can try on these outfits, but not on the client so if you’re with friends they can see it too. I thought of just firing to the server via a RemoteEvent, but then that would be easily exploitable, since you can’t see what the player is currently looking at and is trying on from the server, and an exploiter can easily fire the event with any clothing id they want and wear it server sided. The person who I am making this for said that they want over 300 of these mannequins in their game, so creating a dictionary on the server side would not be efficient. Is there anything I can do to prevent exploiters from wearing whatever they want? Thanks!
How about compare this clothing id to all four of the mannequins, if they don’t match, then they are an exploiter, and you don’t edit the HumanoidDescription of them. Sorry if this doesn’t work!
I could do that, but the problem with this is that the outfits on the mannequin are changed locally. Example, player A could see outfit 3, but player B could be looking at outfit 1, since there is 4 outfits loaded on, and there are buttons to switch between them. I’m not good at explaining but I’ll send you a video of what I mean if you want
Also exploiters could already wear whatever they want by just changing their clothing? I’m kinda confused here. You could for loop through all of the ids in a table, because they have to be stored somewhere and check if that equals the id, if the for loop finishes without finding it, its a exploiter.
Well yea, but I meant that in the context of abusing the remote.
I can do this, since each mannequin has a seperate table with all the clothing data, but how would I grab that table out of the script? Would I need to turn it into a module script or is there a way do this without modules?
You would probably need to turn the mannequin script into a module script or use a remoteevent to transfer it to the server, which we already established is a bad idea.
If the clothing is server sided in seperate instances, or can be easily seperated into multiple instances server sided, just make the remote being fired specify one of those options (either by a number or directly to the asset) and then on the server side just copy the clothing/clothings assetid to the player. That’s how I’d do it at least.
If you absolutely must use the asset ids in firing the remote, I think you might be out of luck unless you can compare the asset being sent to a preset list of assets (and ignore/punish if it doesn’t exist in that preset list)