Composr Tutorial: Creating an economy/reward-system for members via points
Written by Chris Graham (ocProducts)
Earning points
Methods of earning points include:
- Joining
- Voting in a poll
- Rating content
- Poll chosen
- Submitting various forms of content
- Length of membership
- Visiting the site
- Posting on the forum
- Entering/passing quizzes
- Being given them (this is described in a later section)
- Earning them from selling a download (this is described in a later section)
Most methods of earning points may be altered in the configuration (Admin Zone > Setup > Configuration > Points options), so that the number of points earned from various activities is appropriate for your website.
There is a distinction between the point count for points available for spending, and the point count for the total points ever earned (which contributes to rank and leader-board position). This will usually be made clear, but sometimes circumstance will dictate what is the appropriate meaning.
A note about how points are calculated (somewhat advanced)
The reason points are calculated in this way is that the forum driver system means that Composr has no way of determining when a member makes a forum post (the forum does not tell Composr, as it is often a third-party piece of software).
The main ramification of this is that if posts are deleted, the point count goes backwards for the members with deleted posts: we consider this a feature (deleting spam automatically will reverse the point count, at least on robust forums where post count is automatically adjusted upon moderation), and we consider it a bad idea to delete posts from a forum unless they should never have existed. We consider deleting posts the enemy of historical record and the reasons for doing it few, because text generally takes up a trivial amount of space, databases are designed to deal with inconceivable amounts of data, and the topics can be just as easily moved to a hidden archive forum if they are seen as 'getting in the way'.
Gift points
Reasons for giving gift points include:
- Pseudo-payment for a service provided
- A prize for winning a competition
- A sign of appreciation for produce a high quality product that benefits the community
Gift points are not exactly like payment, because it doesn't detract from your own point count to give points, it detracts from your gift point count. Members have a quota of gift points, to allocate as they see fit: if they run out, it simply means that they can't give any more for a while.
Gift points are useless unless spent, so the only advantage to hoarding them is to give a large amount in some kind of special situation being awaited; once given, the gift point receiver has the total added to their actual point count. Obviously members could abuse this, by giving points to each other in some form of reciprocal arrangement ("you pat my back I'll pat yours"): this is why there is an admin screen to monitor all gift transactions for fraud (and selectively reverse transactions). You can reach this screen from the Admin Zone > Audit > Gift-point transactions.
The Point Store
The Point Store is a place where members can buy:
- Banner advertisements and upgrades.
- POP3 e-mail accounts and quota upgrades (these must be added manually by the staff).
- Forwarding e-mail accounts (these must be added manually by the staff).
- Gambling.
- And more. In fact, custom configured products and anything a new Point Store code hook has been programmed for (it's extensible).
When a member buys something from the Point Store, the staff are informed of it via e-mail of appropriate details.
The Point Store shop front is accessed via the pointstore module (site:pointstore page-link, Social > Point Store on the default menus)
Point Store inventory management is at:
Admin Zone > Setup > Point Store inventory management
Use this to set up those products which you can have multiple of (e-mail accounts, custom products, permission products).
There is a module in the Admin Zone for sales list management at:
Admin Zone > Audit > Point Store sales list management
The module should be used to cancel purchases, such as an e-mail address bought up a user that is no longer valid. Cancelling such a purchase allows a re-purchase at a later date (only one address of each e-mail address type is allowed per-user). Refunds must manually be given through the points system if points have been already charged by the point of cancellation.
Banners
While by default any member may submit a banner, the implication is that a Point Store-bought banner would not have to serve the staff's interests so much as a banner they decided to validate for free.All banners bought are added to the 'General' banner type.
Topic pinning
On Conversr sites, members can purchase to have a particular topic pinned on the forum.Gambling
Members can gamble points. On average, members lose out on points when they try and gamble them though.E-mail accounts (advanced)
What may be purchased:
- POP3 e-mail accounts, and upgrades
- staff define which e-mail domains members may purchase addresses on
- staff must set up the e-mail accounts manually after they are purchased/upgrades
- e-mail Forwarding accounts, and updates
- staff define which e-mail domains members may purchase addresses on
- staff must set up the e-mail accounts manually after they are purchased/upgrades
These may be configured via the inventory management screen at:
Admin Zone > Setup > Point Store inventory management
If e-mail accounts are sold through the Point Store, Composr cannot create them itself. Instead, it has to send out e-mail notifications to the site staff address, which includes details of how to add them. The method of addition is different for different systems, so the Point Store configuration defines 3 URLs that can be set according to your server.
Example URLs follow for different webhosting control-panel software (please note that these may not be up-to-date with newer versions of these control-panels)…
For Plesk users
The mail add address (POP3 and forwarding) is:https://{DOMAIN}:8443/domains/mail/mail_name_preferences.php?mn_id=0&previous_page=mail_names
Forwarders are added through adding a mail address, and then specifying a forwarder for it.We're not sure if it is currently possible to manage POP3 quota with Plesk.
For Ensim users
The POP3 add address is:http://{DOMAIN}/Site/email_users_add.htm
The forwarding add address is:
http://{DOMAIN}/Site/emal_forward.htm
We're not sure if it is currently possible to manage POP3 quota with Ensim.For cPanel users
The POP3 add address is:http://{DOMAIN}:2082/frontend/x/mail/addpop2.html
The forwarding add address is:
http://{DOMAIN}:2082/frontend/x/mail/addfwd.html
The POP3 quota change address is:
http://{DOMAIN}:2082/frontend/x/mail/pops.html
Name highlighting
On Conversr sites, highlighted usernames can be purchased. This means the purchasers name gets special highlighting within forum topics.Permission products
This is done via the inventory management screen at:
Admin Zone > Setup > Point Store inventory management
The different types of permission (product) are configured with settings as follows:
Privilege
If a privilege is set globally, you will only set “The privilege”.If you are scoping it to a particular module page (e.g. “downloads”), you will also set “The page”.
If you are scoping it to a particular category, you will also set it to “The module codename” and “The category”.
Zone-access
You will only set “The zone”.Page-access
You will set “The zone” and “The page”.Category-access
You will set “The module codename” and “The category”.Normally “The category” will be a numeric ID.
Custom products
This is done via the inventory management screen at:
Admin Zone > Setup > Point Store inventory management
Community billboard (non-bundled)
As of Composr 10, the community billboard is a non-bundled addon.
Members may purchase the ability to display community billboard messages on your site in the Point Store (if enabled). The staff may also add their own messages, and are in charge of moderating, and the queue of messages. The community billboard messages are shown, by default, on the bottom-right of the website.
The queue is accessed via the Staff Checklist on the Admin Zone front page. Note that the queue is not self-managed, you need to control which message is active, as they won't automatically rotate or expire. We mentioned above that the staff are automatically notified when a Point Store purchase is made, but actually this isn't the case for the community billboard.
Messages may be manually added in the Admin Zone (a link is on the dashboard checklist), but regular users will be adding them via the Point Store. When that happens, you are notified of the new message have been added.
For the community billboard to display, you must place the symbol code, {$COMMUNITY_BILLBOARD} into a template or page. Commonly this would be into GLOBAL_HTML_WRAP.tpl so that it can show somewhere in the page footer.
The queue is accessed via the Staff Checklist on the Admin Zone front page. Note that the queue is not self-managed, you need to control which message is active, as they won't automatically rotate or expire. We mentioned above that the staff are automatically notified when a Point Store purchase is made, but actually this isn't the case for the community billboard.
Messages may be manually added in the Admin Zone (a link is on the dashboard checklist), but regular users will be adding them via the Point Store. When that happens, you are notified of the new message have been added.
For the community billboard to display, you must place the symbol code, {$COMMUNITY_BILLBOARD} into a template or page. Commonly this would be into GLOBAL_HTML_WRAP.tpl so that it can show somewhere in the page footer.
Other economy tie-ins
Buildr (non-bundled)
Buildr is a very large addon for Composr, made by the developers in a semi-official capacity. It is not included with the main release as it is totally inappropriate for non-community sites, and hence would be consider as 'bloat' (an excessive feature that gets in the way and causes undue complexity and confusion) by most.Buildr is essentially a game, where members may move in, interact with, and create, a limitless world of rooms, split across multiple themed 'realms'. It can be used to create puzzles, adventures, board games, simulations, and with imagination, many other things.
Points are at the very core of Buildr, and are used in two ways:
- It costs points (according to a configurable price) to add content to Buildr. Of course, members may try and redeem these points by asking members to give gift points back to them, but this feature prevents abuse and limits the need for moderation.
- Members may add items to the system, and then sell these items to other members. An example of this being used, is for the controller of a realm used for a 'quest' to add a 'healthy' item into the system: those with more points have a higher chance of surviving to the end of the quest, as they can heal themselves.
The Buildr system is very simple, yet via the small set of options available, presents amazing possibilities.
Downloads
Members may submit downloads that cost points to download. Depending on how the submitter configures the download, these points may end up with that submitter, or thrown away.This system allows:
- staff to artificially limited access, to ensure members participate before they can use site resources.
- members to earn points to compensate themselves for the work contained within a download.
This is covered in the Advanced provision of downloads tutorial.
The real world
A small number of sites may wish to set up a payment system (outside of the scope of Composr, at the time of writing), to allow members to exchange points for real money, or tangible products or services. Sites that may wish to do this are likely to be sites where the earning of points has a real effect on business goals, such that real-world reimbursement may be appropriate; for example, on a site where members collaborate on art for a published catalogue.Alternatively, and perhaps more popularly, sites may allow members to exchange real money, for points (again, outside the scope of Composr, at the time of writing). Hence web-masters could earn money from their more enthusiastic members, and those members could elevate themselves on the website.
Rank in Conversr
The 'status symbol' of rank is an incentive for members to earn points (hence contributing to the site and community), but permissions may also be configured such as to give permission according to rank, simply by assigning the permissions differently for different usergroups.
If you would like to use rank, but not other point features, remove view permissions to the 'points' module and edit the 'Block options' (in the configuration) to not display point details. You cannot remove the points addon if you wish to use ranks.
Note that rank changes are triggered by actions. Someone will not go up in rank based on things like how long they've been a member, until some action (e.g. posting on the forum) triggers a rank recalculation.
The leader-board
The module is the leader_board module (site:leader_board page-link, Social > Leader-board on the default menus).
Please be aware that the leader-board is not entirely accurate, as it actually only calculates the point count of top post count holders, and orders according to this; the reason for this is that, as explained earlier, point count is not actually stored, and calculating it for all members simultaneously would not be efficient. This is unlikely to be noticed, however, because more post count holders are chosen for point calculation than point holders shown, hence a buffer zone exists to reduce the chance of error.
The leader-board is updated and archived weekly, regardless of whether you have the block cache enabled or not.
If you wish to totally reset the leader-board, manually empty the contents of the leader_board database table.
A common point of confusion is users thinking the leader-board shows who are the leaders only over points earned in the particular week. This is not the case, it calculates it based on total points ever, and the weekly updates are to capture snapshots. There is an open tracker issue regarding us also implementing the ability to show activity just for one particular week, but it is technically complex to achieve (it requires a major upheaval) so would need financing via feature sponsorship.
Concepts
- Points
- Points are accumulated by various means and illustrate rank and provide spending power (currency)
- Rank
- Rank is determined by the total of points ever earned, and is a status symbol
- Gift points
- Gift points are automatically accumulated over time and exist only as gifts to give to other members, where they translate to real points
- Point Store
- The Point Store allows conversion of points into items such as community e-mail accounts
- Leader-board
- The point leader-board shows the top point holders, and is drawn up on a weekly basis
- Buildr
- A Composr addon that provides a simple virtual world environment to interact in; points are the currency of Buildr
See also
Feedback
Please rate this tutorial:
Have a suggestion? Report an issue on the tracker.