Jump to content
  • Announcements

    • AndalayBay

      Orphan Attachments   07/31/2018

      I have been doing some housekeeping lately and I've noticed that I had a lot of orphaned attachments. Attachments get orphaned when the PM or post is deleted without removing the attachment first. Deleting a PM or post does not delete the attachment and the file or image remain on the server. I'd like to ask all members to go through their attachments and delete any attachments you don't need anymore or those that have been orphaned. Where can I get a list of my attachments? Click on your display name in the upper right corner of the forums and pick "My Attachments" from the drop-down list. How can I tell an attachment is orphaned? If the PM has been deleted, you'll see a message like this in your attachment list: Unfortunately there is no message if the post has been deleted, so please check your old posts. We do purge old birthday threads every once in a while. Also some hosted projects have been shut down, so you may have orphaned attachments on one of those locations. Thanks!


Project Member
  • Content count

  • Joined

  • Last visited

  1. Northern UI Compatibility

    Oh--took me a moment to figure out what you were talking about. You mean the fills for the meters. Those sort of have to be changed? I didn't realize it'd be an issue -- I thought the BAIN thing you have going on would make it possible to ship different versions of those files for NorthernUI. At present, they have to be vertically sized to match the meter background. I could write separate meter code to stretch a thin fill image out, allowing images of any thickness. Not ideal, but it can be done if needed. I think it would pretty much entail just creating a copy of the "statbar" meter that has a predefined "height" for the fill image. The timestamps oughta be different, so let me see... menus/levelup_menu.xml menus/main/hud_main_menu.xml menus/main/hud_subtitle_menu.xml // for repositioning notifications below the XP bar menus/main/stats_menu.xml menus/prefabs/ObXP/levelup_av_template.xml menus/prefabs/ObXP/levelup_config.xml menus/prefabs/ObXP/generic/vert_floating_scroll.xml textures/menus/Oblivion XP/xpbar_ribbon_full_COLOR_NAME_HERE.dds That oughta be everything.
  2. Northern UI Compatibility

    That's a wise choice! The vanilla game has scrollbars that auto-hide, and that makes sense for most list panes; it was also in use for your vanilla file, so it's what I went with. No localization needed. Awful lucky you had a scrollbar setup there, too, because otherwise I wouldn't have been able to shrink the list of skills. Would've made it real hard to keep that hint in the dialog box. Uh, sure? Is that just if you spot anything that you need me to change, or do you need me to merge things with your update-in-progress?
  3. Northern UI Compatibility

    Strange. The wiki description is based on me reverse-engineering a few "normalized screen size" getters, which get used when the game sets the size of the "screen()" tile and when specific menus work with mouse coordinates (e.g. the lockpickmenu catching cursor movement). However, I didn't actually test the game with my system set to different resolutions, so there's room for error in what I wrote. Ah, right. I just have the scrollbar hide if everything already fits on-screen. ('Course, the level-up menu uses a constant height, so...) Yeah, I noticed that, made sure to keep using any such strings I saw, and tried to avoid adding any hardcoded text. NorthernUI actually has its own strings file as well (different approach from the MenuQue method, though).
  4. Northern UI Compatibility

    Thanks for the answers! NorthernUI doesn't have a zoom/resize feature for the UI, no. The menu would be usable on a 4K monitor, but only in the sense that Oblivion's UI engine normalizes the screen size. I play on 1600x900, so the game renders the UI at 1707x960px and that gets scaled. The precise details are on the CS wiki. According to Wikipedia, 4K is 4096x2160px, so that'd render at 1820x960px. (Bear in mind: the UI renders in 3D, so it's not going to look like a 1820px image scaled up to 4096px. That said, the graphics in my UI are all hand-drawn; most get downscaled, but I only drew them so large...) My scrollbars don't (all) offer a " _mouseover_any" trait, but I can't think of anything offhand that would use that for a scrollbar.
  5. Northern UI Compatibility

    Updates: Reskinned the scrollbar anyway. XP meters now support Oblivion XP's fill colors. Improved positioning and sizing for the skill list in the level-up menu. Reskinned the level-up menu's focus box. The level-up menu now sizes to fit its contents. I think this is everything? Looks like it. current.rar
  6. Northern UI Compatibility

    Current progress attached. Changes from the last pic include using enumpicker buttons for the category selector, and adding as much keyboard/gamepad navigation support as is possible. Just to make sure this doesn't get lost amidst all the technical stuff above: I need to know if there's any difference between "ObXP\generic\vert_floating_scroll.xml" and the normal scrollbar prefab? The code looks vanilla, but I see comments like "DarN 39" on some traits and I don't know why they're there. This is important for reskinning the scrollbar in the level-up menu. Aside from that, I'll send you a message on Nexus so you have proof of permission for publishing edited copies of my files. NorthernUI isn't under open permissions (it's on an "ask me" basis unless I disappear for a year, in which case it's on a "do whatever you want if you're not being a jerk" basis), so you'll want to have proof of permissions somewhere the Nexus folks can see.
  7. Northern UI Compatibility

    Oh--I almost forgot! Offhand, do you know if there's any difference between "ObXP\generic\vert_floating_scroll.xml" and the normal scrollbar prefab? The code looks vanilla, but I see comments like "DarN 39" on some traits and I don't know why they're there. Just wanna make sure I don't break anything, once I set about reskinning the scrollbar. EDIT: Got keyboard navigation mostly working for the level-up menu: you can navigate between list items (and between the two separate lists) using the up and down arrow keys, and you can increase or decrease a stat using the left and right arrow keys. This should generalize to the gamepad as well. I don't know if the method I used is something that would work on your other compatibility files. Consider this: when you're at the end of the attribute list, pressing "down" needs to take you to a skill list... but which one? There are four list containers, and only one can be visible at a time. Normally, you can only specify one tile to try to navigate to, and if that tile isn't visible or targetable, then navigation simply fails. NorthernUI patches the game to let you specify multiple tiles to navigate to, with the game using the first one that works. There could be some other workaround (e.g. moving the XLIST stuff to the list containers' parent tile, and trying to navigate to that), but I haven't tested it (and frankly, don't want to break the setup that does work for NorthernUI at present). Still, here's the general details. Each list container (that is, the tile into which list items are inserted) needs to have an XLIST trait set to &xlist;, a TARGET trait set to false, an XDEFAULT trait, and an XSCROLL trait whose value is a REF operator pointing to the scrollbar. (The trait you specify is irrelevant; the game always uses user5.) Each list item needs an XDEFAULT trait (should probably set it to true), an XUP trait set to &prev;, and an XDOWN trait set to &next;. Each list item should have an XSCROLL trait that resolves to a numeric value (generally, you take the number of list items visible at once, divide that by half, and round it up; then, subtract that from the list item's index in the list). When the list item receives focus, the game takes the scrollbar that the list container's XSCROLL refers to, and uses the list item's XSCROLL to scroll it into view if it isn't already in view. The level-up menu provides a bit of a wrinkle, since list items in two different lists use the same prefab and only one of those lists has a scrollbar. In that case, the attribute list container has its XSCROLL trait omitted, so that moving through attributes doesn't scroll the skill scrollbar. If you want to allow keyboard navigation between two lists, then the first list needs an XDOWN trait pointing to the second list, and the second list needs an XUP trait pointing to the first list. To describe how that works: if you scroll to the bottom of the first list and then press "down" one more time, the list item's XDOWN won't resolve to anything valid, so the game will check the list container's XDOWN and act on that instead. This, again, is where your design runs into problems, since without NorthernUI's DLL installed, you can only point to one tile -- and your first list needs to be able to point to any of four. You can try setting up the keyboard navigation stuff on the thing that contains your four skill list containers, but I can't guarantee that'll work; I haven't examined Bethesda's internals quite that closely. XUP, XDOWN, XLEFT, and XRIGHT all work for the gamepad (control stick and D-Pad) as well as the keyboard. So, ah, there's all that laid out. EDIT 2: I almost forgot to do the skill category selector! When you're in the skill list, that's mapped to the bumpers and triggers on a controller (triggers are aliased to Shift + Arrow Key on keyboards). The only issue is that switching categories while in the skill list boots you out to the bottom of the attribute list... I'm actually surprised that the engine handles the case of the currently-focused tile (in this case, a list item in a list that gets hidden) suddenly becoming unfocusable. As to why it's the bottom of the attribute list: every time you keyboard-navigate to a tile with an XDEFAULT trait, that trait gets increased to be higher than all other tiles' values. If you navigate from List A Item 3 to List B Item 1, and then back to List A, you'll end up back at List A Item 3, because that's the item with the highest XDEFAULT. I... can't really think of a good, consistent way to move you to the newly-visible list instead of to the previous list you were on. This doesn't look like a use case that Bethesda had in mind when designing the engine. One way to hide the problem would be to ditch the category selector and just display the four skill lists consecutively, with some magic to make them look like one merged list. I used that for the dialogue menu, to "add" the buttons to the top and bottom of the list as lines of dialogue (e.g. "Goodbye" as a selectable line); it was actually three separate lists end-to-end. That's not something I really want to do without your go-ahead, though. As it stands, the UI/UX will work just fine for mouse users, and be a little weird (but still usable, which is an improvement) for keyboard and gamepad folks.
  8. Northern UI Compatibility

    New fixes on my side: Stats menu: the "level" bar/button can now be keyboard-navigated to from most of the menu panes, and can keyboard-navigate back to the panes as well. Can't navigate to it from an empty Factions pane or from the MiscStat pane; not sure how to work around engine limits for that; for those, just go to a different pane via left/right and then press up. Stats menu: Fixed display of the player's level. Odd, though. I'd expect this to be broken for Vanilla!OblivionXP as well. EDIT: Some fifty minutes of work has seen the following changes to the level-up menu: The stat template now scales according to its parent width (or half its parent width minus the column gutter, for attributes). Finished sizing and positioning for the attribute list. Fixed scrolling code for the skill list: the scrolling setup is closer to vanilla, and all tiles clip properly. Took advantage of the pre-existing scrolling setup for the skill list: the list is now smaller, so with a bit more work, I should be able to fit that hint text. I've been trying to use the values in your "config" prefab where possible, though that does impose some limits (e.g. the hint text being bright white instead of the subdued grey). There are a few changes I made to some of the menus before I figured out what the "config" prefab was for, though, so there may be places that it no longer controls. Anyway--screenshot:
  9. Northern UI Compatibility

    And with just a bit more work, I now have this. Amazing how much better it looks once the fonts and images are set up. Just gotta get sizing and positioning dealt with, it looks like -- and test the scripts and whatnot, of course. Not sure how much room there'll be for that hint text at the bottom, though, or for any stat descriptions/images if I get those working.
  10. Northern UI Compatibility

    Thanks for reminding me about the screenshots in this thread. This RAR should have the files I'm currently editing. LevelUpMenu is very preliminary I'll try to get the layout and style finished first; then I need to look into an incompatibility that's causing issues. MenuQue's "active(...)" tile selector is crashing with NorthernUI installed; this is something I've never been able to test for, because stuff like "active()" wasn't documented on MenuQue's mod page or on its CS wiki articles. I've commented out all traits using that selector, so there won't be any crashes for now, but the hover images and text for attributes and skills will be stuck or invisible. (The vanilla hover images and text are also still there; I didn't realize those would be inoperative (due to ObXP no-oping the vanilla attribute list) until after I got something that could render without crashing.) MenuQue has this bizarre "TileLink" system -- apparently a subclass of the internal Tile class. A while back, I was able to patch a piece of MenuQue code that had crashed due to some bad assumptions (mainly, it would choke on a null TileLink pointer if a menu with a non-vanilla ID was open); I found TileLink while working on that and couldn't figure out how it worked. The worst-case scenario is that we exclude this stuff to avoid the crashes, and users just won't see descriptions and images for attributes or skills when they hover over them. As long as MenuQue doesn't throw especially nasty surprises at me, I should be able to at least get this functional. EDIT: Come to think of it, I could probably replicate the active() stuff just by checking mouseover traits by hand. Maybe. EDIT2: Nope, that won't work for anything templated. Hm.
  11. Northern UI Compatibility

    Sorry for the delay; offline difficulties. HUD is mostly done; XP bar is not yet colorable, but I'll try to get to that. Have a question about the log: the "full" log needs to be sized to fit all of the lines of text, yes? You use a constant value, but my preference would be to add the last-child's y to its height just to guarantee everything fits. StatsMenu is functional but not perfect. NorthernUI's design merges the level and experience displays (they're the same UI widget), so I can only show the mouseover tooltip for one, but I can show an Oblivion XP tooltip; that is tested and works. I also noticed some additional text values you'd placed in the tooltip (e.g. something for "rested XP"), but couldn't find them in Oblivion XP Update's images section on the Nexus, so I don't know what they're for or how they're supposed to be positioned. Skipped them; can come back to them when I know more. Working on levelup menu right as I type this.
  12. Northern UI Compatibility

    'Kay, I've moved the log to the bottom as requested. I put it above the icon rather than next to it, to avoid the risk of it covering up any particularly long dialogue subtitles that may be on-screen. XP meter has also been made consistent with other HUD statbars (same prefab), though if you still want the user to be able to customize the bar color, I'll have to make fresh images for those. Screenshot of current progress attached. There is the slight problem that notifications can show up overtop the XP meter, with that current position. I've attached a possible alternate design, integrating the meter into the log window (so that the log, when shown, attaches to the top of the meter); if you like, I can work up some basic assets for that and give it a shot. I'd also like to know if there's anything I can use to test the mod's functionality, e.g. debug commands that can force a level-up popup.
  13. Northern UI Compatibility

    Let me make a list of changes made to each XML file... The installer didn't allow me to select your existing NorthernUI assets, so I went with the vanilla assets just so I can get a grasp of where to look for what. hud_main_menu rect#ObXP_log // full log; ten lines rect#ObXP_log_small // small log; one line rect#ObXP_bar // experience points meter hud_info_menu No major changes. The vanilla menu's X-coordinate is adjusted to move it out of the way of Oblivion XP's UI widgets. That shouldn't be needed for NorthernUI; we can omit this file entirely. stats_menu All changes are documented in a code comment at Line 109. levelup_menu Sweeping, major changes, which are immediately apparent upon opening the XML file. Hm. The replacement levelup_menu, I can understand, but it's odd that the mod ships with replacements for the other files when their changes are so minor, and consist mostly of additions. MenuQue commands are capable of injecting XML anywhere into a loaded menu, no? The HUD features seem like the simplest starting point. I'll take a look at what you've got so far and work from there.