Asobiai SDK

トロフィー

AIGame.unlockAchievement(ID) でトロフィーを渡せます。取ったトロフィーはゲームページ(取った人の割合つき)と、その人のプロフィールに出ます。

v2.4.0ゲームの中からは window.AIGame?.version で確認できます。更新履歴

使い方

js
// トロフィーを取る (ID はゲームの編集画面か asobiai.json で決めておく)
window.AIGame?.unlockAchievement("first_clear");

// 一覧 (取ったかどうかも)
const list = await window.AIGame?.getAchievements();
// => [{ id, name, description, icon, hidden, unlocked, rate }]

トロフィーの一覧を決める

一覧は、ゲームの編集画面・MCP / API の achievements・ゲームのファイルの一番上に置いた asobiai.json のどれかで決めます(50個まで)。asobiai.json は、公開・更新のときに読み込まれます。AI にゲームと一緒に作ってもらうなら asobiai.json が手軽です。

json
{
  "achievements": [
    { "id": "first_clear", "name": "はじめてのクリア", "description": "ステージ1をクリア", "icon": "🏆" },
    { "id": "no_damage", "name": "無傷の勇者", "description": "ダメージを受けずにクリア", "icon": "art/shield.webp" },
    { "id": "secret_room", "name": "ひみつの部屋", "description": "隠し部屋を見つけた", "icon": "🔑", "hidden": true }
  ]
}
  • icon は絵文字か、ゲームのファイルの中の画像のパスです。
  • "hidden": true にしたトロフィーは、取るまで名前と説明が「???」になります。
  • ゲストが取ったトロフィーはブラウザに預かり、ログインしたときに記録されます。