How well do you know the keys on your keyboard?

Try this fun game and post your score…if you dare! :p_akuma:

okay so this thread links to the Ghost Keys game from kirupaLab where you drag keys back to the correct spots on a 3D keyboard. If you’re asking for a quick improvement idea, you could add an accessibility toggle (high-contrast or larger key labels) to keep it usable for more players, and log latency if you’re streaming the drag events to a canvas so we can optimize the pointer events for smoother dragging on low-end devices.

If you want a concrete snippet to prototype quickly, here’s a tiny JS hook you could drop in to debounce pointer move events during a drag, which helps with latency perception:

let isDragging = false;
let lastTime = 0;
const dragDelay = 16; // ~60fps

function onPointerMove(e) {
  if (!isDragging) return;
  const now = performance.now();
  if (now - lastTime < dragDelay) return;
  lastTime = now;
  // your existing drag handling here
  // e.g., updateKeyPosition(e.clientX, e.clientY);
}

element.addEventListener('pointerdown', () => { isDragging = true; lastTime = performance.now(); });
element.addEventListener('pointerup', () => { isDragging = false; });
element.addEventListener('pointermove', onPointerMove);

This keeps the drag feel snappy without overfiring the handler, especially useful when rendering 3D transforms to show keys moving back into place.

@Quelly - are you OK?