2026-06-06T21:00:53  <OpenMW-bridge> <S3c:tor> migrating some of yesterday's discussion into the appropriate channel with the very beginnings of the UI dehardcoding epic I sketched out mostly based on !5096 while I waited for FO3 to redownoad: md ## UI Dehardcoding  Each subheading here should be able to constitute its own trackable issue.  ### HUD Interface  Centralized layout engine allows registering HUD groupings with a handful of specific data points: 1. Name of
2026-06-06T21:00:54  <Expandor> https://gitlab.com/OpenMW/openmw/-/merge_requests/5096 “Draft: Lua API for HUD element replacement” (opened)
2026-06-06T21:00:54  <OpenMW-bridge> the HUD group 2. Anchor? 3. Relative position 4. *MAYBE* we accept a `openmw.ui.TYPE` in case we want to do either Widget or Flex. Let's avoid Container types as both urm and my mama said they are the devil. 5. Size parm?   The same script which implements the layout engine will register the default groupings: - Stats/Equipment in the bottom left (0, 1) - Map/Effects in the bottom right (1, 1)  I.UI additions: lua ---@class HUDGroup
2026-06-06T21:00:54  <OpenMW-bridge> ---@field name string Indexable name of the layout group ---@field anchor openmw.util.Vector2 ---@field relativePosition openmw.util.Vector2 ---@field relativeSize openmw.ui.Vector2  local function registerHUDGroup(HUDGroup)   Based upon prior discussions with urm in [!5096](https://gitlab.com/OpenMW/openmw/-/merge_requests/5096) 
2026-06-06T21:00:54  <Expandor> https://gitlab.com/OpenMW/openmw/-/merge_requests/5096 “Draft: Lua API for HUD element replacement” (opened)
