About this image
The new alchemy menu is almost done.
Every menu in Oblivion consists of an internal class and an XML file. The internal class is the compiled code for the menu, written in C or C++, which controls all menu behavior. The XML file is an easily-modded file defining the menu's graphics and layout. The XXNAlchemyMenu is a new internal class which uses a separate XML file from the original AlchemyMenu; it is loaded conditionally based on a setting in NorthernUI.ini. This makes it possible to include both a reskinned vanilla alchemy menu and a fully modern alchemy menu with advanced custom behaviors.
XXNAlchemyMenu offers a categorized list of all ingredients in your inventory, allowing you to quickly and easily tell what kind of potions you can make and which ingredients are compatible with your current potion. Ingredient selection is modeless as in Skyrim rather than modal as in vanilla Oblivion. The menu's current build is capable of properly computing all potion data (except for name and weight) and cooking potions, right down to having the appropriate effects on your skill experience and misc stats.
3 comments
NorthernUI doesn't use the fonts specified in Oblivion.ini. Instead, every piece of text that uses a custom font has a little <include> tag that says, "Hey, go check this other file to get the font's filepath." So there's a file for normal text, a file for big text, and a file for little text. Changing just these few files will change fonts for the entire UI.