iAP and Game Center / Gamecircle best practices
jonmulcahy
Member, Sous Chef Posts: 10,408
I'm adding Amazon iAP & Gamecircle support to CAT-ACLYSM and I ran into a few gotchas I wanted to pass along. Nothing major (so far), but it did require me to rethink some things.
iTunes allows you to use periods and underscores in your leaderboard/achievement id names. I've always done the reverse domain method. i.e. com.icebergapps.product.leaderboardname
Amazon doesn't allow periods in their name. When creating all the leaderboards and achievements I shortened my iTunes ids to just the last section, leaderboard name.
What I ended up doing was creating a table for leaderboards and one for achievements. Col 1 was the iTunes ids and Col2 was the leaderboard IDs. I also created an attribute called osType. iOS I set to 1, Kindle I set to 2. So when triggering a leaderboard or achievement rule, I use the tableCellValue rule and pass in the osType as the column.
When and if we ever get the ability to detect the OS, this get's even easier. Right now I have to manually flip that attribute when publishing for each type.
Going forward all my iTunes leaderboards/achievements will have no periods
iTunes allows you to use periods and underscores in your leaderboard/achievement id names. I've always done the reverse domain method. i.e. com.icebergapps.product.leaderboardname
Amazon doesn't allow periods in their name. When creating all the leaderboards and achievements I shortened my iTunes ids to just the last section, leaderboard name.
What I ended up doing was creating a table for leaderboards and one for achievements. Col 1 was the iTunes ids and Col2 was the leaderboard IDs. I also created an attribute called osType. iOS I set to 1, Kindle I set to 2. So when triggering a leaderboard or achievement rule, I use the tableCellValue rule and pass in the osType as the column.
When and if we ever get the ability to detect the OS, this get's even easier. Right now I have to manually flip that attribute when publishing for each type.
Going forward all my iTunes leaderboards/achievements will have no periods
Comments
So the recommendation for a new game would be to NOT use the periods when naming stuff in iTunes, but use underscore instead?
Cheers!
QS =
D
Dr. Sam Beckett never returned home...
Twitter: https://twitter.com/Quantum_Sheep
Web: https://quantumsheep.itch.io
Send and Receive Data using your own Server Tutorial! | Vote for A Long Way Home on Steam Greenlight! | Ten Years Left
Dr. Sam Beckett never returned home...
Twitter: https://twitter.com/Quantum_Sheep
Web: https://quantumsheep.itch.io
The question I have and cannot seem to find anything on is, can I use GameCircle for Android, or is it just for Kindle Fire? I am trying to implement and test it, but when I use my Android tablet to signin to GameCircle I end up with a amzn://com.donkeysoft.wordio .... this web page is not available. Seems like a specific protocol for Kindle Fire maybe?
Our games http://Donkeysoft.ca
I read your post but I didn't understand it can you go into it a bit more. I'm not sure how you know if the user is on an iOS devise or android. Also can you use the expression editor in the Game Center Behaviours?
EDIT: See post below
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
I just did an ad hoc test in sandbox for leaderboards in a group without the grp. prefix and it worked. I have already submitted my game to Apple for review but if they knock it back I will redo my leaderboards, use "_" instead of "." and drop the grp. prefix.
@jonmulcahy I also tried using the expression editor to reference the Leaderboard ID in a table and it also worked. I assume you are changing your osType attribute manually depending on which operating system you are making a build for is that right?
Universal Binary Template - Universal Binary Template Instructions Rev 4 (Short) - Custom Score Display Template
Send and Receive Data using your own Server Tutorial! | Vote for A Long Way Home on Steam Greenlight! | Ten Years Left