Decoding StringHash is possible, but its almost near to impossible to find out the original cheat code from the hash value.
Think of a cheat code you want to use. For example, you want to use "cheat" as the cheat code. Create a test map where you print the hash value of cheat:
Code:
call BJDebugMsg(StringHash("cheat"))
Then you know the hash value and you can use that information in the original map. Let's assume the hash value is 1234. Input;
Code:
if StringHash(GetEventPlayerChatString())==1234 then
...
endif
In your code, you basically use this condition:
Code:
StringHash(GetEventPlayerChatString()) == StringHash("cheat")
But replace the StringHash("cheat") with the calculated value, so you don't actually have to put the cheat code into the map script. As I said it is pretty much impossible to find out the original cheat code from the hash value. Not impossible, but still impossible in a way.