咨询服务热线 18428327139
当前位置:首页 > 产品展示 > 实验室柜

怎么样去使用声网SDK 实现顶流社交游戏《鹅鸭杀

时间:2024-02-08 17:10:04          来源:开云体育入口

商品简介

  2023 年开年,一款名为《鹅鸭杀》(Goose Goose Duck)的社交游戏异军突起,不仅吸引了很多萌新玩家,还让各大平台的知名游戏主播们沉迷其中,与粉丝们一起夜夜开黑。

  《鹅鸭杀》的玩法与太空狼人杀非常相似。在游戏中,玩家分为三个阵营:好人(鹅)、坏人(鸭)、中立(其他鸟类)。鹅与鸭的对立角色很好理解,而中立角色千奇百怪,有几十种角色,比如获得被害鹅的尸体即可获胜的“秃鹫”、生存到最后即可获胜的“猎鹰”等,其中还有个“鹈鹕”角色,可以把其它玩家吞到肚子里,这些玩家仍旧能发言,但只有他们自己和鹈鹕能听到。所以还会出现一堆人在鹈鹕肚子里“开演唱会”的搞笑场景。

  目前,这款游戏已吸引大量玩家。根据 SteamDB 的数据(如上图),每天的玩家峰值至少有 55 万人。而且,这款游戏已经冲进 Steam 平台热销榜单的前五名。虽然这样的热度不易复制,但它的玩法场景却可以基于声网 SDK 轻轻松松实现,甚至做出一些差异化的创新。

  其实《鹅鸭杀》的玩法与太空狼人杀相似,根据声网的经验来讲,实现起来并不困难,首先来分析一下游戏中最常见的互动场景:

  任务探索环节:玩家共有 16 人,在地图中走近时能语音交流,走远后语音音量减弱直至消失。玩家在地图中,处于不同房间的人,听不到对方的声音。

  投票环节:开会投票时,所有玩家不论在地图中什么位置,都能听到对方的声音。

  被鹈鹕吞掉:游戏进行中,如果有玩家被鹈鹕吞掉,则会被拉入 RTC 概念中的“子频道”。在“子频道”中的用户彼此能听到对方的声音,子频道之外的则无法听到。在鹈鹕被“剖腹产”之后,玩家退出子频道,恢复与别的玩家的语音连麦。

  以上这些语音互动的场景,都能够最终靠声网 RTC SDK 来实现。所有玩家在加入游戏之后,会进入同一个大频道,互相能听到对方的声音。在游戏地图中,每一个玩家都有一个位置信息,当玩家们靠近的时候,能够准确的通过位置信息的变化来调整语音的音量,以此来实现听觉上的“距离”感与沉浸感。

  如果有玩家被鹈鹕吞掉,这些玩家与鹈鹕会进入一个子频道,子频道中的玩家也可以互相听到彼此的声音。当鹈鹕被刀了,这些玩家相当于退出了子频道,就能正常与大频道中的别的玩家语音互动。

  另外,在游戏过程中,还会有刀人、投票、移动角色等游戏指令操作。这些都能够最终靠信令消息系统实现。

  这样来看,实现一个《鹅鸭杀》类的产品,并不复杂。若使用声网SDK 来实现,技术架构如下图所示:

  首先所有的游戏指令操作,开发的人能基于自己的信令系统来实现,也能够最终靠集成声网 RTM(Real-Time Messaging) SDK 来实现。根据声网的经验,狼人杀类游戏中的信令消息对延时的要求并不高。通常情况下,声网 RTM SDK 的延时小于 100ms,可完全满足《鹅鸭杀》的场景需求。

  而游戏中的语音互动功能,则可以基于声网 RTC SDK 快速实现。以语音互动为例,如果基于声网 SDK 来实现,API 的调用逻辑如下:

  第三步调用 joinChannel,让所有玩家加入同一个频道,在这个大频道中,玩家也可以进行连麦;

  除此之外,《鹅鸭杀》游戏中还有一些特殊的场景,对语音互动提出了额外要求:

  用户之间如果有墙,声音不能直接穿墙,但是能从门绕过(总路程小于范围)。对此,开发的人能通过调用 setZones 设置隔声区域和声音衰减系数。当音源(可以为用户或媒体播放器)跟听声者分属于音障区域内部和外部时,会体验到类似真实环境中声音在遇到建筑隔断时的衰减效果。

  这个功能实现也比较简单。通过设置 SpatialAudioParams 中的 enable_doppler 参数开启多普勒音效,在声源和接收方发生相对位移的情况下,接收方会体验到明显的音调变化。

  《鹅鸭杀》在设置中是支持回声消除与降噪功能的。而如果要开发支持移动端的《鹅鸭杀》这两个功能必不可少。因为很多移动端的用户可能会在多种环境中进行游戏。

  声网 SDK 内置AI 回声消除,智能适应各类环境,实现精准音源分离,从混合的近端信号中消除不必要的远端信号,保留近端人声发送到远端,全面消除回声,实现高保真音频体验。内置的 AI 降噪,可有效消除相关咳嗽声,更好地保障线上互动场景中主播与用户的互动交流体验。

  这是由于鹈鹕这个特殊角色设置的。每次鹈鹕吃掉玩家后,玩家为了让鹈鹕听不到其他人的声音,都会在肚子里放音乐或大声说话。增加这个设置,可以让鹈鹕玩家调节其他人的音量。这个功能,能够最终靠调用 adjustPlaybackSignalVolume 来实现。

  声网支持 48kHz 全频带采样,还原声音高保真度,为玩家提供高清音质体验。通过声网自建的软件定义实时网,可以在一定程度上完成全球端到端延时中位数 76ms,国内 200ms 延时达标率 99%,适合 MOBA、MMORPG、FPS 等竞技类游戏。

  对于游戏开发者来说,在开发游戏的过程中经常需要接入一些行业主流的游戏引擎,声网的游戏语音解决方案深度兼容 Unity、Cocos、Unreal、Spritekit 等主流游戏引擎,帮助游戏开发者在接入游戏引擎的同时快速接入声网的音视频服务。

  声网为游戏语音提供的 SDK 拥有小包体、低功耗的特点,CPU 占用低于行业平均 20%,且已经适配 30000 多款终端设备,适用于东南亚、中东北非等海外用户移动电子设备种类非常之多且性能较差的地区。

  SD-RTN是声网专为实时互动而创建的软件定义实时网,综合考量了不同地域特点、跨国跨洲链路质量、不同网络类型、不同终端类型、不同业务场景的特征,分别适配不同的传输控制策略,打造一张真正高可用、高可靠、高质量、超低延时的全球实时网络,即使在面对超大规模实时互动场景时,也能保证甚至优化音视频质量和延时。

  在高音质的基础上,声网还能提供丰富的美声音效,逐步提升声音的表现,达到声音美化或改变音色的效果。声网拥有多种变声音效,例如小萝莉、小男孩、大叔、猪八戒、绿巨人等音效,让你在游戏中的语音更具趣味性,也为游戏语音场景提供更多新颖玩法。同时,最新版本 SDK 还支持开发者自定义变声效果,可以给玩家带来更丰富的游戏体验。

  狼人杀类游戏在近几年始终热度不减,并衍生出了许多变种玩法,比如太空狼人杀与鹅鸭杀。声网在狼人杀诞生之初就开始为各厂商提供音视频互动服务,市场上约 80% 的狼人杀类 App 均采用了声网 SDK 来实现语音互动。我们在社交游戏领域有着非常丰富的实践经验,能提供稳定、可靠的技术服务。

网站首页 提供技术支持