ความสำเร็จสำหรับเกม PlayDrop
ประกาศความสำเร็จแบบมาตรฐานและแบบสะสมพร้อมไอคอนใน catalogue.json แล้วปลดล็อกและรายงานความคืบหน้าด้วย sdk.achievements
ความสำเร็จใช้บอกเป้าหมายในเกมของคุณ โดยมีไอคอนและคำอธิบายที่ผู้เล่นเห็นบน PlayDrop ใช้ได้ทั้งกับผู้เยี่ยมชมและผู้เล่นที่เข้าสู่ระบบ
ประกาศความสำเร็จ
{
"achievements": [
{ "key": "first-win", "displayName": "First flag", "description": "Reach the flag once",
"kind": "STANDARD", "icon": "achievements/first-win.png" },
{ "key": "collector", "displayName": "Collector", "description": "Collect 100 stars",
"kind": "INCREMENTAL", "maxProgress": 100, "icon": "achievements/collector.png" },
{ "key": "secret-room", "displayName": "Secret room", "description": "Find the hidden room",
"kind": "STANDARD", "hidden": true, "icon": "achievements/secret-room.png" }
]
}keyใช้รูปแบบเดียวกับคีย์ของลีดเดอร์บอร์ดkindเป็นSTANDARD(ปลดล็อกครั้งเดียว) หรือINCREMENTAL(ปลดล็อกเมื่อความคืบหน้าถึงmaxProgressซึ่งเป็นจำนวนเต็มบวก)iconคือไฟล์ PNG ในแพ็กเกจ ใช้ภาพสี่เหลี่ยมจัตุรัสที่ชัดเจนและดูรู้เรื่องแม้มีขนาดเล็กhidden: trueจะซ่อนชื่อและคำอธิบายไว้จนกว่าจะปลดล็อก
คีย์ที่เผยแพร่แล้วลบไม่ได้ และเปลี่ยน kind, maxProgress และ hidden ไม่ได้ เลิกใช้ความสำเร็จด้วย "status": "RETIRED"
ปลดล็อกและรายงานความคืบหน้า
await sdk.achievements.unlock("first-win");
await sdk.achievements.setProgressAtLeast("collector", starsCollected);
const { achievements } = await sdk.achievements.list();
const { achievement } = await sdk.achievements.get("collector");setProgressAtLeastรับยอดรวมจนถึงตอนนี้ ไม่ใช่ค่าที่เพิ่มขึ้น ความคืบหน้าจะเพิ่มขึ้นเท่านั้น มีเพดานที่maxProgressและปลดล็อกเมื่อถึงค่านั้น- ทั้งสองคำสั่งส่งคืน
{ accepted, changed, unlocked, progress, unlockedAt, achievement }โดยchangedเป็น false เมื่อไม่มีอะไรใหม่เกิดขึ้น คุณจึงใช้ค่านี้แสดงการแจ้งเตือนของคุณเองเพียงครั้งเดียว list({ includeHiddenDefinitions: true, includeRetired: true })จะรวมความสำเร็จที่ซ่อนอยู่และที่เลิกใช้แล้ว
ปลดล็อกเฉพาะระหว่างการเล่นจริง ห้ามปลดล็อกระหว่างการแสดงตัวอย่างหรือการจับภาพเด็ดขาด หากไม่มีเซสชันผู้เล่นเลย คำสั่งจะเสร็จสิ้นโดยไม่ได้บันทึกไว้
ความสำเร็จที่ดี
ผสมความสำเร็จช่วงต้นที่สอนวิธีเล่นเข้ากับเป้าหมายระยะยาว ตั้งชื่อตามการกระทำ ไม่ใช่ตามรางวัล: "ชนะโดยไม่โดนโจมตีเลย" บอกชัดว่าต้องทำอะไร ความสำเร็จที่คิดมาอย่างดีสักสิบกว่ารายการดีกว่าความสำเร็จง่ายๆ เป็นร้อย