Gamepad Support Discussion Thread

Anything related to PR, release planning and any other non-technical idea how to move the project forward should be discussed here.
Post Reply
User avatar
Greendogo
Posts: 1292
Joined: 26 Aug 2011, 02:04

Gamepad Support Discussion Thread

Post by Greendogo » 25 Nov 2017, 04:11

I have made it a point to try and keep gamepad support in the minds of developers leading up to our next several releases. I've started to put together a list of issues related primarily to supporting Gamepad mode.

For now, the only feature issues on the tracker related to this are as follows:
Gamepad GUI Mode - Feature #3740 (parent task)
Gamepad Gamepad Mode Keyboard GUI - Feature #3985
Keyboard and Gamepad button combinations - Feature #4000
Toggle sneak shortcut - Feature #4001
Gamepad movement controls are not analogue - Feature #3025

And there is one active related bug:
Double "Activate" key presses with Mouse and Gamepad.

In this thread I'm going to post my rough drafts so far for the menus which need some Gamepad-related support. As I go along, feel free to post suggestions/corrections or rough drafts of issue reports for missing menus.

I'm also attaching a zip file of all of the menus I was able to take screenshots of from YouTube videos of Xbox Morrowind playthroughs.
OpenMW_Menus.zip
Contains everything except the Alchemy, Spellmaking, Enchanting, Level-Up and the Stats menu.
(4.74 MiB) Downloaded 8 times
Last edited by Greendogo on 25 Nov 2017, 04:38, edited 2 times in total.

User avatar
Greendogo
Posts: 1292
Joined: 26 Aug 2011, 02:04

Re: Gamepad Support Discussion Thread

Post by Greendogo » 25 Nov 2017, 04:21

Parent Issue*
Gamepad GUI Mode - Character Menus

In Gamepad GUI Mode, while the character menus are open (inventory, stats, map and magic), only one of the four menus should be viewable at a time and menu focus should be switchable between the next or previous menu with two mappable buttons. In the XBox version, this was mapped to the left and right triggers.
Every menu has a quick information bar located above it and a control bar beneath it.
The Quick Information Bar has quickly accessible information specific to that menu.
The Control Bar informs the player of the available gamepad controls for that screen. All Character Menus have a "Previous", "Next" and "Back" option and need to have buttons mapped to those events.
Child Issues*
Gamepad GUI Mode - Inventory Menu
In Gamepad GUI Mode the Inventory Menu will use a joystick to navigate the inventory items one by one, indicated by highlighting the item's icon, additionally the item category buttons are selectable as well using the same joystick.

The Quick Information Bar lists the current item's name, weight and value, in addition to information specific to that item:
-If the item is an armor its armor value and armor type are also listed, for example "Armor: 3 (Heavy)"
-If the item is a weapon its best attack is listed, for example "( Thrust 5 - 5 )
-If the item is enchanted, a charge bar is drawn depicting the remaining charge out of the total. This is drawn instead of the armor value or attack strength for armor and weapons respectively. Magic scrolls are exempt.
The Control Bar lists the controls for:
1) "Equip"-ing the highlighted item
2) "Drop"-ing the highlighted item
3) "Info" of the item, which is the overlay we currently use which lists all of the items visible attributes.
4) The previous and next menu buttons: "Stats" and "Magic" respectively
5) "Back" - closes the character menu
Note: This quick info bar is reused in the Container menu and the Barter menu.
Spoiler: Show
Gamepad GUI Mode - Stats Menu
Lists the players stats as usual.
The Quick Information Bar lists the currently selected stat item's level.
The Control Bar:
The previous and next menu buttons: "Map" and "Inventory" respectively
Gamepad GUI Mode - Map Menu
This is the only place in Gamepad GUI Mode that a mouse cursor is present and required (controlled with a thumbstick).
Here the "mouse" will not leave the map menu and bringing it to the edge of the map will pan the map in that direction.

The Quick Information Bar lists the name of the current or last hovered over location.
The Control Bar lists the controls for:
1) Toggling the map between "Local" and "World" - This eliminates the need for the "Local/World" button on the map itself.
2) Centering the map on the character
3) The previous and next menu buttons: "Magic" and "Stats" respectively
4) The Close Menu button

The "Add Note" feature for the local map wasn't in the original game, but it makes sense to keep it.
Spoiler: Show
Gamepad GUI Mode - Magic Menu
In Gamepad GUI Mode the Magic Menu will use a joystick to navigate the magic inventory one by one, indicated by highlighting the item's name, additionally the currently active magic effects can be highlighted as well using the same joystick.
The Quick Information Bar lists the currently selected magic's name and icon
The Control Bar lists the controls for:
1) "Select" and ready the highlighted magic item/spell
2) "Info" of the current magic, which is the overlay we currently use which lists all of the magic's visible attributes.
3) The previous and next menu buttons: "Inventory" and "Map" respectively
Spoiler: Show

User avatar
Greendogo
Posts: 1292
Joined: 26 Aug 2011, 02:04

Re: Gamepad Support Discussion Thread

Post by Greendogo » 25 Nov 2017, 04:42

Left to be detailed are the following menus:
  • Character Creation Menus
  • Main Menu
  • Pause Menu
  • Barter
  • Training
  • Repair (bought vs. player menu)
  • Enchanting (bought vs. player menu)
  • Spell (buying)
  • Spellmaking
  • Alchemy
  • Travel
  • Pop-Up Messages
  • Level-Up
  • Book and Scroll
  • Journal Menus
  • Container
  • Dialogue
  • Load Autosave
  • Sleep/Rest/Wait/Heal
  • Persuasion

User avatar
akortunov
Posts: 146
Joined: 13 Mar 2017, 13:49
Location: Samara, Russian Federation
Github profile: https://github.com/akortunov

Re: Gamepad Support Discussion Thread

Post by akortunov » 27 Nov 2017, 15:06

while the character menus are open (inventory, stats, map and magic), only one of the four menus should be viewable at a time
IMO, it will look horribly on modern large screens. Can we use a SkyUI-style grid interface?

Anyway, Morrowind GUI was designed more than 15 years ago for a mouse input. Judging by screenshots, XBox one is just a hackish adaptation of PC GUI.
Should we replicate it completely or can search for better solutions?

User avatar
akortunov
Posts: 146
Joined: 13 Mar 2017, 13:49
Location: Samara, Russian Federation
Github profile: https://github.com/akortunov

Re: Gamepad Support Discussion Thread

Post by akortunov » 27 Nov 2017, 16:18

A keyboard navigation may be similar to movement/interaction:

A_MoveForward/A_MoveBackward - navigation in the list (e.g. select item from list)
A_MoveLeft/A_MoveRight - switch tabs in the window (e.g. select item type in the inventory)
TAB - switch between windows (e.g. map, stats, inventory).

In the inventory:
A_Activate (or A_Use) - equip/unequip/use item
Should be actions for drop and search.

We can even provide additional section in input settings for GUI navigation.

User avatar
akortunov
Posts: 146
Joined: 13 Mar 2017, 13:49
Location: Samara, Russian Federation
Github profile: https://github.com/akortunov

Re: Gamepad Support Discussion Thread

Post by akortunov » 27 Nov 2017, 18:54

An example of items grid with large (42px per line, 42x42px icons) and small (27px per line, 21x21px icons) widgets:
Screenshot_20171127_214031.png

User avatar
Zini
Posts: 5134
Joined: 06 Aug 2011, 15:16

Re: Gamepad Support Discussion Thread

Post by Zini » 28 Nov 2017, 10:48

akortunov wrote:
27 Nov 2017, 15:06
while the character menus are open (inventory, stats, map and magic), only one of the four menus should be viewable at a time
IMO, it will look horribly on modern large screens. Can we use a SkyUI-style grid interface?

Anyway, Morrowind GUI was designed more than 15 years ago for a mouse input. Judging by screenshots, XBox one is just a hackish adaptation of PC GUI.
Should we replicate it completely or can search for better solutions?
Not to rain on anyones parade, but a replacement of the vanilla GUI with something new and completely different is out of the question. This is Morrowind and the GUI is part of that. We want the vanilla experience to be available.

If we make large scale changes to standard GUI elements these either need to be optional or modded in via content files. The later option would be a post-1.0 feature (probably far post-1.0 because we would need a large amount of groundwork first). I am only moderately excited about having the former in pre-1.0 OpenMW (though I wouldn't veto it, if it fits into the larger concept).

Just for the record, I agree that the original inventory UI is useless (not just for gamepads). The icons are too small, not distinguishable enough and and there are too many different ones that you could reliably identify an item by looking at the icon. That means you generally have to mouse over the icon and look at the tooltip for identification, which makes the whole thing as I said useless. I also agree that SkyUI-style style inventory UI would be a large improvement.

As I wrote above I don't like the idea of doing this kind of work now because it distracts from OpenMW 1.0 and may take development time away. But if people really want to do it and we have the developer manpower, I won't stand in the way.

However if we are going to do this, extensive design work and discussions would be in order, which belong into a separate thread. The baseline for the gamepad UI would still be the old inventory UI.

User avatar
augustt
Posts: 47
Joined: 14 Dec 2012, 17:14

Re: Gamepad Support Discussion Thread

Post by augustt » 29 Nov 2017, 16:10

@Greendogo I could take some photos of the missing Xbox GUI menus if it would help.

User avatar
Greendogo
Posts: 1292
Joined: 26 Aug 2011, 02:04

Re: Gamepad Support Discussion Thread

Post by Greendogo » 29 Nov 2017, 16:52

Yes, let us save the much needed improvements until after we get the Vanilla GUI mostly mirrored. Then improve it to your hearts content.

@augustt: The ones I'm missing are the Alchemy, Spellmaking, Enchanting, Level-Up and the Stats menu. I'm busy until mid December so I doubt I'll have a moment to look for xbox screenshots myself until then. Just to make sure you saw it, there's a zip file with ~41 screenshots on the first post.

User avatar
augustt
Posts: 47
Joined: 14 Dec 2012, 17:14

Re: Gamepad Support Discussion Thread

Post by augustt » 29 Nov 2017, 23:06

Greendogo wrote:
29 Nov 2017, 16:52
Yes, let us save the much needed improvements until after we get the Vanilla GUI mostly mirrored. Then improve it to your hearts content.

@augustt: The ones I'm missing are the Alchemy, Spellmaking, Enchanting, Level-Up and the Stats menu. I'm busy until mid December so I doubt I'll have a moment to look for xbox screenshots myself until then. Just to make sure you saw it, there's a zip file with ~41 screenshots on the first post.
Ok, I'll try to get those to you. I have Morrowind GOTY and a 360 hooked up so I should be able to provide most any reference anyone needs going forward - however they will have to be in the format of phone pics off a TV as I don't have any kind of video capture card.

Post Reply

Who is online

Users browsing this forum: No registered users and 4 guests