quote]You can do this in the plugin/behavior SDK. Javascript doesn't employ any encapsulation (e.g. private variables or functions) so by its very nature you can edit anything in the runtime at any time from a plugin.
Cool! I'll do a little research on accessing other variables through javascript, this is very interesting to me. Do you know of any plugins that use this, as an example?
I can't think of any good examples, actually - it's not actually normally necessary to do this. But it's possible in case you really need to. I'd say read through the SDK docs, there's guides on how to access the full list of instances and such.
hen I put more than one instance of an object and then later want to modify that object it seems that all instances of that object are subject to the same command, and as far as I can tell, you can't pick one specific object through the event system
That's not true - it would be very difficult to design decent games if the event system didn't let you do that! The conditions in events act as filters to pick the instances you want to affect. For example the condition "Sprite X < 100" picks all individual instances to the left of X=100. If you then have an action 'Destroy Sprite', for example, only those picked sprites get destroyed, and the others are not affected. So the way events work actually is fundamentally based on picking individual instances of objects and running actions on them.
TBH designing plugins when you're not familiar with the way events work will be tough - I'd spend some time getting to know how C2 works first, then it will be much clearer what plugins are doing in their code.