《鹅鸭杀》爆火,一文带你了解如何实现顶流社交游戏

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

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

5A366B93-CF9A-4804-86B1-0BBC1D155EFE.png

图源自Steam

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

94AB4970-2F86-4069-919E-097C4639E5FA.png

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

浅析鹅鸭杀的实现原理

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

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

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

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

F8889610-1F07-400B-947E-CCB6713D988F.png

图源自Steam

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

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

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

如何快速实现

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

44994AFA-F6C6-4734-A1C6-464E99498D4F.png

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

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

第一步加入游戏房间时,初始化IRtcEngine;

由于我们的游戏是需要连麦互动的,所以第二步是设置ChannelMediaOption的参数为LIVE_BROADCASTING,进入连麦模式;

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

游戏结束时,调用LeaveChannel退出频道。

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

1、带物理墙的范围语音

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

2、语音音量根据玩家在游戏中的距离变化

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

3、回声与降噪

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

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

4、支持在本地端调节远端玩家的语音音量

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

声网鹅鸭杀解决方案优势

音质优先,提供沉浸游戏体验

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

兼容主流游戏引擎

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

轻量、低功耗,适配大部分终端

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

服务覆盖全球

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

丰富的美声、变声音效

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

市占率80%带来的丰富实践经验

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

立即登录,阅读全文
版权说明:
本文内容来自于声网,本站不拥有所有权,不承担相关法律责任。文章内容系作者个人观点,不代表快出海对观点赞同或支持。如有侵权,请联系管理员(zzx@kchuhai.com)删除!
扫码登录
打开扫一扫, 关注公众号后即可登录/注册
加载中
二维码已失效 请重试
刷新
账号登录/注册
个人VIP
小程序
快出海小程序
公众号
快出海公众号
商务合作
商务合作
投稿采访
投稿采访
出海管家
出海管家