A memory card matching game that runs inside MacroQuest. Flip cards, find matching pairs, and work your way through progressively harder levels. Cards use EverQuest spell icons as their artwork.
Start the script:
/lua run MemoryGame
Toggle the window open/closed:
/memorygame
The game window opens at 750x650 and can be resized freely.
- Click any face-down card (blue) to flip it over and reveal its spell icon pattern.
- Click a second face-down card to flip it.
- If the two cards have the same pattern, they're a match! Both cards lock in place.
- If they don't match, both cards flip back face-down after 3 seconds. You can click anywhere to dismiss them early.
- Keep going until every pair on the board is matched.
- Click Next Level to advance.
The timer starts on your first card click each level.
| Control | What it does |
|---|---|
| New Game | Resets to Level 1 (asks for confirmation; clears session stats) |
| Jump To Level + Go | Jump to any level up to 10 past your highest completed level |
| Next Level | Appears after completing a level; advances to the next one |
Jumping backwards resets your session stats.
Every move you make is classified into one of four categories:
| Move | Meaning |
|---|---|
| Remembered | You matched two cards, and you had already seen the second card before. Nice memory! |
| Guess | You matched two cards, but you'd never seen the second card. Lucky pick. |
| Forgot | Cards didn't match, but the correct match for one of them was face-down somewhere you'd already seen. You knew the answer and forgot. |
| Miss | Cards didn't match, and there was no way you could have known the right answer yet. No penalty — pure exploration. |
Level Stats track your current level. Session Stats accumulate across all levels played since starting the script.
Your best completion time per level is saved and shown in cyan. Beat it and you'll see a "NEW BEST TIME" message.
Levels get harder in three ways:
| What changes | How |
|---|---|
| Board size | Starts at 16 cards (4x4), grows every 5 levels up to 100 cards |
| Icons per card | Starts at 1, adds another icon every 10 levels (up to 9 in a 3x3 grid) |
| Pattern similarity | At level 50+, some cards use shuffled versions of existing icon sets. At level 100+, every pair must have a unique pattern (No Duplicate pairs) |
Available board sizes: 16, 20, 24, 30, 36, 42, 48, 56, 64, 72, 80, 90, 100.
| Color | Meaning |
|---|---|
| Blue | Face-down, waiting to be flipped |
| Tan/Beige | Currently flipped face-up |
| Green flash | Match found |
| Red flash | Mismatch |
| Grey | Already matched (during play) |
| Green fill (level complete) | Matched by remembering |
| Yellow fill (level complete) | Matched by guessing |
Progress is saved automatically to:
<MQ Config Dir>/MemoryGame/memorygame.lua
This stores your highest level reached and your best time/score for each level. Save data is shared across all characters.
To see detailed card generation info in the MQ console:
/lua run MemoryGame debug
example lvl 1:
[MemoryGame] Level 1: 16 cards (4x4), 1 icons/card, 8 pairs
[01] pos=1 key=194
[15] pos=2 key=54
[09] pos=3 key=24
[05] pos=4 key=76
[08] pos=5 key=168
[14] pos=6 key=56
[13] pos=7 key=56
[03] pos=8 key=6
[12] pos=9 key=214
[16] pos=10 key=54
[06] pos=11 key=76
[07] pos=12 key=168
[04] pos=13 key=6
[10] pos=14 key=24
[11] pos=15 key=214
[02] pos=16 key=194
example lvl 67:
[MemoryGame] Level 67: 100 cards (10x10), 7 icons/card, 50 pairs
[67] pos=1 key=193-165-37-179-160-197-99
[71] pos=2 key=63-2-16-137-209-31-49
[98] pos=3 key=0-127-211-56-151-70-161
[27] pos=4 key=145-28-175-194-96-61-53
...