Uiresources Folder Not Correctly Reading Custom UI's

Discussion in 'Bug Reports' started by Emilari, Jun 2, 2023.

  1. Emilari UI Designer

    So, with the old SUITE engine, the way Custom UI's work is that you create a new folder in your uifiles folder, add any XML files you have customized to it, and then whatever is missing is pulled from the EverQuest --> Uifiles --> Default directory.

    A player then uses the /loadskin command (or the "Load a Skin" window - opened via a button in the Options Window) to load the custom UI.

    So, for example, I have:
    EverQuest --> Uifiles --> Default
    EverQuest --> Uifiles --> EmilariUI

    If I'm using the 'EmilariUI' skin, it pulls all my custom windows, then pulls all the default windows for anything I haven't customized. This is the ideal behaviour for the new engine as well as NO custom UI has ever customized every single file that makes up the entire UI.

    Now, in an attempt to update my UI for the new Gameface engine, we have the 'Uiresources' folder (and subfolders) in addition to the 'Uifiles' folder, so I've also got:

    EverQuest --> Uiresources --> Default
    EverQuest --> Uiresources --> EmilariUI

    Inside both the Default, and EmilariUI folder, I have the three subfolders: assets, img, and windows.

    The only files I have modified at this point are the QuantityWnd.html, StoryWnd.html and SelectorWindow.html which are contained in the "windows" subfolder.

    When one uses either (or both) the /loadskin and the /ui reloadhtml commands in order to load a custom UI of any of the windows ported over thus far to the new engine, it doesn't load them.

    There is currently no way to use a custom UI in the new engine because it refuses to recognize any folders other than the "default" one.
    Perihelion and Metanis like this.
  2. Metanis Bad Company

    Just curious, can you replace the default folder with your own files and then run eqgame.exe directly with the -patchme switch (thus avoiding the patcher), and have your UI work?
  3. Rolaque Ancient

    I may be totally confused, but the options window, general, 'load UI skin' is how I substitute any custom UI files into the default UI, etc. For me this custom folder (which I call "newui_mod') resides in the uifiles folder. This newui_mod folder contains mainly tga files with a couple of xml files and ini files that are used in place of the corresponding files in the default UI.

    This also generates the following warning (in red colored type):
    Your XML files are not compatible with current EverQuest files, certain windows may not perform correctly. Use "/loadskin Default 1" to load the EverQuest default skin.

    But my ui runs just fine, since it's a cosmetic feature mainly and not a change in functionality to any element (as in targeting rings, spell icons, and window borders, etc).
  4. Emilari UI Designer


    You could/can, but I hate avoiding the patcher as it tends to cause more issues than its worth. I'd rather Darkpaw fix the bug.

    OK... so... the "/loadskin" command, and using the "load UI skin" window do the same thing. Currently, this is only loading UI's in the old SUITE engine, where it should be loading UI's using both the SUITE and GAMEFACE engines.

    One of the issues is it's only doing half of what it should be doing. It's only functioning on the one engine.

    To force EQ to reload files in the new engine, they introduced the command "/ui reloadhtml" - which works fine when you're trying to force it to re-read files in the default folder, but does nothing when you're trying to force it to load html files from a custom folder with the Gameface engine.

    To put it simply: the 'default' UI is now pulling from two UI folders: the uifiles folder (old SUITE engine/ not ported windows), and the uiresources folder (new Gameface engine / ported windows).

    When one tries to make the same thing happen with a custom UI in both locations, it is only loading files in the old "uifiles" folder (non-ported SUITE windows), and isn't loading any of the new ported windows (custom Inventory, Quantity, Selector, or Story) in the new "uiresources" folder.
    Rolaque and Nennius like this.
  5. Rolaque Ancient

    Just my guess, so once the new Gameface engine is completely loaded by the game and the Suite engine is no longer being used or loaded, then we will be able to load custom skins. That's my hope. Is that right?
  6. niente Developer

    This should be working but may not be, here is some info about what it should be doing if at all helpful -

    - When you use /loadskin custom_skin:
    - EQ loads a custom SUITE version of the UI from EverQuest/uifiles/custom_skin/
    - If any UI files that are required by EQUI.xml are not in the custom_skin folder, it loads the default SUITE version from EverQuest/uifiles/default/
    - EQ then tries to load a custom UI for the new engine on top of the SUITE one
    - EQ looks for EverQuest/uiresources/custom_skin/ and loads those
    - If any UI files that have been converted to the new UI engine are not found in both the custom uiresources and custom SUITE folders, it attempts to load them from the EverQuest/uiresources/default/ folder.

    The UI path the game is trying to load is being logged in dbg.txt.
    chinger and Emilari like this.
  7. Emilari UI Designer

    It's certainly a relief to know exactly what it's supposed to be doing versus assuming and guessing. I distinctly recall it not working correctly when I was last poking around with it on Friday, yet tonight --- my custom UI skin is loading perfectly fine.

    It seems to be doing exactly what you've said it's supposed to be doing in the dbg.txt file, which I've included for reference in case it's useful to anyone in the future.

    Thanks for the information, and thanks for taking a peek at things Niente, it's most appreciated.

    Code:
    [Mon Jun 05 22:51:39 2023]00741:Loading UI.
    [Mon Jun 05 22:51:39 2023]00742:Deactivating previous UI.
    [Mon Jun 05 22:51:39 2023]00743:Unloading previous textures.
    [Mon Jun 05 22:51:39 2023]00744:Resetting UI.
    [Mon Jun 05 22:51:39 2023]00745:Resetting character select UI.
    [Mon Jun 05 22:51:39 2023]00746:Resetting game UI.
    [Mon Jun 05 22:51:39 2023]00747:UI Reset.
    [Mon Jun 05 22:51:39 2023]00748:Initializing UI.
    [Mon Jun 05 22:51:39 2023]00749:Initializing UI manager.
    [Mon Jun 05 22:51:39 2023]00750:Initializing fonts.
    [Mon Jun 05 22:51:39 2023]00751:Parsing UI XML.
    [Mon Jun 05 22:51:40 2023]00752:Loading default UI resources.
    [Mon Jun 05 22:51:40 2023]00753:Initializing game UI.
    [Mon Jun 05 22:51:42 2023]00754:Loading Icons.
    [Mon Jun 05 22:51:44 2023]00755:Resetting viewport.
    [Mon Jun 05 22:51:44 2023]00756:Game UI Initialized.
    [Mon Jun 05 22:51:44 2023]00757:Setting new UI engine skin to UIResources/EmilariUI
    [Mon Jun 05 22:51:45 2023]00758:Loading UI Complete.
  8. Fenanebae Terrwyn Lorekeeper

    Yeah, I still can't make it work. I tried to force it to use old UI so my UI stops flashing non stop but it didn't work. So I have been playing weeks with a disco UI. Luckily I do not get seizures. You know it is just sloppy. Maybe have a toggle button to decide to use it or not like show helm?

    No lets just break everything that has been the same for 20 years.