Author Topic: GUI Wish thread  (Read 1770 times)

Aznakh

  • Hydlaa Resident
  • *
  • Posts: 91
    • View Profile
GUI Wish thread
« on: December 13, 2005, 06:48:44 am »
Quote
Originally posted by dfryer
The GUI is definitely under the process of revision, if I understand correctly.


Ok folks,

you heard it. Apparentley the whole GUI will get an overhaul. ( If we understood correctly. :D )
So I decided to start this thread to allow people to post what they would like to see changed in the GUI. I hope that this will help the devs to find a good direction to go. Also I do apologize if such a thread already exists. i didn\'t mean to be repetitive ;)
Also never forget the famous \"WHY\' Question. :D

Ok as far as I am concerned I have already talked in my previous post about the spellbar issue. you can read it here:

http://www.planeshift3d.com/wbboard/thread.php?threadid=21037&boardid=11&styleid=3&sid=5c2393d92ad8251285fb59cfbe161d9d

Allthough the window layout is fully customizable I think it would be a nice thing to be able to lock them together like in a lot of programs where you are able to lock palettes together to save screen real estate.
In the end a GUI should be 2 things, intuitive and practical.
Allthough these are 2 totally subjective things it should be possible to find a middle measure that suites everybody.
« Last Edit: December 13, 2005, 06:49:31 am by Aznakh »

Hellios

  • Guest
(No subject)
« Reply #1 on: December 13, 2005, 06:54:23 am »
maybe there is a way where players can customize there own GUI at the account creation, or char creation. It could be set up just like when you choose the appearance of your char, but with GUI
« Last Edit: December 13, 2005, 06:54:33 am by Hellios »

acraig

  • Administrator
  • Veteran
  • *
  • Posts: 1562
    • View Profile
(No subject)
« Reply #2 on: December 13, 2005, 07:01:00 am »
The current GUI system is the third one for PlaneShift.  There was one existing when I came into the project.  We chose to replace that one with the one CS was supporting at the time ( AWS ).  After much effort we found that it wasn\'t really meeting our needs so I wrote our own system PAWS.  So what you see now is my first attempt at writing a GUI system so is not too bad :)

There are a couple of thing I am wanting to do with it.
1) Improved Drawing system.  So it will scale and resize better
2) More self contained widgets so players can build their own windows in xml


I\'m trying to use WoW as somewhat a guide. They have a very flexable and un-intrusive GUI. And the add-on community for it is extensive.
----------
Andrew
"For all I know, she's lying, everyone's lying; welcome to the Internet"

Karyuu

  • Forum Legend
  • *
  • Posts: 9341
    • View Profile
(No subject)
« Reply #3 on: December 13, 2005, 08:02:07 am »
If I may make a wish:

The changing of the GUI at the moment, fiddling with shortcut buttons and arranging the windows in various ways on the game screen, isn\'t stored somewhere per character, I believe. It makes for a bit of a difficulty, particularly for those with normal playing characters where shortcuts would be regular commands, and GM/RM characters, who would often require others. Though people may have preferences just for different personas - a fighter would have his or her GUI arranged one way, while a bard in another. It would be nice to have this stored and remembered.
« Last Edit: December 13, 2005, 08:02:49 am by Karyuu »
Judge: Are you trying to show contempt for this court, Mr Smith?
Smith: No, My Lord. I am attempting to conceal it.

AryHann

  • Veteran
  • *
  • Posts: 1244
  • WonderWoman
    • View Profile
(No subject)
« Reply #4 on: December 13, 2005, 08:03:19 am »
The basic principles I am following for trying to design the GUI are:
* usability
* simplicity
* intuitiveness
* aesthetyc
* mainteinability

Obviously, finding compromises between everything is not always that easy and sometimes you have to resign somethings of one for the others, depending on the issue.
I will try to keep the GUI as much as close to the one in use right now, for the main reason that, despite the fact that this is a demo, getting a complete new GUI will confuse players and we want to make a game which players can appreciate and therefore I don\'t want to shock them :-)

IMHO, GUI is related also to entity labels appearance, messages showing in the middle of the screen, char creation screens, login screens, etc.
AryHann

http://www.reflex.lth.se/culture/annelov - Virtual Annelöv -
Engine Dep. - One of Talad's Angels - Aka ww & Ahrijani's Goddess

DaveG

  • Forum Addict
  • *
  • Posts: 2058
    • View Profile
(No subject)
« Reply #5 on: December 13, 2005, 07:12:58 pm »
Most GUI designs come down to the debate between form and function.  Right now, we have some very lovely skins, and everything is usable, but it\'s not really intuitive enough.  A GUI is one of those things that should work without having to think about it.

The biggest reason for this would be scaling.  All windows currently scale to take up the same amount of screen-space, regardless of resolution.  I really would like to shrink many of my windows; I don\'t need the fonts as large as they are.  Making the font size user-customizable was suggested before, and I think this would help dramatically.

The other hit on space is the shear size and complexity of some of these windows.  The inventory window is the main one.  It\'s very well designed from a form standpoint; it\'s very nice looking.  But, it\'s very cluttered as well.  One suggestion I had a while back, was to remove the slot icons altogether.  You could just hover the cursor over an area on the doll and it would highlight the slots on the character.  Things like this, that simplify a complex system, are what the GUI needs.

::  PlaneShift Team Programmer  ::

AryHann

  • Veteran
  • *
  • Posts: 1244
  • WonderWoman
    • View Profile
(No subject)
« Reply #6 on: December 13, 2005, 07:28:31 pm »
Imho the problem is rather different.

The GUI is not so close to be \"usable\", in the HCI terminology.  It \"works\", that\'s clear, but that is not the problem.

How the information is organized is the problem.
The navigation among the screens and in the window is almost close to a mess.
The target of the application hasn\'t been considered.
If at the moment the majority of the people can be considered \"really good with computers\", it is rather an hope that the people who will play PS will be all sort of people. This is really important to be considered when changing something that it is visible for an user (and this includes also the tons of available commands that PS provides nowadays).

\"Shrinking\" is not always the solution. Certain things need to be visible and dramatically clear not only to an expert user but especially for a newbie who really doesn\'t need to dig into a system for finding the information, or to use a magnifier.
Having the right amount of space is important for making the \"watching\" pleasant and not a torture.

Imho, the inventory window is cluttered but also in the aesthetyc sense. A splatting clutter of images which standalone are pleasant cannot be considered \"nice\".

Obviously, aesthetycs is not an objective discipline, but certain things are rather clear without being a philopher ;-)

If you want to know more about the subject consult:
Human Computer Interaction by Jenny Preece et al.
AryHann

http://www.reflex.lth.se/culture/annelov - Virtual Annelöv -
Engine Dep. - One of Talad's Angels - Aka ww & Ahrijani's Goddess

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #7 on: December 13, 2005, 08:56:04 pm »
Important things for a new gui - Acraig I think I already listed some of these but this is a more complete list than the one i posted in another thread.

1.) Plugability - one should be able to swap gui\'s ingame easily. Remove the skin loader in pssetup.
2.) Simple - think Mac OSX - in a 3d environment we have alot of tools at hand for nice stuff and its easy to get carried away making things look pretty - we need to think of usability first and beauty 2nd.
3.) Standards - there needs to be documented standards on all aspects of the gui system for mods and new skins to be made by the community.  This makes the learning curve smaller and people who are good with graphics don\'t need to do as much mucking about with other crap.
4.) All parts of the gui need to be skinnable - this includes the xml files being able to be changed out so that one doesn\'t need to be playing around in their art dir\'s swapping files out manually.
5.) long one - here goes:

In planeshift there seems to be a policy that nothing posted in teh fan art forum will ever get into PS as it is prefered to keep development a secret.  I\'d like to see just one single part of PS - the GUI be different. I\'d like its art to but licensed apart from the other art.  This would allow people to contribute skins giving the community a way to give variety to the PS community.  Good skins could be included with PS - others could be hosted on a download page on laanx.  Is there anything wrong with this?  I can\'t think of anything... So it would be nice to have the community have a part in the making of PS in some way like this.  Polls could periodically be held to choose the skin of hte month or year or something and those could be the lucky ones that get put into official builds..

Karyuu

  • Forum Legend
  • *
  • Posts: 9341
    • View Profile
(No subject)
« Reply #8 on: December 13, 2005, 09:20:45 pm »
But remember Cherppow\'s skin? He posted it in the Fan Art forum, and the team considered it good enough to include officially :) Goes to show that GUI skins already work that way, Induane.
Judge: Are you trying to show contempt for this court, Mr Smith?
Smith: No, My Lord. I am attempting to conceal it.

DaveG

  • Forum Addict
  • *
  • Posts: 2058
    • View Profile
(No subject)
« Reply #9 on: December 13, 2005, 10:38:29 pm »
\"Include it officially\"?... More like include him officially.  Cherppow is now the art dept. god... :P

I have to partially agree with Induane on the ease-of-skinning point.  It\'s easy to make a new skin to do the same as the old, but hard to change anything major.  If you need to use a new XML file for the window, you need to swap everything out manually.  The problem is, skins really shouldn\'t need to do that.  Maybe a system to allow for custom positioning of the widgets, that loads the existing XML and overrules the values?  I think modders should be allowed to move stuff around easily, without touching the XML files.  (so required updates to XML files don\'t affect the skin\'s usability)

Arianna:
I agree, navigating the GUI isn\'t quite perfect.  There\'s quite a few buttons to open a bunch of big windows, that don\'t all really need to be separate.  For example, one button could bring up a \"character\" window, which has different tabs for inventory, skills, quests, magic, etc.  (I think I first brought this up in a BugTracker post, I don\'t quite remember)

One thing that would really make things better, is to have a larger clickable region for the right-click context menu.  You\'re supposed to be able to just right-click on anything and get a menu, but it\'s often hard to get the thing to come up.

When it comes to making PS available to a \"general audience\", we can\'t just forfeit simplicity for ease of learning.  For example, the (greatly debated) info window.    It\'s on screen 90% of the time, and needs to be small and unobtrusive.  The question arises as whether or not to label the items in it.  Yes, without labels someone may not know what they\'re for, but that\'s what a manual is for.  Most people can figure out what most of it does with minimal effort, and anything they can\'t understand can be looked up.  Trading 3 seconds of reading for valuable screen space is well worth it.  (Which brings up the problem that the in-game help doesn\'t mention these things.  I think it really needs to include a basic run-down of the GUI.)
« Last Edit: December 13, 2005, 10:39:10 pm by DaveG »

::  PlaneShift Team Programmer  ::

stfrn

  • Hydlaa Citizen
  • *
  • Posts: 324
  • the beaver ex-dev :B
    • View Profile
(No subject)
« Reply #10 on: December 13, 2005, 10:59:58 pm »
Quote
Originally posted by Induane
1.) Plugability - one should be able to swap gui\'s ingame easily. Remove the skin loader in pssetup.

That will be a bit of work, not that it is diffcult, but not something that devs currently have time for. It would be a very good task for a prospect trying to prove themselves.
Quote

2.) Simple - think Mac OSX - in a 3d environment we have alot of tools at hand for nice stuff and its easy to get carried away making things look pretty - we need to think of usability first and beauty 2nd.

Well, simple usablity is not that simple to do ;) But that is why Arianna is working on the GUI, she has the HCI knowldege.
Quote

3.) Standards - there needs to be documented standards on all aspects of the gui system for mods and new skins to be made by the community.  This makes the learning curve smaller and people who are good with graphics don\'t need to do as much mucking about with other crap.

Documentation is sorely needed in all parts of planeshift- but the problem is that everything is prone to changes. DaveG wrote a description for /impersonate in the help file... and then had to edit it around 10 times as he added in changes to the feature. It\'s hard to document a moving target.
And add also the hurtle that most coders are horrible at writing any descriptions, even of things they know well.
Quote

4.) All parts of the gui need to be skinnable - this includes the xml files being able to be changed out so that one doesn\'t need to be playing around in their art dir\'s swapping files out manually.

Yes, this is the goal of the skinning system, but I would rather better support for skins before we make sure every window can be changed.
As to skins, you are free to add fan art skins, but remember that PS art cannot be shared. A fallback system added to the skin sytem would help a lot in this case, as then you could skin just a few things, and people would still get the default art for the rest.
player -> gm -> dev -> bum

AryHann

  • Veteran
  • *
  • Posts: 1244
  • WonderWoman
    • View Profile
(No subject)
« Reply #11 on: December 13, 2005, 11:05:23 pm »
What I am talking about when you create a GUI for a specific target group it is not about \"easyness in learning\" but understandability from a different point of view rather than a coder point of view.
Common mistake in application, as a matter of fact, is to have GUI which are not comprehensible to a human being with no a degree in Computer Engineering ;-)

The info window as it is right now goes against human laws of vision. It was much better before because even if larger it was guaranteeing visibility and comprehension. Obviously, before it was reporting information not strictly necessary for being stored in an \"info window\", but as it is right now it is unreadable and you just cannot see properly the things.
A common principle while designing a window is to give the so-called \"air\" for making the text clear and each part visible with right contrast. This principle is there ignored.  What I was debating when I originally started the idea of redesigning the GUI was not the presence of \"labels\" or not, but the quality of suggested proposal, which, independently from the fact that can be understood with training, doesn\'t suit its purpose of being of immediate comprehension and clear to be read.
In my process of redesigning conceptually the GUI it is naturally considered not only for who the GUI is for, but also for what that specific component is used.

I really recommend you some reading (also a basic \"Don\'t make me think: a common sense approach to web usability\", by Steve Krug. It is of course for web usability rather than standard interfaces, but the essence of it is that people don\'t want to think they want to \"do\" in matters of interfaces).
AryHann

http://www.reflex.lth.se/culture/annelov - Virtual Annelöv -
Engine Dep. - One of Talad's Angels - Aka ww & Ahrijani's Goddess

Nikodemus

  • Prospects
  • Veteran
  • *
  • Posts: 1808
    • View Profile
(No subject)
« Reply #12 on: December 13, 2005, 11:13:55 pm »
Quote
Originally posted by acraig
1) Improved Drawing system.  So it will scale and resize better
2) More self contained widgets so players can build their own windows in xml

yea, the 1) is most annoying bug. I make the widget resizetoscreen=\"no\" resizable=\"no\", set its dimensions exactly the same as the background image and I expect to see exactly the same image what I see in image viever.
In fact the image i see is most likely resized with no reason, and then resized back to the size i set. In efect i see badly resized image.

There is already much what may be customized in the xmls, not everythink what i would like, but i thank You for what is done already



What you can failure tommorow, failure today.


Better click for shiny stylez Help me with images!

DaveG

  • Forum Addict
  • *
  • Posts: 2058
    • View Profile
(No subject)
« Reply #13 on: December 14, 2005, 02:40:29 am »
The old info window was unusable.  It took up an insane amount of screen space.  You should see the game, not the GUI.  Every game in the world tells you what everything does in the manual, gives you a tutorial, and that\'s the end of it.  A visual aid for what I\'m talking about:

(stealing from Drey\'s post in the screenshots thread)


Half of the screen is GUI.  A third of those shortcuts should be on some sort of toolbelt with icons, another third should be done via context menus.  (buy and sell, for example)  The main toolbar is giant by default.  I don\'t know how you can play the game like that.

Now here\'s a random shot I just made:


I shrink my toolbar, and set hotkeys for shortcuts I need often.  Everything is quite legible.  (info win still needs reskinning, though)  All UI should be seamless and intuitive, not upfront and in-your-face.  Only things you actually need should be shown.

Idealy, I\'d like to have the font in the chat window smaller, so I can have more onscreen at once.  (the border on the chat win is too large, too)  Font size needs to be adjustable.

::  PlaneShift Team Programmer  ::

Induane

  • Veteran
  • *
  • Posts: 1287
  • What should I put here?
    • View Profile
    • Vaalnor Inc.
(No subject)
« Reply #14 on: December 14, 2005, 03:09:32 am »
Another idea I had and forgot to add is related to the shortcuts window.  I guess my perfect gui has most of its elements hugging the screens edge, and sliding offscreen till I mouse-over or mouse-click - much the way the autohide function of the startmenu and gnome-panel and kde-kickers functions work in windows and linux respectively.  In fact all always on aspects of the gui should do this - chat window, shortcuts menu, main toolbar, buddy list, etc.. info window could remain on by default but could be autohide by user selection (obviously all windows should have an autoslide option).  

But on to the shortcuts window - why not make about 100 Icons styled like PS, in various color pallets perhaps.  Instead of the word \"Attack\" the shortcut window could have a sword - buy/sell could be coins, etc.. let users select an icon for the shortcuts they create.  This would be intuitive as they build shortcuts that make sense to them.  And if they want to edit them, you could offer additional icon sets, people on the fanart section will make them as well... its client side so extremely easy for making a nice customized gui.  A simple directory (not zip) where all avaliable icons are listed could be made so adding to a persons selection would help.

Quote
That will be a bit of work, not that it is diffcult, but not something that devs currently have time for. It would be a very good task for a prospect trying to prove themselves.


I\'d tackle it if I could get the hang of printf and get past \"Hello, World.\" - I dare say this is almost a necessity - at the very very least from a user-point-of-view its nearly necessary.  It also would make skinning easier by alot when tweaking custom xml files becomes necessary, as one can make a change - refresh the gui and see its results  - much faster than reloading the game all the time.  Actually idealy would be a gui editor.  A simple program that loads a screenshot of the plaza or something and the gui over the top of it, and includes a text editor - modify xml files, hit refresh (or make it real time if possible) and boom.  Or make it drag and drop if some programmer is feeling like a bad-ass.

Simply put the key to ps\'s advancement is going to be the tools used to build it.  Eventually you\'ll need editors for many parts of PS so it can be improved continually.

Quote
Documentation is sorely needed in all parts of planeshift- but the problem is that everything is prone to changes. DaveG wrote a description for /impersonate in the help file... and then had to edit it around 10 times as he added in changes to the feature. It\'s hard to document a moving target.
And add also the hurtle that most coders are horrible at writing any descriptions, even of things they know well.


Some documentation can be autogenerated.  Look at W.I.N.E.  Some of the documentation is autogenerated from info in header files and code comments - all during compile time - something like this could at least help people playing around with advanced settings.