MooDuell
| MooDuell | |
|---|---|
| Type | Activity |
| Set | N/A |
| Downloads | https://marketplace.moodle.com/plugins/2847 |
| Issues | https://github.com/Wunderbyte-GmbH/moodle-mod_mooduell/issues |
| Discussion | https://github.com/Wunderbyte-GmbH/moodle-mod_mooduell/issues |
| Maintainer(s) | David Bogner, Wunderbyte GmbH |
MooDuell turns questions from the question bank into short duels between course participants. A duel consists of nine questions. Play takes place in the MooDuell app for Android and iOS or in the web app shipped with the plugin, while questions are maintained and results are evaluated in Moodle. No second question pool outside Moodle is needed.
The plugin was developed by Wunderbyte GmbH in cooperation with the University of Vienna and is published under the GNU GPL v3.
Background
Practising on your own is effective but rarely motivating in itself: learners work through a set of questions alone, receive a score and usually never return to the material. MooDuell adds social interaction and playful competition. Because a duel is short and can be interrupted at any time, revision fits into brief breaks and happens on the phone rather than at the desk.
The activity is therefore aimed at practice, revision and formative self-assessment between classes. It complements the Quiz but replaces neither controlled examinations nor differentiated summative grading.
MooDuell has been in productive use at the University of Vienna since 2021, initially in law and computer science; development was funded by aws. The project report and the product folder name further settings in higher education, schools and workplace training.
Features
For learners
- Short learning units: a duel covers nine questions and fits into one compact practice session.
- Social learning: opponents are participants of the same Moodle course.
- Immediate feedback: depending on the settings, MooDuell shows the correct answer and the feedback stored with the question.
- Visible progress: personal statistics, scores and high score lists make one's own activity visible.
- Pseudonymous play: if full names are disabled, players appear under the profile field “MooDuell Alias”.
For teachers
- Reuse existing questions: MooDuell draws directly from the Moodle question bank.
- Control the selection: several question categories per activity, each with a relative weight.
- Configure gameplay: time limits, answer confirmation, display of the solution and feedback can be matched to the learning scenario.
- Monitor use: questions, open and finished games, statistics and high scores are available in Moodle.
- Link to completion: participation and performance targets can be tied to Activity completion.
Questions and gameplay settings
Supported question types
- Multiple choice with one correct answer
- Multiple choice with several correct answers
- True/false
- Numerical
- Drag and drop into text
Questions of other types are ignored. The teacher overview flags every question that cannot be played because of its type, a missing correct answer, or question and answer texts that are too long; the current list is kept in the plugin README.
Question categories and course of a duel
A MooDuell activity uses one or more question categories. Where several are selected, a weight per category determines the proportion in which the nine questions are drawn; the weights need not add up to 100. The pool must be able to supply at least nine playable questions, otherwise no game can start. A considerably larger pool is recommended, as individual questions then recur less often.
Both players answer the same nine questions, alternating in blocks of three: the challenger begins, then the opponent catches up. Only when both have completed all nine questions is the game closed and the high score list updated. Running games can be given up and then count as lost.
Feedback and timing
Teachers decide
- whether an answer must be confirmed before it is submitted;
- whether the correct answer is shown;
- whether the general feedback of the question is shown;
- whether answer-specific feedback is shown;
- how much time is available per question (10 to 120 seconds, or no limit);
- how long the solution stays visible before the next question.
Statistics and activity completion
MooDuell records games played and finished, wins, losses, questions answered and answered correctly, scores and ranking positions. For automatic completion, learners can be required to finish a given number of games, win a given number of games, answer a given number of questions correctly, or reach a given percentage of correct answers. These targets also appear in the app as named challenges.
How to use
Installation and requirements
Install the plugin in the usual way (see Installing plugins); the directory must be named mooduell and placed in /mod. MooDuell additionally requires Wunderbyte Table, which provides the interactive tables for questions, games and statistics.
Before using the activity in courses, administrators should
- enable Web services and mobile web services – without them the app cannot connect (the settings page reports both values as an integration check);
- make sure players hold
webservice/rest:useandmoodle/webservice:createmobiletoken; the teacher overview lists participants who do not; - run the site over HTTPS only;
- keep cron and ad-hoc tasks running, as push messages and the licence check depend on them;
- configure the app store links, the defaults for the gameplay settings and the push notification option;
- check version compatibility on the plugin page.
The plugin is free of charge in its full range of functions. An optional PRO licence key lifts the number of MooDuell activities and allows the app to be branded with your own theme and logo.
Setting up the activity
- Create or select suitable categories in the question bank; texts, images and feedback should be readable on a phone screen.
- Turn editing on in the course and choose Add an activity or resource.
- Select MooDuell and enter a name and description.
- Select the question categories and set their weights.
- Configure name display, feedback and timing.
- Set completion targets if required, and save.
- Before releasing the activity, open the questions overview and work through the warnings shown there.
- Test the workflow with two accounts: start a duel, answer it, and check the result in Moodle.
Playing a duel
- Open the MooDuell activity in the course.
- Install the app using the links or QR codes shown there (Google Play, App Store).
- Scan the personal login QR code from Moodle, or sign in with the usual credentials.
- Select the course and the MooDuell activity.
- Challenge an eligible participant or continue an open game.
- Answer the nine questions and view the result once both sides have finished.
The personal login QR code grants access to the linked Moodle account and must not be passed on. Anyone who prefers not to install an app can use the bundled web app in the browser; push notifications, camera and in-app purchases remain reserved for the native app. With filter_shortcodes, the web app can also be embedded in a course page via [mooduell securitytoken=…], using the token from the plugin settings.
Viewing results
Learners see their own statistics, the high score list and the login QR code. Teachers with the corresponding permissions additionally review the question pool, inspect open and finished games, delete finished games and export the high score list as a CSV file. Whether real names appear depends on the setting “Use full names” and on the capability mod/mooduell:viewstudentnames.
Data protection and push notifications
Data processed in Moodle
MooDuell stores in the Moodle installation what is needed to run games and produce statistics:
- the user IDs of both players, game status, winner and timestamps;
- the questions assigned to a game, with answer status and time taken;
- duels played, wins, losses, scores and ranking information;
- completion challenges and their results;
- device identifier, device model and push token, where push notifications are active.
The plugin supports the Moodle Privacy API for export and deletion of these data; deleting a course module removes the games, questions, high scores and the associated push tokens. The legal basis, access rules, retention periods and deletion procedures are for the operating institution to define. The privacy statement issued by the University of Vienna for MooDuell illustrates such information: purpose, categories of data, consent as the legal basis, retention and the rights of data subjects.
Push notifications
Push messages announce a new challenge, a pending turn or a finished duel. They are optional and can be switched off both in the plugin configuration and on the device.
For delivery, MooDuell uses Firebase Cloud Messaging. On first start the app creates a device-specific registration token, which is stored in Moodle; when a message is sent, this token and the notification text are passed to the service. Questions, game data and statistics stay in Moodle, but delivery involves an external provider. This processing must be described transparently and covered legally.
Recommended institutional configuration
- Inform learners about the game data stored in Moodle.
- Name Firebase Cloud Messaging as the external delivery service and make the optional nature of notifications clear.
- Keep personal or sensitive details out of notification texts.
- Define retention periods for finished games, statistics and unused push tokens.
- Decide whether full names or aliases are displayed – high score lists make performance data visible to other course members.
FAQ
- What is the difference to the Moodle quiz?
- The Quiz is a single-player, graded activity. MooDuell is a competitive practice activity for two players without a grade; it produces statistics, high scores and completion states. Both draw on the same question bank.
- Can MooDuell be played without the app?
- Yes, through the bundled web app in the browser. Push notifications, camera access and in-app purchases require the native app.
- Why does the activity report that there are not enough questions?
- A game needs nine playable questions. Categories with fewer questions, or with unsupported question types, cannot supply a complete game; the Questions tab gives the reason for every excluded question.
- Do learners see each other's real names?
- Only if “Use full names” is enabled and the viewer holds
mod/mooduell:viewstudentnames. Otherwise the alias stored in the profile applies.
- Is a separate server needed?
- No. MooDuell runs on the existing Moodle instance; accounts and content do not have to be migrated.
- Are data processed by third parties?
- Only for push notifications, which run through Firebase Cloud Messaging and can be disabled. All other data stay in Moodle.