1游戏WASD原来是这么来的

[中关村在线键鼠频道原创]WASD这几个按键如今基本是默认设置。当鼠标成为3D游戏的标配后,至少对于惯用右手的玩家来说,再去使用方向键实在是很不舒服,你需要伸出左手跨过整个前胸才能够着那几个方向键,WASD显然要更加舒适,也更容易能使用Shift和空格键。

不过即使如今WASD成为大家理所当然的按键配置,但在20年前,根本没有人这么用。

常用的WASD游戏按键

我们现在最喜欢的四个字母按键绝非是什么天然的选择,所有的PC玩家更不是同一时间接受了这样的标准。这套配置经历了很多年的发展,虽然现在不知道究竟是谁最早发现了这四个键,但将它们变得流行起来的是来自《雷神之锤》最伟大的选手: Dennis “Thresh” Fong。

Fong在1997年首届《雷神之锤》全国锦标赛上创造了历史,取得最终的冠军并且赢得了游戏制作人John Carmack的法拉利328。

在他击败对手Tom "Entropy" Kimzey赢得冠军的比赛上,右手握着鼠标,左手则控制着我们如今认为理所当然的WASD四个键位。可是在那个时期,这并不是所有玩家的标准习惯。

在第一人称射击游戏的早期年代,Fong表示他试过了键盘的所有地方,即使对他来说,也是才刚刚开始使用鼠标。在几年以前,1993年的时候,还是青少年的他玩《毁灭战士》输给了他的哥哥Lyle,那会儿他只会使用键盘玩。因为那个时候的游戏还不需要上下看,所以键盘控制游戏足矣,反而用鼠标才会让人觉得奇怪。他的哥哥则使用键盘和追踪球,最终赢了游戏。虽然不是输了全部的比赛,但显然Lyle赢了大部分,从而让Fong决定需要学习怎么用鼠标来玩,在这之后他便战无不胜。

Fong表示“在我成功转换了操作后,我的技巧成倍的提升。几乎从那刻开始,我就没再输过比赛。”

《雷神之锤》

在这期间他还有不少其他尝试,比如WADX的组合,不过Fong最后还是决定WASD,从《毁灭战士》之后便没有再变过。是他发现了这个组合吗?应该不是。

同时期还有很多其他选手也开始布局键盘的左侧。不过如果没有Fong的影响,现在的标准按键或许会不一样。有可能会是EDSF,或是其他奇怪的组合,比如ZXC负责左右和向后移动,鼠标右键负责前进。还有一些早期的射击游戏默认的移动方式是方向键。在1994年,System Shock(网络奇兵)用的是ASDX,而Descent(突袭)用的是AZ前进后退,QE侧移。

2早期论坛中的“证据”

早期论坛中的“证据”

在早期的论坛上也能发现证据。一篇1997年的贴子里建议使用Q和E平移,A和D转向。另一篇则建议用小键盘来控制移动,还有人表示他们用A,Shift,Z,X。就是没有人注意到显而易见的选择:WASD或是ESDF,而在另一篇贴子里,提到了Thresh在《雷神之锤》锦标赛里的表现,并传播了他的打法。他的表现格外惊艳,让发帖者想要寻找他的配置,还说他用鼠标不可能移动得如此之快。

另一个传说提到了《雷神之锤》程序员John Carmock。Fong表示“在E3游戏展上,哪怕我和Carmack出去逛,也会遇到路人询问我的游戏按键配置,于是Carmack听到后在《雷神之锤2》里加入了一套Thresh的按键配置。”

这也让他轻松不少,不但能够立刻在《雷神之锤2》里读取他的案件配置,还可以简单的告诉他的粉丝,直接在游戏里调用就好了。

《半条命》是第一款默认设定WASD的游戏

不过Fong并不认为他的配置是让WASD现在如此流行的主要因素。我也这么认为。在《雷神之锤2》出来的时候,WASD已经成为了主流认识。我便是其中之一,在那个时候我还不知道Thresh是谁。

不过奇怪的是,主流游戏花了很长一段时间才赶上潮流。Carmack或许在《雷神之锤2》里加入了Thresh的配置,但在它推出的1997年,主流的控制按键依旧是方向键。一年后,才开始改变。如果Thresh赢得《雷神之锤》大赛是WASD兴起的第一个高峰,那么第二个高峰在1998年《半条命》的推出。Valve里的《雷神之锤》和《毁灭战士》玩家,也许直接的间接的受到了Carmack, Thresh,和其他顶级选手的影响,将WASD和鼠标作为《半条命》的默认配置,从而帮助确立了第一人称射击游戏的标准。

Valve的工程师Yahn Bernier帮我们检查了《半条命》的最早配置文件,确认就有WASD。“我记得最终确定这个文件,但不记得具体是什么时候决定采用WASD,以及为什么。我们可能是沿用了《雷神之锤》时候的习惯。”

同年,就在《半条命》发售的一个月后,Starsiege Tribes(星际围攻:部落)也采用了WASD作为默认配置。1999年《雷神之锤3》遵循了这个潮流,从此以后WASD就变得原来越流行。2000的游戏Daikatana(大刀)也是WASD的默认配置,不过《半条命》,《部落》和《雷神之锤3》毫无疑问的推动了这个趋势。

3还真有人用ASXC?

还真有人用ASXC?

有趣的是,Valve的老板Gabe Newell并不用WASD。他在写给PC Gamer的邮件里提到“我个人不喜欢WASD,因为它在键盘上的位置太偏了,我通常会重新绑定给ESDF。”

G胖并非一个人,如果稍微搜索一下就会发现,还有不少玩家争论ESDF才是更自然的选择。

没错 热衷于“ASXC”方向键的人就是他了

更让人意外的是,另一位《半条命》的开发者,关卡设计师Dario Casali同样不喜欢WASD,相反,他喜欢ASXC。“对我来说这样更自然,WASD反而很变扭。可是很多人都觉得我是异类。”

不知道你们怎么想EDSF和ASXC的设定,尤其是后者的确挺异类的。至少如今千百万的PC玩家都选择了WASD。

java用wasd_涨知识:游戏默认WASD原来是这么来的相关推荐

  1. java 泛型 默认值_java泛型 Java泛型的入门知识

    在学习java的过程当中,我们就肯定会接触到java泛型,那么你知道java泛型是什么吗,有关java的使用方法又有哪些呢?今天小编就从java泛型的使用方法来了解一下java泛型这一知识. java ...

  2. 【java毕业设计】基于java+swing+GUI的连连看游戏设计与实现(毕业论文+程序源码)——连连看游戏

    基于java+swing+GUI的连连看游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+swing+GUI的连连看游戏设计与实现,文章末尾附有本毕业设计的论文和源码下载地址哦 ...

  3. java毕业设计——基于java+Java awt+swing的愤怒的小鸟游戏设计与实现(毕业论文+程序源码)——愤怒的小鸟游戏

    基于java+Java awt+swing的愤怒的小鸟游戏设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+Java awt+swing的愤怒的小鸟游戏设计与实现,文章末尾附有本毕 ...

  4. 【java毕业设计】基于java+swing+Eclipse的俄罗斯方块游戏GUI设计与实现(毕业论文+程序源码)——俄罗斯方块游戏

    基于java+swing+Eclipse的俄罗斯方块游戏GUI设计与实现(毕业论文+程序源码) 大家好,今天给大家介绍基于java+swing+Eclipse的俄罗斯方块游戏GUI设计与实现,文章末尾 ...

  5. 利用java开发简易版扫雷游戏

    1.简介 学了几周的Java,闲来无事,写个乞丐版的扫雷,加强一下Java基础知识. 2.编写过程 编写这个游戏,一共经历了三个阶段,编写了三个版本的游戏代码. 第一版:完成了扫雷游戏的基本雏形,实现 ...

  6. 资料搜集-JAVA系统的梳理知识6-JAVA多线程

    点击关注[公众号](#公众号 "公众号")及时获取笔主最新更新文章,并可免费领取本文档配套的<Java 面试突击>以及 Java 工程师必备学习资源.<!-- T ...

  7. 手机上的悬浮球原来这么好用,我也是今天才知道,看完涨知识了

    随着科技的发展,手机的功能也是越来越强大,但小编唯独对手机的悬浮球情有独钟,因为里面的功能足以满足平常生活的需要.下面一起来跟我看看vivo手机中的悬浮球有什么特点吧. 悬浮球的作用是什么 可以节省下 ...

  8. 2,Java语言基础-Java语言基本程序设计知识

    Java语言基础 Java语言基本程序设计知识 1,JavaAPI概述 1.1,什么是API API是指应用程序接口( Application Program Interface, API),故名思意 ...

  9. Java集合框架的知识总结(1)

    Java集合框架的知识总结(1) 所有集合类都位于java.util包下.集合中只能保存对象(保存对象的引用变量). Java的集合类主要由两个接口派生而出:Collection和Map,Collec ...

最新文章

  1. Docker命令基础 简洁版本
  2. html传递guid参数,C#中的Guid.ToString鲜为人知参数用法
  3. 嵌入式linux 分区挂载,嵌入式linux系统的开发——文件系统的分区和挂载
  4. java替换html样式_Java Jsoup替换标签的CSS样式
  5. 产品经理思维模型:产品生命周期
  6. ASP.NET Core 源码学习之 Logging[3]:Logger
  7. 高效update方案
  8. C语言的getopt
  9. JavaScript版代码执行
  10. 测试管理工具QC第一篇-QC安装步骤(史上最详细的图解过程)-第一篇
  11. sql 查询数据库索引重建_不良的数据库索引– SQL查询性能的杀手–建议
  12. Ubuntu10.04下Linux内核编译的完整步骤
  13. Java基础 --存储数据
  14. 清华EMBA课程系列思考之十七(1) -- 新企业的孵化与创业投资
  15. 【单例模式、多例模式、工厂模式和枚举】
  16. 人工智能AI对客户服务的影响正在形成
  17. fflush(stdout)作用
  18. @Bean有什么作用
  19. 实践课程-PRO-2 Day1
  20. 如何用u盘引导linux,使用U盘引导安装linux

热门文章

  1. 网规第二版:第8章 网络规划与设计论文学习笔记(含历年真题)(完结)
  2. 【图像增强】基于萤火虫算法实现图像对比度增强附matlab代码
  3. 用python画雪人-萌系新潮玩,唱多多小雪人麦克风天猫独家首发
  4. Day7 String类
  5. ubuntu双系统时间同步_解决Windows与Ubuntu双系统时间同步问题
  6. Android APP性能及专项测试(个人整理)
  7. 模糊(Blur)的学习与体会(一)
  8. React.js -学习总结1
  9. 【查找各日期段内的银行贷款利率问题】
  10. 个人永久性免费-Excel催化剂功能第87波-将批量发送邮件做到极致化,需借力Outlook...