"[How To] Stop Clothing Copying"

I saw a thread in S&I and I really wanted to take this to the top because it’s actually a really decent thread with good ideas on how to stop/slow clothes from being copied.


Since NBC Shirt Creators was recently deleted, and Roblox just announced R15 with even more option for user-created content, now seems an appropriate time to make this suggestion:

Make copying clothing against Roblox Terms of Service.

The last major update to support existing and new designers was the addition of price floors. When price floors were implemented in 2013, Roblox gave three main reasons for doing so:

  1. Raise the quality of items in the catalog.
  2. Reward makers and sellers of clothing.
  3. To incentivize non-paying users to buy ROBUX.
    They even stated at the time that “One huge problem is copying. If I make a great shirt and sell it for 20 R$, it’s fairly easy to copy it and sell the copy for 19. Or 10. Or 1. ROBLOX wants to reward creativity, not copying.” But a more effective method to reward creativity would be to ban copying in the first place.

Implementation of this rule could be difficult, but there are several possible systems which could all be put in place to enforce it.

First, Roblox could block access to asset pages in browsers. This would prevent the most common method of copying, though not all, and not some of the high quality copies. Additionally, the item textures could possibly be blocked, as seems to be the case with one shirt Roblox uploaded, at http://www.roblox.com/RBXM-RobloxUShirt-item?id=176086704.

Second, a copied content reporting system with a new category of report could be added. When a user reports copied content, they must provide a link to the original, and that original must be one of their items, so that only designers would be reporting copies of their work and the system wouldn’t get too bogged down. After providing the link, a program would compare the two upload dates to verify that the reporter’s item was created first. Then, an algorithm would compare the images within the template areas, and if sufficiently identical, delete the copy (such as [Content Deleted] for inappropriate items) and transfer all sales numbers, favorites, and ownership to the original design(er). The profits could likely not be transferred since the copier probably spent them, but stopping the copy from gaining more momentum would be sufficient. If the algorithm did not show the two items to be identical, the templates of the two items would then go to a human moderator to answer simply “are these effectively the same item, yes or no?” because the copier may have simply changed a few pixels to outsmart the algorithm. Then the same statistics transfer would take place. Initially, this would probably increase work for moderators, but once the copying ban becomes well-established, the workload would sharply decrease as it seems the majority of file uploads reviewed by image moderators now are copies. (This system also means that if you copy for yourself because price floors are too high, and don’t sell it, if the designer doesn’t care they can let you keep it.)

Third, repeat copying offenses after the implementation of this rule could result in multiple punishments. The usual escalation of bans could take place, or a user could be prevented from uploading items for a certain time period (e.g. you cannot upload any clothes for the next 48 hours). Additionally, repeat offenders could receive a label on their items warning users that the item may be copied, and be declined from cashing out their sales with DevEx as that money should really go to the original designers.

Tl;dr: Block browser access to asset pages, add a copied content reporting/moderation system, and punish copiers to keep them from uploading more items.

Original ROBLOX thread link

86 Likes

I was just thinking about reposting that here… Great minds think alike amirite :wink:

8 Likes

When two people copied a shirt made in 2009, one of them created it in 2015 and the other just then in 2016, how does the moderation staff tell that the person who uploaded it in 2015 is not the original creator? The owner of the 2015 shirt could report the 2016 shirt and moderation won’t be able to tell that the 2015 shirt is also a copy.

Same problem happens when you base it on the amounts of sales or the amount of favourites being the deciding factor, since copied shirts could have overtaken their originals. It’s impossible to find out if a clothing article is original and made by the uploader.

7 Likes

The 2009 would have to report the 2015 version.
That guy isn’t maybe around anymore, so wouldn’t care about a copier.

Maybe allowing others to report an asset as a clone would help a lot.
Not every creator has the time to find copies and report them, which isn’t fun anyway.

4 Likes

The 2016 would get banned for copying while the 2015 would be seen as the original creator. It’s just not going to work, even when other users would report it, because they may not know about the older or less well known version.

3 Likes

But people that know the original 2009 version *(c/w)*ould report the 2015 version (too).

1 Like

I literally just said “they may not know about the older or less well known version”. This is definitely going to lead to situations where one guy gets banned because some popular guy who copied it before tells his fans to go report the other version. It’s not going to work.

I think the price floor will have been the only gesture against clothes copying that we will see in a while.

3 Likes

But that one guy that tells his fans, could get reported (and banned) too.
One bad guy reporting another bad guy doesn’t mean the latter one isn’t guilty.

3 Likes

Banning access to viewing asset textures would really be awful because how would I be able to get textures for meshes?

8 Likes

If there were some way to report an item as copied by submitting an “original” item link in the report I would probably end up sending a TON of those reports whenever I went to try and find some clothing to buy. Which isn’t a bad thing, but it’s honestly extremely annoying how out-of-hand clothing copying is. Also, I have no idea how to moderators view assets, but it would be cool if, when they were viewing the asset to be accepted, it showed a comparison of similarly named items so they could quickly determine if the item could be a copy or not. Also, banning copiers would be great since it would discourage the copying of items and definitely placing a suspension on their upload ability would be awesome.

1 Like

ROBLOX assets or just ROBLOX meshes can be whitelisted so those pages can be viewed. This really isn’t an issue.

On the other hand, reporting for copying won’t work – ever. What happens when someone makes a shirt, screenshares it with someone else, that person screenshots the template and uploads it to ROBLOX before the creator can, the creator uploads it, and then the creator gets punished for copying? We’ve had a good number of threads discussing this same thing and other ways of preventing clothing theft, but the conclusion has always been “not possible”.

4 Likes

Then it’s the creator fault for “releasing” it before uploading it himself.

2 Likes

It doesn’t have to be theft. The creator of the shirt may upload it to their account to test what it looks like in game, but it was actually contract work and they later give it to the contractor to sell on their account after it’s finalized. @blobmista4 has done this before with clothing he’s made for other people. Then, let’s say the clothing creator and contractor have a falling out, and the clothing creator wants to get back at the contractor. They report the article of clothing the contractor already paid for for being a copy and it gets taken down.

What then? Is it the contractor’s fault for having the clothing made by someone else? The amount of due diligence moderators would have to do would be insane. Clothing copy reporting isn’t feasible.

3 Likes

The only solution I heard of that I thought was good was adding an optional water mark to images when being viewed on the website.

2 Likes

What stops people taking texture and changing the hue slightly and reuploading?
What about things like suits where a lot look similar, will you end up with whoever is first getting all money?

1 Like

Apply to 585x559 ImageLabel, screenshot, make a couple modifications to get back transparency, and copied even with a watermark.

@pauljkl OP is calling for manual moderation

1 Like

In the end, the asset still gets downloaded to the client in games nonetheless. Nothing could be done, other than as you of said about manual moderation.

If you really wanted to get serious, a separate set of servers to compare two images based on similarity could ease moderation. For instance, we could display similar uploads to our moderators (since they bulk decline/accept images anyways). They can decided if an upload looks similar to an existing asset. This comparison would be done a new set of servers, and mostly automated. No hit on the performance of the site.

1 Like

While I don’t think manual moderation would work out, “it can be stolen so we might as well not make any attempt to stop it” is wrong. The client has to download the geometry of places but you don’t see level geometry getting stolen as often as clothing. If we can change clothing to where it gets stolen as often as level geometry, that’s certainly better than the present state. Whether or not it takes priority over other stuff is a call the staff have to make, but “can’t prevent all so might as well not make any attempt at all” is wrong.

5 Likes

My personal thought is to use a combination of social and technical means to attack this problem.

Technical means involve normal deduplication, watermarking, and perceptual hashing.

deduplication just generates a hash of the data of the asset. It prevents exact copies. This is very weak because it is easy to change the hash by modifying metadata. For example, when I used gmail to send myself a png, the original and email had a different md5. (which is weird…)

watermarking sprays the asset with ownership data hidden in the little things. things like rounding of floating point numbers, changes in the lsb of colors/alpha, etc… This stops attacks from users who haven’t seen this method.

perceptual hashing creates a signature for every asset to aid in identifying visually similar assets. This needs a bit of tuning though – it can generate comical false positives and false negatives. I worked on this for a hack week. I feel like it lends itself to machine learning. On a flight in 2014, I thought up a machine learning method to auto-tune it.

This is also actually a very hard problem, as perceptual differences don’t mean artistic differences. eg, a smiley face with a small difference on the smile is probably artistically different while a small change in the size or color of the smiley isn’t.

At this point, the social aspects come in. The idea that people can make decisions on if two items are essentially the same. The watermarking and perceptual hash can suggest probable copies to moderators. This reduces the workload on moderators as the number of times they are asked if a cat looks like a banana would be vastly reduced.

5 Likes

Would it be simpler to remove the ability to preview the -1 ID from the site, change clothing to a different format (when it is uploaded to ROBLOX servers it’s converted to a ROBLOX-Clothing format or something) and only allow that asset to be applied to Shirts/Pants (so someone can’t slap it onto a 585x559 ImageLabel and screenshot)? At that you might reach the level of difficulty of stealing level geometry. You can’t get a screenshot of the template anywhere on the site, if you try to download the asset through roblox.com/asset?id=id or capture it when its’ downloaded to your client you get a file type you can’t work with / upload to ROBLOX, and the only way to screenshot it in-game would be screenshotting a character which wouldn’t give you very good results. Some people could try to reverse-engineer the custom file format, but it would just end up at the same level as CSG reverse-engineering I assume (nothing practical).

3 Likes