[nodebb-plugin-ns-points] NS Points, Forum Gamification


  • Plugin & Theme Dev

    NodeBB Points

    Additional metrics for User Profiles. It's like experience in video games. Plugin is good for gamification of your board. It's another plugin without which I can't migrate to NodeBB 😉 I have found such approach interesting over years. Basically Points is more precise instrument to measure user activity. Also this plugin teaches users to be good to each other.

    Treat points as experience, at current state (v1.0.0), plugin takes into account: posts, topics and reputation (only good one, up-voting 😇 )

    Install

    Developed with NodeBB 0.7.0

    npm install nodebb-plugin-ns-points
    

    Useful links:

    Overview Page

    You can reach it via yourforum.com/points url. Seems, in 0.7.0 you should add link yourself 😉 Overview page uses default function for rank calculation. Number on avatar is Level, like in RP Games 🎲

    Screen Shot 2015-04-26 at 4.26.11 PM.png

    Themes

    Here is very basic example, how you can display raw points to visitors:

    Screen Shot 2015-04-26 at 4.25.46 PM.png


  • Admin

    Ooo, very nice. I should allow openfantasy to use this as an alternative to the cash plugin if the admin wants



  • @Nicolas This is really promising! I've got a few questions, though:

    • Can I set the level thresholds manually?
    • Can I setup custom notifications for specific levels? (Read: achievements)
    • Is there some kind of API to award points on custom events? (So I can give extra points to SSO users on first login, etc)

  • Plugin & Theme Dev

    @Moritz-Friedrich

    1. Yes, you will be able to provide custom level calculator. Or use some preset (In future - Preset could be interesting solution from community, or predefined function by me) or You could augment default interpolation function with values (points for base level, grow points, etc)
    2. I'm planning to have notification in the end of the day, - how many points did you get for today. To set notifications for specific levels is interesting idea, I definitely will add it to the TODO list
    3. Will be additional panel in ACP, where you can grant particular amount of points for something. For example: I'm using points as a reward in competitions. I think, API is also possible - for example - POST /api/points/add {points: 20, reason: 'Steam Login'}

  • Plugin & Theme Dev

    Version 1.1.0 is released. It's a big change for future updates. Rank calculation was moved to client-side.
    For future, it will create minimal overhead on server.


  • Plugin & Theme Dev

    Version 1.2.0 is released.

    With this release you will be able augment Topic View.

    For example, what I have achieved with my custom theme and updated points plugin:

    Screen Shot 2015-05-10 at 12.54.40 PM.png


  • Plugin & Theme Dev

    What to do, to remove such warning from startup of NodeBB? I use current master branch

    warn: [plugins/nodebb-plugin-ns-points] This plugin may not be compatible with your version of NodeBB. This may cause unintended behaviour or crashing.
    

    in my package.json I have such field:

    "nbbpm": {
        "compatibility": "^0.7.0"
      }
    

  • Admin

    @Nicolas Once v0.7.0 is released, then those warnings will disappear. Currently, NodeBB's version is 0.7.0-dev, which is a step below v0.7.0, and thus doesn't satisfy that compatibility check 😆


  • GNU/Linux

    @Nicolas hello,

    Any chance this points system could be easily modified to make a ratings like system that calculates total points from ratings on posts.

    Say have your typical 5 stars. 1-5 points at the bottom left side in the avatar bar or lower right , lower left bar, which allows the reader to rate the users posts. They click on which ever star, it fills the star with color and sends the average result from users clicks through to some sort of rating calculator for an addition of the total points (star ratings). Round up the decimal if it has one etc

    Could it have some sort of page that shows total points of all users?

    Possible ?

    5-Star-Rating.png

    not this size obviously , but think this image tells what I talkin bout'


  • Plugin & Theme Dev

    @Codejet Seems not.

    5-star system, It looks like separate plugin, because Points, It's a cumulative system, it doesn't store micro-actions, for what you have received latest 1 point (It's by design, to be fast and create less overhead on user's board). So single post calculations isn't possible.

    But, by having rating system for posts or users, you can evaluate star rating, and grant particular amount of points to the user. For example for 1 star - 1 point, for 5 stars - 15 points.

    Could it have some sort of page that shows total points of all users?

    There is page, you can reach it by this url: yourboard.com/points


  • GNU/Linux

    @Nicolas said:

    @Codejet Seems not.

    5-star system, It looks like separate plugin, because Points, It's a cumulative system, it doesn't store micro-actions, for what you have received latest 1 point (It's by design, to be fast and create less overhead on user's board). So single post calculations isn't possible.

    But, by having rating system for posts or users, you can evaluate star rating, and grant particular amount of points to the user. For example for 1 star - 1 point, for 5 stars - 15 points.

    Could it have some sort of page that shows total points of all users?

    There is page, you can reach it by this url: yourboard.com/points

    doh ! would be good if there was a way to do this. But if you say it slows everything down..

    it would be cumulative, just working out total points for 1 post would be calculated separately as the average rating of all the ratings users have left so far on that individual post. So would need to hold 2 values and maintain the total points amount somehow , would mean adding or subtracting to the users main total rating points. Would give overall rating based on how quality the poster is

    spewin maybe it will get made one day ! love the points plugin though keep up the good work !


  • GNU/Linux

    @Nicolas how would I omit a user from /points overview



  • @Nicolas When this plugin will be released? I installed it just now, but the configuration page in ACP shows 'Under Construction'



  • Nice, I may probably use it when I get to achievement task to award member's points. It just a matter to find the correct key values to increment point value. Why not? The more you play, the more points you get and achievement rewards gets more bonus point as well as level upgrading.



  • @Nicolas I am thinking you can combine the Points and Awards plugin, where we can set threshold/level of points will automatically get awards / badges of honor.


  • Plugin & Theme Dev

    @Codejet there is no option to omit /points overview page. Could you share more information why do you want to hide it from users?

    @gsvir It's released, just without settings. It works, and collects points. In future more features will be added.



  • @Nicolas said:

    @gsvir It's released, just without settings. It works, and collects points. In future more features will be added.

    hmmm, strange... because i installed the plugin and it only shows 'Under Construction' . Maybe i will just reset/ re-install the plugin.


  • GNU/Linux

    @Nicolas said:

    @Codejet there is no option to omit /points overview page. Could you share more information why do you want to hide it from users?

    @gsvir It's released, just without settings. It works, and collects points. In future more features will be added.

    I think you misunderstand my question, just want to omit 1 user from displaying in the overview page. Not entire overview page.

    Say if I had a certain RSS plugin running posting every hour using a certain username, he has way too many points right now. Have to ban him cos he's cheating a bit


  • Plugin & Theme Dev

    Oh, I see. Yep, It looks like an additional feature for points plugin.



  • "topic view" I could not. Could you explain in detail?




Looks like your connection to NodeBB was lost, please wait while we try to reconnect.