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