【2014-11-7 喵回来啦=w=~/】
●嗯哼~ 前一段时间因为各种事情大概3个月没有做游戏,现在总算基本忙完,虽然后面的时间还有点不确定,不过看起来已经可以重新开始了~GO~GO~
●三个月没碰源码有些生了,喵先花几天时间把之前的思路理顺一下~
【开发日志 2014.1109】
●好长时间没有碰源码,有些地方的思路没能连贯起来,好在当时的结构和注释写的都还容易理解,慢慢的也可以读懂。现在我在尝试把生物的定义规则化。目前,除了物理数据上的一些不同外,我用这么几个变量来定义一个生物与众不同的地方:
1)Tag:之前我用buff和debuff的方式来把一些比如“加速”、“诅咒”等特殊状态附加给生物,可是随着生物特征的逐渐增多,这种方式开始慢慢的和生物自身的一些能力打架。二者间或有相似的地方,但有时又不仅相同。于是我把这些所有影响到生物特殊能力的元素通通用一个词来概括了起来——“Tag”。tag可以是天生自带的,也可一试通过道具或魔法附加给生物的。tag于内在上分为两种(虽然外表看不出来),一种会随着时间的流逝而消失,类似于传统的buff。而另一种则是永久/半永久的,只在某些特定的情况下才会消失,比如卸下相应的道具等等……
2)Character:用于表示生物的性格,比如勇猛、懦弱、莽撞、小心等等。性格会在生物AI的决策时候影响到生物的行动,比如懦弱的生物受到强大攻击后很容易士气见底而撤退,而勇猛的生物则很有可能战斗致死……
3)State:用于表示生物当前的状态,比如睡觉、游荡、战斗、逃跑、进食等等…… 根据周围的情形不同,生物会在不同的状态中切换。
●嗯大概就是这些吧,下面就要写关于生物“性格”和“状态”的部分了,我希望可以通过状态的多样性来对生物的多样性特点有一个概括而方便的定义酱紫。
【开发日志 2014.1216】
●一晃又是一个月哎呦_(:з」∠)_ 再有一段时间就放假了,到时候两个月的黄金假期希望可以有更多的时间来支配吧~
●不过这一段时间喵真的也没闲着啊!为了写生物在不同状态下的AI框架,喵把目前用到的比较多的状态机和行为树两种方式都简单的研究了一遍,虽说行为树确实看起来是更加直接而明了的写作方式,但是因为喵的水平原因,最后还是选取了传统的状态机的方式来写生物的AI。
●和之前预想的一样,生物通过状态和性格两种参数来影响其行为模式,其中性格通过“胆小/勇敢”“粗心/细心”等7种不同的角度对其进行了描述,每种描述里面还细分为了不同的阶段。比如一只老鼠可能会是"胆小-2/犹豫-1"等等……
●而状态目前则被简单的分为了"睡眠、迷惑、游荡、战斗、逃跑"五种状态。根据生物的不同性格参数,同种状态下可能会有不同的行为模式。
●当然,目前这种方式虽然大体上让生物的行为看起来不是那么的一样了,但是每种生物更加细微的行为特点还是没能做出来。喵打算把这一部分放在0.05之后的版本来做。对于其实现方式虽然已经有了一个大致的思路,不过还是需要再细想想……
●下一步就要准备来做玩家的能力方面的事情了。因为先天或后天的种种原因,玩家可以使用各种能力来使自己更加强大。能力在游戏中被划为两个部分。一个是基于TAG的能力。tag能力可以是先天或后天,甚至于是道具带来的能力。而另一种则是基于skill的能力。玩家通过捡取和学习技能徽章来学习到各种技能。这些技能可以更多的使玩家之间看起来不同,且能够有更多的选择。
●另外一点是基于平衡性的考虑的,因为魔法和能力的作用在目前的设定中有些混淆不清,因此我打算进一步的对魔法的使用做些限制…… 至于是什么限制现在还没有想好…… 我希望魔法的使用能够更加的神秘、更加的睿智、更加的具有战略性,而不仅仅是补血、鉴定、扔大火球……
●以上…… 么么哒(=?ω?)=
【开发日志 2015.0104】
●转眼又是一年了。今天喵把能力使用的基本框架做好了。玩家通过自己的发展方向(skill学习)以及从或者天赋或者道具得来的各种TAG中可以获取各种能力。能力的使用将会比魔法更加的灵活和充满了可变性。
●至此为止,0.02版的基本计划已经算是完成了。下面喵要彻底的整理一下至今为止所有的变量、函数以及程序框架,同时将一些基本的游戏内容填充进目前这个框架里面,使其真正变成一个可以玩的游戏…… 干巴列啦~
●附上能力使用的界面=w=/
【开发日志 2015.0105】
●今天把目前所有道具的说明补充了一下,现在在游戏中已经可以查看道具的简单说明了。
●下面计划整理目前的程序和补充游戏元素同步进行~ 干巴列~
【开发日志 2015.0109】
●这两天把以前设定好的一些怪物的数据添加了进去,目前已经有了30个不同的怪物在地城中,涵盖了1-10的难度级别。
●写上了目前所有怪物的描述,虽然有些描述明显有玩闹的不严肃成分。Tile上目前选用了一些nethack和dcss的怪物贴图来占位,以后专心做画面的时候再重新绘制好了。
●解决了以前随机生成怪物时候的一个BUG,之前因为随机从怪物列表中挑选数据的时候会数据超出列表size而出错,是因为做随机数的时候有一个数值填错了,现已修改。现在随机生成的怪物应该已经不会出错了~
●现在的情况应该已经是0.02版的最后一个版本了,下面我要整理一下程序结构,然后开始进入0.03版的计划~ 新年干巴列~
【开发日志 2015.0120】
●整理脚本以及函数的命名规范真是个麻烦的事情……好在这个工作现在已经接近尾声了,顺利的话再过1~2天就可以按照功能的不同来系统的定义好所有的脚本名称(这会让以后的工作变得更加有条理)。下一步准备进入vr0.03的时代,开始对于地城的丰富性下功夫了!~ goOn~
【开发日志 2015.0123】
●哎呦我去终于把目前的脚本命名规范统一好了,下面开始进入vr0.03的时代!~
●目前放出的demo,很多朋友都提到目前装备道具的方法太喵的繁琐了,其实我也这么觉得…… 下面的任务我打算稍微整理一下这里的操作方式,使得道具可以在道具栏中直接装备。
●0.03版的一个重要的任务就是使地图形式更加的多样化,我准备把地图生成的脚本扒下来做一个单独的工程来实验不同的地图生成方法~ 干巴列啦~
【开发日志 2015.0124】
●改善了道具栏中的道具操作方式,现在可以在道具栏里面直接装备道具了,针对不同的道具种类会显示不同的操作方式选择,常规的武器只可以被装备在手上,其它的道具除了可以装备在相应的位置上之外,还可以装备在手上作为特殊武器使用(以后随着道具的特性发展,这一点可能会很有意思)
●在装备栏中直接选择要装备的道具时,现在可以显示一个红色方块来筛选所有不适合当前装备栏的道具,无法装备的道具会显示红框标注(虽然玩家仍然可以选择它)
●在玩别的游戏的时候,看到了一个光影的遮罩对视觉效果的加成蛮大的,所以给画面加入了一个遮罩的效果。现在主角周围的环境会有一个明显的亮光效果,越离主角远的地方就越黑(哎呦其实就是个圆形遮罩),效果还不错,打算保留了。
●下面我把地图生成的部分单独做一个工程,开始专心实验不同的地图了~~
【开发日志 2015.0125】
●新建了一个工程,提出了目前的地图生成脚本来扩展更多的生成算法。
●以后可能会有更复杂的地图生成方式,但地图的生成时间希望可以控制在0.2s之内……
【开发日志 2015.0127】
●现在有了三种不同的地城生成方式,虽然这三种的基本原理都差不多,不过稍微做了一些变化能让地城显得有些不同……
●第一种是基本的地城,有大小不一的房间以及贯穿房间的通道。
●第二种是腐蚀性的地城,在第一种的基础上让原本的方形房间有了一个向外变形和扩张的变形(像是房间被风化腐蚀了一样)
●第三种是大房间,用一个居中的大房间做了一些简单的腐蚀……
●因为目前腐蚀算法的繁复(需要反复遍历整个地图),所以生成地图的速度很遗憾的降到了0.4秒左右……喵的希望破灭的快啊_(:з」∠)_
●还有几种想象中的生成算法我再写一些…… 干巴列~
【开发日志 2015.0207】
●前几天有一个新游戏的点子,走的是模拟经营的路子。花了几天时间稍微沉淀了一下,先记下慢慢整理。
●这段时间狂迷上了Dream Quest,一个roguelike类的卡牌游戏,ios平台,一个画面极为简陋但却好玩到爆的游戏。
●其中作者对于每一个怪物、卡牌以及玩家角色的构建让人沉迷到颈椎疼→_→ 但这不是重点…… 重点玩过这个游戏之后,是我有些感觉到我现在对于怪物和角色的构建可能有些走偏。我一直在试图在生物的行为模式上使其规范化,这个思路源于DF和Ivan,这两个游戏都有一套完整的外部脚本,使其可以方便有效的快速创建出一个特征鲜明的生物来。但是与之相对的,特征鲜明仅仅是生物自身的特征,但是其生物的行为模式却不是那么的差别巨大。但幸好这两个游戏都或多或少的能够让生物的特征凸显出来而影响到其行为模式……
●但是在这一点上,我似乎两方面都没有很好的达成目的。我原本试图构建一系列的生物AI模式,让不同的生物根据自己的[性格]来展现其特点,但目前似乎效果有限。玩家在应对每一个【不同】生物的时候,内心并不会有本质上的区别对待,“啊我知道这个怪物,我应该调整一下战术了”,现在在我的游戏中不会出现这种情况,而是一味的杀杀杀,这有违我的初衷(提高每一场战斗的质量)
●我需要静下心来好好思考下这个问题……
【开发日志 2015.0426】
●呼~ 经过了好漫长好漫长的反复修改,新的战斗模式和技能的引用总算是大致搞定了。简单说其实就是我有点不满足传统的RL的战斗模式,再加上过年期间受到了一些游戏的影响,所以在重新修订游戏的战斗方式,试图让战斗以及人物的build变得更有意思一些……
●现在总算是OK了吧。简单来说现在的系统:每个玩家构建的人物,是由一个星座和三个技能来组成的,星座会为玩家提供一个威力巨大的“星座天赋”,而三个【技能 Skill】则会共同为玩家提供各种不同的【行为 Action】。比如“剑术”在这里是一个技能,而选择了这个技能的玩家则会在游戏的过程中(升级、探险等)获取剑术相关的一系列“行为”,比如“顺劈”、“突刺”等等…… 这些不同的行为共同构建了玩家在处理问题时候的“底牌”。
●OK,到目前为止这还是一个类似tome4的技能设定,但是这还没有完。我让这些各种不同的“行为”像卡牌游戏发牌一样,打乱顺序交给玩家。玩家同一时间只能使用他所拥有的行为中的5个,每使用(或花费一些代价丢弃)一个行为,才会从“牌库”中再抽取一个行为。因此玩家需要在游戏的过程中谨慎的构建自己的行为库,同时在不同的情况下需要思考如何用现有的行为来解决问题。
●唔当然,直接用武器杀杀杀还是保留了,但是威力上我会缩减_(:з」∠)_
●嗯另外也做了其他的一些小调整。内部的脚本方面有几个脚本比以前精简了一些,由于重写了skill的方面,所以存盘文件和以前稍有不同,不过影响不大…… 此外以前有人提过游戏中掺杂着中文和英文…… 所以这方面我也整理了一下,更改了一些不需要的英文提示,而改为中文(可以根据语言选择而变化)
●现在玩家的姓名可以直接输入中文了么么哒~
●这是新的选技能界面(开局时)
●这是玩家的技能/行为界面,以及从这张图能看到下面的备选行为列表(快捷键1-5)~
●以上,goon~
【开发日志 2015.0525】
●又是漫长一段时间的繁忙时间,好在这个周末无事,继续继续~~
●这两天我终于下定决心重写了战斗的一些核心运算的部分,包括命中率、伤害等等,同时也给各种技能行为留下了足够的接口来使其作用到人物上。目前剑术技能的10个行为已经OK,从浅到深分别是“挑剑、刺、重劈、速击、顺劈、冲刺、拔刀、宣言、斩首、剑芒”,这些行为通过瞬间或短时间的修改人物的数值来发挥各自的作用,就目前来说看起来还是比较OK的~
●下面我打算从技能行为这部分出发先来扩展一下,然后再把各种生物的特殊行为再加入完善进去……
●在写行为这部分的时候我去参考了西洋的剑术资料,深感兴趣,也许我会深读一下这部分的一些东西~ goON~
【开发日志 2015.0531】
●现在喵写开发日志是越来越懒了…… 虽然开发进度还在慢慢的往前爬着,但这几天都没有逐天写日志的动力了(都是夏天病+五月病的错!)
●咳咳OK,这几天从功能上把“剑术”技能的几个相关行为的效果都写了,加入了行为技能在使用后的刷新动画,同时也准备加入了“星座天赋”的部分。
●现在刷新行为技能会消耗“饱腹度”,一旦饱腹度为零就无法刷新行为技能了,这样就使食物在游戏中有了用武之地,同时也会限制玩家无休止的使用技能。
●由于战斗计算方式的变化,原本还算比较平衡的数值现在统统变成渣了,加了技能后一个暴击能刷出50+的伤害来这在以前都是不可想象的事情,找个机会我该重新算一遍数值了……
●在道具上我稍微精简了一些基本的武器和防具的种类,去掉了一些特点不够鲜明的道具(比如短剑和匕首的差别没有那么大,就把短剑去掉了)。以后应该会添加更多的辅助类型道具。
●新的魔法体系开始进入计划中,现在我希望可以通过手持魔法道具、消耗魔法材料甚至于在地面上摆魔法阵的方式来让魔法的使用更加高端,也更加神秘。同时精简魔法的数量,使魔法真正能够成为一击逆转全局的关键性行为……
PS:sorcery系列的魔法特效真的好赞~ 通过联系星空来释放魔法超有范的感觉~ 顺便安利个~
goOn~