← 返回首页
GitHub - DedInc/learnplay: A Minecraft mod that integrates Spaced Repetition System (SRS) flashcards into gameplay. It interrupts the game with review cards based on specific in-game triggers like dying, breaking blocks, or timers. · GitHub
Skip to content

Navigation Menu

Toggle navigation
Sign in
Appearance settings
Search or jump to...

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Resetting focus

DedInc/learnplay

Go to file
Code

Repository files navigation

More items

LearnPlay

A Minecraft mod that integrates Spaced Repetition System (SRS) flashcards into gameplay. It interrupts the game with review cards based on specific in-game triggers like dying, breaking blocks, or timers.

Works on Fabric, Forge, NeoForge, and Quilt via Architectury.

Motivation

Most "educational games" are boring because the gameplay is an afterthought. This mod takes the opposite approach: you play normal Minecraft, and the learning is injected via triggers. The idea is to associate the "pain" of a death or the repetition of grinding resources with memory reinforcement.

Mechanics

Spaced Repetition (SRS)

The mod uses a fixed interval system for flashcards. It's not as complex as Anki's algorithm, but it gets the job done for casual review.

Intervals: 10m -> 20m -> 1d -> 3d -> 7d -> 14d -> 30d -> 60d -> 120d -> 240d

  • Remember: Moves card to the next interval.
  • Forgot: Resets card to 10 minutes (Level 0).

Triggers

Events that force a review session:

  • Death: Configurable. Default is every 2 deaths.
  • Timer: Fixed interrupt every X minutes.
  • Block Break: Triggers after breaking N blocks (supports whitelist).
  • Entity Kill: Triggers after killing N mobs.
  • Chat: Regex matching (rarely used, but exists).

Usage

  1. Install the .jar and Architectury API.
  2. Press I in-game to open the manager.
  3. Create a Deck and add Cards manually in the GUI.
  4. Enable the deck.

The mod saves progress per player UUID in config/learnplay/player_progress/.

Configuration

Main config file: config/learnplay/config.json.

You can edit this while the game is running; it should hot-reload on the next trigger check, but a restart is safer.

{ "triggers": { "enableDeathTrigger": true, "enableTimerTrigger": false, "deathTriggerEveryNDeaths": 2, "timerIntervalMinutes": 15, "blockBreakTriggerThreshold": 100, "blockBreakWhitelist": "stone,dirt,oak_log,iron_ore,diamond_ore", "entityKillTriggerThreshold": 10, "entityKillWhitelist": "zombie,skeleton,creeper,spider,enderman" }, "maxCardsPerSession": 20, "maxNewCardsPerDay": 10, "maxReviewsPerDay": 100, "pauseGameDuringReview": true, "showHudStats": false, "keybindCode": 73 }

Data Structure

If you want to mass-import cards, it's easier to generate the JSON files externally than using the in-game GUI.

Decks are located in config/learnplay/decks/. Format:

{ "id": "deck_math_101", "name": "Basic Math", "cards": [ { "id": "card_1", "question": "2 + 2", "answer": "4" } ] }

Build

Requires JDK 21+.

# Build all ./gradlew build # Specific loaders ./gradlew :fabric:build ./gradlew :neoforge:build

Output jars land in <loader>/build/libs/.

About

A Minecraft mod that integrates Spaced Repetition System (SRS) flashcards into gameplay. It interrupts the game with review cards based on specific in-game triggers like dying, breaking blocks, or timers.

Topics

Resources

License

Stars

1 star

Watchers

0 watching

Forks

Contributors

Languages

Footer

© 2026 GitHub, Inc.