承接 xypp/forum-quests 相关项目开发

从需求分析到上线部署,全程专人跟进,保证项目质量与交付效率

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

xypp/forum-quests

Composer 安装命令:

composer require xypp/forum-quests

包简介

Add quests to the forum, and reward with money or other things

关键字:

README 文档

README

License Latest Stable Version Total Downloads

A Flarum extension. Add quests to the forum, and reward with money or other things.

中文用户请参阅 README-CN.md

Migration Guide

If you are upgrading from 1.x to 2.0, please follow the steps below

  1. Backup your database
  2. Disable this extension
  3. Update the extension. You'll see our dependencies are also installed. If you are using Collector extension before, go to step 7.
  4. Enable Localize Date Lib and configure Timezone
  5. Enable Collector and check settings(Same as before by default)
  6. Run php flarum collector:migrate. This command will copy all data from forum-quests database to collector.
  7. Enable this extension

Simply Guide

Go Configure Before Usage

Description

Effect

This extension provided a data analysis system that tracks user's data when it changed and trigger the corresponding quests.

When a user satisfy the condition of a quest, it will be triggered and the quest will be done. The reward will be given to the user.

If re-available is set, when the time is up, the quest can be triggered again.

Features

Time Span

This extension allows you to use time span in condition. For example, "Post Count" > 0 in Span 1 means that the user must post at least one post this day. The time span is calculated by the timezone configured in admin panel.

Re-Available

The quest is always supposed to be done multiple times, for example, once a day. You can use re-available option to make the quest to be available again after some time. The extension currently support re-available after a day(by timezone) or after certain hours(exact time).

Frontend List and Hidden Item

This extension provides a frontend page for user to know what quest they are able to do. You can also hide the quest from the quest list until it is done.

Notice

About Recalculate Command

This command will ask all conditions to be rebuilt from database. However some conditions have not recorded with time so they will lost all accumulation data after recalculate.

When you running php flarum collector:recalculate command, by default it will stop running and ask you to confirm when some conditions are not able to be rebuilt from database. If this is the first time you run this command, just type y to continue.Otherwise Press Enter Or Type n to skip rebuilt or you will lose all accumulation data and only get the total value of this condition.

Refreshing after edit

If you change a quest's Re-Available from once to any other value, you may found that the users that had done the quest formerly was not able to do it again. That's because the extension will calculate the time user can do the quest again when they have just done it.

To fix the problem, rum php flarum forum-quests:refresh

Configure before usage

After installing, there are still something you need to do.

If you haven't enable Collector

  1. Enable Localize Date Lib and configure Timezone
  2. Enable Collector and check settings(Same as before by default)

Then enable the extension.

For Best Experience

The quest done will notify the user by alert notification.

It will be better to work with following

  • xypp/flarum-websocket-notification
  • blomstra/realtime
  • kyrne/websocket
  • flarum/pusher

Installation

Install with composer:

Please Read Install Guide #Configure before usage

composer require xypp/forum-quests:"*"

Updating

Please Read the Migration Guide First Before Updating

composer update xypp/forum-quests:"*"
php flarum migrate
php flarum collector:recalculate
php flarum cache:clear

Screenshots

Quest List Page Add Quest Modal

Comparing to Achievements/AutoMod?

This extension is designed for following targets that other extensions lacks:

  • Metric Pre Day
  • One-time trigger(No leave event)
  • Multiple times
  • Frontend List

Integration

The extension natively provides the following Conditions/Rewards.

Conditions

  • Post Count(core)
  • Discussion Count(core)
  • Change Email(core)
  • Change Avatar(core)
  • User Page Visit(core)
  • Page Reloads(core)
  • Discussion Replied(core)
  • Like Received(flarum/likes)
  • Like Sent(flarum/likes)
  • Store Purchased(xypp/store)
  • Discussion was view(michaelbelgium/flarum-discussion-views)
  • Badge Received(v17development/flarum-user-badges)
  • Money(AntoineFr/money)

Rewards

  • Money(AntoineFr/money)
  • Store Item(xypp/store)
  • Badge(v17development/flarum-user-badges)

From Other Extensions

  • foskym/flarum-custom-levels: Reward with exp.
  • xypp/flarum-invite-user: Conditions of invitation

Links

xypp/forum-quests 适用场景与选型建议

xypp/forum-quests 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.77k 次下载、GitHub Stars 达 2, 最近一次更新时间为 2024 年 07 月 24 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「flarum」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 xypp/forum-quests 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 xypp/forum-quests 我们能提供哪些服务?
定制开发 / 二次开发

基于 xypp/forum-quests 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 1.77k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 32
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 1
  • Forks: 1
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-07-24