xypp / forum-quests
向论坛添加任务,并以金钱或其他物品奖励
Requires
- flarum/core: ^1.2.0
- xypp/collector: *
- xypp/flarum-localize-date-lib: *
Requires (Dev)
README
这是一个 Flarum 扩展。向论坛添加任务,并以金钱或其他物品奖励。
中文用户请参阅 README-CN.md
迁移指南
如果您是从 1.x 升级到 2.0,请按照以下步骤操作
- 备份数据库
- 禁用此扩展
- 更新扩展。您会看到我们的依赖项也被安装了。如果您之前使用过
Collector
扩展,请转到第 7 步。 - 启用
Localize Date Lib
并配置时区 - 启用
Collector
并检查设置(默认与之前相同) - 运行
php flarum collector:migrate
。此命令将把论坛-quest 数据库中的所有数据复制到 collector。 - 启用此扩展
简单指南
进入 使用前配置
描述
此扩展提供了一种数据分析系统,用于跟踪用户数据变化时触发相应的任务。
当用户满足任务的条件时,任务会被触发,任务完成。奖励将发放给用户。
如果设置了重新可用,当时间到了,任务可以再次触发。
功能
时间跨度
此扩展允许您在条件中使用时间跨度。例如,"Post Count" > 0 在跨度 1 中意味着用户必须在这一天至少发表一篇帖子。时间跨度由管理员面板中配置的时区计算。
重新可用
任务通常需要多次完成,例如,每天一次。您可以使用 re-available
选项在一段时间后使任务再次可用。扩展目前支持在一天(时区)或特定小时(确切时间)后重新可用。
前端列表和隐藏项目
此扩展为用户提供了一个前端页面,以了解他们可以完成哪些任务。您还可以在任务完成之前将其从任务列表中隐藏。
注意
关于重新计算命令
此命令将要求所有条件从数据库重新构建。但是,某些条件没有记录时间,因此在重新计算后将丢失所有累积数据。
当您运行 php flarum collector:recalculate
命令时,默认情况下,它将停止运行并询问您是否确认某些条件无法从数据库中重新构建。如果您是第一次运行此命令,只需键入 y
继续即可。否则,请按 Enter 键或键入 n
跳过重建,否则您将丢失所有累积数据,只能获得该条件的总数。
编辑后刷新
如果您将任务的重新可用从 once
更改为任何其他值,您可能会发现以前完成过此任务的用户无法再次完成。这是因为扩展将在用户刚刚完成任务时计算他们再次可以进行任务的次数。
要解决这个问题,请运行 php flarum forum-quests:refresh
使用前配置
安装后,还有一些事情需要您去做。
如果您还没有启用 Collector
- 启用
Localize Date Lib
并配置时区 - 启用
Collector
并检查设置(默认与之前相同)
然后启用扩展。
为了最佳体验
完成的任务将通过警报通知用户。
最好与以下扩展一起使用
- xypp/flarum-websocket-notification
- blomstra/realtime
- kyrne/websocket
- flarum/pusher
安装
使用Composer安装
请先阅读安装指南 使用前配置
composer require xypp/forum-quests:"*"
更新
在更新之前,请先阅读迁移指南
composer update xypp/forum-quests:"*"
php flarum migrate
php flarum collector:recalculate
php flarum cache:clear
屏幕截图
与Achievements/AutoMod相比?
此扩展旨在针对其他扩展所缺少的目标
- 每日指标
- 一次性触发(无离开事件)
- 多次触发
- 前端列表
集成
此扩展原生提供以下条件/奖励。
条件
- 帖子计数(核心)
- 讨论计数(核心)
- 更改电子邮件(核心)
- 更改头像(核心)
- 用户页面访问(核心)
- 页面刷新(核心)
- 讨论回复(核心)
- 收到点赞(flarum/likes)
- 发送点赞(flarum/likes)
- 购买存储项目(xypp/store)
- 讨论被查看(michaelbelgium/flarum-discussion-views)
- 获得徽章(v17development/flarum-user-badges)
- 金钱(AntoineFr/money)
奖励
- 金钱(AntoineFr/money)
- 存储项目(xypp/store)
- 徽章(v17development/flarum-user-badges)
来自其他扩展
- foskym/flarum-custom-levels:使用经验值奖励。
- xypp/flarum-invite-user:邀请条件。