| 概要 | Discourse Gamification は、カスタマイズ可能なスコアリング(カルマ、クード、ポイント)とリーダーボードをインスタンスに追加します。 | |
| インストールガイド | このプラグインは Discourse コアにバンドルされています。プラグインを個別にインストールする必要はありません。 | |
| デモ | リーダーボード |
機能
Discourse には、ガミフィケーション機能(バッジ、信頼レベル)が標準搭載されていますが、一部のコミュニティではさらに一歩踏み込んだ機能を目指しています。そこで活躍するのが GitHub - discourse/discourse-gamification · GitHub です。
このプラグインを使用すると、管理者はコミュニティでの参加に応じてポイントが付与される、コミュニティスコアリングコンテストを簡単に作成・調整できます。
ポイントは、その日のイベントに対して毎時間自動的に更新され、過去 10 日間のスコアは 1 日 1 回再計算されます。
Cheers
ユーザーはコミュニティ内で特定のアクションを実行することで「Cheers」を獲得します。各ユーザーの Cheer スコアは、ユーザーカード、ユーザープロフィールに表示され、ユーザーディレクトリでも表示可能にできます。
プラグインは気に入ったが、「Cheers」という名前がコミュニティに最適ではない場合? Discourse のすべてのテキストをカスタマイズする を使用して、任意の名前に変更できます。
リーダーボード
管理者は複数のリーダーボードを作成でき、それぞれにカスタム設定が可能です:
- 開始日
- 終了日
- 参加ユーザー
- リーダーボードのプライバシー設定
デフォルトでは、/leaderboard にデフォルトのリーダーボードが用意されており、スコアが付与され始めた最初の日からすべてのユーザーがリストされます。
デモは Discourse Meta で確認できます。
Scorables
現在、以下のイベントで Cheers が付与されます:
- 1 日の訪問
- 承認されたフラグ
- 送信されたいいね
- 受信したいいね
- 作成された投稿
- 読まれた投稿
- 承認された解決策(Discourse Solved (Accepted answer plugin) が必要)
- 読書時間
- 作成されたトピック
- 承認されたユーザー招待
今後の Scorables については、ロードマップ を参照してください。
スコアのバックフィル
/admin/plugins/gamification ページの「スコアを再計算」ボタンを使用して、UI から履歴スコアを計算するバックフィルを実行できます:
これは、Scorables や対象となるスコアリングカテゴリに変更を加えた場合にリーダーボードを再計算するためにも使用できます。1 日最大 5 回まで再スコアリングを生成でき、期間の範囲を選択(またはカスタム設定)できます:
設定
グローバルなカスタマイズは以下の通りです:
- 各アクションのスコア乗数
- ポイントを獲得できるカテゴリの制限
- プラグインの有効化・無効化
これらのプラグインレベルの設定は /admin/site_settings/category/plugins?filter=plugin%3Adiscourse-gamification にあります。
リーダーボードの作成、削除、更新を行うには、管理者は /admin/plugins/gamification にアクセスできます。
ウィジェットとして使用
これは Right Sidebar Blocks theme component 内に小さな形式のウィジェットとして表示することもできます。詳細はそちらをご覧ください。
スコアに基づくバッジ
Enable Badge SQL を使用して、ガミフィケーションスコアに基づいた自動バッジを設定できます。
ユーザーが 9000 以上の Cheers を持っている場合のバッジの例:
SELECT user_id, current_timestamp AS granted_at
FROM gamification_scores
WHERE (:backfill OR user_id IN (:user_ids))
GROUP BY 1
HAVING SUM(score) > 9000
変更履歴
- 2022-05-02T03:00:00Z - 公開リリース
- 2022-05-10T05:00:00Z - 最近の変更でロードマップを更新
ロードマップ
(おおまかな順序)
-
リーダーボードが
prioritize usernames in uxの無視設定を尊重する -
リーダーボードの表彰台でより高い解像度のアバターを使用する
-
バッジごとのカスタムスコアリングを追加する
-
各リアクションごとのスコア付与を追加する(Discourse Reactions が必要)
-
チャットイベントのスコアリングを追加する(Discourse Chat が必要)
-
アンケートイベントのスコアリングを追加する(アンケートの作成、アンケートへの投票)
-
メディアイベントのスコアリングを追加する(画像の投稿、動画の投稿、Onebox の投稿)
実装済み:
ユーザーディレクトリのカスタムスコア列にある i18n テーブルタイトルを修正ステージドユーザーを無視匿名化されたユーザー(メール一致@anonymized.invalid)を無視リーダーボード編集フォームのスタイル設定リーダーボードの「あなた」リンクに、フローティングヘッダーに対応するための大きなオフセットが必要リーダーボードで自分のユーザーのハイライトが、自分のユーザーの位置が > 100 の場合に機能しないバグを修正ユーザーカード / プロフィールの Cheer スコアに i18n 桁区切り文字を追加リーダーボードに期間フィルターを追加リーダーボード設定にデフォルトの期間フィルターを追加リーダーボード設定にexcluded_groups_idsを追加管理者がユーザーに任意のポイントを付与・削除できるようにし、Discourse 外の Scorables イベントとの統合を可能にするスコアをクリックしてリーダーボードにリンクするようにする(ユーザープロフィールとユーザーカードの両方)
当社でホストされていますか?このプラグインは、当社の Business および Enterprise プランで利用可能です Gamification | Discourse - Civilized Discussion







