Posts

Post marked as solved
3 Replies
376 Views
Hi I have had severe malware issues recently and need to factory reset my Mac. I may have to reinstall the OS as well in case it has a root-kit. This means I cannot use any standard backups ( Time Machine etc.) and will manually recreate my user setup on the Mac. Will reinstalling Xcode and downloaded signing certificates from my developer account work ? Are there other things to consider ? I will recreate my user ( assuming the uid will be the same as well ) Has anyone tried this before? What is your experience with it?
Posted Last updated
.
Post marked as solved
1 Replies
938 Views
I need clarification on the GKLocalPlayer.local.isMultiplayerGamingRestricted behavior which check's user's device capability (whether it is set up to allow or disallow multiplayer) I am referring to this from Apple documentation at : https://developer.apple.com/documentation/gamekit/authenticating_a_player if GKLocalPlayer.local.isMultiplayerGamingRestricted { // Disable multiplayer game features. } The issue is that this is a boolean (true/false value ) However I have noticed that iOS ( latest version and preceding versions) allow people to have the following options: ( you can set these under screen time -> content restrictions -> Multiplayer games ) Disallow all multiplayer games - presumably your API returns a false for this. Allow multiplayer with friends only -???? what does GKLocalPlayer.local.isMultiplayerGamingRestricted return here?? if True, how is the Friends only restriction handled? Are we supposed to do something to force it? Note: So far I am relying on Apple's Game Center native experience and have not added wrappers to do additional filtering etc. I hope that I shall be able to keep doing so. Allow all multiplayer games - presumably your API returns a false for this. You can see how there are three choices but this is modeled as a boolean. Choice number 2. is not addressed. Has anyone come across this? Note: This is very different from checking for underage users. No matter what I do, in my post above, it won't set the correct numbers for numbered bullet -points. I call them 1, 2, 3 it posts 1,1,2 or 1.,2,1 etc. ( side nit ) Apologies if this isn't as readable as it should be.
Posted Last updated
.
Post not yet marked as solved
2 Replies
838 Views
Per Apple documentation "remove match" functionality is for removing ended matches from Game Center to reduce clutter. Forfeit helps a player resign a match gracefully. Why is "Remove" match and/ slide left to remove match functionality enabled on Game Center for open/ not ended matches ? If I choose to not customize Game Center functionality for my game, it can confuse players. Any thoughts?
Posted Last updated
.
Post not yet marked as solved
2 Replies
807 Views
Is there a better way to test expired matches using Game Center other than wait 7 days ( minimum expiration interval ) and see results? That is incredibly time consuming especially if you find bugs in your code. Does Apple provide anything to help with this?
Posted Last updated
.
Post not yet marked as solved
0 Replies
738 Views
Wondering if anyone has come across this one. I could not find the expected behavior listed on any documentation anywhere. I do need to understand the expected behavior first though. Thanks in advance.  I can work-around it but I prefer to know what the expected functionality is supposed to be. Steps to reproduce: Set up a GKTurnBasedMatch for two player turn based games Players  use the GKTurnBasedMatchMakerViewController view (Apple's native functionality) to manage their matches as I have not invested in a custom UI for that at this time. This is why I need to make sure all available functionality is interpreted correctly for my game players. 3.  Player1 decides to remove ( by sliding right on the match and choosing remove)  a current match  Player2 correctly receives the player(_ player: GKPlayer, matchEnded match: GKTurnBasedMatch) notification . However the matchData is incorrect/incomplete. The match data is providing some elements of the match data ( custom to the match) but missing on the turn information provided via matchData at each turn. Making it seem as though Player1 quit on the very 1st turn instead of whichever turn they actually removed the match.  I can attach debug logs and code snippets to show how matchData is parsed ( simple character separators and predefined tags in string form) however, the same code works for every other scenario ( initiate match, accept invite, take turns, win/lose/draw etc.)  the turn right before the remove shows correct matchData I checked for initialized structs etc, but the code is simply parsing matchData string first and printing it out. This where I notice the miss. Thanks in advance.
Posted Last updated
.