Is it possible to have a module script create shared or global functions that you are able to call from a local script?
Example:
-- Module Script
local Module = {}
function Module:Start()
shared["PrintHello"] = function() print("Hello!") end
end
return Module
-- Server Script
local module = require(ModuleIDHere)
module:Start()
-- Local script
shared.PrintHello()
With hiding the require part within server scripts, it would start the server with the module required before an exploiter would potentially be able to scan for required modules.
Would this be possible? If it is, it could make hiding functions, variables, etc from exploiters MUCH easier.