Unity Games are hackable

Hi everyone
I am working on Unity since 2012, and now i am near the days of releasing my game.
In this thread i am going to talk about something very important, so please everyone find time to read this post.

While i was working, i found on the net an application which hacks any game made with unity. Any game:

So I have downloaded this application and opened my game’s apk using 7zip and then opened it in this program.
What happened? It opened my game, fully.
Textures, Audioclips, and Shaders. All opened, possible to export.
Not enough, it also opens the first scene with all the hierarchy.
I have read on their forum, and there is written that they are working to extract models.
On that forum there are requests to open the scripts.



As you have seen this is what they are talking about.
This is worst for the developers. I have worked 3 years on my game, and i will be very angry if someone will touch my game assets, audioclips, shaders and etc…
I hope and request Unity to develop something stronger, that it can not be opened, or extracted. Putting compressions, encryptions, and all possible solutions, please make Unity a safe game engine, protect the developers.

Please comment and share this topic as much as possible, this is important for all us.


Edit: 20 april 2014
On demand of several people, I have deleted the links to the application.
Some people pm me saying I am spammer, some other said that it doesn’t matter.
Of course I look a spammer because I am trying to fight the piracy.
What I have done to look like a spammer? Did I sent you links of my game? Did i sent you advertisement? Did i requested to give me your bank account?

Not let’s read a bit more:
If I am creating something for example a car’s engine or transmission, …, and when i have finished, i sell it and i get my money. But if someone stills it, the Government will punish him in Jail, right?
I am working on my game from 3 years. My team is me, and my graphic designer. 2 persons, It has been done all by us.
I have wrote all codes, my graphic designer has made all meshes, textures, and he also recorded audio files.
Isn’t easy doing all these.
It just looks a simple thing, but when you will work on AAA titles, you will understand it.
Now someone come and takes my code, for example my character script, or my AI script. Wow it s awesome right? Wow what a wonderfull thing?
People says that they will use my script for just learning. I am not teaching some one, if someone wants to learn, please join a game dev school or a university. There you will pay to learn, here you are robbering, and then saying i was just learning.
If someone stills my engine (coming back to the car’ s engine example) and then in the court he says I did it only to learn how he made it. I don’t think they won’t execute him.
How can I understand someone stilled my mesh? For example I have made a car (3d model), example a Ford Flex. All ford flex looks similar, because they are similar, they are products of the same project. How can I understand if he made his own Ford Flex or stilled mine? May he had take my model, and changed the texture, and vuoalaaaaaa, he has got a Ford Flex, by just doing nothing and taking my asset.
What if he takes my shader? He changes the value of the material and vuolaaaa, he got a shader, he got my rendering! WTF?
What if he takes my script? just changing the parameters the script will behave differently, like an AI will change the behaviour. Wow he also has my AI, and I am not sure if that is the mine, or is his own, it just does a little bit different behaviour, but it s the same script. It’s my code.

If you can’t stop hack, make it soo hard, that they can’t find the time for it.

3 Likes

well this is sad, you shouldn’t share the link though.

2 Likes

Why i shouldn’t share the link? Sorry i didn’t understand.
I did this post because it s bad for we developers.
We have worked on our games, and somebody else come and takes our stuff.

1 Like

it’s been going on for a while now… not really new news though.

It has always been like this. This isn’t the first tool to do this either.

If unity modifies the format to break it, someone will write another tool for the new format. That’s part of using a popular engine with a common format for thousands of games, someone will want to mod a game and the tool works for all others too.

There’s no reason to freak out here just because a few kids are messing with your game. You’ll only waste your time trying to prevent it.

ya, that thread is going from 2014

that’s true, but I don’t like that somebody takes my assets (textures, …) and then make a game to compete with you as they can also get your shaders.

Copyright your stuff and then you’ll be hoping to see it get leaked & re-implemented everywhere so you can become wealthy beyond your wildest dreams while sending other people into a hell of debts that will plunge them into a 3rd world life style (starvation, homelessness, etc).

8 Likes

If someone steals your assets and publishes a clone, then you file a dmca takedown request and forget it. People will most likely use those for learning purposes only anyways.

lol… only if you’re the “lawyer” though :smile:

1 Like

Yeah nothing new here really and it has been happening for several years with various tools. The code can also be easily decompiled to see all logic.

Pff, I have a lot of Jewish friends. And what does that mean? It’s just shorthand stereotyping so that I don’t have to go on to elaborate how they’re involved in business management, banks, lawyers and the uncle of one is a judge. Working together they are my super team of legal and financial advice!

I wonder what would happen if someone did this to hearthstone and tried to reuse any of it lol.

It happens to ALL games. Nothing new, and not specific to Unity.

5 Likes

It isn’t Unity’s job to protect your game assets. Unity’s format was designed to load games with best possible performance first and security later. If you want to make your assets secure, it’s your job.

Here are some ways you can do that:

  • Obfuscation of scripts. It would deter all but most persistent hackers. There are tools that would do it for you.
  • Steganography for sounds and even models. Just hide your music/sound inside textures and any other data you need. That has downside of not being able to use JPG compressed textures as lossy compression would mess up with steganographed data (PNG is fine though) and that you need to write your own extraction routines as well as tool to encode it (in case of models, you’ll also have to build all the models at runtime after decoding from stego’d image).

Of course if you’ll do steganography for other than image assets, you won’t be able to hide textures, but let’s be honest - textures are never something really unique.

2 Likes

Why? The game code would have to contain the decryption algorithm, and a determined hacker will simply use it himself.

You must have a game worthy of a Nobel peace prize if that’s your worry. Somehow I don’t think your game is going to end war forever, so the likelihood that someone is bored enough on a Tuesday to reverse-engineer the steganography is probably the least of anyone’s concerns. I have to imagine “making a good game” is a bit higher of a priority.

1 Like

That’s part of the reason I love it.

That sounds like a game I want to make. A dream simulator that would be so enjoyable to experience that it would completely mellow out a population, ending all wars and providing everyone with affordable access to the best possible life where life is defined as your experiences and memories.

Some rich guy who owns 30% of the country’s wealth can’t have a better experience than any other individual, thus greed disappears within a few generations while anyone who can afford the <$2000 hardware setup can enjoy the experience while greed still exists in their lifetime.

Who is going to go out of their way to waste the time to cause hardship for everyone if everyone has access to their own personalized paradise?

So how is

part of

and not a massive waste of time? Especially if

?

We’re not hiding anything. If people want to mod our games and enjoy them further - that’s fine. If they want to sell or use any assets, then well, we use the same lawyers as MS and EA use. They’re not too expensive either, very reasonable rates, and we’re not afraid to use them, as we have done so in the past :slight_smile: Unfortunately, we will go after anyone using them, as should any developer big or small as ripping and republishing titles is alarmingly common on android etc.

If it’s just for modding though, isn’t it a sign of your game’s popularity?

AFAIK IL2CPP prevents anyone just reverse engineering to pure C# and will require much more hardcore reverse engineering. Graphics, models, shaders are up for grabs but only for their private use.

Also, don’t mass-invite people to a conversation then link your thread again, there’s no point.

2 Likes

Code obfuscation is usually a terrible idea. It makes it harder to develop and debug your own code. It is a better idea to write clean code, and just not worry about people decompiling your work.