Detecting Map thats Hacked

cleeezzz

The Undead Ranger.
Reaction score
268
hehe... i just want suggestions on how you could detect if the map is hacked (trigger)

an easy way would be (if it WAS possible) to detect when an trigger is activated and then it checks if the trigger is on the list of original triggers, if not, defeat everyone. (of course this would only work on noob hackers cuz deprotected maps usually are all jumbled into one JASS script and they dont know how to edit it)



can anyone suggest a good idea?
 

13lade619

is now a game developer :)
Reaction score
398
well... if you know you have the map and you see that in the waiting room that you're dLing another map with the same name then you know that the host is using another map.

and besides, you can't play on different maps in one game. in a game, you all are on the same file.
 

Ryuu

I am back with Chocolate (:
Reaction score
64
> in a game, you all are on the same file.

What if a hacker used a program to change the triggers in-game?
 

Sil3nt

SUP?
Reaction score
134
Well, if they are able to hack into your map then they would simply remove the 'detecting' triggers.

I don't think theres any way to protect your maps from people who hack them. The only solution is by hosting the map on a site and advising them to download the map only from there.
 

s3rius

Linux is only free if your time is worthless.
Reaction score
130
Just go to the map's website to download the original one.
If you'd think about that just for half a second you will notice that this is more than only complete non-sense.

1) how many maps have a website? 2% of all? And how many people know about it?
2) How are you supposed to know that it is hacked. You might not even know the map.
3) This won't stop a map hacker to hack and share his "new" map on battle.net.

Well, there's only 2 things that you can use to protect.
First would be the usual map protection. Optimizer is best, I guess. Though that won't stop a decent hacker. But at least the one-click maphack programs won't be able to do it.
Secondly, you can add booby traps everywhere in your code. Just like the idea to check every trigger if it's a valid one (thought this might not be a good example).
You can use periodic checks to make sure no gold/lumber hacks were added (if a player gains 10000 gold within 5 seconds this can be considered as hack I guess).
You can also use those checks to make sure no hero attributes were modified ( like 99999 strength).
Another trick is to "hide" certain strings of your map.
As an example:
You play a game where you can save your hero (like The Black Road). When you save you get this message: "You experience was saved. here's your code".
A maphacker will now search your map script for words like "experience" or "save" to find the location of your save trigger.
To make it harder to find you can save pieces of those words in variables.
Word[1] = "sa"
Word[2] = "ve"
Word[3] = "d."
To get back your complete word you now use Word[1] + Word[2] + Word[3].

The real map protection against a good hacker doesn't consist in trying to keep him out of your map, but in obfuscating your script that extremely that I'd take days of hard work to figure everything out. Most hackers will stop their attemts when they see what monster-code they're facing.

Another idea is to overload integers to obfuscate them.
If you overload an integer in wc3 (This is to say to go below or above the limit)
It will subtract (If the number is above limit) or add (If the number is below the limit) 2^32 until the number is within range.

ie: 2,147,483,647 + 1 = -2,147,483,648
ie: 2,147,483,647 * 2,147,483,647 = 1
ie: -2,147,483,648 - 1 = 2,147,483,647

When referencing arrays, use an expression. Array[10] is now Array[5*2] or Array[2+8]. Or Array[2+ IntegerVar[4*3] mod 2]
This is the same idea as using SubStrings to create strings. Causes extra hassle. ("sa" + "ve")

You can store important integers into string variables using I2S. This prevents the noob method of a cheat that makes ALL integers to a specified number.

Admin passwords should be recognized using Blizzards integer system and String2Rawcode. This method is by far one of the best and most unknown. Using this method can make passwords near undecipherable.Though, I don't know how this works ~~

If you notice signs that your map is hacked your can either crash it (for example with an infinite loop [loop crashes are no good because they can be traced via NewGen Jass, afaik) or you can sabotage vital triggers. In a map with save system, a hack is most likely created to make yourself teh 1337 imba code. If you crash the map that hacker will know that he either made a mistake or that there are traps left. Wouldn't it be much more vicious to sabotage the save system so that he receives a save code, but it won't work? In this case he has no idea where the error is located. It might be his changes, or missing traps, or an error in the save system, or a variable caused it which he modified before, or.. or or..
Always let the crashes look like errors, not like protection.
 

Gwypaas

hook DoNothing MakeGUIUsersCrash
Reaction score
50
Admin passwords should be recognized using Blizzards integer system and String2Rawcode. This method is by far one of the best and most unknown. Using this method can make passwords near undecipherable.Though, I don't know how this works ~~

Could someone please give an explenation on how thoose systems works?
I have a Admin PW in my map generated through a complicated hash but I really would want to know other safe ways to protect it.
 

cleeezzz

The Undead Ranger.
Reaction score
268
i just want to prevent the map from being hacked lol, code wont really do it because then you need a person who knows the code.
 

Cidzero

Imma firin mah lazer!!!1!1
Reaction score
39
If the map is really good, someone will hack it. You can use protection programs to slow them down, but it will not stop them. Thats what hackers do, they suck at the game so they are going to hack it. What you can do is make certain data hidden that will totally confuse them, have something important look like it goes in a circle, have data stored in different locations, hide stuff in masses of JASS. Use a protection program, every update, change all the hidden data's locations, the circle trick, the password. Eventually you will just stop updating and they will eventually hack it, figure it out, and just be lame and cheat. All you can do is slow them down, use special codes that only you know. If you can find a protection program that uses something from your computer that no one else has as a password, that might help a lot.

But ultimately, everything is data, a determined hacker with no life will eventually hack your map and cheat.
 
B

benj_war3

Guest
Cancel Single-Player? or create a program that whenever a person opens a map in object editor. You need a password. :D, trying to help here..
 

THE_X

New Member
Reaction score
49
just let everyone know that you put a tracking system in your maps and you will find and kill whoever hacks your map -.-
 

ReVolver

Mega Super Ultra Cool Member
Reaction score
609
----------------------Method 1

Try making an integer that counts all your triggers

Trigger 1

Set Int = Int+1


and make a trigger to check if they have the right amount

try to hide in the map's header using jass


Wait 5 game time

if Int != 60* (Amount of triggers you made)

Defeat the player

That will prevent people from editing your triggers or deleting them.


--------------------------Method 2


Make a small trigger that creates a dummy unit in the map in 2 seconds and check in 5 second game time if the dummy is in the map if not .. defeat the player. This will also prevent someone from editing your triggers. Try adding this in your header.

------------------------Method 3


Defeat the player if their is only 1 player in the map.



--------------------------Method 4


Try adding a method that will kick the person if the player doesn't type something like -dontdefeatme! if not, defeat the player. (Try this for single player check, when its only 1 player)


To prevent a person from editing this try using Method 1 with this

--------------------------Method 5
Add a scripts in your map's header that will corrupt the map if deleted
make another trigger that will call a function from the header, if it's not there, defeat the player.
 

UndeadDragon

Super Moderator
Reaction score
447
Those are some good ideas there ReVolver, I especially like the first one :)

Another way is to complicate any arrays you have, for example:

Integer[3] could be Integer[147/21-4]

That would really put map hackers off, because it would take so long if they wanted to try and work it all out to edit it.
 
B

benj_war3

Guest
ReVolver's good explanation gave me a real thought about it.. I can't believe Hackers can go through the map protection system.. :eek:
 

cleeezzz

The Undead Ranger.
Reaction score
268
you can count how many trigger there are? i didn't see something like that.


im trying to do something like what revolver said in method one but theres no such event as A trigger is triggered or something along those lines. Also, i dont see an action to make the computer check if there are 60 triggers or not.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
Small example.

First,

Actions > Trigger > Trigger - Add trigger to trigger queue (Or remove)

Then do this:

Code:
If ((Number of triggers in the trigger queue) Equal to 0) then do (Do nothing) else do (Do nothing)

Conditions > Integer Conditions > Trigger - Count triggers in Trigger queue.
 

cleeezzz

The Undead Ranger.
Reaction score
268
but doesn't that mean i have to add the trigger to the trigger queue using Trigger - Add Trigger to Trigger queue, i dont see how this works because if i add all my triggers to the trigger queue, (lets say the hacker added one cheat trigger), it still wouldn't count the new trigger because its not added to the queue.
 

tom_mai78101

The Helper Connoisseur / Ex-MineCraft Host
Staff member
Reaction score
1,710
Just do it. ~~Nike slogan.

If the number doesn't matches the entire total number of triggers (assuming that the hacker did add a few triggers, and th eoriginal count of triggers were less than what was in the hacked map), then that would mean it had been hacked.

Then you can be sure to defeat all or some or specific player(s).
 

cleeezzz

The Undead Ranger.
Reaction score
268
..but theres no action like

Add (All Triggers) to Trigger queue.

if the new triggers arent added to the trigger queue, it wont detect extra triggers.
 
General chit-chat
Help Users
  • No one is chatting at the moment.
  • Ghan Ghan:
    Howdy
  • Ghan Ghan:
    Still lurking
    +3
  • The Helper The Helper:
    I am great and it is fantastic to see you my friend!
    +1
  • The Helper The Helper:
    If you are new to the site please check out the Recipe and Food Forum https://www.thehelper.net/forums/recipes-and-food.220/
  • Monovertex Monovertex:
    How come you're so into recipes lately? Never saw this much interest in this topic in the old days of TH.net
  • Monovertex Monovertex:
    Hmm, how do I change my signature?
  • tom_mai78101 tom_mai78101:
    Signatures can be edit in your account profile. As for the old stuffs, I'm thinking it's because Blizzard is now under Microsoft, and because of Microsoft Xbox going the way it is, it's dreadful.
  • The Helper The Helper:
    I am not big on the recipes I am just promoting them - I use the site as a practice place promoting stuff
    +2
  • Monovertex Monovertex:
    @tom_mai78101 I must be blind. If I go on my profile I don't see any area to edit the signature; If I go to account details (settings) I don't see any signature area either.
  • The Helper The Helper:
    You can get there if you click the bell icon (alerts) and choose preferences from the bottom, signature will be in the menu on the left there https://www.thehelper.net/account/preferences
  • The Helper The Helper:
    I think I need to split the Sci/Tech news forum into 2 one for Science and one for Tech but I am hating all the moving of posts I would have to do
  • The Helper The Helper:
    What is up Old Mountain Shadow?
  • The Helper The Helper:
    Happy Thursday!
    +1
  • Varine Varine:
    Crazy how much 3d printing has come in the last few years. Sad that it's not as easily modifiable though
  • Varine Varine:
    I bought an Ender 3 during the pandemic and tinkered with it all the time. Just bought a Sovol, not as easy. I'm trying to make it use a different nozzle because I have a fuck ton of Volcanos, and they use what is basically a modified volcano that is just a smidge longer, and almost every part on this thing needs to be redone to make it work
  • Varine Varine:
    Luckily I have a 3d printer for that, I guess. But it's ridiculous. The regular volcanos are 21mm, these Sovol versions are about 23.5mm
  • Varine Varine:
    So, 2.5mm longer. But the thing that measures the bed is about 1.5mm above the nozzle, so if I swap it with a volcano then I'm 1mm behind it. So cool, new bracket to swap that, but THEN the fan shroud to direct air at the part is ALSO going to be .5mm to low, and so I need to redo that, but by doing that it is a little bit off where it should be blowing and it's throwing it at the heating block instead of the part, and fuck man
  • Varine Varine:
    I didn't realize they designed this entire thing to NOT be modded. I would have just got a fucking Bambu if I knew that, the whole point was I could fuck with this. And no one else makes shit for Sovol so I have to go through them, and they have... interesting pricing models. So I have a new extruder altogether that I'm taking apart and going to just design a whole new one to use my nozzles. Dumb design.
  • Varine Varine:
    Can't just buy a new heatblock, you need to get a whole hotend - so block, heater cartridge, thermistor, heatbreak, and nozzle. And they put this fucking paste in there so I can't take the thermistor or cartridge out with any ease, that's 30 dollars. Or you can get the whole extrudor with the direct driver AND that heatblock for like 50, but you still can't get any of it to come apart
  • Varine Varine:
    Partsbuilt has individual parts I found but they're expensive. I think I can get bits swapped around and make this work with generic shit though
  • Ghan Ghan:
    Heard Houston got hit pretty bad by storms last night. Hope all is well with TH.
  • The Helper The Helper:
    Power back on finally - all is good here no damage
    +2
  • V-SNES V-SNES:
    Happy Friday!
    +1

      The Helper Discord

      Staff online

      Members online

      Affiliates

      Hive Workshop NUON Dome World Editor Tutorials

      Network Sponsors

      Apex Steel Pipe - Buys and sells Steel Pipe.
      Top