Jeopardy Style Quiz

foxfabi's picture
Forums: 

H5P.Jeopardy  let you create a "Jeopardy" style quiz wich contains clues in different categories. As an author you create clues in the form of answer in different categories. The user must phrase their responses in the form of questions. If the contestant responds correctly, the clue's value is added to the contestant's score, and they can select a new clue from the board.

See an example at https://eduyard.ch/content/welt-hauptst%C3%A4dte

Source Code can be found at GitHub: https://github.com/foxfabi/h5p-jeopardy

Upload the attachment as an H5P library.

H5P file: 
otacke's picture

Hey, Foxfabi!

Very nice idea! Do you just want to provide it here, or would you like to put this on h5p.org as well? I guess this would require some changes (to UX and code), but we'll gladly support you with that.

From glancing at your package, those "bigger" things jumped to my mind (other things might pop up during UX or code review):

  • Your obfuscation of the correct answer will not prevent cheating, because the answers can still be obtained from the Jeopardy object in memory, and doesn't require much knowledge (one line of code) about using the developer console. In fact, I think you could have achieved the same effect by not storing the correct answer inside HTML with the button, but to simply retrieve it from memory. This would spare all the hassle with encrypting and decrypting and make the code much easier to read. There are ways to make that even harder, but still hardly perfect and not worth the effort IMHO.We have server side validation on our roadmap anyway, which will prevent cheating by peeking at memory. Also, I'm not sure if the license of crypto-js is compatible with the MIT license. They seem to be very similar, but I learned that without being a lawyer, those things can be hard to judge correctly.
  • Make sure everything runs smoothly on different window sizes, e.g. on mobile. The input field doesn't scale for instance, so it will get cut off on narrow screens. Also, the layout breaks on the wall screen if the width is reduced too much.
  • You could consider to implement the H5P question type contract like other question like content types do. This would allow to keep score within the host systems. xAPI might be a nice add-on, too, so people could not only learn about the final score, but also about "what went wrong". Might be interesting to know for teachers that most students know the right country to capitals in Europe, but not in Africa, etc.
  • Try to separate chunks of code and make it more readable by adding blank lines.
  • Remember that you can chain statements, especially when using jQuery. This also helps to make code more readable, IMHO.

If you need some support, just reach out. Keep the good momentum!

Cheers,
Oliver

foxfabi's picture

i think the content type could be usefull for other. i will review your inputs and hopefully soon start implementing them.