PlaneShift

Gameplay => Wish list => Topic started by: Aznakh on December 13, 2005, 06:48:44 am

Title: GUI Wish thread
Post by: Aznakh 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.
Title:
Post by: Hellios 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
Title:
Post by: acraig 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.
Title:
Post by: Karyuu 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.
Title:
Post by: AryHann 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.
Title:
Post by: DaveG 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.
Title:
Post by: AryHann 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.
Title:
Post by: Induane 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..
Title:
Post by: Karyuu 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.
Title:
Post by: DaveG 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.)
Title:
Post by: stfrn 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.
Title:
Post by: AryHann 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).
Title:
Post by: Nikodemus 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
Title:
Post by: DaveG 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)
(http://i7.photobucket.com/albums/y273/drey7/hmm4546.jpg)

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:
(http://img506.imageshack.us/img506/4735/shot018st.jpg)

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.
Title:
Post by: Induane 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.
Title:
Post by: DaveG on December 14, 2005, 03:39:08 am
Quote
Originally posted by Induane
Some documentation can be autogenerated.

We use doxygen stuff too.  PS API (http://planeshift.sourceforge.net/pubapi/html/index.html)
Title:
Post by: AryHann on December 14, 2005, 08:35:43 am
@DaveG:
I know perfectly how that window looks. Thanks to a commit I have the unluck to have to use a magnifier to check out if what I am rolling over is really the mana bar or the stamina one ;-)

I really think that I have never said that the window before was the best you could have, as a matter of fact I was entitled to change it (and I was the first one this August suggesting several changes) :-), but I can assure you the latest window that is available is not better than the previous one and for clearly different reasons. If you cannot understand them, I really - again - suggest you to consult some basic HCI book (you can just check out one of the two manuals but if you want I have plenty I could suggest you).
If every game asks the players to worried to much about the GUI then they are games not realized for the user perspective and considering how many software applications are done respecting any usability principle it is not a surprising statement. Basically, just in the latest years this discipline has become important in software development and even companies are finally recruiting people just with that purpose (thing that before was not done at all).

And, yes, everybody agree that the previous one was taking space, but this one is \"unusable\" (using HCI terminology) as well. That is why it will be changed, yet again, in its own time and in its own way.

Anyway, I think that continuing arguing about it will not solve anything, considering that I could print here a book about how these things should be done and you could still try to convince me that the window as it is right now is perfect (but I don\'t believe so ;-) ).

@Induane: With sliding offscreen you mean that instead of being out of focus on the screen they should disappear (or become a little tiny line on the edge) and when you pass the mouse over them then you get the real window?
Would it be easy in your opinion to recognize and remember the position of the window you are going to look ? Is there a way that this information (which window is it) could be stored? Maybe a \"tooltip\"?
Personally, I think the chat window should be on top all the time since it contains information which should be read somehow (the game is still RPG oriented therefore I think \"communication\" is rather important). I agree with buddylist and shortcuts menu though, group window, etc.

The idea of having small icons for the shortcut window is nice (images are better than text if they are enough intuitive), but maybe reduce the costumization of it. I mean, there are tons of combinations you could use for a shortcut (and tons of new things that will probably be added in the game in the future, which makes the realization of new icons a quite \"heavy\" job). Maybe for the most \"popular ones\" there should be some icon for the others instead still the possibility of having text?

There is an editor for PAWS, pawseditor, which I think is available in CVS. Though, I have never used it (it was crashing at the time I was working on my own GUI for my own project).

I totally agree about the documentation. When I was working on Virtual Annel?v I had to write down in a notebook all the procedures I was using for adding things or simply for loading a map. Then, I was thinking I would have worked on some documentation after finished my thesis, but instead it hasn\'t been like that because atm the other problems (bugs and more bugs) have been taking the majority of my time.
PS API is nice but doesn\'t explain certain tricks or concepts you need to know for creating the world, for instance, in the way PS handles them better.
Title:
Post by: Induane on December 14, 2005, 01:50:12 pm
Tooltips might not be a bad idea for the shortcuts menu especially - i.e. you have icons for everything but the name you give the shortcut appears when you hover the mouse over the icon.  And as for telling people what windows they were at when they are hidden, giving them a default place should work - people are always unfamiliar with gui\'s when they first encounter them - learnibility + usability + a teaspoon of appearance = a good interface.

You may be right about the chat window, but I\'d at least like to have the option of having it autohide or hide/unhide with the C button or somethjing.  It would be nice to be able to use the keyboard to bring windows sliding from the screen edges manually.
Title:
Post by: Nikodemus on December 14, 2005, 05:08:38 pm
Induane: I did a post about shortcuts before in the thread which is linked at top of this one and which originally started this thread. I will quote myself.
Quote
Originally posted by Nikodemus
Make it so that, user can make as many shortcut windows as he wish with as many shortcuts in them as he set.
One could set it up in window which would also list created windows, allow to create new, delete and modify.

Further, in the current shortcutedit window, make option if the the background should be default or not. This way shortcuts could have eighter text only, text and unique background image or unique background image only.
There would be imput box where user would enter name of the image (eg blast.png, freeze.bmp or heal.tga). The images would be stored in one of the planeshift directories.
This directory wouldn\'t be zipped like the skins are. It is really annoying to edit them and the saved space is really minimal as all the GUI images are png format which are compressed already (also partially transparent pngs are larger than original after zipped ;) )
This way would allow for altering not liked images and creating new.

P.S. As for vieving the available images, you may make ingame simple tool or left it to players who can use not ps related image vieving program.

Basically, I don\'t like your idea about eliminating text from shortcuts completly (tooltips aren\'t good alternative). You miss the fact it may be of dfferent use. The code for this is already done, so why delete it?

Also, http://www.freepgs.com/crimsonorder/things/ps-mc/niko-keybindings.zip as temporary solution for you if you want key for open/close chat window.

DaveG: As for the chat window text too big:
The question is: To scale or not to scale ;). I say, if scale, scale only this what need to be scalled. In chat window the tab labels should be scalled as the graphics under them are scalled. The rest of text should not be scaled, as  when graphics scale, it don\'t look bad.

Similiar thing may be done about shortcuts, although as always, there should be more options to customize in its .xml.

Here is my chat.xml: http://www.freepgs.com/crimsonorder/things/ps-mc/chat.xml
Title:
Post by: Aznakh on December 14, 2005, 06:40:04 pm
I still think that interlocking the windows like palettes in certain apps is a viable solution.
Another thing which bothers me (on the OS X version at least, don\'t know about the other ones) is that the shortcut menu (the one on top with all those icons) eats up 15% of my screen. It is nice to be able to collapse it however I think it would be simpler to make it just a bar instead of having it on the left and on the top of your screen. Espsecially that your avarage user wouldn\'t know how to implement another skin.
Because as a player also it is nice to be able to leave that menu open at all times because it allows to access vital information fast.
Title:
Post by: DaveG on December 14, 2005, 11:06:19 pm
Arianna:
I don\'t think the window is perfect either:

Though, this version is better than the previous.  I don\'t understand what you mean when you say you need a magnifying glass; I can read it just fine.  (could be a scaling issue?...)  But, again I say:  I know it will be chagned.  I can edit these files rather easily, and we can change these things as we go allong.
Title:
Post by: Cherppow on December 17, 2005, 07:52:18 am
Hello

Some of my thoughts:

-Mouse surely affects the gui a lot. Would be good to make better use of it if possible. More specifically, functions such as dragging, pointing, hovering, doubleclicking, tooltip, and possible middle button/wheel. Also, left mouse click could be quite intelligent. Eg. looking and moving items could be more natural. Character description could be changed by doubleclicking the char portrait. Same for the quest/petition description; could appear at hover, and be customizable by doubleclick. Point being: Using intelligent mouse, we could remove many clumsy buttons from the windows.

-Money icons could be smaller and show the amount better.

-Windows could only be selectable by their visible area. (not from the transparent areas of the rectangle)

-Window titlebars could be removed or integrated into the window. (right now it\'s hard to make titlebar and window backdrop images match)

-Window scaling is quite problematic for backdrops images.

-Environmental info = <3
(http://users.tkk.fi/~vrantapu/PlaneShift/Screenshots/envir_01.gif)
(tooltip for exact values)

I support the icons for shortcuts idea. With players able to add more icons, even more. I think the default PS icons (64x64px) are a bit too big for that purpose though. Items or spells could be dragged into the shortcut bar to make a shortcut. I think Neverwinter Nights has a nice system there.
I\'d also like a \"hide gui\" key, that would toggle whole gui invisible/visible with a single click for eg. screenshots or first person adventure.

Ps. Poor Ary, everyone pouring their thoughts on her. :> Anyway, I have confidence in both acraig and Arianna, the gui is in good hands.