骑马与砍杀2:霸主 开发日志 ——采访首席程序员Omer Sari

 blog_post_92_taleworldswebsite.jpg

卡拉迪亚的战士们,大家好!

 
《骑马与砍杀2:霸主》单人战役的故事发生在一个巨大的沙盒世界中,这个世界由许多不同的系统组成,它们互相影响相互协调为玩家提供一种深入的沉浸式游戏体验。把这些系统全部结合在一起并且确保它们能协同工作并互相补充,是一件不小的工程。由于每个系统上都有很多个程序员在独立工作,这让这项工作变得更加复杂。这时候Ömer Sarı出现了,他的工作便是协调和组织整个单人战役团队(战役小组),同时保证整个团队工作能始终保持在一个高水准之上。
 
姓名Ömer Sarı
 
来自 科贾埃利省 土耳其
 
加入T社时间 2014年
 
教育背景  计算机学 比尔肯大学
 
官方职业描述  首席程序员(战役小组)
 
 
你每天通常都会做些什么?
 
“我每天要进行代码审查工作,同时与团队成员一起开一些小组讨论会议,以确保单人战役项目中良好的代码质量。除此之外,有时我还会参加游戏设计方面的会议,讨论游戏功能的技术细节。每隔几周,我还会组织一次内部的单人战役游戏测试,并审查所有同事的反馈。
 
我试着在剩下的时间内实现新功能以及解决各种bug。根据任务的优先级和沙盒模式的即时需求,我所处理的功能通常会有所不同。”
 
 
你最喜欢《霸主》的哪一点?
 
“我喜欢沉浸在一个生机勃勃变化万千的卡拉迪亚世界中;这个游戏由许多复杂的系统组成,如交易系统、资源生产系统、繁荣度系统、忠诚度系统等等。这些系统之间是如何相互影响又是如何互相作用的,我对这些特别感兴趣。比如在某个地区洗劫村庄和袭击商队不仅仅会阻碍某种贸易商品的生产,它甚至会影响到看似遥远的整个王国的经济。
 
我喜欢这种仅仅通过个人行为就能改变全世界的能力。”
 
 
在《霸主》的制作过程中,迄今为止你解决的最大困难是什么?
 
“我于几个月前才刚刚得到单机战役首席程序员的职位,在那之前我每天的任务就是写代码。现在,我还必须服务于战役小组的其他成员,如召开设计讨论会,帮他们审查代码等等。目前我最大的挑战就是如何用最佳的方式管理和分配我的时间,让我不仅可以管理好我的团队,审查好他们的代码,同时还拥有时间完成自己的内容!”
 
 
你现在在做什么?
 
“我正在努力优化战役地图上的寻路功能,以及文本翻译/本地化的程序支持。
 
我们有很多部队会在战役地图上同时进行来回移动,每支部队都要不断计算自己的位置和潜在目标之间的距离,从而确定他们是否应该真的去到那个目的地。增加这种计算精度的同时提高游戏性能是我一直在努力做的工作。
 
每种语言都有自己的需求和规则。我们的文本系统允许玩家通过修改属性和动作来达到改变游戏中NPC(其他非玩家控制角色)对玩家角色态度的目的。举个例子,如果玩家扮演的是一个有家室的尊贵国王,他的妻子会称呼他为丈夫,而他的敌人也会对他毕恭毕敬,等等。我们的文本系统能够通过替换文本的特定部分来改变这个角色的扮演元素,同时我还必须努力确保这个系统能够支持所有语言。”
blog_post_92_taleworldswebsite_02.jpg
 
你最喜欢《霸主》的哪个势力?
 
“我最喜欢的是库宰特汗国。我喜欢他们的部落天性和兵种树。看着你的敌人被一群骑着马的勇士压扁和践踏,这绝对令人震撼!当然,弓骑兵会让这个变得更简单!”
 
 
最近有什么新增的游戏内容是那种比它们看上去更难实现的?
 
由于整个游戏项目非常庞大和复杂,我们通常很难预料到新功能会造成哪些影响。任何正在添加的新功能,无论它有多小,都可能需要大量的额外工作来消除它对其他系统造成的差异。幸运的是,目前新增功能已经不像之前那么频繁了。
 
拿最近这个关于部队速度和库存机制方面的例子来说。当我们对部队速度在运输超载的惩罚限制上进行调整时,我们发现很多AI部队往往会超出这个限制。(非常宽容的来说)这在之前的设置看来是完全可以接受的,只是调整之后会导致这些超载的部队速度有点慢的夸张。当然,我们本来可以很简单地恢复这些调整,但这会让整个库存系统变得毫无作用。更糟的是,这样做并不能解决实际存在的问题。因此,我们开始去寻找一个更好的解决方案(实际上是好几个)。在某些情况下,就像村民们把货物从家里通过携带运到镇上,这可以简单理解为通过调整交货频率来更好地匹配其运输能力。而在其他情况下,比如运输车队,我们设计为可以获得购买额外一批牲畜的能力。尽管如此,即便这样可以解决很多偶发性事故,我们觉得仍然需要一个保险措施。试想一下,如果一支正在按计划行事的部队遭到攻击而损失了很多人。突然间,这些货物远远超过了他们的实际携带能力,他们该如何办呢?综上所述,我们目前正在探讨的是一支部队是否以及何时可以选择丢弃一些货物、俘虏、甚至……伤员来保证他们可以继续前进。
 

相关新闻