加载中…
个人资料
hstf7437
hstf7437
  • 博客等级:
  • 博客积分:0
  • 博客访问:610
  • 关注人气:1
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
相关博文
推荐博文
谁看过这篇博文
加载中…
正文 字体大小:

[恶搞]记忆中的游戏==魔兽世界WOW

(2011-05-16 20:40:41)
标签:

丧钟镇

网络游戏

视角

操纵

摄像机

杂谈

  本文章由火灭小说网发布而成

  金装备》主角各种武器道具的获得和对付不同BOSS的战斗长大。

  总结:将视角固定在角色身上,游戏的乐趣也更多的体现在角色身上。造型的变化、装备的变更、技能的增加,都能够提供玩家全新的游戏体验。因而此类游戏更多的应用在以角色长大为核心的游戏中。

  背后第三人称自动摄像机视角

  背后第三人称自动摄像机视角,摄像机通常在角色的背后,玩家可以通过某些操纵控制摄像机的旋转或缩放,但大部分时间游戏视角是根据玩家的操纵自行调整以符合游戏的正常进行。

  此类视角是大部分单机游戏所采用的视角,由于摄像机会根据玩家角色的位置以及动作自动变换视角,因此游戏中玩家大部分时间里不需要治理视角方面的操纵,但游戏仍然提供玩家操纵视角的功能,因此在游戏过程中,假如玩家愿意还是可以转动视角。

  代表作:

  《三国无双》系列(所有无双系列)、《鬼泣》系列、《猎天使魔女》

  《三国无双5》是光荣公司的无双系列作品。游戏秉承着前几代的一贯操纵方式,角色在游戏进程中会对摄像机产生影响,玩家可以通过操纵改变游戏视角。但大部分时间游戏视角会被系统自动定位在角色身后。

  《鬼泣4》动作游戏的代表作。游戏中大量使用了浮空射击等增强爽快感的操纵。也由于这一点,其视角是系统自动跟踪,但假如玩家愿意,也可以旋转摄像机。

  《猎天使魔女》是《鬼泣》系列的同门师妹。该作品使用了大量的鬼泣元素。浮空射击、以时间间隔为基准的搓招方式,大量的玄色幽默和反传统的背景设定。就其操纵来说,仍然没有脱离鬼泣的影子。

  视角特点: 摄像机位于角色背后,且间隔角色较近;

  默认视角下,玩家可以操纵摄像机;

  玩家在不操纵摄像机的情况下,系统会根据角色的行为调整摄像机的追尾位置,保持摄像机始终在角色后面;

  玩家在改变视角后,该视角不会变成默认视角,假如角色发生行为动作,摄像机会慢慢过渡到背部默认视角。

  此类游戏的特点: 摄像机固定在角色身上,游戏的进行以角色的行为为基准。

  游戏夸大玩家操纵和角色的反馈,比如《三国无双》群杀的爽快感和连续技的使用;比如《鬼泣》/《猎天使魔女》时间间隔式搓招带来的组合技操纵乐趣。

  总结:固然视角还是固定在角色身上,但玩家可以通过操纵控制视角。此类游戏把更多的精力放到了战斗操纵的反馈上,也可以说是玩家操纵反馈在角色身上的体现。玩家的游戏乐趣更多来自于操纵上的爽快感。举个极限的例子,假如此类游戏中没有道具装备,没有故事情节,单纯的操纵打斗依然能够带来游戏乐趣。

  背后第三人称自由摄像机视角

  背后第三人称自由摄像机视角。玩家可以自由的操纵游戏的视角。此类游戏对玩家开放了视角的操纵权限,玩家需要在兼顾游戏战斗的同时操纵游戏视角。这无形中为游戏增加了一定的操纵难度,大部分采用此类视角的游戏,其战斗操纵部分都进行了适当的简化处理。

  此类视角需要玩家来控制,游戏进行中玩家需要不断的调整视角以便达到自己满足的角度。由于视角的开放,大部分游戏都弱化了操纵的连贯性(比如弱化搓招),而夸大玩家在关键时刻使用了关键的技能。

  代表作:

  《暗黑血统》、《战争机器》系列、《怪物猎人》系列

  《暗黑血统》是新晋出现的3D动作游戏游戏战斗场面火爆,且拥有一些特色的战斗系统。整个游戏的操纵采用自由摄像机视角,玩家需要使用鼠标来控制角色朝向和游戏视角,键盘控制角色的横移和前进后退。

  第一次玩游戏已经是多久以前的事情?自己要回答这些题目都得认真地在记忆的仓库内搜寻半天才能找到答案。我记得大概是6到7岁的时候吧,跟爸爸老妈到广州的商场往的时候那里有两台街机,在那个年龄看那种街机的框体可是高大的可怕,像栋大楼。爸抱着我才能窥见那黑洞洞的框体里闪亮着异色光芒的屏幕,就像爱丽丝的兔子洞一样,幻惑的光芒吸引着我幼小的心,从此便坚定不移地游荡在这游戏的天地里直到现在,已经有二十多个年头了吧。在这漫长的时间里面所玩过的游戏真的是难以统计了,但是有很多优秀的游戏是尽对不会在记忆里消失的。今天开始把这些记忆诉于文字已供同好一起分享。呵呵,不断更新,谢谢支持!================================================== =========

  World of Warcraft 魔兽世界

  厂商:Blizzard Entertainment

  机种:PC

  发售日:2005.3.21 国内

  类型:MMORPG

  魔兽世界WOW太赫赫有名了,以至于作为国服微不足道的玩家一个我再写点什么赞美之词也如泰山一石,沧海一粟,该写的别人都写了,该有的所有都有了,民间的同人的:小说,歌曲,画廊,漫画,视频,动画……全部都一个没少。我现在记录下来的,是我自己几年来的魔兽世界历程中的自我感想。

  2005年的某一天,JH兴冲冲的跑上我荚逗"有一个游戏!尽对值得你往尝试!""这个游戏"就是当时刚公测完了的魔兽世界WOW,我当时还在玩着PS2,心里想:"网络游戏有什么好玩的,整天打来杀往,听说为了挖个石头都要蹲网吧三天才挖那么一个!空荡荡的游戏,能有单机游戏好玩吗!" JH如是继续满腔热情地倾销着:"你先尝试下!60元,就60元。30账号,30一张点卡,试试玩一会再评论。"。当时JH还大谈了很多魔兽世界里如何如何好玩的事情。试下就试下,反正就60元玩一玩不亏。几天后就买回一套安装碟和两张点卡,装好游戏主体后又是一大堆升级补丁和插件,再进进界面,一看,选人画面太滑稽了!一个个活脱就是衣着褴褛外形古怪的小丑农民,当场就指着电脑屏幕笑破我嘴皮!"开始就是这样,看看就习惯了!"JH还是一如既往地热情。我自己来说,看习惯了单机游戏里的主角高大全帅靓正形象,现在屏幕显示的这些东西,从同盟到部落,矮人到巨魔,没有一个比单机游戏的NPC顺眼,更莫说一众猪脚们了!DQ里那个砍葱的大婶都没这个丢脸。JH告诫说:"我在部落,你也要选部落,不然没人罩你,死定!"没题目,遍查一番,还是亡灵族最顺眼,之前看过一些资料,贼这个行业最吸引,就定下来开了一个亡灵女贼号!第一个魔兽人物就此开始!我估计刚开始玩魔兽的玩家40%都一样。由于第一次接触网游,每处地方还需要JH在旁边指点,第一次看到玩家是在丧钟镇出生地外,一个牛头人。当时没觉得什么,后来经过千山万水到了雷霆崖才回想起,这牛头出生后来这里升级,是脑子有题目还是说他有毅力?网游里的玩家都是默默跑过,不像想象之中的热情,每个人都来往匆丛冬很少人停下来问问你安否。"网游里别在NPC商店买装备!那个是菜鸟的行为。":JH告诫如是说。一路杀下来,到了幽暗城,哇!土包子进城了!好大的一座城市!外环内环还一大堆***大队的憎恶哥,脸露凶相的煞是可怕。一头扎进拍卖场一看,OH SHIT,价格就是他妈的贵得离谱!那时身上带的就是那么几十银痹冬一身褴褛前途渺茫。"没关系!打打副本装备就有了。":JH告诫如是说。副本?什么东西?"就是大舆图之外的迷宫,FF,DQ里的岩***。"哦!明白了,又一头扎进怒焰,14级的虫子?杀!!没砍两下自己就挂了?怎么回事,一条虫子有那么厉害?"你没看清敌人头像有金龙环?这叫精英怪,简称JY。固然同级,但是比玩家强2到3倍":JH告诫如是说。我吐!"没事,叫几个人一起往,副本都是5个人一起打的。"叫人?如何叫人,我们玩单机游戏的最不情愿的就是麻烦别人,有什么事情自己想办法解决了就好。网游不一样,没人一起难于登天。终极选择是放

  以作引玉之用.

  2 技术分析部分

  2.1 模仿键盘或鼠标的响应

  我们个别应用:

  UINT SendInput(

  UINT nInputs, // count of input events

  PINPUT pInputs, // array of input events

  int cbSize // size of structure

  );

  API函数.第一个参数是说明第二个参数的矩阵的维数的,第二个参数包含了响应事件,这个自己填充就可以,最后是这个构造的大小,异常简单,这是最简单的方法模拟键盘鼠标了,呵呵.留意,这个函数还有个替换函数:

  VOID keybd_event(

  BYTE bVk, // 虚构键码

  BYTE bScan, // 扫描码

  DWORD dwFlags,

  ULONG_PTR dwExtraInfo // 附加键状态

  );

  与

  VOID mouse_event(

  DWORD dwFlags, // motion and click options

  DWORD dx, // horizontal position or change

  DWORD dy, // vertical position or change

  DWORD dwData, // wheel movement

  ULONG_PTR dwExtraInfo // application-defined information

  );

  这两个函数十分简单了,我想那些按键精灵就是用的这个吧.上面的是模拟键盘,下面的是模拟鼠标的.这个仅仅是模拟部分,要和游戏接洽起来我们还需要找到游戏的窗口才行,或者包含快捷键,就象按键精灵的那个激活键一样,我们可以用GetWindow函数来枚举窗口,也可以用Findwindow函数来查找制订的窗口(留意,还有一个FindWindowEx),FindwindowEx可以找到窗口的子窗口,比如按钮,等什么东西.当游戏切换场景的时候我们可以用FindWindowEx来肯定一些当前窗口的特征,从而断定是否还在这个场景,方法很多了,比如可以GetWindowInfo来确定一些货色,比如当查找不到某个按钮的时候就说明游戏场景已经切换了,等等办法.有的游戏没有控件在里面,这是对图像做坐标变换的话,这种方法就要受到限度了.这就需要我们用别的办法来帮助分析了.

  至于快捷键我们要用动态连接库实现了,里面要用到hook技术了,这个也无比简单.大家可能都会了,实在就是一个全局的hook对象然后SetWindowHook就可以了,回调函数都是现成的,而且现在网上的例子多如牛毛.这个实现在外挂中已经很广泛了.假如还有谁不明确,那就往看看MSDN查找SetWindowHook就可以了.

  不要低估了这个动态连接库的作用,它可以切进所有的进程空间,也就是可以加载到所有的游戏里面哦,只要用对,你会发现很有用途的.这个需要你温习一下Win32编程的基础知识了.呵呵,赶紧往看书吧.

  2.2 截获消息

  有些游戏的响应机制比较简单,是基于消息的,或者用什么定时器的东西.这个时候你就可以用拦截消息来实现一些有趣的功能了.

  我们拦截消息使用的也是hook技术,里面包括了键盘消息,鼠标消息,系统消息,日志等,别的对我们没有什么大的用途,我们只用拦截消息的回调函数就可以了,这个不会让我写例子吧.实在这个和上面的一样,都是用SetWindowHook来写的,看看就清楚了很简单的.

  至于拦截了以后做什么就是你的事情了,比如在每个定时器消息里面处理一些我们的数据判定,或者在定时器里面在模拟一次定时器,那么有些数据就会处理两次,呵呵.成果嘛,不必定是好事情哦,呵呵,不过假如数据计算放在客户真个游戏就可以真的改变数据了,呵呵,试试看吧.用途还有很多,自己想也可以想出来的,呵呵.

  2.3 拦截Socket包

  这个技术难度要比原来的高很多.

  首先我们要替换WinSock.DLL或者WinSock32.DLL,我们写的替换函数要和原来的函数一致才行,就是说它的函数输出什么样的,我们也要输出什么样子的函数,而且参数,参数次序都要一样才行,然后在我们的函数里面调用真正的WinSock32.DLL里面的函数就可以了.

  首先:我们可以调换动态库到系统门路.

  其次:我们运用程序启动的时候可以加载原有的动态库,用这个函数LoadLibary然后定位函数进口用GetProcAddress函数失掉每个真正Socket函数的进口地址.

  当游戏进行的时候它会调用我们的动态库,然后从我们的动态库中处理结束后才跳转到真正动态库的函数地址,这样我们就可以在里面处理自己的数据了,应该是所有数据.呵呵,兴奋吧,拦截了数据包我们还要分析之后能力进行正确的应答,不要以为这样工作就完成了,还早呢.等分析完毕以后我们还要仿真应答机制来和服务器通讯,一个不警惕就会被封号.

  分析数据才是工作量的起源呢,游戏每次升级有可能加密方法会有所改变,因此我们写外挂的人都是***之徒啊,被人愚弄了还不知道.

  2.4 截获API

  上面的技术假如可以机动应用的话我们就不必截获API函数了,实在这种技术是一种弥补技术.比如我们需要截获Socket以外的函数作为我们的用处,我们就要用这个技术了,实在我们也可以用它直接拦截在Socket中的函数,这样更直接.

  现在拦截API的教程到处都是,我就不列举了,我用的比较习惯的方式是根据输进节进行拦阻的,这个方法可以用到任何一种操纵体系上,比如Windows 98/2000等,有些办法不是跨平台的,我不倡议使用.这个技术大家可以参考《Windows中心编程》里面的545页开始的内容来学习,假如是Win98系统可以用"Windows系统神秘"那个最后一章来学习.

  网络游戏通讯模型初探

  [文章导读]

  本文就将环绕三个主题来给大家讲述一下网络游戏网络互连实现方法

  序言

  网络游戏,作为游戏网络有机联合的产物,天龙八部脚本下载,把玩家带进了新的娱乐领域.网络游戏在中国开始发展至今也仅有3,4年的历史,跟已经领有几十年开发历史的单机游戏相比,网络游戏还是非长年轻的.当然,它的构成也是根据历史变化而产生的可以说没有互联网的崛起,也就没有网络游戏的出生.作为新兴产物,网络游戏的开发对宽大开发者来说更加神秘,对一个未知范畴,开发者可能更需要了解的是网络游戏与普通单机游戏有何差别,网络游戏如何将玩家们连接起来,以及如作甚玩家提供一个互动的娱乐环境.本文就将缭绕这三个主题来给大家讲述一下网络游戏网络互连实现方法.

  网络游戏与单机游戏

  说到网络游戏,不得不让人联想到单机游戏,实际上网络游戏的本质脱离不了单机游戏的制作思??,网络游戏和单机游戏的差别大家可以很直接的想到:不就是可以多人连线吗?没错,但如何实现这些功能,如何把网络连线公道的融会进单机游戏,就是我们下面要探讨的内容.在了解网络互连具体实现之前,我们先来了解一下单机与网络它们各自的运行流程,只有了解这些,你才干深刻网络游戏开发的核心.

  现在先让我们来看一下一般单机游戏的简化执行流程:

  Initialize() // 初始化模块

  {

  初始化游戏数据;

  }

  Game() // 游戏循环部分

  {

  绘制游戏场景、火灭小说网人物以及其它元素;

  获取用户操纵输进;

  switch( 用户输进数据)

  {

  case 移动:

  {

  处理人物移动;

  }

  break;

  case 攻击:

  {

  处置攻打逻辑:

  }

  break;

  ...

  其它处理响应;

  ...

  default:

  break;

  }

  游戏的NPC等逻辑AI处理;

  }

  Exit() // 游戏结束

  {

  开释游戏数据;

  离开游戏;

  }

  我们来说明一下上面单机游戏的流程.首先,无论是游戏软件还是其他应用软件,初始化部分必不可少,这里需要对游戏的数据进行初始化,包括图像、声音以及一些必备的数据.接下来,我们的游戏对场景、人物以及其他元素进行循环绘制,把游戏世界展示给玩家,同时接收玩家的输进操纵,天龙八部升级外挂,并根据操纵来做出响应,此外,游戏还需要对NPC以及一些逻辑AI进行处理.最后,游戏数据被开释,游戏结束.

  网络游戏与单机游戏有一个很明显的差别,就是网络游戏除了一个供操纵游戏的用户界面平台(如单机游戏)外,还需要一个用于连接所有用户,并为所有用户提供数据服务的服务器,从某些角度来看,游戏服务器就像一个大型的数据库,

  供给数据以及数据逻辑交互的功能.让我们来看看一个简单的网络游戏模型执行流程:

  客户机:

  服务器:

  Login()// 登进模块

  {

  初始化游戏数据;

  获取用户输进的用户和密码;

  与服务器创建网络连接;

  发送至服务器进行用户验证;

  ...

  等待服务器确认消息;

  ...

  获得服务器反馈的登进消息;

  if( 成破 )

  进进游戏;

  else

  提醒用户登进过错并从新接收用户登进;

  }

  Game()// 游戏循环部分

  {

  绘制游戏场景、人物以及其它元素;

  获取用户操纵输进;

  将用户的操纵发送至服务器;

  ...

  等待服务器的消息;

  ...

  接受服务器的反馈信息;

  switch( 服务器反馈的消息数据 )

  {

  case 本地玩家移动的消息:

  {

  if( 许可本地玩家移动 )

  客户机处理人物移动;

  else

  客户机坚持原有状况;

  }

  break;

  case 其他玩家/NPC的移动消息:

  {

  根据服务器的反馈信息进行其他玩家或者NPC的移动处理;

  }

  break;

  case 新玩家参加游戏:

  {

  在客户机中增加显示此玩家;

  }

  break;

  case 玩家离开游戏:

  {

  在客户机中烧毁此玩家数据;

  }

  break;

  ...

  其它新闻类型处理;

  ...

  default:

  break;

  }

  }

  Exit()// 游戏停止

  {

  发送离开消息给服务器;

  ...

  等待服务器确认;

  ...

  得到服务器确认消息;

  与服务器断开连接;

  开释游戏数据;

  离开游戏;

  } 要想在修改游戏中做到百战百胜,是需要相当丰盛的计算机知识的.有很多计算机高手就是从玩游戏,修改游戏中,逐渐对计算机发生浓重的爱好,逐步长大起来的.不要在爱慕别人能够做到的,由于别人可以做的你也可能!我信任你们看了本教程后,会对游戏有一个全新的意识,呵呵,由于我是个好老师!(别拿鸡蛋砸我呀,救命啊!#¥%……*)

  [置顶]捕鱼达人之深海狩猎升级版体验手记

  [热门]2010-2012年手机连锁行业市场分析与投资远景研究报告

  [推荐]高一四班第一次联欢会

  [恶搞]魔兽单机一些常用命令

  [置顶]开发Silverlight游戏教程(十)斜度α舆图算法

  

 

 

 

--------转载

 

 



  1.吹风机对着标签吹,等吹到标签的胶热了,就可以很容易的把标签撕下来了

2、如何施用砂锅1:新买来的砂锅第一次施用时,最佳用来熬粥,或者用它煮一煮浓淘米水,以拥塞砂锅的微细孔隙,防止渗水_

3、巧用"十三喷鼻":炖肉时用陈皮,喷鼻味浓郁;吃牛羊肉加白芷,可除膻增鲜;便宜喷鼻肠用肉桂,滋味儿鲜美;熏肉熏鸡用丁喷鼻,回味无穷。

4、和饺子面的窍门2:面要和的略硬一点,和好后放在盆里盖严密封,饧10-15分钟,等面中麦胶卵白吸水膨胀,充分形成面筋后再包饺子

5、喷鼻菜是一种伞形花科类植物,富含喷鼻精油,喷鼻气浓郁,但喷鼻精油极易挥发,且经不起长时间加热,喷鼻菜最佳在食用前插手,以保留其喷鼻气。

6、当进行高温洗涤或干衣程序时,不可碰触机门玻璃,以免烫伤。拿出烘干的衣物时,要小心衣物上的金属部分,如拉链、纽扣等,以免烫伤。

7、如果衣领和袖口较脏,可将衣物先放进溶有洗衣粉的温水中浸泡15-20分钟,再进行正常洗涤,就能洗干净。

8、如何施用砂锅2:用砂锅熬汤、炖肉时,要先往砂锅里放水,再把砂锅置于火上,先用文火,再用旺火。

9、烹调蔬菜时,加点菱粉类淀粉,使汤变得稠浓,不但可使烹调出的蔬菜美味适口,并且因为淀粉含谷胱甘肽,对维生素有保护作用。

10、米饭若烧糊了,赶紧将火关掉,在米饭上面放一块面粉和水发酵制成的皮,盖上锅盖,5分钟后,面粉和水发酵制成的皮即可把糊味接收。

0

阅读 评论 收藏 转载 喜欢 打印举报/Report
  • 评论加载中,请稍候...
发评论

    发评论

    以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

      

    新浪BLOG意见反馈留言板 电话:4000520066 提示音后按1键(按当地市话标准计费) 欢迎批评指正

    新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 会员注册 | 产品答疑

    新浪公司 版权所有