使用 Photon Unity Network(多人游戏)在 Unity 中实时同步

     2023-02-16     181

关键词:

【中文标题】使用 Photon Unity Network(多人游戏)在 Unity 中实时同步【英文标题】:Real time sync in Unity using Photon Unity Network(multiplayer) 【发布时间】:2020-03-09 06:45:30 【问题描述】:

我正在做一个演示项目,我在其中使用 Unity 3D 和 Photon Unity 网络 (PUN) 进行实时游戏。

顶部面板中的人是一个敌方单位,由另一名玩家控制,该玩家对左下角的玩家造成伤害(左侧 1/3 hp)。 但是,右下角的人是治疗者,可以治疗左下角的玩家(均由本地玩家控制)。

这是我的问题!因为它不是基于回合的,并且必须实时发生。如何设计我的多人游戏系统?我之前在回合制游戏中工作过,我只是在远程玩家中传递索引并镜像本地发生的事件。

但是这里的图片中有延迟,我不知道如何进行! 我想做的是,让治疗者在被远程玩家攻击之前在本地以及远程玩家的手机上治疗玩家,或者在治疗者根据事件发生的时间戳治愈他的生命值之前杀死玩家并在两个设备上反映出来。

【问题讨论】:

【参考方案1】:

我认为您对某些双关语网络功能感到困惑。

如果治疗者治愈了你的本地玩家,那么你的本地玩家的远程实例也会如此。当然,您的治疗系统必须联网,请务必阅读我们的基础教程,了解如何实施简单的健康系统。

https://doc.photonengine.com/en-us/pun/v2/demos-and-tutorials/pun-basics-tutorial/player-networking#health_synchronization

比健康管理稍微复杂的是你的玩家和治疗者之间的本地切换。为此,您有两个主要变体。

    在玩家和治疗者之间转移所有权:https://doc.photonengine.com/en-us/pun/v1/demos-and-tutorials/package-demos/ownership-transfer(这是一个 v1 演示,但原则仍然适用于 v2)

    有一个隐形网络玩家,并在你的游戏中使用你自己的逻辑,让玩家匹配这个隐形网络玩家或治疗者匹配它。

【讨论】:

Photon Network Player.SetCustomProperties 不起作用

】PhotonNetworkPlayer.SetCustomProperties不起作用【英文标题】:PhotonNetworkPlayer.SetCustomPropertiesnotworking【发布时间】:2021-04-1216:50:36【问题描述】:我目前正在使用Unity使用PhotonNetworking构建在线游戏,但Photon.Realtime.Player.SetCustomProperties()... 查看详情

使用photon引擎进行unity网络游戏开发——photon常用类介绍

使用Photon引擎进行unity网络游戏开发(二)——Photon常用类介绍PhotonPUNUnity网络游戏开发Photon常用类介绍:IPunCallbackPUNGIPunCallback接口中,定义了许多与Photon网络连接相关的回调函数。网络连接状态发生变化时,游戏客户端会调用这... 查看详情

使用photon引擎进行unity网络游戏开发

使用Photon引擎进行unity网络游戏开发(一)PhotonPUNUnity网络游戏开发Photon引擎简介:1.服务器引擎:服务器引擎介绍服务器引擎封装了一系列网络通信方法,开发者可以直接调用这些方法,实现网络通信的功能,服务器引擎通常... 查看详情

Unity - 未调用 Photon OnJoinedRoom

...called【发布时间】:2017-12-2313:30:35【问题描述】:我正在使用photon为android制作FPS游戏。代码如下:usingUnityEngine;usingUnityEngine.UI;publicclassSceneLoaderButton:Photon.PunBehavio 查看详情

在unity中使用photon(网络多人联机)

在Unity中使用Photon1.申请中国区免费PHOTON光子引擎1-1.申请账号1-2.申请APP1-3.申请中国区免费光子云2.在Unity中使用Photon2-1.下载插件PUN23.打开demo场景查看能否联机3-1.将场景添加到BuildSettings里3-2.打包(Build)出来,开两个窗口进行... 查看详情

Unity Photon PUN RPC 只能在房间内使用?

】UnityPhotonPUNRPC只能在房间内使用?【英文标题】:UniytPhotonPUNRPCisonlycanuseinroom?【发布时间】:2019-04-2320:43:54【问题描述】:我用unity5,photonPUN1(PUNclassic)做一个手机游戏(Android)我想加好友!我可以在大厅使用PUNRPC吗?没有房间?... 查看详情

Photon matchmaking - 在 Unity 中使用 SQL 大厅加入或创建房间

】Photonmatchmaking-在Unity中使用SQL大厅加入或创建房间【英文标题】:Photonmatchmaking-JoinorcreatearoomusinginUnitywithanSQLlobby【发布时间】:2018-08-0922:42:45【问题描述】:我正在尝试在Unity中使用Photon实现基于技能的匹配。它似乎我从文档... 查看详情

Photon Unity:变量不使用 PunRPC 同步

】PhotonUnity:变量不使用PunRPC同步【英文标题】:PhotonUnity:Variabledoesn\'tsyncusingPunRPC【发布时间】:2017-03-1012:19:25【问题描述】:我正在构建一个多人游戏,它需要知道游戏中有多少玩家,以便在有新人加入时分配玩家编号,在某... 查看详情

如何生成一个随机数并确保在 Unity 中使用 Photon 的每个人都相同?

】如何生成一个随机数并确保在Unity中使用Photon的每个人都相同?【英文标题】:HowtogeneratearandomnumberandmakesureitisthesameforeveryoneusingPhotoninUnity?【发布时间】:2021-07-2012:02:13【问题描述】:大家好,我正在使用Unity中的Photon将单人Su... 查看详情

使用 Photon Unity Networking 在客户端之间复制对象数据

】使用PhotonUnityNetworking在客户端之间复制对象数据【英文标题】:CopyobjectdatabetweenclientsusingPhotonUnityNetworking【发布时间】:2016-03-1004:17:36【问题描述】:我的课程结构如下:publicclassGame:MonoBehaviourpublicstringNameget;set;publicintNumberOfPl... 查看详情

如何使用 Unity 中的 Photon 和骰子在棋盘游戏中创建回合制经理?

】如何使用Unity中的Photon和骰子在棋盘游戏中创建回合制经理?【英文标题】:HowtocreateaturnbasedmanagerinaboardgameusingPhotoninUnitywiththedice?【发布时间】:2021-04-1316:49:49【问题描述】:我遇到的问题是,当我将玩家2的骰子SetActive设置... 查看详情

尝试使用 PunRPC(Unity 和 Photon)发送 RPC,但出现错误“对象引用未设置为对象实例”

】尝试使用PunRPC(Unity和Photon)发送RPC,但出现错误“对象引用未设置为对象实例”【英文标题】:TryingtosendRPCwithPunRPC(UnityandPhoton)butgettingerror"Objectreferencenotsettoaninstanceofanobject"【发布时间】:2019-07-0807:15:00【问题描述】... 查看详情

Unity 中的 AI 角色与 Photon View

...onView【发布时间】:2013-03-0608:59:33【问题描述】:我正在使用Photon多人游戏代码和RainIndyAI在Unity中构建一个小游戏。在添加AI之前,所有游戏对象都是同步的,但新的AI角色似乎由每个游戏实例单独控制。我遇到了一些与子弹类... 查看详情

如何将 Photon Unity Networking 与我的自定义服务器一起使用?

】如何将PhotonUnityNetworking与我的自定义服务器一起使用?【英文标题】:HowdoIusePhotonUnityNetworkingwithmycustomserver?【发布时间】:2014-04-0216:07:03【问题描述】:我只是想知道如何将PhotonUnityNetworking(PUN)与我自己的自定义服务器一起使... 查看详情

使用 Photon Unity Networking 向网络游戏中的特定玩家显示消息

】使用PhotonUnityNetworking向网络游戏中的特定玩家显示消息【英文标题】:DisplayamessagetoaspecificplayerinanetworkedgameusingPhotonUnityNetworking【发布时间】:2014-11-1419:10:23【问题描述】:在进入对象的触发区域时,会向玩家显示一条消息(... 查看详情

photon chat unity plugin - 如何知道朋友是不是在线

...】:2015-02-1405:30:40【问题描述】:我在unity3d多人游戏中使用光子聊天插件。我添加了一些朋友,可以给他们发私信。我想显示那个朋友是否在线。我可以使用状态更 查看详情

Unity3d Photon角色移动不同步

...中同步移动角色。我将脚本作为观察者附加到光子视图并使用此代码voidOnPhotonSerializeView(PhotonStreamstream,PhotonMessageInfoin 查看详情

使用 Unity 和 Photon PUN,有没有办法在运行时使用 SetTile() 同步更改对瓷砖地图的更改?

】使用Unity和PhotonPUN,有没有办法在运行时使用SetTile()同步更改对瓷砖地图的更改?【英文标题】:UsingUnityandPhotonPUN,IsthereawaytosynchronizealterationstoatilemapchangedatruntimewithSetTile()?【发布时间】:2021-09-0806:44:52【问题描述】:我遇到... 查看详情