Anki add-on: RuneScape-Gamification

Anki Gamification inspired by RuneScape, code largely written by Chat-GPT. Currently there are 5 'skills' that users can gain experience in and level up: Focus, Curiosity, Endurance, Recall and Speed. FEATURES Focus: gain compounding (+0.5) XP for completing reviews in serial. The user receives 0.5 more XP each time they click 'Show Answer' and subsequently rating their answer (clicking again, good or easy) within 90 seconds of seeing the question. If the user does not do both of those actions in that time, or leaves the reviewing screen, exiting back into the deck overview/ dashboard, the XP reward will be reset to 0 and the user will have to build it back up again. This skill motivates the user to remained focused on the task at hand and avoid distractions. Curiosity: gain 1-5 XP (random drop style) for every 'new' card that changes into a 'learning' card. This skill motivates the user to continue to learn new cards. Endurance: gain 1-3 XP (random drop style) for every card reviewed - aka user clicked show answer and then rated their answer by clicking again, good or easy. This skill motivates the user to up their daily review counts. Recall: gain 1 XP if user clicks 'hard' on a review, 3 XP if they click 'good' and 5 XP if they click 'easy'. No XP awarded for clicking 'again'. This skill motivates the user to be accurate with their long term recall, ensuring the user doesn't focus too much on speeding through cards but finds a balance between speed and accuracy instead. Speed: gain 5 XP if user clicks Show Answer in less than 10 seconds after seeing a question, 3 XP if clicked in less than 15 seconds and 1 XP if clicked in less than 30 seconds. This skill motivates the user to get through reviews efficiently. When XP is awarded, the relevant skill symbols displayed on the bottom right of the screen temporarily turns orange. When there is sufficient XP to reach the next level, the users skill symbol turns green and the level is updated - over spilled XP falls into the next level. The XP needed for the next level can be viewed by simply hovering the user's mouse over the relevant skill symbol. Leveling and XP are based directly on RuneScape - God's speed to 99. You can move where the skill dock is by simply clicking at the top of the dock and dragging it off of the Anki GUI to have a floating dock or place it on the left side of the GUI. The skill dock may also be resized by finding edges and performing the usual click and drag. CHANGELOG Version 1.0.3 – 12-27-2022 Fixed Fixed version clash by updating code to be compatible with Anki 2.1.55/Qt 6 (thanks to @cjdduarte for the report) Fixed color reversion after XP reward when not in dark mode Version 1.0.2 – 12-22-2022 Added Added ability to move dock that contains skills (thanks to @cjdduarte for the report) Fixed Fixed size of bottom bar (thanks to @cjdduarte for the report) Version 1.0.1 – 12-20-2022 Added Added focus skill Added curiosity skill Hoping to add more fun animations for XP and leveling, a leaderboard, XP bonuses for reaching predefined daily goals, XP awards for reviewing done on other devices and more when Chat-GPT & I get a minute - XS 12/21/22

GitHub repository: xavierscherschligt/runescape-gamification
Repository description: Anki Gamification inspired by RuneScape, code largely written by Chat-GPT
Languages: Python