草庐IT

game-center

全部标签

ios - 回合制游戏中心游戏 : when is persistence needed?

我正在开发一款iOS回合制游戏(gamecenter)。问题是:我什么时候必须保存游戏数据?当然,当轮到玩家时,应用程序进入后台或在玩家的移动传递给其他玩家之前终止,但是还有其他应该保存游戏数据的场景吗? 最佳答案 一般而言,对于任何客户端-服务器应用程序(游戏或其他),每当用户执行服务器需要了解的操作时,客户端应将数据持久保存回服务器。换句话说,如果用户执行某个操作而服务器从不知道它会导致问题,则需要将其持久化。例如,如果用户执行了某项操作,然后他们的手机爆炸了,那么当他们在新手机上打开应用程序时,如果还没有执行某项操作,是否会出

iphone - 从 Game Center 发送和接收数据

我在通过GameCenter多人游戏在设备之间发送数据时遇到了很多问题。我可以建立匹配并连接两个用户,但由于某种原因我无法发送数据。这是我的代码:-(void)sendData{NSError*error;intmyScore=scoreInt;NSData*packet=[NSDatadataWithBytes:&myScorelength:sizeof(myScore)];[theMatchsendDataToAllPlayers:packetwithDataMode:GKMatchSendDataUnreliableerror:&error];if(error!=nil){NSL

iphone - 如何判断我们何时与 GameCenter GKMatch session 断开连接?

我想知道当游戏session正在进行并且我们无法将我们的数据传送给其他玩家时,我如何获得本地玩家的断开连接消息。由于文档中没有任何内容说“只要您的连接失败,此方法就会通知您”,我有点不知所措。我试图使用这段代码,希望它能工作,但这是徒劳的。“我们断开了连接”。消息永远不会被触发。-(void)match:(GKMatch*)theMatchplayer:(NSString*)playerIDdidChangeState:(GKPlayerConnectionState)state{if(self.match!=theMatch)return;switch(state){caseGKPl

iphone - 使用游戏中心向所有玩家显示相同的牌

我是GameCenter的新手,我已经设法邀请friend并成功打开了按钮的IBAction。我正在使用GKTurnbasedMatch来管理回合,但对于多人游戏,如何向邀请玩家选择其类别的所有玩家显示卡片。我怎样才能得到这个? 最佳答案 这是有关Gamecenter/回合制的精彩教程:http://www.raywenderlich.com/5509/beginning-turn-based-gaming-with-ios-5-part-2特别是这部分:IfwefindthatlastTurnisnull,we’llassumet

ios - GKTurnBasedMatch 忽略 playerAttributes

当我创建以下GKRequest对象以创建回合制游戏时:GKMatchRequest*gameRequest=[[GKMatchRequestalloc]init];gameRequest.minPlayers=2;gameRequest.maxPlayers=2;gameRequest.playerAttributes=MY_ROLE_1;此请求不应与具有相同playerAttributes的另一个请求匹配,但它是。有谁知道回合制游戏是否会忽略playerAttributes? 最佳答案 根据此页面:http://developer

来自不同网络的 iOS GameCenter 连接

我制作了一款iOS多人GameCenter游戏,但在发布之前发现了一个我不知道如何解决的问题。在编码过程中,我使用了RayWenderlich教程http://www.raywenderlich.com/3276/how-to-make-a-simple-multiplayer-game-with-game-center-tutorial-part-12显示GameCenterViewController,创建连接并可以玩游戏,直到两个设备都在同一个Wifi网络上。如果我关闭手机上的Wifi并使用3G网络,然后尝试开始新游戏-在这种情况下不再建立连接。两个设备找到对方,但卡在“正在连接

iphone - ULabel 的 center 属性的值根据它绑定(bind)到的边而变化

快速版:为什么UILabel的“center”属性的值在其Size属性绑定(bind)到其父容器的顶部和底部之间发生变化,我该怎么做才能改变或者绕过这种行为?包含详细信息的长版:我正在像这样在两个标签之间画一条线(黄线):为了计算直线的终点,我使用了UILabels的中心属性(在这张照片中,标签表示2.5kHz和20Hz),然后是标签高度的+或-一半。此技术在下面的示例/图片中效果很好。然而,在我将屏幕尺寸切换为iPhone5(更高)的设计阶段,我通过在尺寸检查中更改它来将“20Hz”标签绑定(bind)到底部而不是顶部,如下面两张图片所示。请注意,在这两种情况下,原点仍在左上角:这会

iPhone Simulator 6.0 无法在沙盒模式下连接到 gamecenter

我正在尝试实现一个针对iOS6的gamecenter感知应用程序。为了提供一些有关环境的信息,我在macos10.7.5上工作,XCode版本为4.5.2,xcode正在运行iphone和ipad模拟器版本6.0。问题是我无法通过ipad或iphone模拟器以沙盒模式连接到gamecenter,但在我的iphone中测试时,相同的代码可以按预期工作。我遵循了苹果开发者库中的gamecenter编程指南,我得到了这个atm,它是从appdelegate中的applicationDidFInishLaunching调用的:-(void)authenticateLocalUser:(UIVi

ios - 在多人游戏中心的 Objective-C 中,一台设备能否检测到另一台设备是否已加载屏幕?

我有一个关于在iOS上玩多人游戏时通过GameCenter发送和接收数据的问题。在我匹配两个人后的游戏中,游戏被带到用户可以开始玩的游戏屏幕。由于两台设备不会同时加载游戏画面(由于网络原因),我的第一台设备中的viewDidLoad函数有时会在第二台设备加载画面时已经完成。这意味着例如在viewDidLoad中,我通过本地播放器别名发送到较慢的设备,因为较慢的设备在较快的设备加载时仍在加载,当屏幕加载时,我的较快的设备接收速度较慢的设备播放器别名,但反之则不然。因此,有没有什么简单的方法可以让一台设备检测另一台设备何时加载,并从那里推送任何相关代码? 最佳答

iphone - 允许经过身份验证的 IOS Game Center 用户自动进行身份验证

我正在制作一个iPhone应用程序(游戏),虽然这不是我的第一款游戏,但这将是我的第一款使用网络连接的游戏(我打算添加一些乘数功能)那么,现在我的问题。我希望玩家能够打开我的应用程序,登录到游戏中心,然后使用它连接到我的服务器。这可能吗?换句话说:PlayersignsintogamecenterSendsusernametomyserverif(gamecenterusernamedoesntexist){Addtheirusernametomysqldatabase}elseif(usernamedoesexist){Sendsigninsuccessfulmessagetodev