Untitled - PlayFab

Transcription

Untitled - PlayFab
• Idle game created in Unity
• Initially designed for WebGL
(Kongregate and other web portals)
• Added full Steam integration (achievements, badges, IAP, etc)
and released on Windows, Mac and Linux
• 2M+ plays on Kongregate, and more than 130,000 installs on
Steam Early Access
• We discovered Playfab at GDC
• Installed SDK on my laptop on the GDC floor, and haven’t
looked back
•
•
•
•
•
•
•
User management (link Kongregate and Steam accounts)
Virtual currencies
Store and catalog management
Steam IAP (start purchase, confirm purchase, etc)
Inventory management
Cloud save functionality
User support (refunds of in-game currency and inventory)
• Don’t use device ID on WebGL! Every device ID is the same!
• Generate a unique auth token (most service providers already
have this)
• For example, we use Kongregate’s GameAuthToken, which is
unique to the logged in user
• Include support in-game
• Playfab IDs are difficult to type, and are prone to error
• Validate user input to ensure they provide all necessary details
(e-mail, refund request, baked in Playfab ID, etc)
• Cache things that don’t change!
• We hit Playfab for saved game content once, and then keep
that data
• Playfab does *almost* everything
• However, when performing purchases in Steam you still must
register a Steam callback for a transaction
• Playfab does *almost* everything
• However, when performing purchases in Steam you still must
register a Steam callback for a transaction
• Now you can confirm purchase after the Steam callback
• Playfab does *almost* everything
• However, when performing purchases in Steam you still must
register a Steam callback for a transaction
• Now you can confirm purchase after the Steam callback
• Free (zero cost) purchases will complete successfully without a
Steam callback!
• Create a developer title ID and have Playfab flag it for test
purchases
• Players will cheat!
• We provided multiple save slots… ripe for exploit!
• Players will cheat!
• We provided multiple save slots… ripe for exploit!
• Users could change their system clock… solution was
CloudScript!
• Players will cheat!
• We provided multiple save slots… ripe for exploit!
• Users could change their system clock… solution was
CloudScript!
• In the end, cheaters will still cheat (memory analysis, etc)
• Prepare for (at least moderate) success!
• Prepare for (at least moderate) success!
• Players (especially beta players) love dev interaction,
community, goodies, social networking.
• Does not maintain conservation of energy – the energy you put
in is amplified by the users!
• Prepare for customer support
• Ask questions! (Brendan and team are a great asset and help)
• … Sorry!
• Server initiated purchase orders for initiating Steam IAP
transactions
• Server infrastructure for cloud saves and refunds
• Server infrastructure for user management
• Interface with NIST for verifying game time
•
•
•
•
@crushcrushdx
www.sadpandastudios.com
charles.ambrye@giawa.com
github.com/giawa
• Spend time being creative
• Keep having fun