Designing a new Home

edited 2016 Feb 8 in Developers
<div id="bridgedd"> <div class="excerpt-title">This is a blog excerpt.  <a href="http://dengine.net/blog/2016/02/designing-a-new-home/&quot; target="_blank">Read Full Article</a> </div> <br /> <p>Last week I was sketching my ideas for the Home screen UI. I arrived at a design I'm comfortable enough with to start prototyping using actual Doomsday UI widgets. This will let me try out the design in practice to see if it works as envisioned. </div>

Comments

  • Probably want a menu button top right of the page for access to quiting and advanced stuff?
    How would one load pwads? (as a list after the main iwads)

    Not fully about the main screen, it might be useful to have the console resize the screen like the "modeledit" panel does
    can scrolling of menus also be made quicker(or scroll bars being added)? (when one has lot's of packages in the list, it takes a while to get to the bottom.

    Also allow keyboard navigation?
  • Back when Deng Team announced the idea of an in engine UI, I envisaged a scrollable list of game title pics with the user clicking on a game to expand its full range of options: game modes, save games, multiplayer games, loaded add-ons etc etc. Your sketch has made me rethink of that.

    I like that that you are considering merging all of a games modes into one ‘profile’ (i.e Heretic Shareware, registered and SOTR are together rather than listing them as separate games). I could imagine that if a user only has one variant of a game (i.e they only have Heretic SOTR), that it might automatically expand when the user enters said games (i.e Heretic) profile, to save the user a click?

    I am guessing that you intend for users to be able to scroll horizontally through the games? It would be interesting whether you consider that to be done with arrow buttons on either side of the screen or simply through scrolling the mouse toward the edges of the screen, as I think that would affect where you place the buttons and displays for each profile (i.e you wouldn’t be able to place any buttons near the edges of the screen if the mouse automatically scrolls).

    Something to debate is how or whether the UI should indicate to users what games Dday supports when a user doesn’t have every game it does, by which I mean Dday may support Blake Stone: AOG, but the user might not have any variant of that game available. Should there be greyed out profiles and menu options for them always displayed, an option to hide supported games the user doesn’t or should the list of supported games be relegated to documentation or initial engine setup (or an add game menu option)? Personally, I would have greyed out profiles with an option to hide them.

    Thinking ahead to Dday supporting other games, I would personally have a menu bar at the top of the screen that is only be for Dday wide options. There should instead be a dropdown menu for jumping to a game profile instead. Given the merging of a games modes, I could imagine that being sufficient for Dday for quite some time. I think it would only need to be looked at again when Dday supports a couple of dozen games or something and even then that might be mitigated or never an issue if said dropdown allowed keyboard shortcuts; for instance press 'D' to jump to the first game with 'D' as its first letter. Snowberry could have done with this particular shortcut for navigating the add-ons list.

    On the subject of keyboard shortcuts, I debate that there should be a clear separation of shortcuts (or at least the default ones, if you plan to expand upon the customizable taskbar opening button) for the selected menu/profile versus any engine wide ones, from the beginning. That all engine wide short cuts could be ‘shift + key’, while any menu/profile shortcuts could be a letter by itself.

    I’m envisaging that if the user has opened (based on Dday’s current options and features, I’m not seeing a need to display two profiles side by side as your sketch shows; may I humbly ask do you have ideas, benefits or features that you envisage it bringing or allowing?), say the ‘Doom2’ profile they can then press, say ‘M’ to instantly expand the list of available multiplayer games for it or they can press ‘shift+V’ to automatically open the taskbar Dday’s global video options. Naturally, these keyboard shortcuts would not work inside a game, unless the user had already opened the taskbar.

    Getting back to the menu bar, I think the multiplayer, package etc options should be on a separate second menu line and debate that, by default they should open pages containing all the available multiplayer games, packages etc for all games Dday supported/loaded. That in the future might become customizable through some sort of GUI to allow users to add shortcuts for only displaying a specific game profiles multiplayer games; either on the pages the menu options open or they are added to the menu options themselves which turn into drop downs.
  • KuriKai: Probably want a menu button top right of the page for access to quiting and advanced stuff?

    Vermil: would personally have a menu bar at the top of the screen that is only be for Dday wide options.
    What you both are essentially talking about is the task bar. I'm getting the impression you'd like for it to be at the top of the screen/window, though? Perhaps not fully hidden unless a game is being played?

    On the whole, the task bar will be unaffected by the changes in the Home UI, although I'm sure down the road it will become necessary to rethink it a little, too.
    KuriKai wrote:
    How would one load pwads? (as a list after the main iwads)
    So far my thinking goes like this:
    • You can browse your PWADs in the Packages (or perhaps "Add-ons") tab along with any other add-ons.
    • The black box button next to the Play button will open a dialog that lets you pick which Packages to use for the game. The selections will be remembered persistently until you clear them.
    • There will be some way to save a game+packages combination as a new profile that then appears in the list.
    As to the UI design of this add-on selector, it will probably be pretty similar to the Packages tab.
    KuriKai wrote:
    useful to have the console resize the screen like the "modeledit" panel
    I can see benefits both ways: the overlaid console we have currently and a console in the sidebar for more permanent access. I could make this an additional alternative, keeping the task bar console as-is with an overlaid log. The sidebar would then have its own command prompt, too.
    KuriKai wrote:
    can scrolling of menus also be made quicker(or scroll bars being added)?
    Yeah that should be addressed somehow — I'm personally working on a Mac so scrolling speed is not an issue (swipes on the trackpad can be as fast or slow as you like). Perhaps a grabbable scrollbar would be the best solution?
    KuriKai: keyboard navigation
    Vermil: (keyboard shortcuts)
    I agree this is one of the biggest missing things in the UI as a whole. I definitely plan to incorporate both keyboard navigation and shortcuts in the future. The goal is that the entire UI is fully accessible with just a keyboard or a gamepad.
    Vermil wrote:
    it might automatically expand when the user enters said games (i.e Heretic) profile, to save the user a click?
    Yes, in general my plan is to remove any unnecessary clicking/selecting — if there is only one choice, it will be focused by default, etc.
    Vermil wrote:
    whether you consider that to be done with arrow buttons on either side of the screen or simply through scrolling the mouse toward the edges of the screen
    This is one of the things that I haven't yet fully decided on. It will depend on how it feels in the prototype. Most likely there will be as many alternative ways to navigate the UI as possible, i.e., keyboard arrow keys, move mouse to left/right edge and click, use the tab headings in the top, etc. In any case, the game items and other widgets in the view will not reach all the way to the edges.
    Vermil wrote:
    Something to debate is how or whether the UI should indicate to users what games Dday supports when a user doesn’t have every game it does ... Personally, I would have greyed out profiles with an option to hide them.
    I agree. That's pretty much what I've been thinking. The default is to show them grayed out, and there will be options to hide entire game families and/or only the unplayable games.
    Vermil wrote:
    I’m not seeing a need to display two profiles side by side as your sketch shows; may I humbly ask do you have ideas, benefits or features that you envisage it bringing or allowing?
    In the current/old Home UI, you have all the games visible at the same time. The idea in the new design is to apply some constraint to this listing, so that the games are divided into groups (that I call "game families"). There will be as many of these families visible as fits in the window. The example shows only 2 families at once, fitted for a very small window.

    So it is intended to be a balance between the amount of information shown and keeping the visual layout easily understandable.
    Vermil wrote:
    I think the multiplayer, package etc options should be on a separate second menu line
    I'm curious, why do you think that would be a good?

    Thanks for the thoughtful comments, though! On the whole I believe we are thinking somewhat along the same lines. The design will undoubtedly go though a couple of iterations once the prototype is feature-complete and you can try it out for yourself.
  • skyjake wrote:
    [
    Vermil wrote:
    I think the multiplayer, package etc options should be on a separate second menu line
    I'm curious, why do you think that would be a good?

    Thanks for the thoughtful comments, though! On the whole I believe we are thinking somewhat along the same lines. The design will undoubtedly go though a couple of iterations once the prototype is feature-complete and you can try it out for yourself.

    I don't think the primary menu bar on the home page should have anything not Dday wide; not every classic 2.5d FPS has multiplayer or any support for mods. But I guess Dday might by default allow multiplayer and mods on any game it supports, wheter or not the original games maps etc were ever designed with multiplayer in mind (the fact that Dday allows more than 4 players to play Doom co-op is bit of a tenous example).

    But mainly, I don't think Dday should have the likes of Doom/Heretic/HeXen/Other games in the primary menu bar. It is fine for the developers to have preference toward certain games on forums and the like, but I don't think the engine it 'self should have anything that suggests bias toward certain games? Of course, some sort of user customizable shortcut tab system might be cool to go alongside keyboard shortcuts. Like an internet browser's favourite website menu/tab.

    Apologies if I am dreaming a bit much or being a bit pretentious here.
Sign In or Register to comment.