From e52f3b7cc7255e71e8517fdc42c574959fed878d Mon Sep 17 00:00:00 2001 From: doomtube Date: Thu, 8 Jan 2026 16:47:19 -0500 Subject: [PATCH] Fix: Enable Chess960 mode in chess.js for FEN parsing --- frontend/src/lib/components/ChessGameOverlay.svelte | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/frontend/src/lib/components/ChessGameOverlay.svelte b/frontend/src/lib/components/ChessGameOverlay.svelte index 55980b8..2664751 100644 --- a/frontend/src/lib/components/ChessGameOverlay.svelte +++ b/frontend/src/lib/components/ChessGameOverlay.svelte @@ -73,6 +73,7 @@ try { const chessModule = await import('chess.js'); Chess = chessModule.Chess; + // Don't initialize with default position - we'll load Chess960 FEN later game = new Chess(); // Set up match event handler @@ -127,7 +128,7 @@ // Load the Chess960 starting position if (game && payload.fen) { - game.load(payload.fen); + game.load(payload.fen, { chess960: true }); updateBoardDisplay(); } @@ -143,7 +144,7 @@ myColor = payload.whiteId === session?.user_id ? 'w' : 'b'; if (game) { - game.load(payload.fen); + game.load(payload.fen, { chess960: true }); } gamesOverlay.setMode('playing'); @@ -163,7 +164,7 @@ myColor = null; // Spectator has no color if (game) { - game.load(payload.fen); + game.load(payload.fen, { chess960: true }); } gamesOverlay.setMode('spectating'); @@ -183,7 +184,7 @@ function handleOpponentMove(payload) { if (game) { - game.load(payload.fen); + game.load(payload.fen, { chess960: true }); } moveHistory = [...moveHistory, payload.move];