How to detect if is running on emulator(bluestack, noxplayer etc)

Is that possible to detect if is running on an emulator?
I am trying to avoid players running my game on an emulator, but I can’t find a way to do that :(
I’ve tried some ways but it still can run on noxplayer.

It’s not worth your time to worry about this stuff. No matter what you implement, someone will work around it.

Do you have any evidence that people are playing on an emulator? Or is this just a fear you have?

5 Likes

There’s your problem. You’re trying to control a computer that isn’t YOUR computer. That won’t EVER work!

If you’re concerned about the user ‘hacking your save files,’ or ‘cheating in your game,’ or ‘using an emulator,’ which is playing on their computer, just don’t be.

There’s nothing you can do about it. Nothing is secure, it is not your computer, it is the user’s computer.

If it must be secure, store it on your own server and have the user connect to download it.

Anything else is a waste of your time and the only person you’re going to inconvenience is yourself when you’re debugging the game and you have savegame errors. Work on your game instead.

Remember, it only takes one 12-year-old in Finland to write a script to read/write your game files and everybody else can now use that script. Read about Cheat Engine to see more ways you cannot possibly control this.

1 Like

So now that the “don’t waste your time, the amount of effort required to thwart such things is mostly fruitless, since even the big corpos with millions can’t thwart it” discussion is stated.

WHY are you trying to keep people from playing on an android emulator?

Are you attempting to keep them from hacking around a paywall? Is it a multiplayer game and you want to avoid unbalanced hacking in your mp game?

There are more feasible/sensible fixes that could actually work here (as kurt mentioned, store it on your own server, which is a possible way depending the thing you’re attempting to do).

Or is it you just don’t want them hacking your 1-player local game? Ala Nintendo tried suing galoob because of the Game Genie… in which case… who cares.

2 Likes

My game is a 4-player matching game. If players can play through an emulator, there is a possibility that 3 of the players are actually the same person. This will be unfair to the 4th player.
Avoiding emulators will make players need 3 devices to do that. I’ve also considered other ways, such as making matching not easy to match certain players together, but it’s not easy as well and will.
I am trying to increase the threshold for player cheating.

4 Likes

You could try detecting the baseband, but that might end up excluding real players without SIM cards/wifi-only tablets (For example, I have a crappy old Android tablet that was ~$70US. I use it to play music mostly; I’d be a little miffed if I loaned it to someone so we could play Scozirge’s Match together, only to find out the game didn’t work on it for a stupid reason like that).

I just searched, and there are discussions about how to get around this. So if someone is dedicated to cheating, they’re going to cheat.

1 Like

Oh it’s like a cheap motion capture device that’s alot of gyroscope.

For the OP.

You can check for your process name. Yeah your process name should be the name of the process exe. So if an emulation is running then you won’t find your exe in the task processes.

So it’s a question for Microsoft the specifics of looking at running tasks. I had done this once before but only once and the method to get a list from the task manager was easy to find. Then all you do is check those names there and bang, where is my exe?

I know this man, he was famous, and I saw him in New Taipei once. But it’s not really the point. I know players can cheat with many devices. But I am avoiding players cheating easily(increasing the threshold) so other players may play a fair game. But I got it, don’t even think about this approach. I will try some other way. Thanks anyway.

Good thing about the task manager is you can find out if multiple exe is running of the same file to prevent a player evening opening two copies without a virtual desktop. This way we just count the exe and make a decision if too many exist

This question was about android builds and running an android app inside an android emulator. This was not about running a windows application inside a virtual machine. Also what does the task manager has to do with any of that? He wanted to check from inside his application if a user runs his application on an emulator. I also don’t understand your statement about the process name of a windows application inside the task manager?

What does that even mean?

You are waaay off topic it seems and most of what you said doesn’t make much sense anyways ^^.

It also depends on the multiplayer game type, if it’s just a casual/funny multiplayer game that a bunch of friends/family gather around to play, then there’s no need for any cheat detection mechanism, since the cheater will just ruin his and his friends experience. On the other side, if it’s a competitive type of games (battle royale/shooter/rts…) then the only solution against cheating is to make everything server-side (aka server authoritative), and even with that cheaters always find a way to cheat via local hacks. Just check the huge amount of time and money AAA studios spend on anti-cheating systems, and still fail to catch all cheaters.

1 Like

They’ve got 143 messages in just two weeks, they can’t all be gems.

This whole thread is DeCartes’ Paradox. How do you know you’re not living in a simulation? Whether you’re an Animal, Man, or Machine, you can’t; all your input is based on things outside your control.

1 Like

It’s not a finite amount of time and money either. If you want to reduce cheating in a video game you have to constantly discover new methods of doing so, and the more popular a game is the faster you need to do it.

Asking for existing methods is pointless as anything we can recommend will have already been defeated.

You can offer a anti cheat service in support of the product where you crack down on cheaters for limited time.

You can validate the exe on the machine is not modified. You can check for running processes and take action.

You could lower the incentive to cheat by increasing the immersion and decreasing the grind. You could allow players to flag cheaters and black list from their own match maker.

You cannot deny the game from somebody if they purchased it and cheated and didn’t sign and terms and condition. But if you actively police the game you can sell more copies because some cheaters cheat so frantically and militantly to climb up competitive ladders that they buy multiple copies of the game in hope to bribe you into lenience. And if YouTube fad popularity is pushing your game up taking comp seriously, and you are heavily policing it and isolating banning shadow or even pooling cheaters together against bots lol

But

I would go that far is all I’m saying. I would care about cheat. I would build the infrastructure to rule over them.

Spending time on anti-cheat mechanisms is a great way to decrease cheating.

  • The more time you spend on anti-cheat, the less time you will spend building your game.
  • The less time you spend building your game, the fewer features the game will have.
  • The fewer features your game has, the fewer players you will attract.
  • The fewer players playing your game, the fewer cheaters you need to content with.

If your goal is to have a game, focus on that. It takes a very large player base before cheating becomes a stronger negative force than lack of interesting gameplay.

7 Likes

Just make it so that if they share the same ip they can only play in the same team.