Author Topic: New HUD in Development  (Read 7772 times)

Offline Morgul

  • GNE Founder
  • Godlike Fuzzy Dice
  • Grand Admiral
  • **********
  • Posts: 2086
  • Karma: +21/-4
  • Godlike Fuzzy Dice
    • View Profile
    • G33X Nexus Entertainment
New HUD in Development
« on: July 11, 2005, 07:52:51 pm »
Hey, it's me again... I'm working on the New, Improved HUD for the game. The current one, however versitile it is (with resolution changes)... it's not done int the style I'm planning on doing the GUI in for the game... and I don't like it as much. So, I figured I'd show you a "Work-In-Progress HUD"...

Here it is: (Warning, it's 800x600)




The bottom isn't done, as I'm sure you can tell. I plan on making it resemble the current one...

--Chris
"Just because my math may tell lies doesn't mean that I don't understand the quantum mechanics of it all." --Caenus

The popular videogame "Doom" is based loosely around the time Satan borrowed two bucks from Vin Diesel and forgot to pay him back.

"In the beginning there was nothing. And it exploded." --Terry Pratchett

Offline Morgul

  • GNE Founder
  • Godlike Fuzzy Dice
  • Grand Admiral
  • **********
  • Posts: 2086
  • Karma: +21/-4
  • Godlike Fuzzy Dice
    • View Profile
    • G33X Nexus Entertainment
New HUD in Development
« Reply #1 on: July 11, 2005, 08:41:47 pm »
Here is an updated one, with all the main elements added:



--Chris
"Just because my math may tell lies doesn't mean that I don't understand the quantum mechanics of it all." --Caenus

The popular videogame "Doom" is based loosely around the time Satan borrowed two bucks from Vin Diesel and forgot to pay him back.

"In the beginning there was nothing. And it exploded." --Terry Pratchett

Offline contingencyplan

  • Villain
  • Ivory-Tower Theorist
  • Admiral
  • *****
  • Posts: 977
  • Karma: +1/-0
  • Must I sin once, and repent forever?
    • View Profile
    • My Blog
New HUD in Development
« Reply #2 on: July 12, 2005, 02:58:03 pm »
I like the style in general - I'm a big fan of blue ;-).

However, I do think we may need something that is more see-through.  I know that the HUD is translucent, but that can still interfere with the Player's view and can sometimes make it worse - the Player can see that something's there, but they still have to move their ship to see it.  This can distract the Player from what they are trying to concentrate on (e.g., an enemy ship shooting at them).

I have played a little Freespace 2 (the stripped-down, OEM version that came with my joystick).  I like their HUD - it tells you what you need to know in an intuitive fashion, but it is completely clear.  No boxes or anything - if it doesn't have anything important to display, then it doesn't display anything at all (yes, I'm paraphrasing Thumper.  Got a problem with that? :-P)

I also think a good idea is to have a data-driven display, likely using an XML format.  It would be possible, I think, to give the Players the opportunity to create their own HUD displays - they could even share (perhaps even create an entire in-game market for them...  Players create their own HUDs and sell them for credits....  ah, the possibilities).  If nothing else, it would likely make it easier on us to modify huds without having to recompile the game - data driven design at its best.

~Brian
We've all heard that a million monkeys banging on a million typewriters will eventually reproduce the entire works of Shakespeare. Now, thanks to the Internet, we know this is not true. 
    ~Robert Wilensky

It is not bigotry to be certain we are right; but it is bigotry to be unable to imagine how we might possibly have gone wrong.
    ~GK Chesterton

Men never do evil so completely and cheerfully as when they do it from a religious conviction.
    ~Blaise Pascal

Offline whitelynx

  • GNE Founder
  • Head Code Monkey
  • Commodore
  • *****
  • Posts: 304
  • Karma: +4/-0
  • Internet Idiocy Pundit
    • View Profile
New HUD in Development
« Reply #3 on: July 12, 2005, 06:10:53 pm »
I love the XML HUD def idea... not necessarily use entities for it, but simply write a parsing class that would put up the HUD for the player. It may even make sense to make the class a CEL property class so you attach it to the player's ship or vehicle, or the player himself. Basically it would be the same idea as per-ship keymaps... different vehicles will have different methods of control, and a good number of them in the game's time will be configurable... You may even be able to store interface definitions on your player's datapad, and transfer them to other ships with the same type of controls... oooh.

Dave
"Without music, life is a mistake, a trial, an exile."
 - Nietzsche

Offline Morgul

  • GNE Founder
  • Godlike Fuzzy Dice
  • Grand Admiral
  • **********
  • Posts: 2086
  • Karma: +21/-4
  • Godlike Fuzzy Dice
    • View Profile
    • G33X Nexus Entertainment
New HUD in Development
« Reply #4 on: July 12, 2005, 06:17:03 pm »
Fine smarty pants.... :-p (I like both posts, actually. XML == t3hr0kz0rz)

But, what does the player need to see while he's fighting? What information CANNOT be in a menu, or something a few click away. We should come up with a default that contains the basics the player will want. I don't care if they can customize it, we need to figure out what we want there by default....

So, thoughts?

--Chris
"Just because my math may tell lies doesn't mean that I don't understand the quantum mechanics of it all." --Caenus

The popular videogame "Doom" is based loosely around the time Satan borrowed two bucks from Vin Diesel and forgot to pay him back.

"In the beginning there was nothing. And it exploded." --Terry Pratchett

Offline contingencyplan

  • Villain
  • Ivory-Tower Theorist
  • Admiral
  • *****
  • Posts: 977
  • Karma: +1/-0
  • Must I sin once, and repent forever?
    • View Profile
    • My Blog
New HUD in Development
« Reply #5 on: July 12, 2005, 11:07:20 pm »
Quote from: "morgul"
But, what does the player need to see while he's fighting?


One of my mottos is "gluttany over starvation."  I'd rather have too much than not enough.  If we're gonna give the users the option to set up their own HUDs, then we shouldn't be asking "what does the Player need?" or even "what does the Player want?" - we should be asking "what information can we stick up there?"  Naturally, we'll start out small.  But after we get the system set up, we should be able to add just about any information in any form at a later time.  The trick is gonna be allowing fancy displays, like the shield display in FreeSpace (used a rounded box with 4 sides and different intensities to show the shielding).  I haven't done much with XML, but I would think we could put something of an if / else structure in there.

Quote from: "morgul"
don't care if they can customize it, we need to figure out what we want there by default....


Also agreed.  Thus, in terms of default information output, I'd say we'd need this at a minimum:

  • Health - this includes not only physical damage, but shield and hull | armor integrity.
  • Systems status - this goes with the above.  The goal is for the Player to know what the status of their ship is at all times.  However, this is put separate from the overall health of the ship (assuming there is one - I think there should be, even if it's nothing more than a percentage of max Service output) for reasons stated below.
  • Ammunition / Wep status - MechWarrior 3 (brought up earlier) had a listing for each weapon equipped on your Mech.  When the weapon fired, it turned red, and turned back to green as the weapon cooled down (went from left -> right - think progress-bars).  We need something like that to tell the Player when they can fire their weapon again.
  • Compass / radar - they need to know where they are, where they are heading, and where their allies and enemies are.  Nuff said.
  • Tracker - shows the location of the targeted enemy / ally in relation to them - which direction they have to turn to face them, etc.  Note that this applies to all aspects, not just the space sim one.
  • Damage indicator - shows which direction they're being hit from.  I've played games with crummy hit indicators - makes life much more difficult.  In real life, you get hit by a missile, you KNOW which direction it came from.  In the game, this needs to be shown, since it can't be felt (easily).

Quote from: "morgul"
What information CANNOT be in a menu, or something a few click away.


Well, most of this should be bindable to keys on the keyboard.  I think we could have toggles on most information, so the Player can customize their HUD at run-time by toggling certain information on / off.  This is why we want a more granular interface control than simply "toggle health" to do the whole ship's health status.

As an example, if the Player's ship's Systems are all working, then the Player should [be able to] turn off that display so it doesn't pollute the viewing area with useless information.  However, when the ship gets hit by the flaming green missile of death ;-), the Player needs to be able to bring up that display with the push of a key, and be able to send commands to it with keystrokes as well.  As someone who's used both a mouse and a keyboard (e.g., while playing RTS games), I can promise you that when you figure out keyboard shortcuts, your productivity goes up FAST.  Having stuff via a menu, esp. a mouse-based menu, will get Players killed, which in turn will get them very pissed off.

~Brian
We've all heard that a million monkeys banging on a million typewriters will eventually reproduce the entire works of Shakespeare. Now, thanks to the Internet, we know this is not true. 
    ~Robert Wilensky

It is not bigotry to be certain we are right; but it is bigotry to be unable to imagine how we might possibly have gone wrong.
    ~GK Chesterton

Men never do evil so completely and cheerfully as when they do it from a religious conviction.
    ~Blaise Pascal

Offline fehknt

  • Special Users
  • Lieutenant
  • *
  • Posts: 68
  • Karma: +0/-0
    • View Profile
New HUD in Development
« Reply #6 on: July 16, 2005, 10:19:49 pm »
How about HUD presets on hotkey combos?  Basic navigation is one hotkey, combat is another, close range navigation is another, um, maybe a setup esp. for certian mission types (exploration)...

get hit with flaming green, um, missiles of death... um, yeah, and you hit the combat hotkey and your hud is set up just like you like it for combat situations.  These could even remap the keybindings... yes, I like this.

Oh yeah -- and I want to have the ability to have a window that will constantly keep track of the nearest ship that has weapons powered up, or maybe that belongs to a hostile faction, or that is a law-enforcement vechicle... I want to ba able to have it change targets on-the-fly if there's a new ship in the area that meets my "closest" criteria, so I don't have to tap the "target nearest enemy" key every now and then to know if there's an enemy nearby...

Offline Morgul

  • GNE Founder
  • Godlike Fuzzy Dice
  • Grand Admiral
  • **********
  • Posts: 2086
  • Karma: +21/-4
  • Godlike Fuzzy Dice
    • View Profile
    • G33X Nexus Entertainment
New HUD in Development
« Reply #7 on: July 17, 2005, 12:32:03 am »
Quote from: "fehknt"
How about HUD presets on hotkey combos?  Basic navigation is one hotkey, combat is another, close range navigation is another, um, maybe a setup esp. for certian mission types (exploration)[...]


I agree completely. It's how we've thought of it form early on... however, what modes should we have? What should go one them? Care to make a list, anyone?

Quote from: "fehknt"
[...]These could even remap the keybindings... yes, I like this[...]


Most definitely. You see, our keybinding system is unique in the game, and it handles all that stuff flawlessly. You see, each one can have a keybinding config embeded in it, and when you swtich, it update the keybindings. Pretty simple, and support's already in the game for it. (Ask whitelynx about the kyebinding system, and what's different about it sometime.)

Quote from: "fehknt"
[...]I want to have the ability to have a window that will constantly keep track of the nearest ship that has weapons powered up, or maybe that belongs to a hostile faction, or that is a law-enforcement vechicle... I want to ba able to have it change targets on-the-fly if there's a new ship in the area that meets my "closest" criteria, so I don't have to tap the "target nearest enemy" key every now and then to know if there's an enemy nearby[...]


Niiice idea. I hate having to hit 'r' in a lucasarts game.. I swear.... it's too damned distracting. I've found it works best to have someone else man the keyboard... sort of an impromptu multiplayer session. I'd like to remove the need in this game. Let's have it auto-update....

Note: This window will only be there if we decide the mode 'needs' it. All windows will be dependant on the 'mode selected'.

--Chris
"Just because my math may tell lies doesn't mean that I don't understand the quantum mechanics of it all." --Caenus

The popular videogame "Doom" is based loosely around the time Satan borrowed two bucks from Vin Diesel and forgot to pay him back.

"In the beginning there was nothing. And it exploded." --Terry Pratchett

Offline fehknt

  • Special Users
  • Lieutenant
  • *
  • Posts: 68
  • Karma: +0/-0
    • View Profile
New HUD in Development
« Reply #8 on: July 19, 2005, 04:41:14 pm »
I was thinking of user-defined, nameable modes, with a few defaults mapped to easy keybindings.

Navigation and combat would be my two...

Navigation has a ton of sensor windows and tracking the first, say, 5 closest "ships" and 1 closest "object", as well as a flight plan indicatior.  very little window room actually visible.

Combat has a sensor window set up for short range, perhaps two on different axes... weapons loadout w/ammo indication and recycle time bars, and a damage display on the nearest hostile ship, with a key setup to lock on to that ship until it is destroyed or you hit the lock key again.  I'd also like a window showing the last ship to damage me, or perhaps the ship that has done the most damage to me in the last 2 minutes combined.

Leave enough space for 5 or 7 setups, and have a default that you launch in (or just revert to last used), and have each one have it's own keymap too, defaulting at all the same keys for basic flight, specialty keys different... and, say, ALT-1 for mode 1, ALT-2 for mode 2...

Oh yeah, and switching to certian modes should be able to do certian things to your ship: going into combat mode should raise the shields, arm all weapons, and possibly re-route power from the engines and life support to weapons and shields (in navigation mode, basically do the opposite.)

Exploration mode I envision being basically a hybrid of the first two: weapons armed and shields up, but a bunch of navigation and scanner windows, with power set up for engines, shields and life support, and only minimal weapons: just enough that you can shoot back, but not any more than that -- if you need weapons in a hurry, they're there, but you're not wasting energy on them, and you can switch to combat mode easily enough if you need heavy weapons.

Each of these windows should be customizable too, maybe with XML for each window -- but we should include enough different useful windows that the average user doesn't have to mess with XML.  

Just a note on the XML -- I feel that no user should have to edit any XML, except for the power users that want to do extreme customization -- like making thier own, complicated version of the auto-updater (target nearest ship, unless there's a hostile ship within 5000km, in which case target that one, unless it's distance from me is increasing, just as an example of something that I don't feel we should include as a default, but have the ability to create.)

Now, how will average users do basic customization?  We should have a in-game graphical utility that lets users drag-n-drop components and resize them etc into a window and then have the program write out the XML.  Maybe as a free download on the website, or as a seperate program bundled with the game, but it should be available somehow.

Hell, I'm not a dev, but maybe such a third-party-tool I (or anyone else) could write, and you could just provide it on your site in the community area.

Offline contingencyplan

  • Villain
  • Ivory-Tower Theorist
  • Admiral
  • *****
  • Posts: 977
  • Karma: +1/-0
  • Must I sin once, and repent forever?
    • View Profile
    • My Blog
Re: XML
« Reply #9 on: July 20, 2005, 12:45:11 pm »
Quote from: "fehknt"
Just a note on the XML -- I feel that no user should have to edit any XML, except for the power users that want to do extreme customization[...]


That's what I had in mind - the defaults will suffice for most people.  However, if you want something more fine-tuned to your tastes, you can either write the XML file yourself, or you can have somebody write it for you.  That's what I was thinking of earlier - the "power users" that will customize a game anyways (e.g., modding, reverse engineering, adding or modifying content, etc.) could make some in-game cash by coming up with a particularly useful setup, then selling it to other people.  The obvious downside is the need for quasi-DRM for the files, but if we can find a way around that, we should be in good shape.

Quote from: "fehknt"
Now, how will average users do basic customization? We should have a in-game graphical utility that lets users drag-n-drop components and resize them etc into a window and then have the program write out the XML. Maybe as a free download on the website, or as a seperate program bundled with the game, but it should be available somehow.


Agreed. Further, it should be *freely* available. However, I would limit the power of the tool to simple customizations of current profiles. I'm not saying we should do this artificially, but writing a program to do the higher-end stuff *may* require a lot of time and effort to code effectively, time and effort that would better be spent on the game itself.

Quote from: "fekhnt"
Oh yeah, and switching to certian modes should be able to do certian things to your ship[...]


I really like this idea.  Anything that makes the game more intuitive to the Player is a good thing.

~Brian
We've all heard that a million monkeys banging on a million typewriters will eventually reproduce the entire works of Shakespeare. Now, thanks to the Internet, we know this is not true. 
    ~Robert Wilensky

It is not bigotry to be certain we are right; but it is bigotry to be unable to imagine how we might possibly have gone wrong.
    ~GK Chesterton

Men never do evil so completely and cheerfully as when they do it from a religious conviction.
    ~Blaise Pascal

Offline topher

  • Developers
  • Lieutenant Commander
  • ***
  • Posts: 86
  • Karma: +0/-0
    • View Profile
New HUD in Development
« Reply #10 on: August 09, 2005, 09:58:02 pm »
From my experience all the major games are going to the xml defined interfaces.

A couple of years ago Everquest changed to using xml for their interface.  Players could unlock windows, move them, change the color, transperancy, etc through the game or via raw xml data.  A lot of players of EQ are damn good with xml and did some amazing things.  The problem people saw was every time the EQ staff patched anything to do with the interface they would have to rework their version.  

My vote is a default interface, an ingame edit for layout, and the ability for advanced users to make there own and publish them (everquest had third party sites like www.eq-interfaces.com ).

Wow, i did some research into what the Privateer 2 interface looked like (i remember it being awesome way back when) and found this:

http://image.com.com/gamespot/images/screenshots/7/198347/private2_screen005.jpg



topher