I would like to warn other developers about shocking Apple practices of not allowing to update already published games.
I have two published games on App Store and Apple does not allow me to update my games to fix simple bugs or just to replace the game icons. The updates are classified as SPAM despite the successful publication of the original games.
I cannot comprehend what benefit would Apple have from dealing with upset users and developers who download suboptimal apps and who are not allowed to update already published apps to fix issues and improve users' experience.
Do you think that such practices are fair? Your thoughts are welcome.
Games
RSS for tagDiscuss games on Apple platforms.
Posts under Games tag
87 Posts
Sort by:
Post
Replies
Boosts
Views
Activity
Hello All,
My team and I are developing a mobile application (offgrid) to help combat screen addiction. Our application will allow users through gamification, to challenge each other to stay off certain predetermined apps on their phone for a set amount of time and risk their own money. The money will act as a reinforcement to stay focused and off the application. Example: Jon challenges Jen to stay off Instagram for 1 hour for $5. If Jen accepts the challenge, she and Jon cannot go on Instagram. If Jen or Jon decides to click the Instagram app within the hour, the $5 automatically goes to the winner via Apple Pay or another service. If they complete the challenge and stay off Instagram then there is no exchange of money. I will also give the option for users to challenge each other and risk their money for a charity cause if someone loses.
My question is, will the exchange of money count as an in-app purchase, or will the winner receive the full amount? Also, if the money goes to charity, will that count as an in-app purchase?
Thanks!
Hi Friends!
I’m facing an issue with SceneKit.
I’m developing a 3D mobile game. I have a character 3D model and several skeletal animations CAAnimation. I import both the model and the animations from Maya in *.dae format. The character’s animations play continuously one after the other, with each new animation being triggered randomly. The transition between animations makes smoothly by setting the fadeInDuration and fadeOutDuration properties. Here’s an example of the code:
import UIKit import QuartzCore import SceneKit
class TestAnimationController: UIViewController {
var bodyNode: SCNNode?
override func viewDidLoad() {
super.viewDidLoad()
let scnView = SCNView(frame: self.view.bounds)
scnView.backgroundColor = .black // Set your desired background color
scnView.autoresizingMask = [.flexibleWidth, .flexibleHeight]
let scene = SCNScene(named: "art.scnassets/scene/Base_room/ROOM5.scn")!
bodyNode = collada2SCNNode(filepath: "art.scnassets/female/girl_body_races.dae")!
bodyNode?.renderingOrder = 10
scene.rootNode.addChildNode(bodyNode!)
playIdleAnimation()
scnView.scene = scene // Assign the scene to the SCNView
self.view.addSubview(scnView) // Add the SCNView to your main view)
}
func collada2SCNNode(filepath:String) -> SCNNode? { if let scene = SCNScene(named: filepath) { let node = scene.rootNode.childNodes[0] return node } else { return nil } }
func playIdleAnimation() {
let array = [
"art.scnassets/female/animations/idle/girl_idle_4.dae",
"art.scnassets/female/animations/idle/girl_idle1.dae",
"art.scnassets/female/animations/idle/girl_idle2.dae",
"art.scnassets/female/animations/idle/Girl_idle3.dae",
]
let animation = CAAnimation.animationWithSceneNamed(array.randomElement() ?? "")!
self.setAnimationAdd(
fadeInDuration: 1.0,
fadeOutDuration: 1.0,
keyTime: 0.99,
animation,
isLooped: false
) { [weak self] in
guard let self = self else { return }
try? self.playBoringAnimations()
}
}
func playBoringAnimations() {
let array = [
"art.scnassets/female/animations/boring/girl_boring1.dae",
"art.scnassets/female/animations/boring/girl_boring2.dae",
"art.scnassets/female/animations/boring/girl_boring3.dae",
"art.scnassets/female/animations/boring/girl_boring4.dae",
"art.scnassets/female/animations/boring/girl_boring5.dae",
"art.scnassets/female/animations/boring/girl_boring6.dae",
"art.scnassets/female/animations/boring/girl_boring8.dae"
]
let animation = CAAnimation.animationWithSceneNamed(array.randomElement() ?? "")!
self.setAnimationAdd(
fadeInDuration: 1.0,
fadeOutDuration: 1.0,
keyTime: 0.99,
animation,
isLooped: false
) { [weak self] in
guard let self = self else { return }
try? self.playIdleAnimation()
}
}
func setAnimationAdd(fadeInDuration : CGFloat, fadeOutDuration : CGFloat, keyTime : CGFloat, _ animation: CAAnimation, isLooped: Bool, completion: (() -> Void)?) {
animation.fadeInDuration = fadeInDuration
animation.fadeOutDuration = fadeOutDuration
if !isLooped {
animation.repeatCount = 1
} else {
animation.repeatCount = Float.greatestFiniteMagnitude
}
animation.animationEvents = [
SCNAnimationEvent(keyTime: keyTime, block: { _, _, _ in completion?() })
]
bodyNode?.addAnimation(animation, forKey: "avatarAnimation")
}
}
Everything worked perfectly until I updated to iOS 18. On a physical device, the animations now transition abruptly without the smooth blending that was present in earlier iOS versions. The switch between them is very noticeable, as if the fadeInDuration and fadeOutDuration parameters are being ignored.
However, in the iOS 18 simulator, the animations still transition smoothly as before.
Here two example videos - IOS 17.5 and IOS 18 https://youtube.com/shorts/jzoMRF4skAQ - IOS 17,5 smooth https://youtube.com/shorts/VJXrZzO9wl0 - IOS 18 not smooth
I try this code in IOS 17.5, everything works fine
Does anyone have any ideas on how to fix this issue?
This project had been stable for years, doing hundreds of updates for customers but XCode has suddenly started generating lists of errors with every build.
I have sent in reports in Feedback Assistant but never get any response. Is this a recent regression in XCode?
This project is Objective-C++ with C++11, clang with lots of assembly for both CPU families.
Cleaning up ...
Building XCode Project...
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, id:00006001-000851861A42401E }
{ platform:macOS, arch:x86_64, id:00006001-000851861A42401E }
{ platform:macOS, name:Any Mac }
--- xcodebuild: WARNING: Using the first of multiple matching destinations:
{ platform:macOS, arch:arm64, id:00006001-000851861A42401E }
{ platform:macOS, arch:x86_64, id:00006001-000851861A42401E }
{ platform:macOS, name:Any Mac }
2024-10-02 22:42:09.000 xcodebuild[3235:7055835] [MT] DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot11/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-22269/IDEFoundation/Provisioning/Capabilities Infrastructure/IDECapabilityQuerySelection.swift:103
Details: createItemModels creation requirements should not create capability item model for a capability item model that already exists.
Function: createItemModels(for:itemModelSource:)
Thread: <_NSMainThread: 0x6000033fc2c0>{number = 1, name = main}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2024-10-02 22:42:09.000 xcodebuild[3235:7055835] [MT] DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot11/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-22269/IDEFoundation/Provisioning/Capabilities Infrastructure/IDECapabilityQuerySelection.swift:103
Details: createItemModels creation requirements should not create capability item model for a capability item model that already exists.
Function: createItemModels(for:itemModelSource:)
Thread: <_NSMainThread: 0x6000033fc2c0>{number = 1, name = main}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2024-10-02 22:42:09.000 xcodebuild[3235:7055835] [MT] DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot11/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-22269/IDEFoundation/Provisioning/Capabilities Infrastructure/IDECapabilityQuerySelection.swift:103
Details: createItemModels creation requirements should not create capability item model for a capability item model that already exists.
Function: createItemModels(for:itemModelSource:)
Thread: <_NSMainThread: 0x6000033fc2c0>{number = 1, name = main}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2024-10-02 22:42:09.000 xcodebuild[3235:7055835] [MT] DVTAssertions: Warning in /System/Volumes/Data/SWE/Apps/DT/BuildRoots/BuildRoot11/ActiveBuildRoot/Library/Caches/com.apple.xbs/Sources/IDEFrameworks/IDEFrameworks-22269/IDEFoundation/Provisioning/Capabilities Infrastructure/IDECapabilityQuerySelection.swift:103
Details: createItemModels creation requirements should not create capability item model for a capability item model that already exists.
Function: createItemModels(for:itemModelSource:)
Thread: <_NSMainThread: 0x6000033fc2c0>{number = 1, name = main}
Please file a bug at https://feedbackassistant.apple.com with this warning message and any useful information you can provide.
2024-10-02 22:42:09.000 xcodebuild[3235:7055835] [MT] DVTAssertions: Warning in
=== CUT 10000 LINES of XCode Errors ===
PS: the maximum length on these forum posts is crazy small!
Asset validation failed (90680)
Invalid directory. The bundle Payload/-.app/FBAEMKit.framework is not contained in a correctly named directory. It should be under Frameworks. (ID: ea5bb445-d7e8-42e4-a7c7-a3067fdec27f)
Asset validation failed (90680)
Invalid directory. The bundle Payload/-.app/FBSDKShareKit.framework is not contained in a correctly named directory. It should be under Frameworks. (ID: 149a6e7d-1ec1-4e20-86d4-d74e3c23059b)
Asset validation failed (90535)
Unexpected CFBundleExecutable Key. The bundle at 'Payload/-.app/Frameworks/UnityFramework.framework/UsdCs.bundle' does not contain a bundle executable. If this bundle intentionally does not contain an executable, consider removing the CFBundleExecutable key from its Info.plist and using a CFBundlePackageType of BNDL. If this bundle is part of a third-party framework, consider contacting the developer of the framework for an update to address this issue. (ID: e6941470-2215-49c2-a7a6-9303587559b6)
Asset validation failed (90680)
Invalid directory. The bundle Payload/-.app/FBSDKLoginKit.framework is not contained in a correctly named directory. It should be under Frameworks. (ID: 0ae7d7b2-6ba3-47e6-abb5-cb39791f3873)
Asset validation failed (90680)
Invalid directory. The bundle Payload/-.app/FBSDKCoreKit.framework is not contained in a correctly named directory. It should be under Frameworks. (ID: 4fb729bb-7f30-450b-be09-cbc3513b5dc6)
Asset validation failed (90680)
Invalid directory. The bundle Payload/-.app/FBSDKGamingServicesKit.framework is not contained in a correctly named directory. It should be under Frameworks. (ID: 2e434f90-d2b3-4627-ac3b-bed7aec7f007)
Asset validation failed (90680)
Invalid directory. The bundle Payload/-.app/FBSDKCoreKit_Basics.framework is not contained in a correctly named directory. It should be under Frameworks. (ID: e9c647d5-62fb-4100-b103-04ec7ee5481e)
Hello, I encountered a problem in the latest beta version of ios 18. When I go to any browser or game, everything freezes and I can't do anything. The keyboard does not open and there is no response to touch. It started in the evening, but at first everything was fine. I hope you will fix it. I can't use the browser
What are the specific characteristics that trigger Game Mode in an iOS game? I have several casual SpriteKit games in the App Store but only one of them triggers Game Mode.
What does GCSupportsGameMode do when set to true? Will it trigger Game Mode or will the OS still decide by itself?
My app occasionally went completely silent, but I heard it briefly when I used the buttons to adjust the volume
Can someone help me, please
Hello! The new lower latency support for AirPods in Game Mode is impressive, but I'm not sure of the best way to handle the transition into/out of Game Mode while audio is playing. In order to lower the latency, the system appears to drop some number of samples, with the result being a good deal less latency. My use case is macOS where it's easier to switch in/out of the fullscreen game (a simple swipe left), thus causing more issues for Game Mode since the audio is playing the entire time. It would be nice if offscreen games could remain in game mode, but I understand not wanting to give developers that control.
Are there any best practices for avoiding or masking the audio glitch caused by this skip-ahead? Is there a system event I can receive to know when Game Mode is about to be enabled or disabled, where I could perhaps fade out the audio? My callback checks the inTimestamp->mSampleTime value to detect gaps, but it only rarely detects a Game Mode gap, even though the audio skip-ahead always happens.
BTW, I am currently only developing on macOS (15.0) and I'm working at a low level with AudioUnit callbacks and a SpatialMixer. I am not currently using any higher-level audio APIs.
And here's a few questions I don't necessarily expect answers to, but it doesn't hurt to ask: Is there any additional technical details about how this latency reduction works, or exactly how much of a reduction is achieved (or said another way, how many samples are dropped)? How much does this affect AirPods battery life? And finally, is there a way to query the actual latency value? I check the value for kAudioDevicePropertyLatency but it seems to always report 160ms for AirPods. Thanks!
After the system is upgraded to 18, the Chinese characters in the arial font in the unity application are missing
Ive added sone plist values to my info plist and then deleted them, but they still appear in my build settings. How do I reset my build settings to default in xcode?
Minecraft Launcher gives message "minecraft launcher quit unexpectedly"
when opened, this began happening after I updated to macOS Sequoia Beta 15.0 (24A5327a)
Anyone know a fix?
LogUnrealMathTest: FAILED: VectorCos: Ref vs Vec
]LogUnrealMathTest: Bad(0.000000): (0.707107 0.500000 0.342019 0.173648) (0.000000 0.000000 0.000000 0.000000)
FAILED: VectorCos: Ref vs Vec
LogUnrealMathTest: Bad(0.000000): (-0.707107 -0.500000 -0.342021 -0.173648) (-0.000000 -0.000000 -0.000000 -0.000000)
LogMac: Error: appError called: Fatal error: [File:/Users/enginej3/Desktop/UE4/Engine/Source/Runtime/Core/Private/Tests/Math/UnrealMathTest.cpp] [Line: 1652]
VectorIntrinsics Failed.
this error when running after Xcode build success.this error case unreal editor crash.
Hello,
I would like to know if anyone has or still using the GKVoiceChat capabilities in their apps. I wanted to use it for my online game but I am coming across issues using it and wondering if their are alternatives?. The documentation mentions to use Share-play but that wont be possible with random online players. Any help will be appreciated!.
Hello, I try to invite a friend to play my app , however when the friend try to press invite link component via iMessage, it shows “Retrieving” and then disappear, nothing happens,
it doesn't redirect to my app, what I'm missing? or doing wrong I can leave some part of my code
import Foundation
import GameKit
extension RealTimeGame: GKLocalPlayerListener {
/// Handles when the local player sends requests to start a match with other players.
func player(_ player: GKPlayer, didRequestMatchWithRecipients recipientPlayers: [GKPlayer]) {
print("\n\nSending invites to other players.")
}
/// Presents the matchmaker interface when the local player accepts an invitation from another player.
func player(_ player: GKPlayer, didAccept invite: GKInvite) {
// Present the matchmaker view controller in the invitation state.
if let viewController = GKMatchmakerViewController(invite: invite) {
viewController.matchmakerDelegate = self
rootViewController?.present(viewController, animated: true) { }
}
}
}
also I don't have "<key>CFBundleURLTypes</key>" in my info.plist, I don't know I need that or not...
I have a game for iOS where I use CADisplayLink to animate a simulation, and for some reason the animation is not getting the full 120hz on capable devices (like iPhone 15 Pro). When I enable a 120hz refresh target, the animation is capped at only 90hz. This looks terrible because the animation works best when doubled (30, 60, 120, 240, etc).
The really bizarre thing is that when I turn on Screen Recording, my frame rate instantly jumps to 120, and everything looks perfectly smooth. My game has never looked better on iPhone! When recording is stopped, the animation drops back down to 90 fps. What in the world is going on?
[displayLink setPreferredFrameRateRange:CAFrameRateRangeMake(100,240,120)]; //Min. Max, Preferred [displayLink addToRunLoop:[NSRunLoop currentRunLoop] forMode:NSDefaultRunLoopMode];
(Also, CADisableMinimumFrameDurationOnPhone is set to True in info.plist)
This is a ue5 generated xcode project. So my experience with xcode is lacking. When I archive the project and upload it, the review process is denied due to a crash.
"exception" : {"codes":"0x0000000000000000, 0x0000000000000000","rawCodes":[0,0],"type":"EXC_CRASH","signal":"SIGABRT"},
"termination" : {"flags":0,"code":6,"namespace":"SIGNAL","indicator":"Abort trap: 6","byProc":"TipsyGrandma-IOS-Shipping","byPid":14104},
"asi" : {"libsystem_c.dylib":["abort() called"]},
"faultingThread" : 8,
"threads" : [{"id":3581946,"threadState":{"x":[{"value":268451845},{"value":21592279046},{"value":8589934592},{"value":50590419779584},{"value":0},{"value":50590419779584},{"value":2},{"value":4294967295},{"value":18446744073709550527},{"value":11779},{"value":0},{"value":1},{"value":11779},{"value":1334051},{"value":1099511627776},{"value":0},{"value":18446744073709551569},{"value":6885582840,"symbolLocation":56,"symbol":"clock_gettime"},{"value":0},{"value":4294967295},{"value":2},{"value":50590419779584},{"value":0},{"value":50590419779584},{"value":6161933672},{"value":8589934592},{"value":21592279046},{"value":21592279046},{"value":4412409862}],"flavor":"ARM_THREAD_STATE64","lr":{"value":7977549832},"cpsr":{"value":4096},"fp":{"value":6161933520},"sp":{"value":6161933440},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":7977535496},"far":{"value":0}},"queue":"com.apple.main-thread","frames":[{"imageOffset":6152,"symbol":"mach_msg2_trap","symbolLocation":8,"imageIndex":2},{"imageOffset":20488,"symbol":"mach_msg2_internal","symbolLocation":80,"imageIndex":2},{"imageOffset":20256,"symbol":"mach_msg_overwrite","symbolLocation":436,"imageIndex":2},{"imageOffset":19808,"symbol":"mach_msg","symbolLocation":24,"imageIndex":2},{"imageOffset":343900,"symbol":"__CFRunLoopServiceMachPort","symbolLocation":160,"imageIndex":3},{"imageOffset":341504,"symbol":"__CFRunLoopRun","symbolLocation":1208,"imageIndex":3},{"imageOffset":339160,"symbol":"CFRunLoopRunSpecific","symbolLocation":608,"imageIndex":3},{"imageOffset":4520,"symbol":"GSEventRunModal","symbolLocation":164,"imageIndex":4},{"imageOffset":4237580,"symbol":"-[UIApplication _run]","symbolLocation":888,"imageIndex":5},{"imageOffset":4975056,"symbol":"UIApplicationMain","symbolLocation":340,"imageIndex":5},{"imageOffset":56055436,"imageIndex":1},{"imageOffset":249420,"symbol":"start","symbolLocation":2240,"imageIndex":6}]},{"id":3582061,"frames":[{"imageOffset":4292,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":9}],"threadState":{"x":[{"value":6162493440},{"value":5123},{"value":6161956864},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6162493440},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":8310337732},"far":{"value":0}}},{"id":3582062,"frames":[{"imageOffset":4292,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":9}],"threadState":{"x":[{"value":6163066880},{"value":8707},{"value":6162530304},{"value":0},{"value":409604},{"value":18446744073709551615},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0},{"value":0}],"flavor":"ARM_THREAD_STATE64","lr":{"value":0},"cpsr":{"value":4096},"fp":{"value":0},"sp":{"value":6163066880},"esr":{"value":1442840704,"description":" Address size fault"},"pc":{"value":8310337732},"far":{"value":0}}},{"id":3582063,"frames":[{"imageOffset":4292,"symbol":"start_wqthread","symbolLocation":0,"imageIndex":9}],"threadState":{"x":[{"value":6163640320},{"value":9475},{"value":6163103744},{"value":0},{"value":409604},
Hi,
I have written my first iOS app, I would like some more testers though to find any potential issues or additional features which would be useful. I have put the public like below:
https://testflight.apple.com/join/8xB5SEjs
Thanks!
Hello everyone,
due to the reason of 4.7.4 being rejected, we have resubmitted and provided indexes for each individual game in the application, or are we rejecting for the same reason?
We would like to know which step is problematic because we have added streaming games to our new version, which has been under review for a long time. We hope to receive an answer here. Thank you.
Hello,
Asking the following as, I was unable to find answers via search on the forum and in the documentation:
Invitations sent via iMessage seem to work correctly with my custom image ( GKMessageImage.png ) however, notifications sent to Game Center Friends via invites generated in Game Center do not include the custom image ( GKMessageImage.png ).
Questions:
Is this expected behavior? Is there a different way to customize the image in the notification? Note the Game Center notification includes the App name correctly.
I also noted in the WWDC session in 2016 ( saw video recently ) that there was some mention of no longer adding friends via Game Center. Is that currently true?
Thanks in advance.