Your Moodle version

Blocks: Level up!

Maintained by Picture of Frédéric Massart Frédéric Massart
Engage your students! Gamify your students' learning experience by allowing them to level up in their courses.
Moodle 2.7, 2.8, 2.9

You can easily support this plugin: add it to your favourites!

Feature request and bug reports

Please report the issues you find, problems you experience or any feature request on the issue tracker. Thanks!


  • Automatically captures and attributes experience points to students' actions
  • Block that displays current level and progress towards next level
  • Report for teachers to get an overview of their students' levels
  • Notifications to congratulate students as they level up
  • A ladder to display the ranking of the students
  • Ability to set the number of levels and the experience required to get to them
  • Images can be uploaded to customise for the appearance of the levels
  • The amount of experience points earned per event is customizable
  • Page to display the list of levels and a description
  • Experience points are earned per course
  • An event is fired when a student levels up (for developers)

How are experience points calculated?

This block listens to events triggered in Moodle and captures some according to pre-defined rules. It then attributes experience points based on the information contained in the event. For more information about the events, refer to the documentation.

Only the users with the capability block/xp:earnxp can earn experience points. This capability is given by default to students. Also actions triggered by guests, non-logged in users or administrators are ignored.

The following events are always ignored:

  • Events from another context than course or module
  • Events having another educational level than participating

The rest is up to you. By default the plugin comes with a minimal set of rules to attribute experience points to actions, and to ignore some redundant ones. Visit the Rules page in the plugin itself to view or override them.

Note: Repeated actions within a short time interval are ignored to prevent cheating.


This plugin is part of set Experience Points (XP).


Screenshot #0
Screenshot #1
Screenshot #2
Screenshot #3
Screenshot #4
Screenshot #5
Screenshot #6
Screenshot #7


Picture of Frédéric Massart
Frédéric Massart (Lead maintainer)
Please login to view contributors details and/or to contact them

Comments RSS

Show comments
  • Picture of Frédéric Massart
    Thu, Jun 4, 2015, 11:15 AM

    You can add a description for the level, but not change its name. That is an interesting request, can I ask you to suggest the issue here:

    Meantime, maybe you can find a workaround by uploading your own images for the levels.

  • Picture of Andoni Sanz
    Sun, Jun 7, 2015, 2:37 AM
    Frédéric Massart,

    First off, I'd like to congratulate you about your work. Fantastic!

    Second, it'd be great to have an option to trade the points collected. This is related to the virtual money/market mechanics of gamification. Have you ever thought about it? Points could be used to join a VIP group, give them to a friend, add a distinctive mark to the avatar, level-up in the profile's role/permissions to help the teacher, etc...

  • Picture of Frédéric Massart
    Mon, Jun 8, 2015, 10:47 AM
    Thanks Andoni,

    I'm glad you are enjoying the plugin.

    May I suggest you to file this request on the tracker? I'm afraid feature requests I get would get lost if not file here:

  • Picture of Maxim Khasiev
    Thu, Jun 11, 2015, 12:11 AM
    Hi Frédéric, that's a really cool plugin that you've done.

    I'm trying to use it now in our corporate system, with the assessment based on quizzes, but I found that gaining XP does not relate to the grades of a student gained in the assignment. Are you planning to connect XP to the actual students' performance further?

    Thank you,

  • Picture of Frédéric Massart
    Thu, Jun 11, 2015, 11:21 AM
    Hi Maxim,

    not presently. The experience points are given based on a what a student does, not on how they do it. Participating in a quiz is what block_xp is rewarding for, it is not rewarding them for passing or not. If there was an 'event' that was triggered when a student 'passes' an activity, then a teacher could add a rule based on it, but I don't think it exists at the moment.

    Thanks for the feedback.

    Please raise an issue here if you think this feature request should definitely be part of the plugin:

  • Picture of dcm st
    Thu, Jun 11, 2015, 6:10 PM
    After installing the plugin I can only see the block as adimistrator, not as student. Any idea what am I doing wrong?
  • Picture of Frédéric Massart
    Fri, Jun 12, 2015, 10:50 AM
    Did you enable it? Have you checked the permissions?
  • Picture of Jesse H
    Sun, Jun 14, 2015, 4:25 AM
    I know i keep saying it, but this plugin is fantastic!
    The only conceptual problem i have is that it implies there can only be one winner!
    It would be great if there were different kinds of experience, with multiple ladders. This way students can be recognised as the leader in different fields/abilities within the same course.
  • Picture of Frédéric Massart
    Mon, Jun 15, 2015, 11:11 AM
    Thanks Jesse,

    do you think allowing multiple blocks in the same course would solve this? Please report that feature request at:

  • Yo
    Tue, Jul 14, 2015, 7:41 AM
    Hi Level up is great. Thank you very much. Question: you can assign points to each Assignment

    First the plugin is wonderful
  • Picture of Frédéric Massart
    Tue, Jul 14, 2015, 10:07 AM
    Hi, thanks for the feedback.

    At the moment you cannot selectively give experience points depending on a specific activity. An issue was raised here:

    However, if you want all the assignment events to give the same amount of experience points you could add a rule based on the event name containing 'mod_assign'.

  • Picture of Frank Leone
    Thu, Jul 16, 2015, 9:53 PM
    Dear Frédéric,

    Really useful plugin, thanks for the great work! I would like to use the plugin across courses, so system-wide, where users accumulate experience across courses. Is that now already possible? If not, any pointers on how hard it is to adapt? Otherwise I might try to adapt it myself, if that helps.


  • Picture of Frédéric Massart
    Fri, Jul 17, 2015, 2:30 PM
    Hi Frank,

    thanks. Someone else already enquired about this, an issue was raised to discuss/implement that feature. May I ask you to read through it and add your comments?

    Many thanks!
  • Picture of Chris Simpson
    Tue, Aug 11, 2015, 11:48 AM
    HI Fred,

    Works great and students really get into it. Any chance of adding a group option in the report section to filter out other students?

    Thanks Chris
  • Picture of Frédéric Massart
    Tue, Aug 11, 2015, 2:04 PM
    Thanks Chris.

    It's part of my todo list, I raised this issue to remember it:

1 2 3 4
Please login to post comments