第824章 网络机制(2 / 2)
佐藤秀树拿出记事本,身后的几名工程师也立刻进入工作状態。
“目前北美和日本的普通个人电脑用户,绝大多数还在使用14.4kbps到33.6kbps的数据机进行拨號上网。”马克指著屏幕上的网络延迟数据,“带宽非常有限,而且极不稳定。电话线路的物理噪音、服务商的节点拥堵,都会导致数据包在传输过程中丟失。最致命的是,这种连接隨时可能因为各种外部原因突然断开。”
佐藤秀树点头赞同。日本的ntt线路同样面临这些问题。
高昂的按分钟计费模式和不稳定的连接质量,一直是他对主机接入广域网感到担忧的核心原因。
“如果我们在这样的网络条件下,尝试做一款实时动作交互的游戏,玩家的体验会非常糟糕。”马克调出一组测试环境下的运行录像,“玩家在客户端按下攻击键,指令通过电话线传送到伺服器,伺服器进行数值计算后再把结果返回给所有同区域的客户端。这个过程如果超过两百毫秒,玩家就会感觉到明显的卡顿。如果出现数据丟包,屏幕上的角色就会发生位置瞬移,或者攻击判定失效。”
“所以,你们在代號为“d”的项目中,也就是《龙与地下城onle》里,改变了传统的玩法设计”佐藤秀树询问道。
“是的。为了应对拨號上网的物理限制,游戏在核心机制上做出了妥协。”马克切换了一张幻灯片,展示了游戏的战斗界面。“我们採用了非常保守的回合制。”
屏幕上显示著一个地下城场景,几个玩家角色与怪物分別占据著不同的站位。
“这种设计恰好也契合了《龙与地下城》原本的桌面角色扮演规则。”马克解释道,“回合制不需要极高频率的实时数据同步,它允许一定程度的网络延迟。玩家有充足的时间思考,指令发送到伺服器后,伺服器按照时间顺序和角色的敏捷属性进行统一结算。即使数据晚到了零点几秒,也不会影响战斗的最终结果。”
佐藤秀树在记事本上记录下这些信息。
他开始理解中山拓也所说的“网路游戏的內容设计逻辑与传统单机完全不同”的具体含义。
“但是,回合制並不能解决掉线的问题。”一名隨行的世嘉硬体工程师提出了疑问,“如果在一个多人组队的地下城副本里,其中一名玩家的数据机突然断开连接,或者他的电话线被家人拔掉,整个队伍的战斗流程不就卡死了吗其他玩家只能无限期地等待那个掉线玩家下达指令。”
马克对这个问题早有准备,他调出了另一份逻辑流程图。
“这就是我们在技术和玩法上结合处理的重点。我们在组队活动中引入了回合决策倒计时机制。”马克指著屏幕上一个虚擬的进度条,“每个玩家在自己的回合內,有三十秒的决策时间。如果网络延迟导致指令没有及时送达,或者玩家正在思考,倒计时结束后,系统会自动剥夺当前玩家的控制权,跳到下一个玩家的回合。”
“那掉线玩家的角色怎么办只能站在原地挨打吗”佐藤秀树追问,这种体验对玩家来说依然是不完整的。
“为了解决这个痛点,我们开发了一套掉线自动决策预先设置功能。”马克详细阐述了这套机制,“玩家在进入组队副本前,可以在系统菜单里为自己的角色设置一套简单的行为逻辑。比如,法师职业可以设置为当生命值低於百分之三十时使用恢復药剂,否则对最近的敌人使用基础攻击法术”。战士可以设置为优先保护队伍里的治疗职业”。”
马克停顿了一下,让佐藤团队消化这些信息。