My two cents... some steps towards object orientation:
Ability to make user defined methods for objects
For example: There could be a "private" event sheet for every object, or you could make one. In that event sheet you could make functions like "ShootPlasma". In the event sheet of the level, you could then see "ShootPlasma" as an action of the object, like any other inbuilt actions like "Destroy". This would greatly help with encapsulation and benefit large projects with lot of developers!
"Object reference" as an inbuilt data type
More comprehensive set of inbuilt data types
A list type, for example.
Multiplatform runtime, and preferably edittime too! Mac OS X is pretty popular nowadays! Okay, it's already said quite a lot of times...
Improvements for object selection
Something like families or attributes, but with ability to be changed runtime; something like adding "tags" to object instances, and selecting instances with tags.
Also: a way to distinguish between two instances of the same class in an event! Read this:
"Layout" as an edittime AND runtime exportable/inportable dataformat (based on XML)
This would lessen the need for implementing own level loading and saving routines and make large projects more modular! There shouldn't be a need for user-made levels and game dev made levels to be fundamentally different.