js-chess-engine 2.3.6 → 2.3.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -29,7 +29,7 @@ yarn add js-chess-engine
29
29
 
30
30
  ```typescript
31
31
  // Import Game class and stateless functions
32
- import { Game, moves, status, move, aiMove, getFen } from 'js-chess-engine'
32
+ import { Game, moves, status, move, ai, getFen } from 'js-chess-engine'
33
33
 
34
34
  // Import types for TypeScript
35
35
  import type { BoardConfig, PieceSymbol, MovesMap, AILevel } from 'js-chess-engine'
@@ -40,37 +40,31 @@ const game = new Game()
40
40
  ### CommonJS (Node.js)
41
41
 
42
42
  ```javascript
43
- const { Game, moves, status, move, aiMove, getFen } = require('js-chess-engine')
43
+ const { Game, moves, status, move, ai, getFen } = require('js-chess-engine')
44
44
 
45
45
  const game = new Game()
46
46
  ```
47
47
 
48
- ### React / Modern JavaScript
49
-
50
- ```typescript
51
- import { Game } from 'js-chess-engine'
52
- import type { BoardConfig, MovesMap } from 'js-chess-engine'
53
-
54
- const game = new Game()
55
- const allMoves: MovesMap = game.moves()
56
- ```
57
-
58
48
  ## Examples
59
49
 
60
- **js-chess-engine-app** - React application example with js-chess-engine REST API backend (without persistent storage) - [GitHub](https://github.com/josefjadrny/js-chess-engine-app) or [LIVE DEMO](http://chess.josefjadrny.info/)
50
+ Two full example applications are available:
51
+
52
+ **--> Server** — [js-chess-engine-app](https://github.com/josefjadrny/js-chess-engine-app) — React + Node.js REST API, engine runs on the server — [LIVE DEMO](http://chess.josefjadrny.info/)
61
53
 
62
- **Note:** Additional examples for v2 (server, console, AI match) will be added in a future release.
54
+ **->> Browser** [js-chess-engine-fe-app](https://github.com/josefjadrny/js-chess-engine-fe-app) Pure frontend React app, engine runs entirely in the browser, no server needed — [LIVE DEMO](http://chess-fe.josefjadrny.info/)
63
55
 
64
56
  ## Documentation
65
57
 
66
58
  You have two options for using this engine:
67
59
 
68
- - [Option 1 - With in-memory (Game class)](#option-1---with-in-memory)
69
- - [Option 2 - Without in-memory (Stateless functions)](#option-2---without-in-memory)
60
+ - [Option 1 - Game class (stateful)](#option-1---game-class-stateful)
61
+ - [Option 2 - Stateless functions](#option-2---stateless-functions)
70
62
 
71
- ### Option 1 - With in-memory
63
+ Both options use the same transposition table cache for AI performance. The difference is that the **Game class** stores the board state internally and tracks move history, while **stateless functions** require a board configuration on each call.
72
64
 
73
- Use the Game class to create and manage a chess game. In this mode, the game state is cached in memory for better performance.
65
+ ### Option 1 - Game class (stateful)
66
+
67
+ Use the `Game` class to manage chess game state. All methods use the internally stored board — no need to pass configuration each time. The class also tracks full move history.
74
68
 
75
69
  ```typescript
76
70
  import { Game } from 'js-chess-engine'
@@ -196,6 +190,8 @@ console.log(result.move) // {"E2": "E4"}
196
190
  console.log(result.board) // Full board state
197
191
  ```
198
192
 
193
+ <a id="ai"></a>
194
+
199
195
  **ai**
200
196
 
201
197
  `game.ai(options?)` - Calculate the best move using AI. **Returns both the move and board state**.
@@ -205,7 +201,7 @@ Params:
205
201
  - `level` number (_optional_) - AI difficulty level (1-5). See [Computer AI](#computer-ai) section. Default: `3`
206
202
  - `play` boolean (_optional_) - Whether to apply the move to the game. Default: `true`. If `false`, returns the move without modifying the game state, and `board` will contain the current state (before the move).
207
203
  - `analysis` boolean (_optional_) - If `true`, also returns an `analysis` payload containing all root legal moves scored by the engine's search (sorted best → worst). Default: `false`.
208
- - `ttSizeMB` number (_optional_) - Transposition table size in MB (0 to disable, 0.25-256). Default: **auto-scaled by AI level**. See [Auto-Scaling Transposition Table](#transposition-table) for details.
204
+ - `ttSizeMB` number (_optional_) - Transposition table size in MB (0 to disable, min 0.25 MB). Default: **auto-scaled by AI level**. See [Auto-Scaling Transposition Table](#transposition-table) for details.
209
205
  - `depth` object (_optional_) - Override AI search depth parameters. Omitted fields fall back to the level's defaults (see [Computer AI](#computer-ai) table).
210
206
  - `base` number (_optional_) - Base search depth. Integer > 0.
211
207
  - `extended` number (_optional_) - Max adaptive extension depth. Integer 0-3.
@@ -308,16 +304,16 @@ const fen: string = game.exportFEN()
308
304
  // "rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1"
309
305
  ```
310
306
 
311
- ### Option 2 - Without in-memory
307
+ ### Option 2 - Stateless functions
312
308
 
313
- Call stateless functions directly without creating a Game object. This is ideal for serverless environments or when you want to manage state externally.
309
+ Call functions directly without creating a `Game` object. Each function takes a board configuration as its first parameter. Ideal for serverless environments or when you manage state externally (REST APIs, Redux, etc.).
314
310
 
315
311
  ```typescript
316
- import { move, moves, status, aiMove, ai, getFen } from 'js-chess-engine'
312
+ import { move, moves, status, ai, aiMove, getFen } from 'js-chess-engine'
317
313
  import type { BoardConfig, MovesMap } from 'js-chess-engine'
318
314
  ```
319
315
 
320
- These functions require a board configuration for each call (either a BoardConfig object or FEN string).
316
+ The stateless functions are wrappers around the same engine used by the `Game` class the only signature difference is the `boardConfiguration` first parameter.
321
317
 
322
318
  #### API Description
323
319
 
@@ -328,13 +324,12 @@ These functions require a board configuration for each call (either a BoardConfi
328
324
  Params:
329
325
  - `boardConfiguration` BoardConfig | string (_mandatory_) - Board [configuration](#board-configuration) (JSON object or FEN string)
330
326
 
331
- Returns: `MovesMap` - Object mapping from-squares to arrays of to-squares
327
+ Returns: `MovesMap`
332
328
 
333
329
  ```typescript
334
330
  import { moves } from 'js-chess-engine'
335
331
  import type { MovesMap, BoardConfig } from 'js-chess-engine'
336
332
 
337
- // From BoardConfig object
338
333
  const config: BoardConfig = { /* ... */ }
339
334
  const allMoves: MovesMap = moves(config)
340
335
  // {"E2": ["E3", "E4"], "B1": ["A3", "C3"], ...}
@@ -398,13 +393,13 @@ import type { BoardConfig } from 'js-chess-engine'
398
393
  // Move from FEN string
399
394
  const config1: BoardConfig = move('rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1', 'E2', 'E4')
400
395
 
401
- // Move on existing config
396
+ // Chain moves
402
397
  const config2: BoardConfig = move(config1, 'E7', 'E5')
403
398
  ```
404
399
 
405
400
  **aiMove**
406
401
 
407
- > ⚠️ **DEPRECATED:** This function will be removed in v3.0.0. Use [`ai()`](#ai-1) instead, which returns both the move and board state.
402
+ > ⚠️ **DEPRECATED:** This function will be removed in v3.0.0. Use [`ai()`](#ai) instead, which returns both the move and board state.
408
403
 
409
404
  `aiMove(boardConfiguration, level)` - Calculate and return the best move using AI. **Returns only the move** (v1 API compatible).
410
405
 
@@ -415,16 +410,14 @@ Params:
415
410
  Returns: `HistoryEntry` - The played move (e.g., `{"E2": "E4"}`)
416
411
 
417
412
  ```typescript
418
- import { aiMove } from 'js-chess-engine'
419
- import type { HistoryEntry, AILevel } from 'js-chess-engine'
413
+ import { aiMove, ai } from 'js-chess-engine'
420
414
 
421
415
  const fen = 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1'
422
- const level: AILevel = 4
423
- const move: HistoryEntry = aiMove(fen, level)
424
- console.log(move) // {"E2": "E4"}
416
+
417
+ // Deprecated
418
+ const played = aiMove(fen, 4) // {"E2": "E4"}
425
419
 
426
420
  // RECOMMENDED: Use ai() instead
427
- import { ai } from 'js-chess-engine'
428
421
  const result = ai(fen, { level: 4 })
429
422
  console.log(result.move) // {"E2": "E4"}
430
423
  console.log(result.board) // Full board state
@@ -432,22 +425,7 @@ console.log(result.board) // Full board state
432
425
 
433
426
  **ai**
434
427
 
435
- `ai(boardConfiguration, options?)` - Calculate the best move using AI. **Returns both the move and board state**.
436
-
437
- Params:
438
- - `boardConfiguration` BoardConfig | string (_mandatory_) - Board [configuration](#board-configuration)
439
- - `options` object (_optional_) - Configuration options:
440
- - `level` number (_optional_) - AI difficulty level (1-5). Default: `3`
441
- - `play` boolean (_optional_) - Whether to apply the move to the board. Default: `true`. If `false`, returns the move without modifying the board state, and `board` will contain the current state (before the move).
442
- - `analysis` boolean (_optional_) - If `true`, also returns an `analysis` payload containing all root legal moves scored by the engine's search (sorted best → worst). Default: `false`.
443
- - `ttSizeMB` number (_optional_) - Transposition table size in MB (0 to disable, 0.25-256). Default: **auto-scaled by AI level**. See [Auto-Scaling Transposition Table](#transposition-table) for details.
444
- - `depth` object (_optional_) - Override AI search depth parameters. Omitted fields fall back to the level's defaults (see [Computer AI](#computer-ai) table).
445
- - `base` number (_optional_) - Base search depth. Integer > 0.
446
- - `extended` number (_optional_) - Max adaptive extension depth. Integer 0-3.
447
- - `check` boolean (_optional_) - Enable check extensions.
448
- - `quiescence` number (_optional_) - Quiescence search depth. Integer >= 0.
449
-
450
- Returns: `{ move: HistoryEntry, board: BoardConfig, analysis?: Array<{ move: HistoryEntry, score: number }>, depth?: number, nodesSearched?: number, bestScore?: number }` - Object containing the move and board state (current state if `play=false`, updated state if `play=true`). Extra fields are returned only when `analysis: true`.
428
+ `ai(boardConfiguration, options?)` - Stateless equivalent of [`game.ai()`](#ai). **Same options and return type** see the [Game class `ai()` docs](#ai) for full parameter documentation.
451
429
 
452
430
  ```typescript
453
431
  import { ai } from 'js-chess-engine'
@@ -461,35 +439,14 @@ console.log(result1.move) // {"E2": "E4"}
461
439
  console.log(result1.board.turn) // "black" (updated after move)
462
440
 
463
441
  // Analysis mode: get move without applying it
464
- const result2 = ai(fen, { level: 4, play: false })
465
- console.log(result2.move) // {"E2": "E4"}
466
- console.log(result2.board.turn) // "white" (current state, before move)
467
-
468
- // Root move scoring (debug/inspection)
469
- const result2b = ai(fen, { level: 4, play: false, analysis: true })
470
- console.log(result2b.analysis?.slice(0, 5)) // [{ move: {"E2": "E4"}, score: 12 }, ...]
471
- console.log(result2b.bestScore)
472
- console.log(result2b.depth)
473
- console.log(result2b.nodesSearched)
474
-
475
- // Use default level 3
476
- const result3 = ai(fen)
477
- console.log(result3.move) // AI move with level 3
478
-
479
- // TT size auto-scales by level (see Auto-Scaling Transposition Table section)
480
- const result4 = ai(fen, { level: 5 })
481
- console.log(result4.move) // Level 5: 40 MB Node.js / 20 MB browser (auto)
482
-
483
- // Override TT size manually if needed
484
- const result5 = ai(fen, { level: 3, ttSizeMB: 128 })
485
- console.log(result5.move) // Force 128MB cache
486
-
487
- // Ultra-lightweight mode for low-end devices
488
- const result6 = ai(fen, { level: 2, ttSizeMB: 0.5 })
489
- console.log(result6.move) // Force 512KB cache
442
+ const result2 = ai(fen, { level: 4, play: false, analysis: true })
443
+ console.log(result2.analysis?.slice(0, 5)) // [{ move: {"E2": "E4"}, score: 12 }, ...]
444
+ console.log(result2.bestScore)
445
+ console.log(result2.depth)
446
+ console.log(result2.nodesSearched)
490
447
 
491
448
  // Custom depth overrides
492
- const result7 = ai(fen, { level: 3, depth: { base: 5, quiescence: 3 } })
449
+ const result3 = ai(fen, { level: 3, depth: { base: 5, quiescence: 3 } })
493
450
  ```
494
451
 
495
452
  ### Board Configuration
@@ -595,16 +552,15 @@ The engine includes a sophisticated AI based on the Minimax algorithm with alpha
595
552
 
596
553
  ```typescript
597
554
  import { Game } from 'js-chess-engine'
598
- import type { AILevel } from 'js-chess-engine'
599
555
 
600
556
  const game = new Game()
601
557
 
602
558
  // Different difficulty levels
603
- game.aiMove(1) // Beginner
604
- game.aiMove(2) // Easy
605
- game.aiMove(3) // Intermediate (default)
606
- game.aiMove(4) // Advanced
607
- game.aiMove(5) // Expert
559
+ game.ai({ level: 1 }) // Beginner
560
+ game.ai({ level: 2 }) // Easy
561
+ game.ai({ level: 3 }) // Intermediate (default)
562
+ game.ai({ level: 4 }) // Advanced
563
+ game.ai({ level: 5 }) // Expert
608
564
  ```
609
565
 
610
566
  **Implementation Highlights:**
@@ -733,9 +689,9 @@ game.move('E2', 'E4') // Returns move object: {"E2": "E4"}
733
689
  game.move('E2', 'E4') // Returns full BoardConfig object
734
690
  ```
735
691
 
736
- ### 3. `aiMove()` API - Now v1 Compatible
692
+ ### 3. `aiMove()` API - Restored for Migration (Deprecated)
737
693
 
738
- The `aiMove()` function has been **restored to v1 API compatibility**.
694
+ The `aiMove()` function has been **restored to v1 API compatibility** to ease migration, but is deprecated and will be removed in v3.0.0.
739
695
 
740
696
  **v1 Behavior:**
741
697
 
@@ -752,7 +708,7 @@ aiMove(config, 3) // Returns move object: {"E2": "E4"} ✅ v1 compatible
752
708
  **New `ai()` function** - For users who need both move and board state:
753
709
 
754
710
  ```typescript
755
- ai(config, 3) // Returns: { move: {"E2": "E4"}, board: {...} }
711
+ ai(config, { level: 3 }) // Returns: { move: {"E2": "E4"}, board: {...} }
756
712
  ```
757
713
 
758
714
  > ⚠️ **DEPRECATION NOTICE:** `aiMove()` is deprecated and will be removed in **v3.0.0**. Migrate to `ai()` for better functionality.
@@ -28,7 +28,7 @@ export declare class AIEngine {
28
28
  *
29
29
  * @param board - Current board state
30
30
  * @param level - AI difficulty level (1-5, default 3)
31
- * @param ttSizeMB - Transposition table size in MB (0 to disable, 0.25-256 MB, auto-scaled by level)
31
+ * @param ttSizeMB - Transposition table size in MB (0 to disable, min 0.25 MB, auto-scaled by level)
32
32
  * @returns Best move found by the AI
33
33
  */
34
34
  findBestMove(board: InternalBoard, level?: AILevel, ttSizeMB?: number, depth?: {
@@ -39,7 +39,7 @@ class AIEngine {
39
39
  *
40
40
  * @param board - Current board state
41
41
  * @param level - AI difficulty level (1-5, default 3)
42
- * @param ttSizeMB - Transposition table size in MB (0 to disable, 0.25-256 MB, auto-scaled by level)
42
+ * @param ttSizeMB - Transposition table size in MB (0 to disable, min 0.25 MB, auto-scaled by level)
43
43
  * @returns Best move found by the AI
44
44
  */
45
45
  findBestMove(board, level = 3, ttSizeMB = 16, depth) {
@@ -40,7 +40,7 @@ class KillerMoves {
40
40
  return;
41
41
  if (move.flags & types_1.MoveFlag.CAPTURE)
42
42
  return; // captures are ordered separately
43
- const [k1, k2] = this.killers[ply];
43
+ const k1 = this.killers[ply][0];
44
44
  if (k1 && k1.from === move.from && k1.to === move.to)
45
45
  return;
46
46
  this.killers[ply][1] = k1;
@@ -1 +1 @@
1
- {"version":3,"file":"MoveOrdering.js","sourceRoot":"","sources":["../../src/ai/MoveOrdering.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MoveOrdering.js","sourceRoot":"","sources":["../../src/ai/MoveOrdering.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAEH,oCAAyD;AAEzD,MAAM,WAAW,GAA2B;IACxC,CAAC,aAAK,CAAC,KAAK,CAAC,EAAE,CAAC;IAChB,CAAC,aAAK,CAAC,UAAU,CAAC,EAAE,GAAG;IACvB,CAAC,aAAK,CAAC,UAAU,CAAC,EAAE,GAAG;IACvB,CAAC,aAAK,CAAC,YAAY,CAAC,EAAE,GAAG;IACzB,CAAC,aAAK,CAAC,YAAY,CAAC,EAAE,GAAG;IACzB,CAAC,aAAK,CAAC,YAAY,CAAC,EAAE,GAAG;IACzB,CAAC,aAAK,CAAC,YAAY,CAAC,EAAE,GAAG;IACzB,CAAC,aAAK,CAAC,UAAU,CAAC,EAAE,GAAG;IACvB,CAAC,aAAK,CAAC,UAAU,CAAC,EAAE,GAAG;IACvB,CAAC,aAAK,CAAC,WAAW,CAAC,EAAE,GAAG;IACxB,CAAC,aAAK,CAAC,WAAW,CAAC,EAAE,GAAG;IACxB,CAAC,aAAK,CAAC,UAAU,CAAC,EAAE,KAAK;IACzB,CAAC,aAAK,CAAC,UAAU,CAAC,EAAE,KAAK;CAC5B,CAAC;AAEF,MAAa,WAAW;IACZ,OAAO,CAAoD;IAClD,MAAM,CAAS;IAEhC,YAAY,SAAiB,EAAE;QAC3B,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IACtE,CAAC;IAED,KAAK;QACD,IAAI,CAAC,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAC;IAC3E,CAAC;IAED,KAAK,CAAC,IAAkB,EAAE,GAAW;QACjC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO;QAC1C,IAAI,IAAI,CAAC,KAAK,GAAG,gBAAQ,CAAC,OAAO;YAAE,OAAO,CAAC,kCAAkC;QAE7E,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE;YAAE,OAAO;QAE7D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC;IAChC,CAAC;IAED,QAAQ,CAAC,IAAkB,EAAE,GAAW;QACpC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM;YAAE,OAAO,KAAK,CAAC;QAChD,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,OAAO,CAAC,CAAC,CACL,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YAClD,CAAC,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC,CACrD,CAAC;IACN,CAAC;CACJ;AAhCD,kCAgCC;AAED,SAAS,WAAW,CAAC,IAAkB;IACnC,wCAAwC;IACxC,MAAM,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;IACpD,MAAM,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IAC9C,OAAO,MAAM,GAAG,EAAE,GAAG,QAAQ,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAa,YAAY;IACJ,KAAK,CAAiB;IACtB,MAAM,CAAa;IACnB,CAAC,CAAS;IACnB,MAAM,GAAW,CAAC,CAAC;IAE3B,YACI,KAAqB,EACrB,MAA2B,EAC3B,OAA2B,EAC3B,GAAW;QAEX,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;QACnB,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC;QACtB,MAAM,MAAM,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAEtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC9B,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;YACnB,IAAI,KAAK,GAAG,CAAC,CAAC;YAEd,IAAI,MAAM,IAAI,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,EAAE,EAAE,CAAC;gBACzD,KAAK,IAAI,UAAU,CAAC;YACxB,CAAC;YAED,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,gBAAQ,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,cAAc,KAAK,aAAK,CAAC,WAAW,IAAI,CAAC,CAAC,cAAc,KAAK,aAAK,CAAC,WAAW,CAAC,EAAE,CAAC;gBACvH,KAAK,IAAI,SAAS,CAAC;YACvB,CAAC;YAED,IAAI,CAAC,CAAC,KAAK,GAAG,gBAAQ,CAAC,OAAO,EAAE,CAAC;gBAC7B,KAAK,IAAI,SAAS,GAAG,WAAW,CAAC,CAAC,CAAC,CAAC;YACxC,CAAC;YAED,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;gBACtC,KAAK,IAAI,SAAS,CAAC;YACvB,CAAC;YAED,MAAM,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;QACtB,CAAC;QACD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACzB,CAAC;IAED,yDAAyD;IACzD,QAAQ;QACJ,MAAM,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAC;QAC1C,IAAI,MAAM,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QAE7B,2BAA2B;QAC3B,IAAI,OAAO,GAAG,MAAM,CAAC;QACrB,IAAI,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QAC/B,KAAK,IAAI,CAAC,GAAG,MAAM,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAClC,IAAI,MAAM,CAAC,CAAC,CAAC,GAAG,SAAS,EAAE,CAAC;gBACxB,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC;gBACtB,OAAO,GAAG,CAAC,CAAC;YAChB,CAAC;QACL,CAAC;QAED,0BAA0B;QAC1B,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACrB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;YAC9B,KAAK,CAAC,MAAM,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC;YAC/B,KAAK,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC;YACzB,MAAM,CAAC,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;CACJ;AAnED,oCAmEC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Search.d.ts","sourceRoot":"","sources":["../../src/ai/Search.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAgD,MAAM,UAAU,CAAC;AAMvF,OAAO,EAAS,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOxD,qBAAa,MAAM;IACf,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,WAAW,CAAc;gBAErB,QAAQ,GAAE,MAAW;IAKjC,KAAK,IAAI,IAAI;IAKb,YAAY,CACR,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAU,EACrB,cAAc,GAAE,OAAc,EAC9B,OAAO,GAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAO,GACrC,YAAY,GAAG,IAAI;IA8HtB,OAAO,CAAC,OAAO;IAiGf,OAAO,CAAC,UAAU;IAgElB;;;;OAIG;IACH,OAAO,CAAC,aAAa;CAUxB"}
1
+ {"version":3,"file":"Search.d.ts","sourceRoot":"","sources":["../../src/ai/Search.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,aAAa,EAAgD,MAAM,UAAU,CAAC;AAMvF,OAAO,EAAS,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOxD,qBAAa,MAAM;IACf,OAAO,CAAC,aAAa,CAAK;IAE1B,OAAO,CAAC,SAAS,CAAK;IACtB,OAAO,CAAC,cAAc,CAAQ;IAE9B,OAAO,CAAC,kBAAkB,CAA4B;IACtD,OAAO,CAAC,WAAW,CAAc;gBAErB,QAAQ,GAAE,MAAW;IAKjC,KAAK,IAAI,IAAI;IAKb,YAAY,CACR,KAAK,EAAE,aAAa,EACpB,SAAS,EAAE,MAAM,EACjB,SAAS,GAAE,MAAU,EACrB,cAAc,GAAE,OAAc,EAC9B,OAAO,GAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAO,GACrC,YAAY,GAAG,IAAI;IA8HtB,OAAO,CAAC,OAAO;IAiGf,OAAO,CAAC,UAAU;IAoElB;;;;OAIG;IACH,OAAO,CAAC,aAAa;CAUxB"}
package/dist/ai/Search.js CHANGED
@@ -234,9 +234,14 @@ class Search {
234
234
  alpha = standPat;
235
235
  if (qDepth >= this.qMaxDepth)
236
236
  return standPat;
237
- // Generate pseudo-legal moves, filter to forcing (captures + promotions)
237
+ // Generate pseudo-legal moves, collect forcing (captures + promotions)
238
238
  const allMoves = (0, MoveGenerator_1.generatePseudoLegalMoves)(board);
239
- const forcing = allMoves.filter(m => (m.flags & types_1.MoveFlag.CAPTURE) || (m.flags & types_1.MoveFlag.PROMOTION));
239
+ const forcingMask = types_1.MoveFlag.CAPTURE | types_1.MoveFlag.PROMOTION;
240
+ const forcing = [];
241
+ for (let i = 0; i < allMoves.length; i++) {
242
+ if (allMoves[i].flags & forcingMask)
243
+ forcing.push(allMoves[i]);
244
+ }
240
245
  const tt = this.transpositionTable;
241
246
  const ttMove = tt ? tt.getBestMove(board.zobristHash) : null;
242
247
  const selector = new MoveOrdering_1.MoveSelector(forcing, ttMove, this.killerMoves, ply);
@@ -1 +1 @@
1
- {"version":3,"file":"Search.js","sourceRoot":"","sources":["../../src/ai/Search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Search.js","sourceRoot":"","sources":["../../src/ai/Search.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zobrist.d.ts","sourceRoot":"","sources":["../../src/core/zobrist.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,WAAW,EAAiB,aAAa,EAAE,MAAM,UAAU,CAAC;AAmC5E;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,IAAI,CA0ClC;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAyC/D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,WAAW,EACjB,EAAE,EAAE,WAAW,GAChB,MAAM,CAYR;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,KAAK,EACpB,MAAM,EAAE,WAAW,GACpB,MAAM,CASR;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM/C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAC9B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,EACrB,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,GACtB,MAAM,CAkBR;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,WAAW,GAAG,IAAI,EAC7B,SAAS,EAAE,WAAW,GAAG,IAAI,GAC9B,MAAM,CAkBR;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAMtF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAM3F"}
1
+ {"version":3,"file":"zobrist.d.ts","sourceRoot":"","sources":["../../src/core/zobrist.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,KAAK,EAAE,WAAW,EAAiB,aAAa,EAAE,MAAM,UAAU,CAAC;AA+B5E;;;;;GAKG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAqClC;AAID;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,aAAa,GAAG,MAAM,CAqC/D;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,WAAW,EACjB,EAAE,EAAE,WAAW,GAChB,MAAM,CAQR;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,KAAK,EACpB,MAAM,EAAE,WAAW,GACpB,MAAM,CAKR;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,kBAAkB,CAC9B,IAAI,EAAE,MAAM,EACZ,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,EACrB,aAAa,EAAE,OAAO,EACtB,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,EACrB,YAAY,EAAE,OAAO,GACtB,MAAM,CAcR;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAC/B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,WAAW,GAAG,IAAI,EAC7B,SAAS,EAAE,WAAW,GAAG,IAAI,GAC9B,MAAM,CAcR;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAEtF;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,GAAG,MAAM,CAE3F"}
@@ -38,10 +38,6 @@ let castlingKeys = [];
38
38
  * [file] -> random bigint (8 files)
39
39
  */
40
40
  let enPassantKeys = [];
41
- /**
42
- * Flag to check if Zobrist keys are initialized
43
- */
44
- let initialized = false;
45
41
  // ==================== Initialization ====================
46
42
  /**
47
43
  * Initialize Zobrist hash tables with random 64-bit numbers
@@ -50,9 +46,6 @@ let initialized = false;
50
46
  * with a fixed value for deterministic hashing.
51
47
  */
52
48
  function initZobrist() {
53
- if (initialized) {
54
- return;
55
- }
56
49
  // Initialize pseudo-random number generator with seed
57
50
  let seed = 12345n;
58
51
  const rand64 = () => {
@@ -84,7 +77,6 @@ function initZobrist() {
84
77
  for (let file = 0; file < 8; file++) {
85
78
  enPassantKeys[file] = rand64();
86
79
  }
87
- initialized = true;
88
80
  }
89
81
  // ==================== Hash Computation ====================
90
82
  /**
@@ -94,9 +86,6 @@ function initZobrist() {
94
86
  * @returns 64-bit Zobrist hash
95
87
  */
96
88
  function computeZobristHash(board) {
97
- if (!initialized) {
98
- initZobrist();
99
- }
100
89
  let hash = 0n;
101
90
  // XOR piece positions
102
91
  for (let square = 0; square < constants_1.TOTAL_SQUARES; square++) {
@@ -141,9 +130,6 @@ function computeZobristHash(board) {
141
130
  * @returns Updated hash
142
131
  */
143
132
  function updateHashMove(hash, piece, from, to) {
144
- if (!initialized) {
145
- initZobrist();
146
- }
147
133
  // Remove piece from old square
148
134
  hash ^= pieceKeys[piece][from];
149
135
  // Add piece to new square
@@ -159,9 +145,6 @@ function updateHashMove(hash, piece, from, to) {
159
145
  * @returns Updated hash
160
146
  */
161
147
  function updateHashCapture(hash, capturedPiece, square) {
162
- if (!initialized) {
163
- initZobrist();
164
- }
165
148
  // Remove captured piece
166
149
  hash ^= pieceKeys[capturedPiece][square];
167
150
  return hash;
@@ -173,9 +156,6 @@ function updateHashCapture(hash, capturedPiece, square) {
173
156
  * @returns Updated hash with toggled side
174
157
  */
175
158
  function toggleSide(hash) {
176
- if (!initialized) {
177
- initZobrist();
178
- }
179
159
  return hash ^ sideKey;
180
160
  }
181
161
  /**
@@ -193,9 +173,6 @@ function toggleSide(hash) {
193
173
  * @returns Updated hash
194
174
  */
195
175
  function updateHashCastling(hash, whiteShortOld, whiteShortNew, whiteLongOld, whiteLongNew, blackShortOld, blackShortNew, blackLongOld, blackLongNew) {
196
- if (!initialized) {
197
- initZobrist();
198
- }
199
176
  // XOR out old castling rights
200
177
  if (whiteShortOld)
201
178
  hash ^= castlingKeys[0];
@@ -225,9 +202,6 @@ function updateHashCastling(hash, whiteShortOld, whiteShortNew, whiteLongOld, wh
225
202
  * @returns Updated hash
226
203
  */
227
204
  function updateHashEnPassant(hash, oldSquare, newSquare) {
228
- if (!initialized) {
229
- initZobrist();
230
- }
231
205
  // XOR out old en passant
232
206
  if (oldSquare !== null) {
233
207
  const oldFile = oldSquare % 8;
@@ -249,9 +223,6 @@ function updateHashEnPassant(hash, oldSquare, newSquare) {
249
223
  * @returns Updated hash
250
224
  */
251
225
  function addPieceToHash(hash, piece, square) {
252
- if (!initialized) {
253
- initZobrist();
254
- }
255
226
  return hash ^ pieceKeys[piece][square];
256
227
  }
257
228
  /**
@@ -263,9 +234,6 @@ function addPieceToHash(hash, piece, square) {
263
234
  * @returns Updated hash
264
235
  */
265
236
  function removePieceFromHash(hash, piece, square) {
266
- if (!initialized) {
267
- initZobrist();
268
- }
269
237
  return hash ^ pieceKeys[piece][square];
270
238
  }
271
239
  // Initialize on module load
@@ -1 +1 @@
1
- {"version":3,"file":"zobrist.js","sourceRoot":"","sources":["../../src/core/zobrist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zobrist.js","sourceRoot":"","sources":["../../src/core/zobrist.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -84,7 +84,7 @@ export declare class Game {
84
84
  * @param options - Optional configuration object
85
85
  * @param options.level - AI difficulty level (1-5, default: 3). Values > 5 are clamped to 5.
86
86
  * @param options.play - Whether to apply the move to the game (default: true). If false, only returns the move without modifying game state.
87
- * @param options.ttSizeMB - Transposition table size in MB (0 to disable, 0.25-256). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
87
+ * @param options.ttSizeMB - Transposition table size in MB (0 to disable, min 0.25 MB). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
88
88
  * @returns Object containing the move and board configuration (current state if play=false, updated state if play=true)
89
89
  */
90
90
  ai(options?: {
@@ -147,7 +147,7 @@ export declare function aiMove(config: BoardConfig | string, level?: number): Hi
147
147
  * @param options - Optional configuration object
148
148
  * @param options.level - AI difficulty level (1-5, default: 3)
149
149
  * @param options.play - Whether to apply the move to the game (default: true). If false, only returns the move without modifying game state.
150
- * @param options.ttSizeMB - Transposition table size in MB (0 to disable, 0.25-256). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
150
+ * @param options.ttSizeMB - Transposition table size in MB (0 to disable, min 0.25 MB). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
151
151
  * @returns Object containing the move and board configuration (current state if play=false, updated state if play=true)
152
152
  */
153
153
  export declare function ai(config: BoardConfig | string, options?: {
package/dist/index.js CHANGED
@@ -227,7 +227,7 @@ class Game {
227
227
  * @param options - Optional configuration object
228
228
  * @param options.level - AI difficulty level (1-5, default: 3). Values > 5 are clamped to 5.
229
229
  * @param options.play - Whether to apply the move to the game (default: true). If false, only returns the move without modifying game state.
230
- * @param options.ttSizeMB - Transposition table size in MB (0 to disable, 0.25-256). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
230
+ * @param options.ttSizeMB - Transposition table size in MB (0 to disable, min 0.25 MB). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
231
231
  * @returns Object containing the move and board configuration (current state if play=false, updated state if play=true)
232
232
  */
233
233
  ai(options = {}) {
@@ -235,10 +235,10 @@ class Game {
235
235
  const level = Math.max(1, Math.min(5, requestedLevel));
236
236
  const play = options.play ?? true;
237
237
  const analysis = options.analysis ?? false;
238
- // Allow 0 to disable TT, or 0.25-256 MB range
238
+ // Allow 0 to disable TT, or >= 0.25 MB
239
239
  // Default: auto-scaled by AI level (lower levels use less memory, higher levels use more)
240
240
  const defaultSize = (0, TranspositionTable_1.getRecommendedTTSize)(level);
241
- const ttSizeMB = options.ttSizeMB === 0 ? 0 : Math.max(0.25, Math.min(256, options.ttSizeMB ?? defaultSize));
241
+ const ttSizeMB = options.ttSizeMB === 0 ? 0 : Math.max(0.25, options.ttSizeMB ?? defaultSize);
242
242
  // Validate level (requested value)
243
243
  if (requestedLevel < 1 || requestedLevel > 5) {
244
244
  throw new Error('AI level must be between 1 and 5');
@@ -401,7 +401,7 @@ function aiMove(config, level = 3) {
401
401
  * @param options - Optional configuration object
402
402
  * @param options.level - AI difficulty level (1-5, default: 3)
403
403
  * @param options.play - Whether to apply the move to the game (default: true). If false, only returns the move without modifying game state.
404
- * @param options.ttSizeMB - Transposition table size in MB (0 to disable, 0.25-256). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
404
+ * @param options.ttSizeMB - Transposition table size in MB (0 to disable, min 0.25 MB). Default: auto-scaled by level (e.g., level 3: 2 MB Node.js, 1 MB browser)
405
405
  * @returns Object containing the move and board configuration (current state if play=false, updated state if play=true)
406
406
  */
407
407
  function ai(config, options = {}) {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,79 +1,11 @@
1
1
  /**
2
2
  * Constants for js-chess-engine v2
3
3
  */
4
- import { Color, Column, Row, PieceSymbol, Piece } from '../types';
4
+ import { Column, Row } from '../types';
5
5
  export declare const BOARD_SIZE = 8;
6
6
  export declare const TOTAL_SQUARES = 64;
7
7
  export declare const COLUMNS: readonly Column[];
8
8
  export declare const ROWS: readonly Row[];
9
- export declare const PIECES: {
10
- readonly KING_W: "K";
11
- readonly QUEEN_W: "Q";
12
- readonly ROOK_W: "R";
13
- readonly BISHOP_W: "B";
14
- readonly KNIGHT_W: "N";
15
- readonly PAWN_W: "P";
16
- readonly KING_B: "k";
17
- readonly QUEEN_B: "q";
18
- readonly ROOK_B: "r";
19
- readonly BISHOP_B: "b";
20
- readonly KNIGHT_B: "n";
21
- readonly PAWN_B: "p";
22
- };
23
- export declare const COLORS: {
24
- WHITE: Color;
25
- BLACK: Color;
26
- };
27
- export declare const PIECE_VALUES: Record<Piece, number>;
28
- /**
29
- * Piece-square tables for positional evaluation
30
- * From white's perspective (flipped for black)
31
- */
32
- export declare const PAWN_PST: readonly number[];
33
- export declare const KNIGHT_PST: readonly number[];
34
- export declare const BISHOP_PST: readonly number[];
35
- export declare const ROOK_PST: readonly number[];
36
- export declare const QUEEN_PST: readonly number[];
37
- export declare const KING_PST_MG: readonly number[];
38
- export declare const KING_PST_EG: readonly number[];
39
- export declare const AI_LEVELS: readonly [1, 2, 3, 4, 5];
40
- /**
41
- * AI depth mapping by level
42
- */
43
- export declare const AI_DEPTH_BY_LEVEL: Record<number, {
44
- BASE: number;
45
- EXTENDED: number;
46
- }>;
47
- export declare const SCORE: {
48
- MIN: number;
49
- MAX: number;
50
- MATE: number;
51
- DRAW: number;
52
- INFINITE: number;
53
- };
54
- /**
55
- * Direction offsets for piece movement (0-based indexing)
56
- *
57
- * Board layout (0-63):
58
- * 56 57 58 59 60 61 62 63 (Rank 8)
59
- * 48 49 50 51 52 53 54 55 (Rank 7)
60
- * ...
61
- * 8 9 10 11 12 13 14 15 (Rank 2)
62
- * 0 1 2 3 4 5 6 7 (Rank 1)
63
- * A B C D E F G H
64
- */
65
- export declare const DIRECTION: {
66
- NORTH: number;
67
- SOUTH: number;
68
- EAST: number;
69
- WEST: number;
70
- NORTH_EAST: number;
71
- NORTH_WEST: number;
72
- SOUTH_EAST: number;
73
- SOUTH_WEST: number;
74
- };
75
- export declare const KNIGHT_MOVES: number[];
76
- export declare const KING_MOVES: number[];
77
9
  export declare const CASTLING: {
78
10
  WHITE_SHORT: {
79
11
  kingFrom: number;
@@ -100,24 +32,4 @@ export declare const CASTLING: {
100
32
  rookTo: number;
101
33
  };
102
34
  };
103
- export declare const TT_SIZE = 1000000;
104
- export declare const STARTING_FEN = "rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1";
105
- /**
106
- * Map internal piece enum to public piece symbol
107
- */
108
- export declare const PIECE_TO_SYMBOL: Record<Piece, PieceSymbol | null>;
109
- /**
110
- * Map public piece symbol to internal piece enum
111
- */
112
- export declare const SYMBOL_TO_PIECE: Record<PieceSymbol, Piece>;
113
- export declare const EVAL_WEIGHTS: {
114
- DOUBLED_PAWN: number;
115
- ISOLATED_PAWN: number;
116
- PASSED_PAWN: number;
117
- PAWN_CHAIN: number;
118
- ROOK_OPEN_FILE: number;
119
- ROOK_SEVENTH_RANK: number;
120
- MOBILITY: number;
121
- KING_PAWN_SHIELD: number;
122
- };
123
35
  //# sourceMappingURL=constants.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,UAAU,CAAC;AAIlE,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,aAAa,KAAK,CAAC;AAEhC,eAAO,MAAM,OAAO,EAAE,SAAS,MAAM,EAA6C,CAAC;AACnF,eAAO,MAAM,IAAI,EAAE,SAAS,GAAG,EAA6C,CAAC;AAI7E,eAAO,MAAM,MAAM;;;;;;;;;;;;;CAaT,CAAC;AAIX,eAAO,MAAM,MAAM;WACG,KAAK;WACL,KAAK;CAC1B,CAAC;AAIF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAc9C,CAAC;AAIF;;;GAGG;AAGH,eAAO,MAAM,QAAQ,EAAE,SAAS,MAAM,EASrC,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EASvC,CAAC;AAGF,eAAO,MAAM,UAAU,EAAE,SAAS,MAAM,EASvC,CAAC;AAGF,eAAO,MAAM,QAAQ,EAAE,SAAS,MAAM,EASrC,CAAC;AAGF,eAAO,MAAM,SAAS,EAAE,SAAS,MAAM,EAStC,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EASxC,CAAC;AAGF,eAAO,MAAM,WAAW,EAAE,SAAS,MAAM,EASxC,CAAC;AAIF,eAAO,MAAM,SAAS,0BAA2B,CAAC;AAElD;;GAEG;AACH,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAMhF,CAAC;AAIF,eAAO,MAAM,KAAK;;;;;;CAMjB,CAAC;AAIF;;;;;;;;;;GAUG;AACH,eAAO,MAAM,SAAS;;;;;;;;;CASrB,CAAC;AAGF,eAAO,MAAM,YAAY,UAExB,CAAC;AAGF,eAAO,MAAM,UAAU,UAEtB,CAAC;AAIF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;CAyBpB,CAAC;AAIF,eAAO,MAAM,OAAO,UAAU,CAAC;AAI/B,eAAO,MAAM,YAAY,6DAA6D,CAAC;AAIvF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,KAAK,EAAE,WAAW,GAAG,IAAI,CAc7D,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,WAAW,EAAE,KAAK,CAatD,CAAC;AAIF,eAAO,MAAM,YAAY;;;;;;;;;CASxB,CAAC"}
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;AAIvC,eAAO,MAAM,UAAU,IAAI,CAAC;AAC5B,eAAO,MAAM,aAAa,KAAK,CAAC;AAEhC,eAAO,MAAM,OAAO,EAAE,SAAS,MAAM,EAA6C,CAAC;AACnF,eAAO,MAAM,IAAI,EAAE,SAAS,GAAG,EAA6C,CAAC;AAI7E,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;CAyBpB,CAAC"}
@@ -3,181 +3,12 @@
3
3
  * Constants for js-chess-engine v2
4
4
  */
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EVAL_WEIGHTS = exports.SYMBOL_TO_PIECE = exports.PIECE_TO_SYMBOL = exports.STARTING_FEN = exports.TT_SIZE = exports.CASTLING = exports.KING_MOVES = exports.KNIGHT_MOVES = exports.DIRECTION = exports.SCORE = exports.AI_DEPTH_BY_LEVEL = exports.AI_LEVELS = exports.KING_PST_EG = exports.KING_PST_MG = exports.QUEEN_PST = exports.ROOK_PST = exports.BISHOP_PST = exports.KNIGHT_PST = exports.PAWN_PST = exports.PIECE_VALUES = exports.COLORS = exports.PIECES = exports.ROWS = exports.COLUMNS = exports.TOTAL_SQUARES = exports.BOARD_SIZE = void 0;
7
- const types_1 = require("../types");
6
+ exports.CASTLING = exports.ROWS = exports.COLUMNS = exports.TOTAL_SQUARES = exports.BOARD_SIZE = void 0;
8
7
  // ==================== Board Constants ====================
9
8
  exports.BOARD_SIZE = 8;
10
9
  exports.TOTAL_SQUARES = 64;
11
10
  exports.COLUMNS = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H'];
12
11
  exports.ROWS = ['1', '2', '3', '4', '5', '6', '7', '8'];
13
- // ==================== Piece Constants ====================
14
- exports.PIECES = {
15
- KING_W: 'K',
16
- QUEEN_W: 'Q',
17
- ROOK_W: 'R',
18
- BISHOP_W: 'B',
19
- KNIGHT_W: 'N',
20
- PAWN_W: 'P',
21
- KING_B: 'k',
22
- QUEEN_B: 'q',
23
- ROOK_B: 'r',
24
- BISHOP_B: 'b',
25
- KNIGHT_B: 'n',
26
- PAWN_B: 'p',
27
- };
28
- // ==================== Color Constants ====================
29
- exports.COLORS = {
30
- WHITE: 'white',
31
- BLACK: 'black',
32
- };
33
- // ==================== Piece Values (Centipawns) ====================
34
- exports.PIECE_VALUES = {
35
- [types_1.Piece.EMPTY]: 0,
36
- [types_1.Piece.WHITE_PAWN]: 100,
37
- [types_1.Piece.WHITE_KNIGHT]: 320,
38
- [types_1.Piece.WHITE_BISHOP]: 330,
39
- [types_1.Piece.WHITE_ROOK]: 500,
40
- [types_1.Piece.WHITE_QUEEN]: 900,
41
- [types_1.Piece.WHITE_KING]: 20000,
42
- [types_1.Piece.BLACK_PAWN]: 100,
43
- [types_1.Piece.BLACK_KNIGHT]: 320,
44
- [types_1.Piece.BLACK_BISHOP]: 330,
45
- [types_1.Piece.BLACK_ROOK]: 500,
46
- [types_1.Piece.BLACK_QUEEN]: 900,
47
- [types_1.Piece.BLACK_KING]: 20000,
48
- };
49
- // ==================== Piece-Square Tables ====================
50
- /**
51
- * Piece-square tables for positional evaluation
52
- * From white's perspective (flipped for black)
53
- */
54
- // Pawn piece-square table
55
- exports.PAWN_PST = [
56
- 0, 0, 0, 0, 0, 0, 0, 0,
57
- 50, 50, 50, 50, 50, 50, 50, 50,
58
- 10, 10, 20, 30, 30, 20, 10, 10,
59
- 5, 5, 10, 25, 25, 10, 5, 5,
60
- 0, 0, 0, 20, 20, 0, 0, 0,
61
- 5, -5, -10, 0, 0, -10, -5, 5,
62
- 5, 10, 10, -20, -20, 10, 10, 5,
63
- 0, 0, 0, 0, 0, 0, 0, 0
64
- ];
65
- // Knight piece-square table
66
- exports.KNIGHT_PST = [
67
- -50, -40, -30, -30, -30, -30, -40, -50,
68
- -40, -20, 0, 0, 0, 0, -20, -40,
69
- -30, 0, 10, 15, 15, 10, 0, -30,
70
- -30, 5, 15, 20, 20, 15, 5, -30,
71
- -30, 0, 15, 20, 20, 15, 0, -30,
72
- -30, 5, 10, 15, 15, 10, 5, -30,
73
- -40, -20, 0, 5, 5, 0, -20, -40,
74
- -50, -40, -30, -30, -30, -30, -40, -50
75
- ];
76
- // Bishop piece-square table
77
- exports.BISHOP_PST = [
78
- -20, -10, -10, -10, -10, -10, -10, -20,
79
- -10, 0, 0, 0, 0, 0, 0, -10,
80
- -10, 0, 5, 10, 10, 5, 0, -10,
81
- -10, 5, 5, 10, 10, 5, 5, -10,
82
- -10, 0, 10, 10, 10, 10, 0, -10,
83
- -10, 10, 10, 10, 10, 10, 10, -10,
84
- -10, 5, 0, 0, 0, 0, 5, -10,
85
- -20, -10, -10, -10, -10, -10, -10, -20
86
- ];
87
- // Rook piece-square table
88
- exports.ROOK_PST = [
89
- 0, 0, 0, 0, 0, 0, 0, 0,
90
- 5, 10, 10, 10, 10, 10, 10, 5,
91
- -5, 0, 0, 0, 0, 0, 0, -5,
92
- -5, 0, 0, 0, 0, 0, 0, -5,
93
- -5, 0, 0, 0, 0, 0, 0, -5,
94
- -5, 0, 0, 0, 0, 0, 0, -5,
95
- -5, 0, 0, 0, 0, 0, 0, -5,
96
- 0, 0, 0, 5, 5, 0, 0, 0
97
- ];
98
- // Queen piece-square table
99
- exports.QUEEN_PST = [
100
- -20, -10, -10, -5, -5, -10, -10, -20,
101
- -10, 0, 0, 0, 0, 0, 0, -10,
102
- -10, 0, 5, 5, 5, 5, 0, -10,
103
- -5, 0, 5, 5, 5, 5, 0, -5,
104
- 0, 0, 5, 5, 5, 5, 0, -5,
105
- -10, 5, 5, 5, 5, 5, 0, -10,
106
- -10, 0, 5, 0, 0, 0, 0, -10,
107
- -20, -10, -10, -5, -5, -10, -10, -20
108
- ];
109
- // King piece-square table (middlegame)
110
- exports.KING_PST_MG = [
111
- -30, -40, -40, -50, -50, -40, -40, -30,
112
- -30, -40, -40, -50, -50, -40, -40, -30,
113
- -30, -40, -40, -50, -50, -40, -40, -30,
114
- -30, -40, -40, -50, -50, -40, -40, -30,
115
- -20, -30, -30, -40, -40, -30, -30, -20,
116
- -10, -20, -20, -20, -20, -20, -20, -10,
117
- 20, 20, 0, 0, 0, 0, 20, 20,
118
- 20, 30, 10, 0, 0, 10, 30, 20
119
- ];
120
- // King piece-square table (endgame)
121
- exports.KING_PST_EG = [
122
- -50, -40, -30, -20, -20, -30, -40, -50,
123
- -30, -20, -10, 0, 0, -10, -20, -30,
124
- -30, -10, 20, 30, 30, 20, -10, -30,
125
- -30, -10, 30, 40, 40, 30, -10, -30,
126
- -30, -10, 30, 40, 40, 30, -10, -30,
127
- -30, -10, 20, 30, 30, 20, -10, -30,
128
- -30, -30, 0, 0, 0, 0, -30, -30,
129
- -50, -30, -30, -30, -30, -30, -30, -50
130
- ];
131
- // ==================== AI Constants ====================
132
- exports.AI_LEVELS = [1, 2, 3, 4, 5];
133
- /**
134
- * AI depth mapping by level
135
- */
136
- exports.AI_DEPTH_BY_LEVEL = {
137
- 1: { BASE: 1, EXTENDED: 2 },
138
- 2: { BASE: 2, EXTENDED: 2 },
139
- 3: { BASE: 3, EXTENDED: 4 }, // Increased from v1 (was 2-4)
140
- 4: { BASE: 4, EXTENDED: 5 }, // Increased from v1 (was 3-4)
141
- 5: { BASE: 5, EXTENDED: 6 },
142
- };
143
- // ==================== Score Constants ====================
144
- exports.SCORE = {
145
- MIN: -20000,
146
- MAX: 20000,
147
- MATE: 19000,
148
- DRAW: 0,
149
- INFINITE: 30000,
150
- };
151
- // ==================== Direction Offsets ====================
152
- /**
153
- * Direction offsets for piece movement (0-based indexing)
154
- *
155
- * Board layout (0-63):
156
- * 56 57 58 59 60 61 62 63 (Rank 8)
157
- * 48 49 50 51 52 53 54 55 (Rank 7)
158
- * ...
159
- * 8 9 10 11 12 13 14 15 (Rank 2)
160
- * 0 1 2 3 4 5 6 7 (Rank 1)
161
- * A B C D E F G H
162
- */
163
- exports.DIRECTION = {
164
- NORTH: 8,
165
- SOUTH: -8,
166
- EAST: 1,
167
- WEST: -1,
168
- NORTH_EAST: 9,
169
- NORTH_WEST: 7,
170
- SOUTH_EAST: -7,
171
- SOUTH_WEST: -9,
172
- };
173
- // Knight move offsets
174
- exports.KNIGHT_MOVES = [
175
- -17, -15, -10, -6, 6, 10, 15, 17
176
- ];
177
- // King move offsets
178
- exports.KING_MOVES = [
179
- -9, -8, -7, -1, 1, 7, 8, 9
180
- ];
181
12
  // ==================== Castling Constants ====================
182
13
  exports.CASTLING = {
183
14
  WHITE_SHORT: {
@@ -205,55 +36,4 @@ exports.CASTLING = {
205
36
  rookTo: 59, // D8
206
37
  },
207
38
  };
208
- // ==================== Transposition Table Constants ====================
209
- exports.TT_SIZE = 1000000; // 1M entries (~100MB)
210
- // ==================== FEN Constants ====================
211
- exports.STARTING_FEN = 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1';
212
- // ==================== Piece Symbol Mapping ====================
213
- /**
214
- * Map internal piece enum to public piece symbol
215
- */
216
- exports.PIECE_TO_SYMBOL = {
217
- [types_1.Piece.EMPTY]: null,
218
- [types_1.Piece.WHITE_PAWN]: 'P',
219
- [types_1.Piece.WHITE_KNIGHT]: 'N',
220
- [types_1.Piece.WHITE_BISHOP]: 'B',
221
- [types_1.Piece.WHITE_ROOK]: 'R',
222
- [types_1.Piece.WHITE_QUEEN]: 'Q',
223
- [types_1.Piece.WHITE_KING]: 'K',
224
- [types_1.Piece.BLACK_PAWN]: 'p',
225
- [types_1.Piece.BLACK_KNIGHT]: 'n',
226
- [types_1.Piece.BLACK_BISHOP]: 'b',
227
- [types_1.Piece.BLACK_ROOK]: 'r',
228
- [types_1.Piece.BLACK_QUEEN]: 'q',
229
- [types_1.Piece.BLACK_KING]: 'k',
230
- };
231
- /**
232
- * Map public piece symbol to internal piece enum
233
- */
234
- exports.SYMBOL_TO_PIECE = {
235
- 'P': types_1.Piece.WHITE_PAWN,
236
- 'N': types_1.Piece.WHITE_KNIGHT,
237
- 'B': types_1.Piece.WHITE_BISHOP,
238
- 'R': types_1.Piece.WHITE_ROOK,
239
- 'Q': types_1.Piece.WHITE_QUEEN,
240
- 'K': types_1.Piece.WHITE_KING,
241
- 'p': types_1.Piece.BLACK_PAWN,
242
- 'n': types_1.Piece.BLACK_KNIGHT,
243
- 'b': types_1.Piece.BLACK_BISHOP,
244
- 'r': types_1.Piece.BLACK_ROOK,
245
- 'q': types_1.Piece.BLACK_QUEEN,
246
- 'k': types_1.Piece.BLACK_KING,
247
- };
248
- // ==================== Evaluation Weights ====================
249
- exports.EVAL_WEIGHTS = {
250
- DOUBLED_PAWN: -10,
251
- ISOLATED_PAWN: -20,
252
- PASSED_PAWN: 50,
253
- PAWN_CHAIN: 10,
254
- ROOK_OPEN_FILE: 15,
255
- ROOK_SEVENTH_RANK: 20,
256
- MOBILITY: 5,
257
- KING_PAWN_SHIELD: 10,
258
- };
259
39
  //# sourceMappingURL=constants.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/utils/constants.ts"],"names":[],"mappings":";AAAA;;GAEG;;;AAIH,4DAA4D;AAE/C,QAAA,UAAU,GAAG,CAAC,CAAC;AACf,QAAA,aAAa,GAAG,EAAE,CAAC;AAEnB,QAAA,OAAO,GAAsB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AACtE,QAAA,IAAI,GAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;AAE7E,+DAA+D;AAElD,QAAA,QAAQ,GAAG;IACpB,WAAW,EAAE;QACT,QAAQ,EAAE,CAAC,EAAG,KAAK;QACnB,MAAM,EAAE,CAAC,EAAK,KAAK;QACnB,QAAQ,EAAE,CAAC,EAAG,KAAK;QACnB,MAAM,EAAE,CAAC,EAAK,KAAK;KACtB;IACD,UAAU,EAAE;QACR,QAAQ,EAAE,CAAC,EAAG,KAAK;QACnB,MAAM,EAAE,CAAC,EAAK,KAAK;QACnB,QAAQ,EAAE,CAAC,EAAG,KAAK;QACnB,MAAM,EAAE,CAAC,EAAK,KAAK;KACtB;IACD,WAAW,EAAE;QACT,QAAQ,EAAE,EAAE,EAAE,KAAK;QACnB,MAAM,EAAE,EAAE,EAAI,KAAK;QACnB,QAAQ,EAAE,EAAE,EAAE,KAAK;QACnB,MAAM,EAAE,EAAE,EAAI,KAAK;KACtB;IACD,UAAU,EAAE;QACR,QAAQ,EAAE,EAAE,EAAE,KAAK;QACnB,MAAM,EAAE,EAAE,EAAI,KAAK;QACnB,QAAQ,EAAE,EAAE,EAAE,KAAK;QACnB,MAAM,EAAE,EAAE,EAAI,KAAK;KACtB;CACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "js-chess-engine",
3
- "version": "2.3.6",
3
+ "version": "2.3.8",
4
4
  "description": "Simple and fast Node.js chess engine with configurable AI and no dependencies",
5
5
  "keywords": [
6
6
  "chess",