2019年9月24日

有点低落的九十月

花心确诊了传染性腹膜炎,医生的结论是无法治愈,不建议治疗。给花心买了营养膏,每天煮鸡胸肉和鸡肝给他吃,哭过几场,我们在尝试接受这件事情。

飞飞看胆结石的时候B超发现肾有钙化,后续CT检查发现长了肾上腺结节,昨天手术切了结节送检。挺顺利,从手术室推出来的时候放心了一大半。主刀医生说非常大概率是良性,但结果没出来之前隐隐约约还是有点慌。

2019年6月27日

steam夏季大促开始!

入了MHW,黑魂重置版。

对了,来个知乎链接顺道推广群吧:2019年steam夏促有什么值得购买的游戏? - Deer的回答 - 知乎
https://www.zhihu.com/question/330833441/answer/728295194

2019年6月3日

繁忙的周末

因为AWS的光缆被挖断,4点被连环夺命call叫起来,各种鼓捣后发现依赖的Amazon s3以及dynamodb挂了后,连发公告都做不到……还好8个小时后恢复了。

2019年5月7日

001. Two Sum (go)

转职1年开发后,回头看原来写的代码,当初还是留下了一些小的瑕疵,优化空间很大……

原先:
func twoSumOrg(nums []int, target int) []int {
   numMap := make(map[int]int)
   result := make([]int, 2)

   for i, num := range nums {
      _, ok := numMap[num]
      if ok {
         result[0], result[1] = i, numMap[num]
      } else {
         numMap[target-num] = i
      }
   }

   return result
}



现在:
func twoSum(nums []int, target int) []int {
   numMap := make(map[int]int, len(nums))
   result := make([]int, 2)

   for i, num := range nums {
      _, ok := numMap[num]
      if ok {
         result[0], result[1] = i, numMap[num]
         break      } else {
         numMap[target-num] = i
      }
   }

   return result
}
对比结果:
Benchmark_twoSum-8       20000000         87.5 ns/op
Benchmark_twoSumOrg-8    10000000        137 ns/op

并且,还能进一步优化:
func twoSum(nums []int, target int) []int {
   numMap := make(map[int]int)
   result := make([]int, 2)

   for i, num := range nums {
      _, ok := numMap[num]
      if ok {
         result[0], result[1] = i, numMap[num]
         break      } else {
         numMap[target-num] = i
      }
   }

   return result
}

Benchmark_twoSum-8       20000000         84.0 ns/op

2019年5月6日

试试重新维护这个网站

清理了旧文章里的无效代码,看看有没有机会重开AdSence……

2019年5月5日

WOW副本杂谈

前些日子看到ngacn上的帖子,网易公司招聘WoW资深玩家进行游戏副本设计,不过当时没怎么在意,没多久后我们Aiyaya团长Daxueren又在公会BBS重新发了一次这个招聘。之后Google了一下关键词,发现chinahr、51job等网站基本没有类似的招聘发布,看来这次应该是很私人化的招聘方式了,网易招聘的诚意很实在,不过只着眼于副本,又能对整个游戏有什么突破性的影响么?


失败的副本:黑暗深渊



(图片来源:wowhead)

黑暗深渊(blackfathom Deeps),位于灰谷和黑海岸交界处的的20-27级副本,Boss8个,23-24级。联盟有5个任务指向这里,部落4个。副本入口是一座井状神庙的废墟,跃入中间的水井,向下游进坑道,之后前行一段距离,便来到了黑暗深渊的入口。黑暗深渊从设计上来说算是一个很独特的副本,里面有很大面积的水域,很多地方都需要玩家游泳前进。副本中有一座断成几截的桥梁,稍稍考验玩家跳跃的技巧。印象中,很久之前我们队伍在打这个副本时,有人在过桥时反反复复掉下去好几次,足足跳了十多分钟才跳过这段地方。总体来说设计还算是成功的。

然而无论是在联盟或是部落,黑暗深渊几乎都是无人问津的副本。如果不是成就系统的推出,随意询问一个70级的玩家,可能他们都仅仅知道WOW里有这么一个副本,而从来没有在20多级时去打过。就这方面而言,黑暗深渊可以说是最失败的副本之一。副本作为一个游戏一部分,是不能单单从副本设计的本身来评价的。

黑暗深渊的失败很大程度上归于灰谷这幅地图设计的失败。灰谷的怪平均等级大约在18-26左右,但地图本身是狭长的半月形,并且地形复杂,往返做任务需要花费大量的时间。而且灰谷地区的等级和临近地区基本无法有效过渡,唯一等级接近的石爪峰地图不仅任务不多,而且没有明显的道路连接,只有通过山洞才能到达。无形中玩家便会放弃灰谷这幅地图,因为对比起暮色森林,银松森林、南海、南贫瘠之地和千针石林等20级左右的地区,灰谷便像是处于一个角落一般,没有通往其他高级地区的道路。而黑暗深渊正好还处于灰谷地图最偏远的左上角。20级左右的部落玩家,如果从最近的碎木哨岗出发,大概需要10多分钟才能到到达副本入口。联盟也需要从位于地图正中的暗夜精灵村走过一段颇长的距离才能到达。因此,黑暗深渊这个副本相比于处在交通要道上的等级接近的副本,如影牙城堡和剃刀沼泽,更是没有一点吸引力。一个繁华马路上经常路过的小店和一个冷冷清清的死胡同深处的小店,谁的顾客更多?况且黑暗深渊并不出产任何有特色的物品。玩家从20级到30级只需要很短暂的时间,于是黑暗深渊对于一般没有很强好奇心的玩家来说,便只是一个一瞥而过的名词。


游戏特色的反思:电子管、爵士乐、黑色幽默;这是什么游戏?陆行鸟?

副本规则变迁:术士无法在副本内拉人、 集合石、副本内的战斗范围、战斗时不能进入副本。

城中副本:暴风城监狱、怒焰裂谷。

马拉顿的空间,唯一的一个非线性的小副本。

AQR:非线性副本导致某个Boss无人问津。安其拉废墟是一个6boss的15人副本,其中1、2号boss是必须杀死的,3、4、5号则都是可以选择杀或是跳过的Boss。

入门级副本:死亡矿井、哀嚎洞穴。

就WOW角色从1级升到40级的普通路线来说,联盟和部落各自有一条非常有优势的路线。联盟是从闪金镇开始,走西部荒野,20之后暮色森林和湖畔镇,30荆棘谷

黑石深渊:几乎完美的地下城。

厄运之槌:非常规战斗的尝试,多入口。

TBC副本:快餐化设计。

副本和世界的衔接,超市物品的摆放,前置任务。

副本群设计的人性化细节:小副本的出口。

金字塔形的副本设计:新的高端副本出现时,原来副本的平民化。
地球时代的WOW具有森严的等级阶梯,每套T系列的副本装便是等级的标志。大多数玩家循序渐进的经历T1->T2->T3的装备升级,在每个等级的副本里逐渐更新身上的装备,然后在团队实力整体提升后进入下一个等级的副本。
TBC时代,

副本设计的失误:
一、牌子装备
二、潜行队
三、带刷副本

Naxx,经典设计。



不过我觉得更有意思的是Daxueren私人版面对网易天下贰的讨论,偷偷贴下原文吧,都是引用,但愿他们不会在意。

“tx2整个游戏的任务和地图/npc/怪物摆放 玩下来感觉就是没有良好的设计
地图做的粗糙,任务做的毫不相干,甚至大部分都是凑数的
巨大的无缝地图本来是好事,但是做的非常粗糙,大片的平地,过于少的地表贴图
几乎没有的装饰物,很多场景啥都没有还不把地形搞起伏一点,让人觉得在玩史前游戏
副本就别说了,玩起来和野外没啥差别
一个tank常年因为mana不足不能拉怪的游戏pve还能有啥卖点”

“说穿了其实就是细节
tx2缺少的就是细节
一群mob中的几个小动物
一片树林中的几从灌木
大面积雷同地表贴图中的一些特殊贴花/道路(bigworld的纹理chunk过于大了)
场景里面的各种装饰物,像房子边上的杂物,农田边上的农具,草地中偶尔的灌木
剩下就是润滑剂一样的衔接任务,剧情预热和伏笔
新功能,新技能的引导任务”

“天下做了3年啊
貳是受了不少快餐遊戲影響,比如韓游比如完美的那些渣,簡化了不少遊戲性,畫面也改的
韓游似的。同時又受免費模式的影響,重新設定了相關的道具、裝備及其衍生功能。然後就
是wow,去年、前年出的,也就是05-06這些年開始研發的遊戲多多少少都抄了這款神作……
於是不可避免的雜燴起來”


又一年杂记

搬到了距离公司400米的新家,120平更大了。
转职快一年了,有点累。
没钱了,要想想其他挣钱的办法了。
又回来玩阴阳师了。
和飞飞领证即将两周年了,耶!