ディスコースのゲーミフィケーション

:discourse2: 概要 Discourse Gamification は、カスタマイズ可能なスコアリング(カルマ、クード、ポイント)とリーダーボードをインスタンスに追加します。
:open_book: インストールガイド このプラグインは Discourse コアにバンドルされています。プラグインを個別にインストールする必要はありません。
:test_tube: デモ リーダーボード

機能

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 イベントとの統合を可能にする
  • スコアをクリックしてリーダーボードにリンクするようにする(ユーザープロフィールとユーザーカードの両方)

:discourse2: 当社でホストされていますか?このプラグインは、当社の Business および Enterprise プランで利用可能です Gamification | Discourse - Civilized Discussion

「いいね!」 113
Right Sidebar Blocks
What are Discourse "Cheers" supposed to be?
Leaderboard Plugin
Discourse Gamification now supports custom scores for external integrations
Discourse vs Skool
Create badges based on Gamification score
Seeking Suggestions for User Engagement and Reward System
Need someone who is familiar with gamification to set up our site
Gamification options in Free discourse.group
Add Scores for Reactions
Add Scores for Chat
Use rewards points to redeem subscription hours
Points based currency to reward quality
Membership anniversary
Is there scoring for badges?
If the forum wants to accumulate good posts, shouldn't we have some stimulation/motivation system?
What are the ways to do a competition like this
Adding virtual currency / points
Looking for the perfect theme
Adding virtual currency / points
Point system in bagdes?
Check-in punch
Whats a cheer and how do you enable it?
Changes to which reactions :thumbsup: are counted as likes :heart:
Is it possible to create a leaderboard for a specific category + tag?
Users losing disproportionate amount of cheers
Add Poll events to Gamification
Spend “Gamification“ points to unlock hidden content
New monetisation feature proposition
Having more Trust Levels?
How to adjust gamification points without retroactively updating point values for old score-able actions
Can points values be customised per action?
Gamefication scoring for portuguese forum?
Using user cards to quickly view information about others
Add Scores for Chat
Identifying up-and-coming top contributors
How is this daily sign-in implemented? I get points randomly every day
User card loading failed
Bundling more popular plugins with Discourse core
Plugins to Enhance user Engagement
Structuring an active support community migrating from Facebook
Does anybody know what cheers are?
Building Community Through Compensated Contributions
I am looking for a Reputation/Karma system that display below profile avatar in topic post and profile
Allow users to see trust level 3 progress on user profile
How to add a Leaderboard link to the hamburger menu?
A feature request related to this plugin. Pointed questions or rewarded questions
Likes Given & Likes Received Scoring
有什么插件支持积分商城吗?
Can we display solved count on the /users page?
Can we have a point system? Or do we have to use plugin?
Subtract points based on certain reactions
Scores not updating right away
OP Contents on Progress Bar
Best practices: Staff who've left
Custon button how "like" ? add custom post buttons
Leaderboard- Exclude Certain Users
Set points setting + redemption
Which text fields to change to rename 'score'?
Add User leaderboard in sidebar
What is a cheer?
Ranking System - Gamification
Add Scores for Reactions
Setting a leaderboard date range should lock the default period
A fun contest idea to drive engagement - over 50 new members / intros in a week :)
How to integrate Discourse Gamification with an external system (redeem and award points)