1. We've removed some functionality from SMD in preparation for a migration to new forum software.

    Modding the HUD / User Interface

    Discussion in 'Mods' started by kupu, Mar 29, 2015.

    1. kupu

      kupu Colouring in guy.

      Joined:
      Jul 4, 2013
      Messages:
      1,403
      Hi Starmates.

      Whilst browsing the community content i found a config setting that adjusts the placement of a HUD element (the notifications).

      “Great! somebody is making use of the customisation we put in!” i thought…

      Until i read the reviews.

      “Schema better put this in the game next patch!…”

      Q, “Why are *insert X* better looking config values not default values?” A, Everything is in position to work in default settings at our lowest recommended resolution 1280x800.

      However, it kind of already is in the game. This is a client side adjustment for your own custom layouts or to better suit your resolution. I perhaps wasn’t clear enough on the level of customisation you have (and will have more of at a later date) over the GUI when we launched it… (and that guide and documentation i was going to write is way overdue!)

      Time to remedy this with some basic tutorials and config tips and tricks so you can shift things around to your own liking or even make a completely new UI yourselves. I’ll also post up documentation on our UI theme and the 9 patch method so players can easily create new sprite sets for custom themes in the coming days.


      Quick Tutorial 1; Moving HUD elements.

      Hotbars, Stat Bars, Target info, Notifications, effect warning and proximity notifications are all HUD elements.

      You can move the location of these HUD elements via a config found in the directory Starmade/data/config/gui/HudConfig.xml

      This can be edited in a simple text editor, notepad or textedit will do fine. (Note: the Map is currently not moveable or in the configs yet, however the size can be changed via in-game options)

      Browsing the XML file it may become apparent each element has a <“Title”> and list of <BasicValues>.

      Let’s look at the notifications (Server not Responding, etc) as an example.


      <PopupMessage>

      <BasicValues>
      <PopoutTimeInSec>0.3</PopoutTimeInSec>
      <DistFromTop>138</DistFromTop>
      <DistFromRight>-10</DistFromRight>
      <StackedDistanceX>200</StackedDistanceX>
      </BasicValues>
      </PopupMessage>


      The basic values here dictate the timeframe of the fade transition and the distance in pixels from the top and right of the screen.

      To move our pop up messages we simply adjust the values in the <DistFromTop> and <DistFromRight>. Note these values are pixel measurements. If you are playing at 1280x1200 resolution you will need a different measurement set than if you were using 1920x1050 to achieve the same relative position.

      Eg; To put them on the left side of your screen the DistFromRight = the width of your resolution - the size of the element (in this case 212).


      Hiding Elements

      Hiding elements can be achieved (for now) by simply pushing them offscreen with the <Offset>, <DistFromRight> or <DistFromTop> values. Alternatively, you can set the Alpha value to 0 where applicable in the <Color> field.

      To remove our notifications from sight, you can set the offsets <DistFromRight>-300</DistFromRight> . This puts the element 300 pixels right of the right side screen edge.

      What about the others? I see different tags, <Offset> and <Position> ?
      For our other Elements we have a little more control.

      We can align them to a corner or centre of a screen edge using :<Position>ORIENTATION_VERTICAL_MIDDLE | ORIENTATION_RIGHT</Position>
      Substituting VERTICAL / HORIZONTAL / LEFT / RIGHT where needed.

      Then we can apply a specific pixel offset on the X and Y axis using :
      <Offset>0, 0</Offset>

      Next post we will be talking more about those functions and the Bars (Hp Shield Speed) and how we can change the size, position, colour and opacity of them to better fit custom themes.

      ---------------

      These GUI configs are still a work in progress and i plan to have more options added and get the unresponsive commands (i.e.; Hotbar) fixed. So i’ll keep updating these as and when i can or developments happen.
       
      • Like Like x 4
      • Informative Informative x 2
      • Useful Useful x 2
    2. aceface

      Joined:
      Jun 20, 2013
      Messages:
      2,796
      wait so you're not going to fix this thing with the pop up messages?
       
    3. kupu

      kupu Colouring in guy.

      Joined:
      Jul 4, 2013
      Messages:
      1,403
       
    4. Gamel

      Joined:
      Aug 5, 2013
      Messages:
      405
    5. Zackey_TNT

      Joined:
      Mar 9, 2014
      Messages:
      596
      kupu Now I don't mean to be rude but "Why are *insert X* better looking config values not default values?” A, Everything is in position to work in default settings at our lowest recommended resolution 1280x800." Is not entirely true.

      You see you have to set your res in the launcher by default it's set to 1330x786 but if you simply made a config file for each one of the FORCED res in the launcher you could support all of the standard res without the need to mod config files which is very hard to do depending on the user's knowhow.

      I'd imagine that is also quite easy in coding terms to simply state if res is say 1920x1080 then force config file 1920x1080 or config file config.1920 etc whatever you name it.

      And because its set in the launcher before you start the game even a simple logic condition would work. Again if set to 1920x1080 then start game with config file 1920x1080

      The fact that I have to mod a game to support the most common res (1920x1080) is a bad fact. I don't even know if any of the games I have EVER played apart from starmade have required me to do this.
       
      • Agree Agree x 1
    6. kupu

      kupu Colouring in guy.

      Joined:
      Jul 4, 2013
      Messages:
      1,403
      Perhaps, yes. Unfortunately i am not the coder, as such i am not in a position to prioritise this issue and fix it. Nor have the means to do so myself. All i can do in the mean time is try and stick this information in visible places for places for people to see.

      While i agree with your post, the default configs have to support 1280x800 in a fresh install due to the way things are currently scripted (an X and Y offset value from the top right of the screen).

      It's perhaps too long ago for many to remember, but the original plans are to allow the moving and customisation of the HUD from within the game. Having to edit a config is currently a stop-gap, with it eventually being used for more advanced things like new UI templates.

      So what about a solution?

      I've been talking to one of our new coders, Micdoodle and Schema about those pesky notifications in regards to moving them and setting up new offset parameters. A more permanent plan is being formed though. Not only to move their default positions, but reduce the size and streamline the content of them. Even cutting some out of the game completely.

      One of my goals has always been to create a more immersive Starmade experience, i am painfully aware those notifications break immersion. Designs for more exciting info displays are being draw up currently.

      Hope that helps explain a little of the method to the madness. Thanks for the patience.
       
    7. Megacrafter127

      Joined:
      Jul 21, 2013
      Messages:
      2,934
      I think you messed up the [USER] tag somehow
       
    8. Thadius Faran

      Thadius Faran #1 Top Forum Poster & Raiben Jackpot Winner

      Joined:
      Oct 13, 2013
      Messages:
      5,100
      Heh you quoted you but not you at the same time :p

      [​IMG]
       
    9. kupu

      kupu Colouring in guy.

      Joined:
      Jul 4, 2013
      Messages:
      1,403
      Ha! Fixed now. The whole thing was a giant link to my profile at one point... odd. :D
       
    10. Megacrafter127

      Joined:
      Jul 21, 2013
      Messages:
      2,934
      The URL the link linked to was not exactly your profile, but a page redirecting to your profile. (the actual URL contained your entire post's content xD)
       
    11. Zackey_TNT

      Joined:
      Mar 9, 2014
      Messages:
      596

      A logical and well thought out response to my questions. Thank you.

      So its soonTM (The best kind of soon) Understood.
       
      • Friendly Friendly x 1
    12. kupu

      kupu Colouring in guy.

      Joined:
      Jul 4, 2013
      Messages:
      1,403
      Yea, I'll keep pushing for it to be tackled asap. :)
       
    13. DrTarDIS

      DrTarDIS Eldrich Timelord

      Joined:
      Jan 16, 2014
      Messages:
      1,014
      Is there any way to change the type of graphic returned for the various HUD elements? I'd REALLY like to get a straight numeric-only HUD.
       
    14. GalactusX

      Joined:
      Jul 30, 2013
      Messages:
      398
      how can I increase the size of the player's life bar in the game? what values should I modify to make this possible?
       
    Loading...