New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Create new default key bindings. #544

Open
Viech opened this Issue Jan 30, 2015 · 13 comments

Comments

Projects
None yet
5 participants
@Viech
Copy link
Member

Viech commented Jan 30, 2015

The old bindings are both outdated (e.g. item selection) and inefficient.

@Viech Viech added the T-Task label Jan 30, 2015

@Viech Viech self-assigned this Jan 30, 2015

@Viech Viech added this to the Beta milestone Jan 30, 2015

@Veyrdite

This comment has been minimized.

Copy link
Member

Veyrdite commented Nov 17, 2015

Using 'x' for sprint is very awkward if you want to strafe (ie hold W and A) at the same time. Moving this to the shift key make it much easier.

I remember you voicing issues about using the Y/Z keys before due to them being swapping in some keyboard layouts. Do we want to officially support non-QWERTY layouts in the single set of default binds?

@Viech

This comment has been minimized.

Copy link
Member

Viech commented Nov 17, 2015

I think QWERTZ is quite common, though I don't know any numbers.

@mbasaglia

This comment has been minimized.

Copy link
Member

mbasaglia commented Nov 17, 2015

If we can access the raw key id we could generate bindings depending on the physical key position instead if the associated character

@slipher

This comment has been minimized.

Copy link
Contributor

slipher commented Apr 12, 2018

We now have the capability to make binds based on the physical key position, so it is no longer necessary to worry about restricting the default bindings to keys that have the same label in the most popular layouts for western European languages.

@illwieckz illwieckz modified the milestones: Beta, Alpha 52 (v0.52.0) Dec 11, 2018

@illwieckz

This comment has been minimized.

Copy link
Member

illwieckz commented Dec 11, 2018

it has to be done for next release.

this is a proposition:

[‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾]
[ ~      ] [ 1      ] [ 2      ] [ 3      ] [ 4      ] [ 5      ] [ 6      ]
[ consol ] [        ] [        ] [ barb   ] [        ] [        ] [        ]
[        ] [ blastr ] [ weapon ] [ nade   ] [        ] [        ] [        ]
[________] [________] [________] [________] [________] [________] [________]

[‾‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾]
[ Tab     ] [ Q      ] [ W      ] [ E      ] [ R      ] [ T      ] [ Y      ]
[ score   ] [ evolve ] [ forwd  ] [        ] [        ] [ talk   ] [ ttalk  ]
[         ] [ medkit ] [        ] [ buy    ] [ reload ] [        ] [        ]
[_________] [________] [________] [________] [________] [________] [________]
 
[‾‾‾‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾]
[ Caps      ] [ Q      ] [ S      ] [ D      ] [ F      ] [ G      ] [ H      ]
[           ] [ left   ] [ backwd ] [ right  ] [ mark   ] [ decon  ] [        ]
[           ] [        ] [        ] [        ] [        ] [        ] [        ]
[___________] [________] [________] [________] [________] [________] [________]
 
[‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾]
[ Shift  ] [ ≷      ] [ Z      ] [ X      ] [ C      ] [ V      ] [ B      ]
[ wwalk  ] [        ] [        ] [        ] [ taunt  ] [ beacon ] [ voice  ]
[ crouch ] [        ] [        ] [        ] [        ] [        ] [        ]
[________] [________] [________] [________] [________] [________] [________]
 
[‾‾‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾‾‾] [‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
[ Ctrl     ] [ Meta     ] [ Alt      ] [  Space                               
[ run      ] [          ] [ strafe   ] [  jump                                
[          ] [          ] [          ] [  jump/jetpack                        
|__________] [__________] [__________] [_______________________________________

U:   admin talk
P:   pause
F1:  vote yes
F2:  vote no
F3:  team vote yes
F4:  team vote no
F11: ScreenshotJPG
F12: ScreenshotPNG


  /‾‾‾‾|‾‾‾‾\
 /    [‾]    \
/     [ ]     \
|     [_]     |
|______|______|
|             |
|             |
|             |
|             |
|             |
\_____________/

left click:   attack
right click:  secondary attack
middle click: barb/grenade
scroll up:    previous weapon (blaster)
scroll down:  next weapon     (weapon)

I sometime think about moving alien evolve to the same key as human medkit so activate (buy in above drawing) may not only be used by humans in front of an armoury, but also by everyone whatever the team to interact with map stuff.

@slipher

This comment has been minimized.

Copy link
Contributor

slipher commented Dec 11, 2018

+1 for making evolve a different command from activate

@illwieckz

This comment has been minimized.

Copy link
Member

illwieckz commented Dec 11, 2018

OK, so I put the evolve action on the same key as medkit on the above drawing.

About previous/next weapon we can already do this (this is what I do myself):

teambind 2 MWHEELDOWN "itemact weapon"
teambind 2 MWHEELUP "itemact blaster"

But it would be better to just make weapon cycling (weapprev/weapnext) autoswitching, it means grenade/medkit have to fire/use with attack instead of useitem.

It's important grenades (and perhaps medkit) are accessible through weapon cycling so beginners will find them, even if there is a dedicated bind for that: we must make beginners able to play with the lowest gap possible, then encourage them to learn to become pro-players. We may add an option to hide medkit/grenade from weapon cycle for pro-players.

We may remove entirely human medkit from cycling as players will learn to use it quickly if it's using the same key as alien evolve.

There is somewhere (where?) a work in progress code for grenade first player view, as seen on this screenshot:

grenade first player

Until this is implemented we would just have to display the related pictogram on screen.

@Viech

This comment has been minimized.

Copy link
Member

Viech commented Dec 11, 2018

It's important grenades (and perhaps medkit) are accessible through weapon cycling so beginners will find them, even if there is a dedicated bind for that: we must make beginners able to play with the lowest gap possible, then encourage them to learn to become pro-players.

I'm borderline OK with this if and once grenade and medikit are things that you hold and fire for all players, as the screenshot above implies. But in the meantime you are not helping new players by first teaching a bad practice that might stick. I'd go as far and argue that being completely unaware of the presence of grenade or medikit is better than getting into the habit of scrolling through a list and selecting something in the middle of a fight, because in the former scenario you will eventually learn the keys while in the latter you may forever adopt a playstyle that is too slow to compete. Note also that one key for throwing a grenade (usuall "g") and one for healing is common practice in casual shooter games nowadays, every kid understands this, and our players will aswell. They are not that incompetent.

As a side remark, I have been redesigning the jetpack with the potential to abolish weapon scrolling in mind. It was important to me that it didn't need to be selected, because that was really unfun in trem, especially if you also wanted to use grenades mid air…

In your proposal, you need to switch reload and buy. Reload has been on "r" for as long as FPS games exist, and "e" is a common "use" key. Otherwise it looks good!

@illwieckz

This comment has been minimized.

Copy link
Member

illwieckz commented Dec 11, 2018

In fact I use myself “e” for use and “r” for reload but it's just cargo cult and since reload occurs more often than use, it makes sense to exchange them, but I'm very ok to revert to e for use and r for reload if that's as common as asdf, the “r” key is accessible enough.

For weapon cycling and strategy to have with newcomers, well, any game like quake3 or xonotic has weapon cycling and per-weapon bind. I like the idea of a game being accessible from the start, and the only thing preventing players to learn the pro way is laziness (and I'm lazy so it's ok 😛 ).

I sill haven't learnt the 1 key for ckit toggle, I inferred there was one available but I only took time to discover it today by reading the keybindings.cfg file today (that was also because before @slipher's work on keyboard, all my num keys were probably not available, that's usually not the case in other idtech-derivated games).

About grenade, I know I spent months of tremulous gaming before finding the courage to bind it to a key I would remember. Everytime I use a bare profile for testing purpose I just avoid grenade because I never remembered the default bind key. It means other lazy people will just not use it, it's better if they at least use it by cycling. Cycling is a great way to discover weapons, and it's very common in FPS.

For medkit I'm very ok to entirely remove it from cycling. Players must learn the keybind from the start, it's vital (in all senses), grenade is only used when you have enough credit (hence enough skill), and feel confident enough with the game to buy it. To get enough credit and enough confidence people have to learn the medkit keybind first.

@illwieckz

This comment has been minimized.

Copy link
Member

illwieckz commented Dec 11, 2018

@Viech, what do you think about having one key for press-to-wallwalk and another key for toggled-wallwalk?

I started to use this because of the bug that makes the granger fall on build menu opening with press-to-wallwalk mode, but even when this bug will be fixed it makes sense to have it at fingertip, because press-to-wallwalk is convenient when running, jumping, wallwalking quickly with a dretch for example (my brain is lost with modal states in that kind of scenario), but it's convenient to be able to wallwalk the lazy way, to hide or to build…

I'm doing it that way, but we may implement two different commands to allow players to easily rebuild them:

teambind 1 0x64 "set cg_wwToggle 1 ; +movedown"
teambind 1 SHIFT "set cg_wwToggle 0 ; +movedown"
@Viech

This comment has been minimized.

Copy link
Member

Viech commented Dec 11, 2018

If the bug was fixed, then the "wallwalk toggles" options menu option should be enough, with the default of press-to-wallwalk because that's less confusing then suddenly walking on walls and having to figure out how to stop it again. Plus it's easier to control in fights as you said.

@illwieckz

This comment has been minimized.

Copy link
Member

illwieckz commented Dec 11, 2018

sure

@illwieckz

This comment has been minimized.

Copy link
Member

illwieckz commented Dec 11, 2018

reverted buy (activate) and reload to e and r.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment