[crossfire] Improved/redone client.

Lalo Martins lalo.martins at gmail.com
Fri Oct 13 01:36:34 CDT 2006


On Mon, 09 Oct 2006 01:10:52 -0700, Mark Wedel wrote:
> Make client fullscreen.
> 
> Reasoning here is that most games run in fullscreen mode, so it becomes more 
> like most games.  It can also ensure that other applications are not grabbing 
> keystrokes/button presses (eg, window manager, etc), so if we tell the player to 
> press a key, we can know for sure that if the player presses that key, the 
> client gets it.  For lots of reasons, would still need to support a windowed 
> mode of operation.
> 
> My thoughts: I personally find fullscreen applications annoying, so would also 
> use the window mode (I think most people using unix don't expect full screen 
> apps).  While we can run fullscreen, I don't think we can or should attempt to 
> switch resolution.  This does then mean that client could be asked to run at odd 
> dimensions.  I think this issue needs to be investigated further - it may be 
> possible to make the pointer captive in a non full screen window.  I also think 
> that if we do full screen window, it needs to be pretty clear how to get out of 
> it (nothing more annoying than an app taking over your system)

It may have happened while I was in Hong Kong, but from the UI discussions
I've seen, I don't remember anyone defending fullscreen clients.  Rather,
we (myself included) used the term "foolscreen" loosely to describe
something else entirely, which is probably more correctly termed
"fullwindow".

The idea is that the current clients display way too much information;
someone has described them as "geeky".  Typically, when playing, you're
interested: in the map (always), hp/sp/grace/food (almost always),
important messages (almost always), chat (often), exp (often), and "look"
list (frequently).  Everything else only needs to be looked at
occasionally. By the basic rules of UI design, it follows that these are
the elements that should be always there; if possible, progressively less
intrusive in the order above.  Other elements should be easy to bring up,
but off by default.

The solution usually thought of as the best is a design similar to other
games, like experimented with in sdlclient and the cfplus client;
the map is the main element, taking up almost the whole area, and the
other important elements are around the map, possibly in the form of a
HUD. Messages and chat could be overlayed on the top left / bottom left of
the map, where they're less likely to obscure something important. 
Pressing ' brings up the "console", where not only you can type, but you
can scroll back trough old messages and maybe even see messages that your
client was configured not to display in real-time.  Other keys (or
clicking on "handles" on the edges of the window) would bring up
everything else -- basic stats, resists, inventory, spell list, the works.

Then of course this raises a separate discussion of widgets.  I think
"custom" widgets are more appealing, but they have all the disadvantages
pointed out by Quinet (specially, clipboard support), and they're
obviously extra work.  I think such a design is not at all impossible to
implement using gtk+ widgets; it may even evolve from the codebase of the
current v2 client.

best,
                                               Lalo Martins
--
      So many of our dreams at first seem impossible,
       then they seem improbable, and then, when we
       summon the will, they soon become inevitable.
--
personal:                              http://www.laranja.org/
technical:                    http://lalo.revisioncontrol.net/
GNU: never give up freedom                 http://www.gnu.org/





More information about the crossfire mailing list