A way to track the property changes of an object

I want to know what line of what script is changing the parent of my tank. My game has tens of thousands of lines of code. :frowning:

That, my good friend, is a perfect opportunity to dig into the wonderful mechanics of a sandbox.
(Just a stupid one that sandboxes roblox instances and checks the __newindex for your stuff you want to trace)

[quote] That, my good friend, is a perfect opportunity to dig into the wonderful mechanics of a sandbox.
(Just a stupid one that sandboxes roblox instances and checks the __newindex for your stuff you want to trace) [/quote]

I have done this before for exactly this reason (tracking everything that goes on) and it’s a great solution if you do not mind the work, although I think there should be more power to read, write, and detect property changes;

For instance it would be great if we had a Enum list of properties or something we can read from a object, and set those accordingly. Setting them could trigger an event in (idk LogService?)- This sort of control over properties and knowing what goes on with the objects in your game could be a big step in preventing exploits. For instance, if you allowed the Source of a script to be readonly to normal scripts and find that the source is changed you could disable it.

[quote]
For instance it would be great if we had a Enum list of properties or something we can read from a object, and set those accordingly. Setting them could trigger an event in (idk LogService?)- This sort of control over properties and knowing what goes on with the objects in your game could be a big step in preventing exploits. For instance, if you allowed the Source of a script to be readonly to normal scripts and find that the source is changed you could disable it. [/quote]

What you are proposing is an inferior alternative to FilteringEnabled. This was actually tried a couple of years ago. If you look at ServerReplicator you’ll notice it has several callbacks for filtering based on property changes. It had serious problems: Sorcus told me it was at least 30% slower and that was for a heavily optimized game. FilteringEnabled is a much better solution.

[quote]
For instance it would be great if we had a Enum list of properties or something we can read from a object, and set those accordingly. Setting them could trigger an event in (idk LogService?)- This sort of control over properties and knowing what goes on with the objects in your game could be a big step in preventing exploits. For instance, if you allowed the Source of a script to be readonly to normal scripts and find that the source is changed you could disable it. [/quote]

What you are proposing is an inferior alternative to FilteringEnabled. This was actually tried a couple of years ago. If you look at ServerReplicator you’ll notice it has several callbacks for filtering based on property changes. It had serious problems: Sorcus told me it was at least 30% slower and that was for a heavily optimized game. FilteringEnabled is a much better solution.[/quote]

? Ethan’s game is already FE, I think I might be missing how you came to the conclusion that Shag was proposing an alternative to FE.

[quote] [quote=“Shagmeister” post=175842]
For instance it would be great if we had a Enum list of properties or something we can read from a object, and set those accordingly. Setting them could trigger an event in (idk LogService?)- This sort of control over properties and knowing what goes on with the objects in your game could be a big step in preventing exploits. For instance, if you allowed the Source of a script to be readonly to normal scripts and find that the source is changed you could disable it. [/quote]

What you are proposing is an inferior alternative to FilteringEnabled. This was actually tried a couple of years ago. If you look at ServerReplicator you’ll notice it has several callbacks for filtering based on property changes. It had serious problems: Sorcus told me it was at least 30% slower and that was for a heavily optimized game. FilteringEnabled is a much better solution.[/quote]

? Ethan’s game is already FE, I think I might be missing how you came to the conclusion that Shag was proposing an alternative to FE.[/quote]

Exactly what I was thinking, and Seranok if you look closely (not saying you have not) you will see its RobloxPlaceSecurity, only usable practically by plugins. Certainly what I personally would call restrictive to my needs to detect property changes or read from a list of properties.

@Weeve

What Ethan is asking for is a way to debug property changes, which is fine. I’m saying this isn’t for exploit prevention like Shag suggests.