- Major user interface rewrite
- Unified layout system
- Mouse controls work like before
- Added support for keyboard controls
- You can use the UI while controlling the player character at the same time
- Still needs a better theme (help wanted)
- Uses less memory and renders faster
- Easier to extend and maintain
- Removed separate equipment slots from the inventory
- Perk-based character customization instead of clumsy sliders
- Testing, feedback and ideas welcome
- Check out the screenshots
I have overhauled the user interface of the game. The new interface uses completely new user interface scripts that radically change both the controls and layout of the user interface. Controlling the interface is possible with either mouse or keyboard. Mouse controls work like in the old system, interrupting player character controls until the user interface is closed. On the contrary, the new keyboard controls allow you to use the user interface while controlling the player character at the same time.
The user interface is still a bit incomplete, but I decided to push the changes regardless since I already did over 100 rewrite steps in my local repository. Out of the missing features, the most notable one is the lack of a better theme. The theme currently uses graphics from the old user interface as a placeholder, but it is far from pretty or usable. The theme being replaced with something that fits the new layout and the more cartoonish looks of the 3D graphics would be great, but I will be kept busy fixing issues other issues for a while. If someone wants to help with designing the UI graphics, it would be great.
Despite being incomplete, the user interface already shows great promise. It has better performance than the old system since it uses a simpler layout and does not need to keep all widgets in memory. The old system kept hundreds of widgets in the memory all the time, but the new one only keeps those contained by the current state. The new system also renders faster than the old one; there is no significant cost in any state, whereas the old system could cost nearly 20 FPS when lots of widgets were visible. The new system is also much easier to mod and maintain since it provides better separation between the the user interface, data and logic.
In addition to the user interface system being modified, the game now also has heavily modified inventory and skill systems. The inventory differs from the old one in that there are no separate equipment slots, but equipped items stay in the main inventory and just get tagged (like in Oblivion and friends.) This approach offers two improvements to usability: the inventory can be managed with the keyboard and the order does not get messed up when you swap equipment. For similar usability reasons, also the skill system was changed. The old system used sliders for allowing customization of character stats, but it was slow to use and the effects of the sliders were hard to grasp. Because of that, the new system uses a perk-based approach in which you can toggle perks such as health, magic and movement speed bonuses.
Despite all the work done so far, there are still several usability issues and missing features, not to mention the theme needing a redesign. Testing, feedback, ideas and contributions would be helpful since it is not easy to do all of those alone.