[quake3] internationally accepted toggleconsole bind

Tony J. White tjw at webteam.net
Fri Feb 2 20:47:46 EST 2007


On Sat, Feb 03, 2007 at 01:11:00AM +0000, Myles Treadwell wrote:
> Is there any reason it has to be a hard code value?
> setup->controls->misc->
> show scores:tab
> use item:e
> console:<insert user bound console key here>

1) hardcoding is to prevent the user from unbinding all toggleconsole binds
   This would probably not be a huge issue if the user could reset it
   through a menu like you suggest, but breaking q3a qvm compatability is
   against ioq3 goals.

2) The only desirable keys for a toggleconsole bind are those that nobody
   should ever want to type in the console

3) In your example, imagine you bound 'e' to toggleconsole in the menu, how
   could you ever bind e to something else in the menus if every time
   you typed 'e' the console came up instead?  This is a reason why
   user-defined toggleconsole binds do not work when the ui or console
   keycathers are active.

4) hardcoding a key bind for a key that could already be used by someone
   as a user-defined bind will get you lynched.  This is why the F[1-12]
   keys can't be hardcoded for this (for example).
   
I guess this brings up an problem with using Shift-Esc in that users may
have Shift bound to something that makes using Shift-Esc problematic.
For example, if they have Shift bound to +attack they would have to
fire their weapon to use the Shift-Esc combo.  On the other hand, this is
not actually intrusive to this user since he doesn't have to
use Shift-ESC, and this won't effect his normal use of the Shift bind.

-Tony

> 
> 
> >From: "Tony J. White" <tjw at webteam.net>
> >Reply-To: quake3 at icculus.org
> >To: quake3 at icculus.org
> >Subject: [quake3] internationally accepted toggleconsole bind
> >Date: Fri, 2 Feb 2007 09:59:11 -0600
> >MIME-Version: 1.0
> >Received: from icculus.org ([67.106.77.212]) by bay0-mc6-f13.bay0.hotmail.com 
> >with Microsoft SMTPSVC(6.0.3790.2444); Fri, 2 Feb 2007 07:59:40 -0800
> >Received: (qmail 14670 invoked by alias); 2 Feb 2007 10:58:29 -0500
> >Received: (qmail 14661 invoked by uid 305); 2 Feb 2007 10:58:29 -0500
> >X-Message-Info: txF49lGdW43oQSijsF9P5WecrVsdIghCBKzaGVZsUmc=
> >Mailing-List: contact quake3-help at icculus.org; run by ezmlm
> >Precedence: bulk
> >X-No-Archive: yes
> >List-Post: <mailto:quake3 at icculus.org>
> >List-Help: <mailto:quake3-help at icculus.org>
> >List-Unsubscribe: <mailto:quake3-unsubscribe at icculus.org>
> >List-Subscribe: <mailto:quake3-subscribe at icculus.org>
> >Delivered-To: mailing list quake3 at icculus.org
> >User-Agent: mutt-ng/devel-r535 (Linux)
> >Return-Path: quake3-return-1594-baztheallmighty=hotmail.com at icculus.org
> >X-OriginalArrivalTime: 02 Feb 2007 15:59:41.0190 (UTC) 
> >FILETIME=[25F85260:01C746E3]
> >
> >
> >
> >https://bugzilla.icculus.org/show_bug.cgi?id=2741
> >
> >Typing a '`' or '~' for the hardcoded toggleconsole bind is difficult on
> >many keyboards.  Sure you can bind toggleconsole to a key, but it won't
> >work when ui has the keycatcher (and shouldn't).  All users currently
> >need to be able to type '`' or '~' to effectively use the console.
> >
> >There have been a lot of proposals to fix this issue, such as:
> >  1) find the keycode for the upper leftmost key and use that
> >  2) analyze toggleconsole binds to detect the proper key (Frederick's patch)
> >
> >Unfortunately these solutions turn out to be too complex when you look
> >at the details.   IMO anyway.
> >
> >I propose the addition of a new hardcoded bind that I hope would be more
> >universally accepted:  the key combination Shift-ESC (a.k.a. upper case
> >Escape).
> >
> >I picked this key combo because of the comminality and special use of
> >the keys.  The Esc key is already a requirement of the game
> >(e.g. closing menus).  The common modifier/meta keys on modern keyboards
> >are Alt(option on mac), Ctrl and Shift.  Alt and Ctrl are not available
> >since the key combinations Alt-Esc and Ctrl-Esc seem to have special
> >window management functionality on Windows platforms.  Shift-Esc seems
> >to be generally accepted as an available key combo for applications to use
> >on all of our supported platforms.
> >
> >Is anyone opposed to adding this?  Patch follows.
> >
> >-Tony
> >
> >Index: code/client/cl_keys.c
> >===================================================================
> >--- code/client/cl_keys.c       (revision 1038)
> >+++ code/client/cl_keys.c       (working copy)
> >@@ -1066,7 +1066,8 @@
> > #endif
> >
> >        // console key is hardcoded, so the user can never unbind it
> >-       if (key == '`' || key == '~') {
> >+       if (key == '`' || key == '~' ||
> >+               ( key == K_ESCAPE && keys[K_SHIFT].down ) ) {
> >                if (!down) {
> >                        return;
> >                }
> 
> _________________________________________________________________
> Advertisement: Meet Sexy Singles Today @ Lavalife - Click here  
> http://a.ninemsn.com.au/b.aspx?URL=http%3A%2F%2Flavalife9%2Eninemsn%2Ecom%2Eau%2Fclickthru%2Fclickthru%2Eact%3Fid%3Dninemsn%26context%3Dan99%26locale%3Den%5FAU%26a%3D23769&_t=754951090&_r=endtext_lavalife_dec_meet&_m=EXT
> 

-- 



More information about the quake3 mailing list