ITADN
README.md
以下内容由 AI 翻译,如有问题请点此提交 issue 反馈

Mirror Logo

Download Showcase Documentation Forum Roadmap
License: MIT Build release Discord

只有梦想家才能移山。 mmos_conceptart

Mirror 网络库

Unity 排名第一的免费开源游戏网络库,被超过 2 亿玩家使用。

驱动了诸如 Population: ONE 等热门大作以及超过 1000 款 Steam 游戏

最初基于 UNET:自 2014 年 起经过实战检验,已持续 10 年且仍在继续!

Mirror 对于所有类型的游戏,甚至小型 MMORPG 🎮,都是 稳定模块化易于使用 的。

由 🇩🇪🇺🇸🇬🇧🇸🇬🇹🇼 以 ❤️ 打造


特性

Mirror 提供了多种多样的特性以支持所有游戏类型。
我们的许多特性迅速成为了所有 Unity 网络代码的标准!

功能描述状态
🎛 传输UDP、TCP、Websockets、Steam、Relay 等。稳定
🪜 兴趣管理使用空间哈希和距离检查器对世界进行分区。稳定
↗️ 同步方向服务器与客户端权限 - 按组件一键配置。稳定
🐌 延迟模拟在本地模拟延迟、丢包和抖动。稳定
🧲 批处理通过自动批处理最小化消息开销。稳定
💌 RPCs & SyncVars内置且安全的同步变量和远程函数调用。Stable
🙅‍♀️ Allocation Free无运行时分配,无 GC(Transports 除外)。Stable
🛞 Transform & Physics内置 Transform & Physics 同步。Stable
👩‍🍼 Child Components可将网络组件放置在任意对象上。Stable
🪚️ IL Post Processing通过 IL 后处理实现零开销的 [Rpcs] 和 [Commands]!Stable
☁️ Two Click Hosting(可选)Build & Push 直接从 Unity Editor 推送到云端。Stable
📏 Snapshot Interpolation为所有平台和类型提供完美平滑的移动。Stable
🔫 Lag Compensation回滚状态以查看玩家在输入期间看到的内容。Beta
🔒 Encryption通过端到端加密实现安全通信。Beta
🔒 Cheat DetectionMirror Guard 安全检测 Melon Loader 及其他内容。Beta
🚀 Unreliable Mode适用于任何组件的 Quake 风格 Unreliable SyncMode。Development
🧙‍♂️ General PurposeMirror 支持所有类型,适用于您的所有游戏!
🧘‍♀️ Stable API长期(10 年)稳定性,而非新版本!
🔬 Battle TestedMirror 服务于超过 1 亿玩家。它就是这么好用!
💴 Free & Open SourceMIT 许可,无任何限制,以最小化风险!
❤️ Community加入我们的 Discord,与全球近 15,000 名开发者一起交流!
🧜🏻‍♀️ Long Term Support自 2014 年起持续维护,并提供可选的 LTS 版本!
📐 Bitpacking优化的压缩(如将布尔值压缩为 1 位等)Researching
🏎 Prediction在本地模拟物理并应用服务器修正。Researching

架构

服务器与客户端同一个项目,以实现最大生产力。

只需使用 NetworkBehaviour 替代 MonoBehaviour

以这种方式制作多人游戏既有趣又简单:

public class Player : NetworkBehaviour
{
    // Synced automatically
    [SyncVar] public int health = 100;
    
    // Lists, Dictionaries, Sets too
    SyncList<Item> inventory = new SyncList<Item>();
    
    // Server/Client-only code
    [Server] void LevelUp() {}
    [Client] void Animate() {}
    
    void Update()
    {
        // isServer/isClient for runtime checks
        if (isServer) Heal();
        if (isClient) Move();
    }
    
    // Zero overhead remote calls
    [Command]   void CmdUseItem(int slot) {} // Client to Server
    [ClientRpc] void RpcRespawn() {}         // Server to all Clients
    [TargetRpc] void Hello() {}              // Server to one Client
}

还有 NetworkServerNetworkClient
大概就是这样了 🤩


免费、开源且面向社区

Mirror免费且开源的(采用 MIT 许可证)。

🍺 “免费”既指免费啤酒,也指你可以随心所欲地使用它。

  • 在任意位置托管游戏 服务器
  • 自由定制任何内容!
  • 无付费墙,无 CCU 费用,无附加条件!

🤝 我们是一支由专业游戏开发者组成的团队,我们因在生产环境中使用 Mirror 而获得报酬。我们的利益始终与社区保持一致,因为我们也和你一样是 Mirror 用户!

❤️ 我们拥有超过 14,000 名用户的出色社区,每天都在贡献反馈和改进。请加入我们的旅程,帮助他人,如果你热爱我们的工作,请考虑进行捐赠

顶部的引言出自《Fitzcarraldo》,这与本项目颇为相似。


入门指南

获取 Unity 2019 / 2020 / 2021 / 2022 LTS 和 6000.1下载 Mirror,打开其中一个示例并按下 Play!

查阅我们的文档以了解其工作原理。

如果你正在从 UNET 迁移,请查阅我们的迁移指南

Guard - 反作弊 🔒

2000x630 Guard 是一款专为 Unity 游戏打造的高影响力、零风险反作弊解决方案。与大多数商业反作弊系统不同,Guard 在源代码层面嵌入,并与您的项目一起编译。

Guard 可在 Asset Store 获取,并包含 Mirror 集成!


使用 Mirror 制作

数千款 Steam 游戏

Mirror 被 数千款 Steam 游戏 使用。 image

Population: ONE

Population: ONE BigBoxVR 团队从 2019 年 2 月开始使用 Mirror,最终开发出了最热门的 Oculus Rift 游戏之一。

除了获得 Mirror 团队的 24/7 支持 外,BigBoxVR 还聘请了我们的其中一名工程师。

Population: ONE 于 2021 年 6 月被 Meta 收购,他们刚刚在 2022 年发布了新的 Sandbox 附加组件!

Zooba

Zooba Wildlife Studio's 热门游戏 Zooba 在美国移动市场最大的大逃杀射击游戏中排名第五。

该游戏在 Google Play 上的下载量超过 1 亿 次,Wildlife Studios 是全球十大移动游戏公司之一。

Swarm VR

swarmvr_compressed 持枪的蜘蛛侠!

SWARM 是一款快节奏、街机风格的抓钩射击游戏,拥有短小精悍的对局、色彩鲜艳的世界以及全球竞争性排行榜,将带您回到街机游戏的辉煌时代。

可在 Meta Quest 上使用,使用 Mirror 制作。

Liars Bar

liarsbar
凭借 Steam 上超过 20,000 条压倒性好评,Liars Bar 是我们 2024 年最大的展示游戏之一。

这可不是普通的酒馆——这里是谎言、欺骗和心理博弈的巢穴。在四人桌旁坐下,沉浸在这场终极第一人称多人在线体验中,在这里,狡黠与诡计才是游戏的精髓。

Castaways

Castaways Castaways 是一款沙盒游戏,你流落到一个偏远的小岛上,必须与他人合作生存并建立一个繁荣的新文明。

Castaway 得益于 Mirror 的 WebGL 支持,可在浏览器中运行。

Nimoyd

nimoyd_smaller Nudge Nudge Games 的首款作品:这款色彩斑斓的末日开放世界沙盒游戏 Nimoyd 正在使用 Mirror 进行开发。

即将登陆 PC 和移动平台!

Project Z

projectz Projekt Z 是一款第一人称合作生存射击游戏,背景设定在二战僵尸场景下的一个德国秘密岛屿上。游戏聚焦于“Projekt Z”的威胁,这是一个由纳粹秘密运行的计划,旨在将此前在该岛上发现的僵尸转化为武器,以帮助扭转战局,使纳粹德国占据优势。

即将发布!

Unleashed

unleashed 来自 World of WarcraftKingdoms of AmalurEverQuest 原班开发者的全新家庭友好型奇幻冒险。对抗黑暗势力,探索被狂野魔法吞噬的世界,并与朋友一起建造要塞,以在这个新世界增强你的力量。

由行业资深人士 Brian Birmingham 和 Irena Pereira 领导,Unleashed 正在使用 Mirror 开发他们的下一代冒险游戏!

在 X 上关注他们:https://twitter.com/UnleashingGames/

Dinkum

dinkum Dinkum 是一款设定在澳大利亚内陆的休闲农场与生存游戏。由仅一名开发者制作,Dinkum 在抢先体验发布一周后,已获得超过 1000 条“好评如潮”的评价。

James Bendon 最初使用 UNET 制作该游戏,随后在 2019 年 切换到了 Mirror

A Glimpse of Luna

a glimpse of luna A Glimpse of Luna - 一款拥有最精美概念艺术和配乐的战术多人卡牌对战游戏。

由两兄弟使用 Mirror 制作,他们 此前没有任何游戏开发 经验。

Havoc

havoc fps game Havoc 是一款战术团队第一人称射击游戏,拥有完全可破坏的环境和独特的艺术风格。Havoc 多年来一直是我们最喜欢的使用 Mirror 制作的游戏之一,我们很高兴终于能在 Steam 上看到它。

Sun Haven

sun haven Sun Haven - 一座美丽的人类城镇、一个隐秘的精灵村庄,以及一座充满农耕、魔法、巨龙和冒险的怪物城市。

Kickstarter 众筹成功后,Sun Haven 于 2021 年在 Steam 上发布,并于 2022 年移植到 Mirror。

A Township Tale

A Township Tale A Township Tale 是一种沉浸式 VR 体验,你可以与朋友一起建造城镇并探索世界。

使用我们的 KCP 传输技术制作,已在 Meta Quest Store 上架,获得超过 6000+ 条评价。

Inferna

Inferna MMORPG 最早使用 Mirror 制作的 MMORPG 之一,于 2019 年发布。

一款开放世界体验,在巅峰时期拥有超过 1000 CCU,分布在多个服务器实例中。

Samutale

samutale 一款沙盒生存武士 MMORPG,最初于 2016 年 9 月发布。

后来,总部位于荷兰的 Maple Media 将其网络代码切换为 Mirror。

Another Dungeon

image 一款像素艺术地牢 MMORPG,在高峰时期达到 5000 CCU。

最初开发为单人放置游戏,得益于 Mirror,它在发布前三个月转型为 MMORPG!

Untamed Isles

Untamed Isles 这款回合制、怪物驯服 MMORPG Untamed Isles 目前正由 Phat Loot Studios 开发。

Kickstarter 众筹成功后,这家总部位于新西兰的工作室正瞄准 2022 年的发布日期。

Portals

Portals 《动物森友会》遇上《如龙》再遇上《我的世界》——一款以多人中央枢纽为核心的城市建造游戏。采集、交易与建造——全在浏览器中完成!

SCP: Secret Laboratory

scp - secret laboratory_smaller Northwood Studios' 的首款作品:多人恐怖游戏 SCP: Secret Laboratory 是 Mirror 的早期采用者之一。

该游戏于 2017 年 12 月发布,如今在 Steam 上拥有超过 140,000 条评论。

Naïca Online

Naica Online Naïca 是一款精美的免费 2D 像素艺术 MMORPG。

这支来自法国的团队是 Mirror 的早期采用者之一,于 2020 年 11 月发布了首个公开测试版。

Laurum Online

Laurum Online Laurum Online - 一款 2D 复古移动 MMORPG,在 Google Play 上的下载量超过 500,000 次。

Empires Mobile

Empires Mobile Empires Mobile - 一款面向 Android 和 iOS 的复古移动 MMORPG,峰值同时在线人数曾达 5000。观看他们的视频,感受一些_早期 MMORPG_的怀旧情怀。

Overpowered

Overpowered Overwpowered,一款激动人心的新卡牌游戏,将策略、神话与乐趣融合为一次扣人心弦的基于 Web 的体验。于 2023 年发布,使用 Mirror 制作!

还有更多...

模块化传输

Mirror 默认使用 KCP(可靠 UDP),但你可以使用我们社区提供的任何传输层进行底层数据包发送:

基准测试

开发与贡献

Mirror 被从小型独立项目到拥有百万美元资金、将运行十年或更久的游戏等生产环境广泛使用。

我们倾向于缓慢且彻底地工作,以免破坏所有人的游戏 🐌。

因此,我们需要 KISS 😗。


信息安全

Mirror alternative Logo

Mirror-Networking 遵循常见的信息安全行业标准与最佳实践。

Mirror 是免费开源软件(MIT 许可),测试覆盖率超过 80%。公司位于德国。我们不收集任何用户数据,不对用户和开发者施加任何限制,也不依赖除 Unity 以外的任何闭源依赖项。

这使得 Mirror 成为对信息安全要求严格的政府机构和大型企业的理想选择。

如有任何问题,或需要查阅我们的任何政策,请随时联系 business [at] mirror-networking.com:

  • Development best Practices and SDLC.pdf
  • Disaster Recovery Procedure.pdf
  • Document Retention and Destruction Policy.pdf
  • Encryption Policy.pdf
  • Information Security Guidelines.pdf
  • Privacy Policy
  • Security Policy
  • Vulnerability Management Policy.pdf

如果您决定使用 Mirror,请随时联系我们。

我们很期待了解您的项目,如有需要,我们很乐意提供帮助!


Incident Response & Bug Bounty

许多项目在生产环境中使用 Mirror。如果您在 Mirror 核心中发现了严重漏洞 / 利用方式,请按照我们 Security Policy 中概述的步骤操作。

致谢 / 过往发现 / 修复:


Credits & Thanks 🙏

🪞 Alexey Abramychev (UNET)
🪞 Alan
🪞 c6burns
🪞 Coburn
🪞 cooper
🪞 FakeByte
🪞 fholm
🪞 Gabe (BigBoxVR)
🪞 imer
🪞 James Frowen
🪞 JesusLuvsYooh
🪞 Mischa
🪞 Mr. Gadget
🪞 NinjaKickja
🪞 Paul Pacheco
🪞 Sean Riley (UNET)