2007/06/24 | 刺客项目的筹备日记
类别(游戏开发) | 评论(0) | 阅读(78) | 发表于 12:38

下面是以前的一些记录,打个包发在这里。

关键词:新影舞者项目

内容:对旧影舞者项目进行修改,增删游戏内容,改变故事背景,并使用最新的S3D引擎实现。过程中参考以前的策划案和游戏代码。

核心:与场景互动,动作+解谜

如何突出核心?
增加场景地形元素的丰富性(但并不是越多越好,要各有特色),并因此增加主角动作的丰富性。设计主角动作使其合理且流畅,有一两处创新最佳。
动作的难度控制在合理的范围内。
设计更优秀的谜题,不但要平衡难度及合理性,而且与关卡甚至游戏故事的联系要更紧密。
更多隐藏要素的关卡(其实也未必真的很隐蔽,主要是给玩家带来惊喜,并给他一种原来这个游戏设计如此细致的感觉),适当精确的关卡设计(如影舞者MockUp中经典的爬到贴墙,向外爬3步再转身跳。当然不可滥用否则挫折感很强),地形设计要使主角动作更酷更流畅,有电影动作的感觉。

可以考虑扩展的方向?
1 加强动作系统,向增强战斗系统的方向扩展,将会有更多的敌人和BOSS战,会有很酷的刺杀动作。难度在于历史遗留的AI寻路问题,以及美术和程序设计的复杂度。
2 加强情节要素,为游戏设计一个更紧凑的剧情(而不是古墓丽影早期作品中松散的剧情),增加NPC使游戏更有生气,且这可能也为剧情描述所必需。NPC可以讲述故事,也可能与某些谜题挂钩。难度在于脚本可能庞大,而且我们目前并未有一个优秀的剧本。
3 加强解谜要素,在道具调查,获取,使用,组合等方向增强;在机关的复杂性和互动性上增强。难度在于更复杂的脚本编写。
4 向隐秘行动的思路扩展,并不强调战斗,而强调躲闪,最终可能会使游戏包含类似合金装备或者天诛的感受。难度在于手机平台的视域狭窄,而且镜头操作不便,天然不适合表现此类内容,敌人的视野如何表示也是历史遗留问题。

优势:
1 室内场景很适合我们的引擎,在场景规模和画面表现上可以达到比黄泉道更优秀的效果,同时黄泉道中的一些效果如无双,流血等,可以考虑追加到影舞者系统。再加上新的技术(如巨大化的BOSS,粒子系统的应用),画面水平可以达到新的高度。
2 旧影舞者项目中已经对地形的设计和实现,经过了深入的思考(如跳和翻的关系,跳和悬挂的关系),积累了很多经验。即使与现有国外同类型手机3D游戏比较,我们的关卡和地形复杂程度,也具有优势。
3 相对于最早影舞者卡得较紧的容量限制,我们本次项目的目的性更明确,因此容量限制也相对放宽,那么表现力必然更胜以往。
4 这个游戏一旦完成,其框架比黄泉道优秀,因此在它的基础上制作资料片或新游戏更合理,可以形成系列作品,甚至著名title。(当然这里面有理想主义的成分)
5 综合上面的描述,这个项目显然更符合我们打品牌,展示产品实力的目的。

劣势:
1 相比换皮项目,开发难度较大,虽然尚未进行详细时间统计,但很可能需要半年左右的时间(而且是有1程序1美术1策划基本保持在项目内),而且目前公司人员紧张。
2 最早影舞者开发人员中,王欣已经流失。那么他所开发但未最终完成的摄像机系统,由于注释和文档化做得并不好,可能会成为开发中的一个阻碍。当然我们仍然可以和他联系。
3 影舞者部分地形互动代码已经丢失,不过这部分代码本来就存在问题需要重写,而且大致编程思路还有印象。
4 如果按照原本的影舞者策划来写,有些历史遗留问题难以解决,如AI寻路等。所以必然要对原始策划案进行游戏内容方面的修改。再加上故事背景可能要更换,以及策划案前期的细化工作(这是黄泉道项目的教训),可能新项目的策划案需要一段时间才能出炉。

预估:
需要2-3人基本保持在此项目中,同时还需要额外的程序和美术抽空帮忙,开发时间初步预定为半年左右。
==========================================

刺客传说:

  在第三个世纪,Horazon 和 Bartuc 两兄弟成为Vizjerei部落最杰出的魔法师。他们都是同样的强大并且野心勃勃,迷恋于从恶魔手中学得魔法,但无论如何,他们对恶魔的魔法有着不同的见解。Horazon认为:恶魔是极为强大的力量之源,如果想将它发挥到极致,一定要控制一个恶魔,使它屈从于控制者的意志。而他的兄弟却恰恰相反,Bartuc虽然也崇尚恶魔的力量,但他认为应该得到恶魔之主的授权,这样,就可以自由地使用这些魔法,并且他也是这样去努力的。由于两兄弟的追求不再相同,Vizjerei部落不可避免地****了。

  当他们的矛盾升级到必须要残忍的暴力来解决时,战士们才意识到他们都被恶魔之主玩弄于股掌之间了,但一切已为时太晚。随着战争的升级,整个天空都在燃烧。当一切结束的时候,只剩下沉重的懊悔和自责。Bartuc死了,Horazon也将自己流放到无人知晓的远方,整个Vizjerei部落也得到了严厉的教训。残余的巫师发誓永远唾弃恶魔的魔法并重新修炼自然力的魔法。为了避免同样灾难再次发生,他们秘密制定了一个宗旨:修炼魔法是为了保卫整个部落,消灭恶魔。这就是后来的Viz-Jaq'taar,魔法杀手——也就是人们常说的刺客的组织!

  为避免这个宗旨在魔法面前堕落,Vizjerei部落极为苛刻地要求刺客保有最为纯洁也是最为集中的精神。刺客应该经常冥想以焕发内在的力量,而不是象普通的战士那样直接和恶魔作战。出于这一点,刺客的组织不要求他们直接使用魔法,他们热中于极具创意的装置和神奇的物品去对付拥有强大的魔法敌人。在反抗恶魔腐化的战争中,他们致力于研究身体中自然的战斗技能,包括肉体和精神的力量。

  因为刺客的组织被保护的极为严密,即使是在魔法师中,只有极少数的人对于这个神秘的组织才知道得比谣言多一点。他们的并不象外界透露半点消息。由于他们坚定信念的流传,以及不求回报的行为,感召了更多的魔法师免受恶魔的引诱,世界开始纯洁了。可是,由于Mephisto,Baal,Diablo三兄弟从封印中解脱出来,以及后来世界变成了群魔乱舞的场所,这个古老的组织也不再沉默了。

  特点和能力:

  刺客不直接使用魔法,他们使用具有自动功能的神奇物品来效仿自然力的效果。为了防止潜在的危机,他们精心修炼精神力和徒手搏斗的技能。刺客善于使用奇特的武器:各种刀剑和套在手腕上的刃爪。他们熟练地将这类武器用于战斗之中,如果双手同时持有武器,刺客会使出极具破坏力的双倍攻击。即使是新手也是精通渗透的高手,没有任何锁能使刺客为难,因此,刺客不需要钥匙就以打开上锁的箱子。

刺客在古今中外的文艺作品里大都是不为主流文化所容的反面形象,他们不具有顶天立地的英雄气概,更不具有雄图大略的领袖风采,有时候甚至连冷面杀手的形象都不如。他们生活在阳光的背面,像蝙蝠一样隐藏在历史棋盘的某个角落,成为阴谋或复仇战场上的一粒棋子。
中世纪的宗教烟云和启蒙以后的法的精神更不允许带有灰暗色彩的刺客形象成为历史的正面,所以,在西方,刺客一般是阴谋的同意语
======================================
关于战斗:
在手机上难以进行复杂的操作,因此复杂的战斗系统并不合适.
强调用脑而不是用手去解决敌人.
另外,由于AI寻路困难等因素,希望把战斗场景和冒险场景分开.
举个例子,玩家进入一个大厅,此时背后的门忽然关闭了,敌人出现.玩家的战斗受限于这个场景内部.一旦战斗结束,玩家可以触动某机关打开某扇门继续前进,但此机关在此之前并未激活.
在受限的场景内部,战斗系统和AI设计和实现都比较简单.
把每场战斗作为一个个单独的兴奋点去精心设计,比掺杂在整个游戏中大量无谓的战斗更有趣.
甚至可以先大体完成故事线,然后把战斗象穿珍珠一般,精心安排在合适的位置,包括重要的BOSS战.

另:战斗中希望更多地利用地形的优势,聪明地打击敌人.
比如登上高台躲避BOSS的冲撞,然后给BOSS的眼睛致命一击;又如偷偷攀上横梁,等敌人经过以后悄悄落下,从背后击杀对手.

再次强调:战斗只是兴奋点,是合理的点缀.游戏的核心是玩家与场景的互动,故事情节与解谜.
======================================
整理一下大家最近的想法:
1 要认真设计游戏结束后的制作人名单,体现出特色。可以配合CG动画。
2 考虑制作花絮
3 片头有个简短的CG,要和Title画面无缝连接
4 游戏主要CG以及游戏正式开始,出现在玩家进行一段时间游戏之后,这也是最近流行的做法
5 反应按键很适合手机的操作方式 考虑添加
======================================
关于动作:
RagDoll,也就是木偶系统. 最早在马克斯*佩恩中应用于游戏. 具体来说就是人物不作为一个整体去响应物理碰撞,而是根据骨骼拆分成几个节点,每个节点都有自己独立的包围盒,分别响应碰撞,并且带动其他节点。
举个形象的例子,就是现在动作游戏中出现很多的鞭尸,玩家鞭死尸的手,会发现整具尸体都象弹簧一般“抽搐”。
当然鞭尸决不是主要的应用,比如在以前影舞者中,主角跳跃伸手去挂在某个平台的边缘,这个动作实现起来很麻烦,因为平台边缘有个悬挂作用区,当主角碰撞到这个作用区就会触发悬挂。然而,如果用整个主角的包围盒去触发,很不精确,会出现从高处落下时,仅仅是脚碰到作用区,主角也会莫名其妙地进入悬挂的状态。为此我们为主角做了一个专门用于悬挂的小包围盒,但显然这已经有些麻烦了。进一步说,当主角在高速跳跃中,假如手忽然拉住某个物体,她的身体肯定不可能僵直,而是会出现一个弹性的摆动。为了模拟这个效果,我们在动画制作中,美术下了很大工夫。但是即使已经体现这个效果,那也是静态的,不会根据主角速度快慢的变化,出现不同的动作细节变化。
还有很多麻烦,就不提了。如果应用RagDoll和IK,就有可能从本质上解决上面的问题。
最近的360游戏刺客信条中,也应用了这个系统,当主角在人群中穿梭,肩膀与NPC发生碰撞,主角会出现很细致的身体扭转效果。
可以说,有了RagDoll+IK系统,动作千变万化,而且比较真实,大家肯定也都能想象到。
说完了好处,现在说问题。
简单的RagDoll系统容易实现,但为了达到在游戏中实用的程度,就比较困难。我已知的问题之一,是很难进入稳定状态,比如说一旦被鞭尸,就会不停抽搐,永不停止。
还有,人体很多关节都有受限的运动范围,假如不考虑这一点,人物就会做出匪夷所思的动作,而这在比较强的碰撞下,是很有可能发生的。
以上就总结为实现难度吧,这一点是我主要要考虑的。
下面说说效率,除去额外的骨骼矩阵运算之外,仅仅是把一个整体包围盒变为多个小包围盒去碰撞,这一点都会使效率相比以前慢N倍。当然这里BSP的好处又来了,碰撞检测代价较低。
是否RagDoll系统能成功应用于手机游戏,并且达到效率可以接受的程度呢?现在确实说不清,我只是感觉,假如只是主角和BOSS应用RagDoll,也许还能顶得住?
不过确实没看到有其他手机游戏敢做这个,包括EA和GameLoft,我要不要做吃螃蟹的人?^^
最后,在手机那么小的屏幕上实现这样精巧的系统,是否玩家根本察觉不到?或者即使察觉到了,他也根本不会在意? T_T
过于硬派的技术型游戏,未必能获得玩家的好感。玩家并不会在意你怎么去实现,他们只关心最终结果。
最近挺出风头的手机游戏孤岛悲歌,把一些衔接动画,直接作成AVI播放,我当时还纳闷他为啥衔接那么平滑。。。 -________-! 作为技术人员,我鄙视这种做法,但是从最终体验来说,这种做法挺好?(当然容量要增加一些,但现在很多为了出风头为目的而制作的手机游戏根本就不考虑容量)
又比如06最期待手机java游戏苍神录,从技术上我简直把它鄙视到极至,直接用那么多整图来做地图,而且有几个图层就有几张整图,结果一个java  2d游戏的“试玩版”,就做了几兆,我靠!可以说我们公司全体员工,平时没事干就把苍神录拿出来嘲笑一下。
可是呢?玩家好象根本不懂这些,他们还觉得画面挺好!(废话,整图当然效果好!)而且苍神录获得06最期待java游戏,这也是事实,怎么说它的目的也达到了!
这是否值得所有技术者深思呢?
===============================================
地形系统将有变化:
原影舞者地形系统中的一些地形,很可能不适用于中世纪欧洲的建筑场景,会有删减,修改,增加。
具体方案还未确定。
另外,我也打算把影舞者中限定于坐标轴方向的一些实体,扩展为任意方向。当然任意BOX的碰撞比坐标轴对齐Box的碰撞要复杂一些,所以判定主角是否触发某个地形实体开销要大一些,在地形实体上移动(如悬挂移动)时的运动公式也要复杂一些,但是会给地形编辑带来很大的灵活性。
还有,拖出一个斜向的作用区,对于编辑关卡来说,有点麻烦。
是否最终这样做,有待进一步讨论再做决定。
===============================================
剑和人的动画思考:
以前影舞者剑和人的动画是不分开的,
黄泉道分开了,一个原因是换剑,还有一个原因是为了画刀光和求攻击伤害范围。
现在如果分开,动画文件数量庞大,不分开,又不能实现攻击动作的一些功能。
所以决定这样做:
1 对于攻击动作,为剑分开导出一个动画
2 对于其他动作,不为剑单独导出动画
3 所有动作中,剑始终和人一起渲染,剑的动画并不用于它自身的渲染
希望这种做法可以行得通
理论上黄泉道和影舞者的代码已经合并好了,  除了很多地形移动代码流失了以外.
刚才忽然发现一个问题:
如果主角在空中, 或者悬挂在平台边缘, 或是某个诡异的状态下, 被击中, 会怎么办?
还有就是在这些状态下是否可以攻击?
以前黄泉道主角只能有站立和跑两种基本状态, 所以这个问题不存在.
但是在刺客项目中, 问题就来了:
我们到底需要做多少动作才够用呢?
真的要仔细思考这个问题...
如果主角向前跳跃时被攻击,他是否立即播放空中被击中的动画,并且立即进入下落的状态?
原地跳,与向前跳,与向前翻滚,这3种情况下被攻击动画是否可以相同?我的理解是原地跳与向前跳可以相同,但是向前翻滚因为动作差异太大,无法正确过渡到同一个被攻击动画上去。
如果涉及到在各种地形上被攻击,情况就超复杂:
悬挂,狭道,横柱,立柱,矮台。。。
而且仅仅悬挂一项,还要分为悬挂静止,悬挂移动,悬挂翻身上平台,悬挂转身跳,悬挂落下那么多状态;理论上这每种状态时都有可能被攻击,都需要不同的被攻击动画。。。
现在可以看出事情的本质了:对于每种主角的运动状态,都要有相应的被攻击动画,包括一些过渡状态,如潜行切换到跑得过渡状态。
好了,简单统计一下主角的状态数量,起码也有几十种吧?也就是说我们需要几十种被攻击动画?
显然不可能。
那就有两种解决方法:
1 不允许一些状态中被攻击,这又有几种可能性:
  a 在主角可能出现一些特殊动作的场合,比如有可能悬挂的场合,不放置敌人。既然没有敌人,当然就不会被攻击。但是这个做法一是有些奇怪,二是可控制性差,比如玩家把敌人拉到这种地方,然后故意进入悬挂状态,然后被攻击。哈哈,我逮到你的破绽了。
  b 主角一些状态,尤其是比较短暂的过渡状态中,设定为瞬间无敌。那么即使这个时候被攻击了,也要强制把这个状态走完,进入下一个状态以后,再调用下一个状态相应的被攻击动画,这样可以稍微减少被攻击动画数量。具体哪些状态可以这样,我还没仔细想。
2 某些状态的被攻击动画可以用同一个的,只要看起来不奇怪就行了。以黄泉道为例,主角站立,跑,攻击(仅攻击出招和收招时,因为有判定的那几帧瞬间无敌)时,被攻击动画是同一套,看起来也不奇怪。
被攻击真正的难度,在于动作的衔接,比如向前翻滚中,如何平滑地过渡到被攻击的动作,并最终又回到站立的动作,以影舞者的开发经验来看,难度是很大的。更何况我们有那么多被攻击动作要做。
美术可以先进行动作的设计了,仅仅停留在纸面上的设计也是好的。
站立     站
潜伏     站
站立到潜伏(此时拔刀)   站
潜伏到站立(此时收刀)   站
跑     站
潜行     站
跑到潜行(已经潜行,此时拔刀)  站
潜行到跑(已经跑,此时收刀)  站
坠落     空
落地     站
起跳(下蹲阶段)   站
起跳(蹬地阶段,用于原地起跳)  站
起跳(蹬地阶段,用于向前起跳)  站
原地或向前跳起(上升阶段)  空
向前翻滚(蹬地阶段)   站
向前翻滚(上升阶段)   翻
向前翻滚(下降阶段)   翻
向前翻滚(落地滚动阶段)  站

从Aero过渡到蹬墙   空
蹬墙向左右两侧或身后跳(发力阶段) 空
蹬墙向左右两侧或身后跳(收腿腾空阶段) 空

从Aero,Fly过渡到悬挂(旋转阶段) 空
从Aero,Fly过渡到悬挂(伸手阶段) 空
悬挂     空
悬挂蹬墙移动(可用在连挂,或者单挂间) 空
悬挂移动转身(切换左右手)  空
悬挂跳跃(发力阶段)   空
悬挂跳跃(收腿腾空阶段)  空
悬挂过转角    空
悬挂侧手翻身上平台或狭道  空

从Run,Creep过渡到在狭道上潜伏  站
从Aero,Fly过渡到在狭道上潜伏  站
狭道潜伏    站
狭道潜行    站
狭道跳跃    站
狭道过弯    站
狭道转身过渡到悬挂   站

从Run,Creep,Aero,Fly过渡到挂在立柱上 空
挂在立柱上    空
蹬立柱上下移动    空
蹬立柱左右旋转    空
蹬立柱反身后跳    空

从Aero过渡到贴在横杆上   空
潜伏在横杆上    空
贴在横杆上移动    空
在横杆上倒挂预备暗杀   空

从Run,Creep侧手翻身上矮台  空
从上矮台翻下接Run,Creep   空

攻击1出招    站
攻击1判定    -
攻击1收招    站
攻击2出招    站
攻击2判定    -
攻击2收招    站
攻击3出招    站
攻击3判定    -
攻击3收招    站
攻击4出招    站
攻击4判定    -
攻击4收招    站
受伤     -
死亡     -

站表示站立被攻击
空表示空中被攻击
翻表示翻身中被攻击
也就是受伤动作最终被归结为3种
几点新问题:
1 站立被攻击时,主角会后退吗?如果后退,则可能会从高处坠落,此时动作如何处理?进入坠落的动作,还是进入空中被攻击的动作?
2 空中被攻击时,有几个问题:
  a 有可能主角刚跳起来,或者已经快落地,或者悬挂在一个离地面很低的位置时被攻击了;此时主角离地面的高度不足以把被攻击动画播放结束,如何处理?
  b 反之如果主角距离地面很远,被攻击动画已经播放完了,还没落地,此时应该进入坠落状态,还是维持被空中攻击动画的最后一帧?
  c 上面的对应表格中,我假定在悬挂这些特殊状态中,一旦被攻击立刻就进入空中被攻击动作,并且从特殊地形上掉下来,这种做法可以吗?
  d 某些情况下,如果进入空中被攻击动作,可能会导致碰撞出问题,因为包围盒变化了,主角有可能卡进墙壁里。
0

评论Comments

日志分类
首页[118]
游戏开发[40]
绝命都市[6]
文章[47]
朝花夕拾[10]
诗歌[6]
相簿[9]