Геймификация Discourse

:discourse2: Краткое описание Плагин Discourse Gamification добавляет настраиваемую систему начисления баллов (карма, одобрение, очки) и таблицы лидеров на ваш форум.
:open_book: Инструкция по установке Этот плагин включён в ядро Discourse. Отдельная установка плагина не требуется.
:test_tube: Демо Таблица лидеров

Возможности

Discourse из коробки поставляется с функциями геймификации (значки, уровни доверия), но некоторым сообществам хочется выйти за эти рамки. Именно здесь приходит на помощь GitHub - discourse/discourse-gamification · GitHub.

Этот плагин позволяет администраторам легко создавать и настраивать соревнования по начислению баллов в сообществе, где очки присуждаются за участие в жизни сообщества.

Баллы автоматически обновляются каждый час за события прошедшего дня, а также пересчитываются за последние 10 дней один раз в сутки.

Одобряю (Cheers)

Пользователи получают «одобрение» (cheers) за выполнение определённых действий в сообществе. Счётчик одобрений каждого пользователя отображается на его карточке пользователя, в профиле и может быть включён в каталоге пользователей.

Нравится плагин, но название «одобрение» не подходит для вашего сообщества? Вы можете переименовать его в любое другое, используя настройку всех текстов в Discourse.

Таблицы лидеров

Администраторы могут создавать несколько таблиц лидеров, и для каждой можно задать индивидуальные:

  • дату начала
  • дату окончания
  • участвующих пользователей
  • уровень приватности таблицы лидеров

По умолчанию поставляется стандартная таблица лидеров по адресу /leaderboard, которая будет отображать всех пользователей с первого дня, когда началось начисление баллов.

Демо-версию можно посмотреть по адресу Discourse Meta

Поддающиеся оценке события

В настоящее время следующие действия приносят одобрение:

  • Ежедневные посещения
  • Принятые флаги (жалобы)
  • Поставленные лайки
  • Полученные лайки
  • Созданные сообщения
  • Прочитанные сообщения
  • Принятые решения (требуется плагин Discourse Solved (Принятый ответ))
  • Время чтения
  • Созданные темы
  • Принятые приглашения пользователей

Смотрите дорожную карту для получения информации о будущих добавлениях.

Заполнение истории баллов

Вы можете запустить заполнение истории, чтобы рассчитать исторические баллы через интерфейс, используя кнопку «Пересчитать баллы» на странице /admin/plugins/gamification:

Это также можно использовать для пересчёта таблицы лидеров, если вы внесёте изменения в поддающиеся оценке события или категории,eligible для начисления баллов. Вы можете генерировать пересчёт до 5 раз в день и выбирать диапазоны временных периодов (или задавать свой собственный):

Конфигурация

Глобальные настройки:

  • множитель баллов за каждое действие
  • Ограничение категорий, в которых можно зарабатывать баллы
  • Включение и отключение плагина

Эти настройки на уровне плагина находятся по адресу /admin/site_settings/category/plugins?filter=plugin%3Adiscourse-gamification.

Для создания, удаления и обновления таблиц лидеров администраторы могут посетить /admin/plugins/gamification.

Использование в виде виджета

Этот плагин также можно отображать в виде виджета в уменьшенном формате внутри компонента темы Right Sidebar Blocks. Дополнительную информацию можно найти там.

Значки на основе баллов

Вы можете автоматически выдавать значки на основе баллов геймификации, используя Enable Badge SQL

Вот пример значка, который выдаётся пользователю, набравшему более 9000 одобрений:

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 в столбце пользовательских баллов в каталоге пользователей
  • Игнорировать пользователей в статусе «черновик» (staged users)
  • Игнорировать анонимизированных пользователей (email совпадает с @anonymized.invalid)
  • Стилизовать форму редактирования таблицы лидеров
  • Ссылка «вы» в таблице лидеров требует большего смещения для размещения плавающего заголовка
  • Исправить выделение собственного пользователя в таблице лидеров, которое не работало, если позиция собственного пользователя > 100
  • Добавить разделитель тысяч i18n к отображению баллов одобрения на карточке пользователя / в профиле
  • Добавить фильтры по периодам времени для таблиц лидеров
  • Добавить фильтр по умолчанию по периоду времени в настройки таблицы лидеров
  • Добавить excluded_groups_ids в настройки таблицы лидеров
  • Разрешить администраторам начислять/снимать произвольное количество баллов пользователям для интеграции с событиями вне Discourse
  • Сделать баллы кликабельными со ссылкой на таблицу лидеров (как в профиле пользователя, так и в карточке пользователя)

: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)

Пост был разделен на новую тему: Выбрать таблицу лидеров, связанную в профиле

Пост был разделен на новую тему: Вычитать баллы на основе определенных реакций

2 сообщения были перенесены в новую тему: Создание таблицы лидеров топ-20 для определенного диапазона дат

Просто заметка: система геймификации для posts_created была скорректирована с учётом нескольких дополнительных факторов:

6 лайков

Это здорово. Предложение по улучшению: добавить возможность настройки разных параметров подсчета очков для каждой доски, чтобы каждая доска могла использоваться для отдельного конкурса, управляемого сообществом.

Например, доска «Больше всего постов за месяц» должна иметь значение очков за создание поста, равное 1, а все остальные — 0. В то время как доска «Лучший лайк месяца» должна иметь значение очков за поставленный лайк, равное 1, а все остальные — 0.

1 лайк

Как это? /u?order=likes_given&period=monthly?

Да, это схожая идея, но в рамках доски геймификации, а не макета списка пользователей по умолчанию.

Список пользователей Discourse (/u) можно отображать по-разному, например, с помощью компонента темы «Каталог карточек пользователей», который хорошо подходит для глобального списка пользователей сайта, но выглядит менее привлекательно на странице рейтинга пользователей. Поэтому предложение использовать для каждой доски геймификации отдельную настройку является обоснованным и в данной ситуации более логичным, чем использование стандартного списка пользователей Discourse.

1 лайк

Пост был перемещён в новую тему: Геймификация и система очков для португальского форума?

Как мне удалить эту ссылку на таблицу лидеров из боковой панели? Похоже, она добавляется автоматически, поскольку её нет в настройках пользовательских ссылок раздела, где я хотел бы её видеть, чтобы переместить в меню «Ещё».

Я вижу, что Meta уже разобралась с этим, но я не могу найти где-либо настраиваемую опцию с моей стороны.

1 лайк

Как администратор сайта, вы должны иметь возможность настроить этот раздел.

Точно, я думаю, что он должен быть там указан.

1 лайк

Вы должны иметь возможность перетащить его в раздел «Ещё» с помощью =.

Извините, я неправильно понял ваш пост.

2 сообщения были перенесены в новую тему: Есть ли минимальное требование к количеству пользователей для отображения таблицы лидеров?

Пост был разделён на новую тему: Как получить «Спасибо»?

2 сообщения были перенесены в новую тему: Различия в вариантах ранжирования по очкам

Пост был перемещен в новую тему: Пользователи жалуются на потерю очков

Я только что заметил, что это, apparently, было добавлено в какой-то момент… как это сделать?

1 лайк

@Kartoon, думаю, это то, что вы ищете:

1 лайк

Привет @Discourse, :wave:

Интересует, можно ли «отменить» события, которые дают зачётные баллы. Например, когда я помечаю ответ одного из участников форума как решение, они получают 5 баллов. Но если позже я решу, что этот ответ не является решением, и сниму пометку, потеряют ли они эти 5 баллов? :thinking:

2 лайка