And, again, sure - but at a certain point the hunt for such quick fixes seems to become a goal in itself, and I personally, as with most of us on ‘this side’, do not want to constantly have to weigh these interests and facilitate this constant hunt blindly, while constantly being pecked upon by all five other sides in this for ‘not doing things well enough’ and all.
Even adding ‘simple’ checks like this can and will have complex consequences way, way down the line, and eventually will come back to bite us as well.
At some point I’d hope the ecosystem, or maybe us, will find a way to get ‘rid’ of low-quality code being the standard (e.g. by having a properly-designed and flexible base set of gameplay code be available for people to use in common use cases), and finally solve this class of issues once and for all, especially since the ‘quick fix’ market seems to actually be dependent on the abuse itself, as well as low-quality scripts continuing to exist, indeed reinforcing the ‘a goal in itself’ state.
As to your other idea,
… you can do this even without platform support already - assuming you’re using JS/TS or Lua, in C# it’s perhaps a little different but by then you have other refactoring tools available due to static typing - by just wrapping AddEventHandler in a script included in your resources to add some baseline rate limiting.