If your needs are simple there is score.js. I was looking for something similar a few months back and ultimately decided on creating my own class based system. Gamification is very specific to each individual project. Not a good fit for a framework imo.
Thanks for your reply. Score.js is really quite basic, I need more than that. Guess I will implement my own, too.
You might find this helpful. I’m currently working on an achievement system myself so if you find an easy-ish way to accomplish that, do tell!
I have not used it but there is also something called Phaser. (https://phaser.io)
Thanks. But this seems to be a game engine, not a gamification framework.
(Gamification means game-like reward and reputation mechanisms. It is not only being used in games, but also in “serious” apps, to motivate users. One good sample for this is the badge system of this forum).
Hi @waldgeist, I know it’s an old topic how did you end up doing this ?
We’ll need a similar feature on our project and I don’t really want to overcrowd our meteor backend with verification that the player won the next badge or reward after each of its action seems way too overkill. Could use cron jobs but we want the reward to be immediately appearing.
Was considering using lambdas each time an action happens to potentially trigger the reward, but not sure it’s the best approach. We intend to add plenty of badges / rewards for plenty of action so I’m up for any advice.
I ended up rolling my own gamification framework. I use an event bus on the server side, so everytime a component wants to reward XP or a badge, it sends an event and a central gamification manager credits it to the user. It also decides if certain limits have been reached, so the user advances to the next level. You can see it in action in my project guzz.io If you click on “Open in browser” link, you get to the actual app. Once you register, you’ll get the first badge.