1

最近、新しいコミュニティを始めました。フォーラム ソフトウェアは phpBB3 で、これまでのところ非常に優れています。私のコミュニティをよりユニークで興味深いものにしようとして、ユーザーの実績を持つことを考えなければなりませんでした。簡単に概要を説明しましょう。

各ユーザーには、獲得できるアチーブメントがあります (これらはおそらくすべてのユーザーに適用されます)。たとえば、ユーザーが 1,000 件の投稿を達成したとき、アバターをアップロードしたとき、トピックの 1 つが 1,000 回再生されたときなどのアチーブメントです。各アチーブメントにはポイントがあります。たとえば、アバターのアップロードなどのアチーブメントは 10 ポイントで、10,000 ポイントに到達すると 50 アチーブメント ポイントが付与されます。ここにいる誰かが World of Warcraft をプレイしているなら、私がどこからアイデアを得ているのかがわかるかもしれません。:)

私が頭を悩ませているのは、これを正確にコーディングする方法です...すべてのユーザーアクティビティの記録を保持し、場合によっては特別なデータベーステーブルに追加し、cronを介して1分ごとにチェックすることができますユーザーはアチーブメント基準を満たしています...しかし、新しいアチーブメントを簡単に追加したり、ポイントを変更したりできるように、ACP を介して制御できるようにしたいのです。最も単純なこと以外は、私の心はかなり空白です。

私が実際にここに投稿したのは、アイデアに対するフィードバックと、私がこれを行うべきだと皆さんがどう思うかということでした。phpBBB MOD をどのように作成する必要があるかを理解すれば、コーディング部分は非常に単純になるはずです。

お読みいただきありがとうございます。返信をお待ちしております。:)

4

1 に答える 1

1

このモッドをチェックアウトしましたか?

http://www.phpbb.com/community/viewtopic.php?f=70&t=1696785

現時点ではベータ版ですが、あなたが達成しようとしているもののようです。そうでない場合でも、いつでもそれを取得して、それから別の何かを作成できます。自分のサイトに合わせて既存の mod を大幅に変更しました。phpbb3 での処理方法を理解するには少し時間がかかりますが、やり始めると簡単です。

独自の作成に関しては、これを crontab で行う必要はないと思います。コードの関連部分に関数を挿入するだけです。

投稿数では、特定の投稿数に基づいてユーザーのアバターの下の説明を更新する機能が既にあります。おそらくupdate_achievement()そこに追加の機能を配置できます。アバターを更新する場合も同様です。残念ながら、このアプローチを採用すると、ACP からアチーブメントを完全に編集することはできませんが、特定のアチーブメントを有効/無効にできるインターフェイスを持つことができます。

これには明らかに追加のテーブルが 1 つまたは 2 つ必要です。あまり考えなくても、user と acheivement_id の 2 つの列を持つテーブルが 1 つあります。次に、アチーブメント ID と説明などをリストした別のテーブル.

于 2010-05-13T01:20:25.760 に答える