Resource scrambler - Randomize all custom resource events [Anti lua-injector]

I am testing a complete rewrite of the script ignoring default events like playerSpawned

Maybe In a future release I will add a logger for real event names

Excellent resource. Thanks for taking this on.
Any way to get an output of all the old function names? This could be beneficial to create a new resource that listens for calls to the old name which would indicate a cheater. You could then have anticheese record this and ban, or just straight up ban the l33tH@xor

Great idea, thats what I was talking about I will look into this later for now I am working on a full rewrite because the current version is a bit buggy and source code is horrible :smile:

1 Like

An output, like csv or something, that has the “before” and “after” functions would be dank.

1 Like

New release v0.2.0 : https://github.com/indilo53/fxserver-resource-scrambler/releases/tag/0.2.0

1 Like

Since people seem to be having issues where event names are changed and code is hard to maintain:

Keep an un-obfuscated version of the source that you work on, and run the obfuscation on a copy of the code before pushing it to the server. Don’t obfuscate the actual source, just a copy of it.

2 Likes

Hi, after scrambling recources im tryin to join my server with inject. + lua exec it will crash my game, i quess its working?

New release v0.2.1 : https://github.com/indilo53/fxserver-resource-scrambler/releases/tag/0.2.1

  • Add make-dist.js
  • Add generation of scrambled-resources/scrambler-events.json
  • Add generation of scrambled-resources/scrambler-vac
  • Updated description

New release v0.2.2 : https://github.com/indilo53/fxserver-resource-scrambler/releases/tag/0.2.2

  • Fix scrambler-vac events

can you respond to my pm ?

1 Like

nope, I will not reply to i did not get what to do on step 5 what i need to do there after i have the files ?

3 Likes

Hi, i have problem with esx_status when i scramble all of my resources status get error and didn’t work
I try to don’t scramble status but same shit :confused:

Please be more precise, what does not work ? Which error do you have ?

1 Like

I’m not sure if this also scrambles hardcoded events, if so, this could be problematic when scrambling the whole resources folder.

There is a list of system resources (including mysql-async), All these resources events are parsed so we know we don’t touch them.

Neat, thanks, but i’m not done criticisng yet!

You could just put all the “scrambled” events in scrambler-vac into a table and then iterate through that table to register each one in one go, instead of registering them one by one, example:

events = {
	"dont",
	"hack",
	"me",
	"pls"
}
for _, eventname in next, events do
		RegisterNetEvent(eventname)
		AddEventHandler(eventname, function()
				local _source = source
			  TriggerEvent('scrambler:injectionDetected', eventname, _source, true)
		end)
end

Just an idea to make the code a bit more clean :wink:

1 Like

Good idea, this will be cleaner !

I am afraid almost nobody told me if it works or not, I only tested it on one server dump.

I’ll push it to production on RottenV:R in a bit, i’ll report back if it works properly or not :wink:

2 Likes