If I submit an app today with the current IAP behaviours in, will it be rejected if reviewed AFTER iOS8 is released? (which is in 6 days, so very likely)
Not sure what Apples plan is about older apps. However if the reviewer reviews it on iOS 8 and uses a child account to make an IAP it will not work with our old system.
@Hopscotch said: colander, all internet access, links or purchases need to be behind a parental gate.
These can take many forms, and need to be implemented by us:
typically requiring the person to press and hold a button for 3 seconds to change to the sensitive scene,
or do a math sum, or pick a designated color or shape.
@Hopscotch@SkyDog thank you both for the info and assistance. I am targeting 9 - 11 a lot of them would be able to math better than their parents and work out anything else too. So I take it this is a half assed attempt by apple to stop the really young kiddies from getting in and just tapping away on anything and racking up a bill?
If I have a shop button on the main menu and a user clicks it it takes them to the parental gate scene and then to the store scene correct?
I got a non consumable purchase working it is a bit more stuffing around. We now have to notify the user if the it fails i.e no connection and if it is pending. The bright side we can now make the game unplayable without an internet connection.
Players will have to put up with the ads or pay to turn them off. Of course they could just delete your app, that is a call we will have to make but if they are not seeing ads or paying then we are not making anything any way.
Players will have to put up with the ads or pay to turn them off. Of course they could just delete your app, that is a call we will have to make but if they are not seeing ads or paying then we are not making anything any way.
Haha, I like that! Pay to play, or put up with someone else paying us for your free ride!
@stevej When the "Request Purchase Data' behaviour is triggered the store login dialog box pops up, if I then press cancel and not log in it will retrieve the required data anyway. This doesn't seem like the desired behaviour, it seems sensible that the login dialog should only pop up when the 'Buy Item' or 'Restore Item' behaviour is triggered. Am I missing something?
I should note that by default, all items start out as "unpurchased", and their state isn't updated until purchases are restored (except on iOS 8, where the receipt is auto-loaded by the OS). This means that if the user can't connect to the internet, they won't be able to access their purchases> @zenoah said:
Is there no way to get the territory code value into the table? e.g USD, GBP, EUR, etc
The item name and price values are localized to the person playing your game, assuming you've set things up correctly with your IAP priovider. Always use the price value that's in the table to display the price, don't try to localize it yourself.
@squirrel42 said:
stevej When the "Request Purchase Data' behaviour is triggered the store login dialog box pops up, if I then press cancel and not log in it will retrieve the required data anyway. This doesn't seem like the desired behaviour, it seems sensible that the login dialog should only pop up when the 'Buy Item' or 'Restore Item' behaviour is triggered. Am I missing something?
Nope. If the login dialog pops up, it's because the IAP provider wants that info before it will send the data. It's not something we can control.
@BlackCloakGS said:
Not sure what Apples plan is about older apps. However if the reviewer reviews it on iOS 8 and uses a child account to make an IAP it will not work with our old system.
I confirm that the reviewers are already starting using iOS8 to review apps.. (my app just got rejected )
Hi, I have 2 questions about the new in-app behaviors.
If I don't want to show the name or the price of the IAP in my app, do I need to do the Request Purchase Data behavior? Or can I just go straight to the Buy Item behavior when a user wants to buy?
If I already know that a user has purchased an IAP, can I populate column 5 of the PurchaseTable myself?
See the "PurchaseTable" more as a communication device between your app and iTunes. It does not replace the table or attributes that you traditionally used to store the users purchases.
Basically it's now a two tier system. Keep your conventional method of saving purchase status to a separate table, do this because users may not always have wifi. build the new behaviors on top of this system using column 5 to tell when the purchase is complete. you can do this by making a rule that monitors the text of column 5.
RULE
"Text expression" table cell value (PurchaseTable,"IAP Being Targeted",5) = purchased
Change Attribute Behavior (Target game level attribute representing purchase)
Change Table value behavior (Target Row, Column that saves the Particular IAP state at load.)
Save table (The table you made for IAP storage)
For consumables just do the math in both behaviors "Saved value + new value"
You can also monitor the return state -1 to initiate a pop_up that says can't connect to the app store check you connection to the internet and try again.
It's just makes it a bit more of a logic tree but basically the same. these new behaviors allow more control in presenting the state of a purchase you just have to write the logic yourself. This is nothing compared to multiplayer. This is a great learning opportunity for multiplayer as you have to think about what the server is doing and provide that feedback into your logic.
@stevej said:
The item name and price values are localized to the person playing your game, assuming you've set things up correctly with your IAP priovider. Always use the price value that's in the table to display the price, don't try to localize it yourself.
It was more to do with being able to show the full currency and price in a dialog before the purchase. So 'unlock all levels for just £0.69' for GBP or 'unlock all levels for just $0.99' for USD, etc
@zenoah, you get the localized description and price by call the "Request Purchase Data" behaviour before any purchase selection is made.
In view of this, I am requesting GS to make the Device Language attribute available to us, so we can make the rest or our app consistent with the purchase descriptions without relying on the user to change language through some options menu.
Localization is such an important ability for indies to widen their potential market and possible rankings through targeting smaller markets/countries.
It would look very unprofessional if we rely on users to manually set their language for the app on the one hand, yet display products automatically in the language according to the device settings.
Comments
Can I just clear something up then here @BlackCloakGS
If I submit an app today with the current IAP behaviours in, will it be rejected if reviewed AFTER iOS8 is released? (which is in 6 days, so very likely)
Not sure what Apples plan is about older apps. However if the reviewer reviews it on iOS 8 and uses a child account to make an IAP it will not work with our old system.
@BlackCloakGS how do we handle/implement parental gate for Facebook and Twitter. This is one of the reasons my app was rejected.
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
If someone can do a tutorial video for non-consumable I would be so so so so thankful!!! I've got 40 apps to update and i'm stressing..... thank you!
Thanks for being on top of this GameSalad team! I am just starting my IAP journey, and appreciate your work on this.
I have worked with Apple products for 20+ years, and have seen whole companies brought to their knees by changes made within the apple code--
the business app company I work for has been relatively unscathed-- but they aren't dealing with in-app anymore...
John Gallagher
Artist, cartoonist, developer - STORYTELLER
First GameSalad App JUST PUBLISHED! Roboy Red: Jetpack Attack!
https://itunes.apple.com/us/app/roboy-red-jetpack-attack/id896014716?mt=8
@colander, all internet access, links or purchases need to be behind a parental gate.
These can take many forms, and need to be implemented by us:
typically requiring the person to press and hold a button for 3 seconds to change to the sensitive scene,
or do a math sum, or pick a designated color or shape.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
This is a bit off topic here, but you can check out this info:
http://forums.gamesalad.com/discussion/71829/template-share-here-is-a-simple-parental-gate-i-made-for-external-links
John Gallagher
Artist, cartoonist, developer - STORYTELLER
First GameSalad App JUST PUBLISHED! Roboy Red: Jetpack Attack!
https://itunes.apple.com/us/app/roboy-red-jetpack-attack/id896014716?mt=8
@Hopscotch @SkyDog thank you both for the info and assistance. I am targeting 9 - 11 a lot of them would be able to math better than their parents and work out anything else too. So I take it this is a half assed attempt by apple to stop the really young kiddies from getting in and just tapping away on anything and racking up a bill?
If I have a shop button on the main menu and a user clicks it it takes them to the parental gate scene and then to the store scene correct?
Apples RatingSection
Rating Edit
Ages 4+ , Made for Ages 9 - 11
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
Hope, there will be a tutorial video.
Shadows Peak is an atmospheric psychological horror that explores the dark side of a player.
I got a non consumable purchase working it is a bit more stuffing around. We now have to notify the user if the it fails i.e no connection and if it is pending. The bright side we can now make the game unplayable without an internet connection.
Players will have to put up with the ads or pay to turn them off. Of course they could just delete your app, that is a call we will have to make but if they are not seeing ads or paying then we are not making anything any way.
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
Haha, I like that! Pay to play, or put up with someone else paying us for your free ride!
Is there no way to get the territory code value into the table? e.g USD, GBP, EUR, etc
@stevej When the "Request Purchase Data' behaviour is triggered the store login dialog box pops up, if I then press cancel and not log in it will retrieve the required data anyway. This doesn't seem like the desired behaviour, it seems sensible that the login dialog should only pop up when the 'Buy Item' or 'Restore Item' behaviour is triggered. Am I missing something?
I should note that by default, all items start out as "unpurchased", and their state isn't updated until purchases are restored (except on iOS 8, where the receipt is auto-loaded by the OS). This means that if the user can't connect to the internet, they won't be able to access their purchases> @zenoah said:
The item name and price values are localized to the person playing your game, assuming you've set things up correctly with your IAP priovider. Always use the price value that's in the table to display the price, don't try to localize it yourself.
Nope. If the login dialog pops up, it's because the IAP provider wants that info before it will send the data. It's not something we can control.
@stevej, now that the IAPs are automatically localised, it would be REALLY helpful if GS gives us attributes with Device Locale Country and Language.
You are already tracking these.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
@Hopscotch we want to add something like that as well but it would be great if you added it as a feature request in our public bug data base.
Thanks @BlackCloakGS,
http://bugs.gamesalad.com/show_bug.cgi?id=289 has been added.
Off to rally support...
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
@BlackCloakGS does IAP work for the Android and Kindle on Amazon?
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
Google IAP does not work on Kindle or other Amazon devices use Amazon IAP instead.
I confirm that the reviewers are already starting using iOS8 to review apps.. (my app just got rejected )
I still have to test consumables but I've already got the logic in my head for it.
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
-- anyone know anything about APPLe watch development - game salad , will it work?
Hi, I have 2 questions about the new in-app behaviors.
If I don't want to show the name or the price of the IAP in my app, do I need to do the Request Purchase Data behavior? Or can I just go straight to the Buy Item behavior when a user wants to buy?
If I already know that a user has purchased an IAP, can I populate column 5 of the PurchaseTable myself?
Thanks,
Janine
@JTT4056, "no" on both accounts.
See the "PurchaseTable" more as a communication device between your app and iTunes. It does not replace the table or attributes that you traditionally used to store the users purchases.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
Basically it's now a two tier system. Keep your conventional method of saving purchase status to a separate table, do this because users may not always have wifi. build the new behaviors on top of this system using column 5 to tell when the purchase is complete. you can do this by making a rule that monitors the text of column 5.
RULE
"Text expression" table cell value (PurchaseTable,"IAP Being Targeted",5) = purchased
Change Attribute Behavior (Target game level attribute representing purchase)
Change Table value behavior (Target Row, Column that saves the Particular IAP state at load.)
Save table (The table you made for IAP storage)
For consumables just do the math in both behaviors "Saved value + new value"
You can also monitor the return state -1 to initiate a pop_up that says can't connect to the app store check you connection to the internet and try again.
It's just makes it a bit more of a logic tree but basically the same. these new behaviors allow more control in presenting the state of a purchase you just have to write the logic yourself. This is nothing compared to multiplayer. This is a great learning opportunity for multiplayer as you have to think about what the server is doing and provide that feedback into your logic.
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
It was more to do with being able to show the full currency and price in a dialog before the purchase. So 'unlock all levels for just £0.69' for GBP or 'unlock all levels for just $0.99' for USD, etc
@zenoah, you get the localized description and price by call the "Request Purchase Data" behaviour before any purchase selection is made.
In view of this, I am requesting GS to make the Device Language attribute available to us, so we can make the rest or our app consistent with the purchase descriptions without relying on the user to change language through some options menu.
See here and vote for support: http://bugs.gamesalad.com/show_bug.cgi?id=289
Localization is such an important ability for indies to widen their potential market and possible rankings through targeting smaller markets/countries.
It would look very unprofessional if we rely on users to manually set their language for the app on the one hand, yet display products automatically in the language according to the device settings.
MESSAGING, X-PLATFORM LEADERBOARDS, OFFLINE-TIMER, ANALYTICS and BACK-END CONTROL for your GameSalad projects
www.APPFORMATIVE.com
You only modify the first two columns of the new table the rest is filled in by the server.
Guru Video Channel | Lost Oasis Games | FRYING BACON STUDIOS
is there tutorial about the IAP available ?