晚上好
很抱歉这次更新延迟了一些,我在找一些的别的素材然后有些耽误了。
嗯开始吧,我想大家都意识到了过去两个星期发生了诸多变故。在开发方面,我们已经大量让人兴奋的工作,当然主要归功于Ausra难以置信地敬业。
过去的几天,我已经写了相当多的东西了,如果你想要深入了解我说的那些内容,请回头翻阅大约一星期前我的历史帖子,在这里我不想对任何一件事都讲到,因为当我总结我自己的材料的时候,我实际上想回归原来的自己(所从事的工作)。
我想说很高兴我们获得了新进展,我主要高兴的是很多东西已经基本尘埃落定了,于是我可以干我自己的事了。我倒是希望我能做更多的事,但要面对的事是一个个接踵而来让人应接不暇如写公告、疯狂地给“挑事”人员“灭火”、和E服团队一个个处理玩家经常提到的问题但后续跟进的问题又是由我个人来回答和解决等。
听起来这些事情并不多,但你们应该明白我是在全天候工作,基本上一天只有1-2个小时花在C服上(其余时间都在给E服工作),所以当你看到我在回复一些信息和问题的时候,那就是我一天当中仅有的闲暇时间了。
总而言之,那些日子我是超负荷运转现在终于感觉轻松些了,我得干点正事了。当前我在修复施法后钟摆计时器不能正确重置的问题,对此我专门写了一个修复软件,但还是相当地繁琐。
我真的很奇怪暴雪是怎么处理这个问题的,至少目前我还说不清道不明,一些法术在施法后能给自动攻击重置钟摆计时器,一些则不能,这种情况受到很多因素的影响,但是能被总结的东西又很少。
比如说一个法术有施法时间或消耗法力的瞬发法术(如火焰冲击),当施法完成后会重置自动攻击的计时器,这是一般的规则,但是仍然有许多的例外,如圣骑士的一些法术包括审判、驱邪术、神圣愤怒和奉献都无视这个规则,萨满的风暴打击也不重置计时器,类似的还有德鲁伊的虫群术,另外各种驱散也是例外的如清洁术、移除诅咒和驱散魔法等等。
所以,对处理此事我首先做的就是校对我写的软件,采用内置的布尔模型不厌其烦地对比正在施放的法术来解释上面的问题,这个真的真的非常让人然厌烦,但真的起作用了。这个过程我曾做了个视频剪辑,但当时我在大声和Rodeg说话忘记了消声导致他不停的抱怨Discord延迟较高,我们的声音太大了盖过了视频的声音使得剪辑效果大打折扣(同时也有一个可见的区块bug还没处理,这个星期会解决),如果以后能想起来的话,我会在beta分区再作一个剪辑显示整个处理过程。针对我那个视频剪辑,Asura看到我的处理过程后,笑话我不会写代码并告诉我应该采用另一种方法来做。
我在之前的更新里提到的,暴雪独到地给法术分配属性使大家很好地区分各类施法行为,即不需要瞄准的的法术具有“忽视瞄准”属性,采用这种运行方式,当你写内核代码处理这样的问题时,只需在那里添加一行代码即可,比如说添加一行“如果法术不需要瞄准目标则略过瞄准步骤”,这个说明有些简单,你能理解就行了。
这里我不想涉及太多的技术问题,问题是暴雪也没有分配“重置计时器”属性,否则我的工作就好做多了,幸运的是我已经解决了这个难题了。
就在不久之前,Asura已经实施了对常规法术属性的分配,所以我只需做一个处理器就行了而不必,这个处理器会核对全新的通用属性,如果真的有重置计时器属性,那么就会解决正确重置计时器问题。剩下的棘手部分就是把“属性”标记到每一个需要应用该属性的法术上。
先前我耗尽全力建立了一个过滤器,不停的复制代码进行处理,还额外改进细节用以过滤掉那些战斗中无论怎样都无法施放的法术以及采用其它类似方法,后来Buki好心地给我的过滤器写了一组代码使我的工作容易多了。现在我正在建立一个查询系统以便查询那些法术需要增加标记,当这项工作完成后,法术/自动攻击的交互就完美运行了。
我们已经优先进行了很多beta测试分区的修复工作以便于从测试人员获得一个全貌的反馈,我们可以密切关注修复后的运行情况,同时我还有一些棘手的事需要推进,尽管如此我还是获得了几天假期,因为论坛方面的事务大多数是可控的,我还是把精力放在追踪bug上同时处理更多其他问题。
说到处理问题,其实Asura已经做了海量的工作,稳定性问题已经全部处理完毕。我的理解是在早期的物品代码迭代过程中,他已经尝试利用一些未使用空间,遗憾的是那么做导致了一些微妙的问题即在正常的测试情况下是不可控的,他于是承担了相当繁重的物品系统检视工作并一下子修复了许多宕机和角色保存方面的问题。
尽管游戏对象施法问题、任务系统和法术堆叠(这是个新系统,beta测试人员已经发现一些bug,当前正在紧急修复)已经修复,还是有些担心有多少其它意想不到问题发生。关于事件触发法术有些很有趣的东西,诸如像顺劈斩之类的法术,只要目标在施法范围内并且冷却结束了就可以正常施放,狂暴和潜行则只能在满足特性条件时使用。
这种规则常常让我相信这些法术可能会由于法术延迟系统应用后导致的一些变化而被打断,但实际情况比预想的更要棘手一些。我尽可能地想搞清楚这个问题,但此刻我有心无力,我还是把这个问题留给Asura了。
此外还有就是(因为法术延迟系统)这个规则会不会不能正确的按照法术协议影响目标或者说当法术在队列中时会不会没有发生应有的法术效果?在经过几个小时想破脑壳之后,我相信Asura会在花10分修复完成然后就开始熏我而且不停笑话我了(我还是不去多想了吧)。据我所知,那就是剩余遗留的最大问题了,不要误会,还是有很多小问题,但相比之下,那些小问题是很有趣的。
我们也很高兴地欢迎Drzej加入我们开发小组,他是Asura的同事,又是一个非常专业的软件工程师,他没怎么碰过魔兽世界模拟器,但他是非常聪明和经验丰富的程序员。他对模拟器效率和结构的理解是很让人钦佩的,他以来就确认并修复了角色属性代码方面的一些问题,后面又和我一起处理复活和疾病方面一个bug。增加一个像他这样的开发者的好处是显而易见的,尤其是他不像我之前接手核工作时只会问个像“这就是它在经典旧世的运作方式?”这种普通问题那样简单,而是会问“这个代码运行的正常吗?它是按照我们想要的方式运作的吗?仅仅只是按照我们想要的方式运作的?”(想得比我多多了),总之,我们很开心他成为我们中的一员。
好了,我有点扯远了,这次更新差不多该结束了。总之,各项工作正如我们计划的那样进展,在清理剩余主要问题方面,在深入修复零零碎碎的法术问题之前我们取得了较好的进展。在一段接近疯狂的日子后 ,我们又回到了更令人愉快的编译和测试进程上 ,我们希望不久后能给大家透露更多的进展。
以上就是这次更新,我的下次更新将在2月27日星期一。一如既往地,请随意在下面留下你的意见并提出问题,回见并谢谢你对Crestfall保持关注。
更多内容期待你的参与,翻译小组招募加入QQ群 599847585