Thread Tools Display Modes
12/08/20, 11:00 PM   #1
Sharlikran
 
Sharlikran's Avatar
AddOn Author - Click to view addons
Join Date: Apr 2014
Posts: 626
Gamepad Mods and support

Recently a user reported an error with MM while using the Gamepad. I didn't know what to do because neither of my controllers will work with ESO. On the Bethesda side of things we often explain that if you want support for tools such as TES5Edit or FO4Edit, LOOT, or Wrye Bash testing requires [insert whatever here]. Normally this would not be the game but things like VR support. If the desire in there they pitch is and then support is added.

A controller is fairly cheap but I am a father of 5 and I struggle as it is to keep my i3 (lynnfield ) 4GB of ram computer working. So I said get some people to contribute and I will take a look but it would only be for MM testing.

Thanks to Lyelu I have a gamepad that works with ESO. Only now, I am on a quest to add Gamepad support to LibMapPins to start with so that you can toggle quest pins off and on when in Gamepad mode.

Which has led to this post.

I am requesting that the conversation stay on topic. This will be different then other threads as the topic is for mod authors only. No user posts requesting anything or commenting. I will ask moderators to help with that.

What am I requesting?

For starters, do you have a mod with Gamepad support? Meaning does it really have the support? Not that it simply doesn't cause an Lua error. As an example MM dose not have Gamepad support as none of the information will show in Gamepad mode. I am still looking into it but I believe "BetterUI :: Gamepad Interface Improvements" does this but I would like to create a framework mod so that MM can use it. The framework mod would be something other authors could use as well. It will not be the original intent, but as the framework is developed I want keyboard support to be kept in mind and the basic foundation to be there.

I am a bit new to Lua as it is and I do not know all the API features available to keyboard mode so I struggle. I just got the Gamepad and I know 0 about the options available other then what I have found digging around. So for me to state that I want to develop and be in charge of final layout may be a bit odd. However, I want there to be a focus. You can't make everyone happy.

I can't use it yet but I can get at the information I need for MM to alter the sale price and possibly display the basic stack price calculator like you have when you are not using Awesome Guild Store.

I have also learned that there are ways to get at the information you need to buy and sell items while AGS is active. The author simply revamped a great many things. I have been able to use his callbacks to obtain what I want but I have more work to do. Obviously without AGS you can do this more easily.

The goal is to keep it simple. You all know the keyboard mode. There is a vanilla line that says "You do not know this recipe" and just about every mod that alters the tooltip tells you the same thing. That will not be allowed. You can color it different or add 1 icon to the left of the name. Nothing more. The same with inventory. You don't need every mod author telling you in some way that you have x amount in your inventory, the bank, and the crafting bag. There will be a spot for each. It will be a placeholder set to hidden unless you are using it. If it is in use by modA then you won't have access to it and that's fine because everyone will do it the same way anyway.

This will not be intended to become SkyUI for ESO. So I want to work with the layout currently available.

Please post your mod and if you have any experience with altering the Gamepad UI. I am trying to learn the xml files a bit more this week. ZOSDanBaston said the UI is purely Lua and that unless it is private or protected you can do whatever you want unlike keyboard mode.

Last edited by Sharlikran : 12/08/20 at 11:20 PM.
  Reply With Quote
12/09/20, 06:54 AM   #2
Baertram
Super Moderator
 
Baertram's Avatar
WoWInterface Super Mod
AddOn Author - Click to view addons
Join Date: Mar 2014
Posts: 4,912
Originally Posted by Sharlikran View Post
ZOSDanBaston said the UI is purely Lua and that unless it is private or protected you can do whatever you want unlike keyboard mode.
I think you got this wrong Sharlikran.
He said the "item tooltip" is pure lua and you are able to alter it, unlike Keyboard mode where you can only add text lines and alter a few things like text colour or icon.
The "total UI" is no only lua in gamepad mode as you are pretty easily able to see with this example:
https://github.com/esoui/esoui/tree/...game/inventory

There is a gamepad and a keyboard folder.
Both provide XML files, where 1 is used for gamepad mode and the other for keyboard.
So there IS xml for the UI and it's name is (in the most cases) different from Keyboard.

Often the classes and objects created differ only at the end, where _KEYBOARD or _GAMEPAD was added.
Example:
PLAYER_INVENTORY -> Keyboard mode
GAMEPAD_INVENTORY -> Gamepad mode
Even the contents look differently then. There is e.g. no GAMEPAD_INVENTORY.inventories but PLAYER_INVENTORY.inventories

Same relates to scenes & fragments (where the name might be sceneNameKeyboard or seneNameGamepad, but they mustn't).
Example:
Using fragments like INVENTORY_FRAGMENT or CRAFTBAG_FRAGMENT added to a scene, instead of own sccenes -> keyboard mode
Using also fragments like GAMEPAD_INVENTORY_FRAGMENT added to a base scene GAMEPAD_INVENTORY_ROOT_SCENE - Gamepad mode


Often the code of gamepad differs a lot from the heyboard code as the UI and the events in the background differ as well.
That said: I never really looked into the gamepad mode any further as I do neither own a gamepad nor do I want to take these big steps to review the code twice + support twice as much bugs and features But I wanted to share my insights so far, which pretty much sums up why I never worked on the gamepad support (+ simply missing time and user amounts playing with gamepad on PC).

Last edited by Baertram : 12/09/20 at 07:01 AM.
  Reply With Quote

ESOUI » Developer Discussions » General Authoring Discussion » Gamepad Mods and support

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off