Diitto
#159720315Wednesday, April 08, 2015 10:41 PM GMT

@cnt y cant u spell my name right; and OP is offline on IRC ,-,
cntkillme
#159720656Wednesday, April 08, 2015 10:44 PM GMT

I have everything-lexia
Inexorability
#159721346Wednesday, April 08, 2015 10:52 PM GMT

@diitto You can't spell ditto.
Diitto
#159788395Thursday, April 09, 2015 8:36 PM GMT

@eternal Imbecile, I never intended to name myself after the word or the damned Pokemon. Don't make your ignorant assumptions.
cntkillme
#159808658Friday, April 10, 2015 12:40 AM GMT

Diitto this isn't the SB comments, you are not considered "smart" here. Don't necrobump next time kthanks.
BothAngles
#159810915Friday, April 10, 2015 1:08 AM GMT

"Wrap your functions somehow" Example code? >:(
JarodOfOrbiter
#159812296Friday, April 10, 2015 1:25 AM GMT

"Don't make your ignorant assumptions." I don't think he ever said you were named after either of them. Don't make assumptions, hypocrite.
Diitto
#160070508Monday, April 13, 2015 3:06 AM GMT

@cnt I don't need to "pretend" to be smart to be smart. @jarod "You misspelled Ditto" I have enough experience to know when someone is being an ass or not.
cntkillme
#160074012Monday, April 13, 2015 4:04 AM GMT

Well you aren't either way, leave.
Seattlantis
#160074508Monday, April 13, 2015 4:13 AM GMT

diito i hate you >:(
CodingDominus
#161967060Monday, May 11, 2015 2:22 PM GMT

"MainMoudle is not a vaild member of Model"....Are you trying to make jokes on people? Dude..The only way to hack is hacking programs......... And yes.. You gotta download almost everything if you want to sucsses ^.-
cody123454321
#167633405Wednesday, July 15, 2015 5:45 AM GMT

If a nil'd module script parent is never garbage collected, and :SavePlace() occurs, you can easily open the place up in RobloxStudio and save it to the file. Next step would be to look through it... Hm...
eLunate
#167647477Wednesday, July 15, 2015 10:14 AM GMT

If the parent is nil'd then it's not saved to the datamodel and doesn't exist at the point of a :SavePlace()
Tom_DaIey
#178624986Thursday, November 26, 2015 6:49 PM GMT

hi
tekkit
#178629515Thursday, November 26, 2015 8:19 PM GMT

the model itself is empty? prove: when doing print(require(165456864)) it returns cannot find module in model and when i try to print the things inside the asset after inserting it into the world it prints Nothing at all
BothAngles
#178630286Thursday, November 26, 2015 8:36 PM GMT

^ lmao
Happywalker
#178632650Thursday, November 26, 2015 9:23 PM GMT

Nice name nice necro bump -wiki before u forum
rcouret
#216413654Thursday, May 11, 2017 6:31 PM GMT

Anyone ever able to do this? I was unable to even print the source of my own modulescript in my own place, roblox probably fixed some stuff over the years. I have a question, is there any way to see function names inside someone elses copylocked modulescripts (named MainModule) ? Lets say you have 2 functions in there Foo1() and Foo2(). Is there any way for someone to know which functions are defined? I tried "for i,v in pairs(require(1234567)) do print(v) end, but you only get the address of the function, not a callable name.
gskw
#216483436Friday, May 12, 2017 5:52 PM GMT

@rcouret, yes, in theory it's possible to steal a private require-by-id ModuleScript's source if it returns a function of some sort. You see, functions have something called an environment. By default, this environment contains all the global variables, such as Vector3, table, etc. But there's a particular global variable we're especially interested in in this case, that is, script. There's a design flaw/exploit in how Roblox works that allows us to steal private MainModules. The Roblox Wiki explains this pretty well, so I'll take an explanation from there (page name: "Private module"): "This is usually accomplished by requiring the module, getting a reference to the module's ModuleScript, parenting the ModuleScript to the DataModel, causing the game to save, and then opening the game in ROBLOX Studio to view the ModuleScript's source." In practice, you could write a Script like so: local MainModule = require(SOME_ID) - We will assume it returns a table containing functions for i, Function in pairs(MainModule) if type(Function) == "function" then local Environment = getfenv(Function) local Script = Environment.script script.Archivable = true -- Make sure it's Archivable so it can be saved -- You may also want to set the ModuleScript's children to Archivable if they aren't already (they probably are) script.Parent = game game:GetService("AssetService"):SavePlaceAsync() end end Then, you would put this in a place and clone that place using AssetService:CreatePlaceAsync(). Then you would enter the newly created place, then open it in Studio, and you would have successfully copied the source. As the Wiki points out, you can circumvent this exploit by placing the following line of code at the start of your MainModule: script = nil Notice that you should NOT use "local" in this case.
10MilesWide
#216484454Friday, May 12, 2017 6:08 PM GMT

why would you tell that skid how to steal modulescripts?
gskw
#216485316Friday, May 12, 2017 6:34 PM GMT

I don't want to jump to assumptions about people like that online, and regardless, the only way out of being a skid is to learn. So I'm hoping any skid who reads my previous post takes their time to understand it properly.
cntkillme
#216491180Friday, May 12, 2017 8:46 PM GMT

It's still possible to steal private modulescripts even if they have script = nil at the top because Roblox is really stupid (I don't think it's been fixed yet)
10MilesWide
#216496265Friday, May 12, 2017 10:09 PM GMT

cntkillme, I don't believe you Please PM me the method (only me and nobody else) and I'll see if you're lying :)
cntkillme
#216505615Saturday, May 13, 2017 12:51 AM GMT

No. I'm kidding. It's patched now according to convex so I don't care: ScriptContext.Error event passes the script. Just get the ModuleScript to error (be it passing wrong types to functions it returns or changing the names of services or whatever) Also using another bug that lets you access the metatable of a scripts' env (which all scripts share) you can _force_ the modulescript to error if they use any built-in
rcouret
#219955790Wednesday, June 28, 2017 2:25 PM GMT

Me? A skid? I don't expect everyone to know who I am but I do have over ## ####### ##### visits across my games. I am one of the good guys trying to protect my stuff from hackers.