I spent all night last night messing around with the Unity3D game engine and I have to say I really like how they handle scripted objects in their engine. You place an object in the world, and then attach existing scripts to it. This is a nice concept, as it lets you re-use a script file over and over for several other objects.
Currently the Mud Designer allows each object to have a single script, and the script is owned by that object and not shared by any other objects in the game. After messing with the Unity engine’s scripting setup, I'm currently thinking about changing how the engine handles scripts. I’m considering a script repository that the Designer holds, and developers can drag and drop the scripts onto objects within the game. I’m not quiet sure how I want to go about implementing this concept, as it works great with a single IDE interface, that allows drag and dropping from object to object, but the Designer is broken up into several editors and thus making it a little more difficult to achieve.