I think it would be great to have a scriptable UI that we could overlay on top of the rendered environment. This practice is common in some of the stronger MMO titles out there. Best of all there are several interpreters that would be simple enough to implement. In my post I will describe a system combining XML and JavaScript to accomplish the goals of the UI team.
Popular JavaScript/ECMA Interpreters:
Microsoft's Windows Script Host(JavaScript mode)
Mozilla's SpiderMonkey
Why JavaScript?
JavaScript is a dynamically typed language known by nearly all web developers. It would allow a team of designers and scripters accomplish very fluid and advanced interfaces. No advanced knowledge of C# or engine mechanics are required either.
XML and UI:
XML is a simple markup language that could be used to define frames and their contained elements. Elements within each UI component could specify how they interact with dynamic elements from the UI script.
Events:
Within the XML or script, a UI developer could have his/her component subscribe to events that the UI has access to. Multiple components can subscribe to the same events and process the information independently. This type of system could lend itself to internal and external UI components typically known as addons or mods.
Security:
Tasks like moving, spellcasting, crafting, or other game progression methods are typically undesirable to expose in an addon. This prevents automation of a persons character that would offset the economy of the system.
Each addon could have its own settings or defaults it can save per character or account. Individual components should not be able to read or modify other component's files unless specified in an "allow list."
Protected/System UI:
This group of addons is made by the core team building the game and are not able to be modified but are still constructed using the same UI scripting engine. While these can't be modified a community member could have their mod override a system UI component.
Community UI:
Just about anyone technically inclined would be able to customize the way they interface with the game. If they didn't like the way the core team presented the interface they could just whip their own together after reading the UI specifications. With so many people already possessing the skills to write addons it would be a great way to sustain a gamer community for the lifespan of the title.
[ 1hr interruption from friend, had remember some sign language to communicate with him ]
I'm sure I could have ranted even longer but I think that sums up the majority of what I would like to see. I'm really looking forward to some pros and cons of this type of system being implemented in the game. It's a subject that could be debated for a long while but I believe it's an argument of strength.
By all means tear my idea apart. My feelings wont be hurt.
Thank you for your time.
-def
EDIT:
From chats on IRC Mr. Walsh has decided that JS or C# will be allowed in the UI script. You may refer to this post for some brief information about the UI system in Level-Grind. I'm recommending that documentation be made available at some point on the events addons can subscribe to and the functions they can access.