js-chess-engine 2.3.6 → 2.3.7
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 +36 -82
- package/dist/ai/MoveOrdering.js +1 -1
- package/dist/ai/MoveOrdering.js.map +1 -1
- package/dist/ai/Search.d.ts.map +1 -1
- package/dist/ai/Search.js +7 -2
- package/dist/ai/Search.js.map +1 -1
- package/dist/core/zobrist.d.ts.map +1 -1
- package/dist/core/zobrist.js +0 -32
- package/dist/core/zobrist.js.map +1 -1
- package/dist/utils/constants.d.ts +1 -89
- package/dist/utils/constants.d.ts.map +1 -1
- package/dist/utils/constants.js +1 -221
- package/dist/utils/constants.js.map +1 -1
- package/package.json +1 -1
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,
|
|
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,21 +40,11 @@ const game = new Game()
|
|
|
40
40
|
### CommonJS (Node.js)
|
|
41
41
|
|
|
42
42
|
```javascript
|
|
43
|
-
const { Game, moves, status, move,
|
|
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
50
|
**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/)
|
|
@@ -65,12 +55,14 @@ const allMoves: MovesMap = game.moves()
|
|
|
65
55
|
|
|
66
56
|
You have two options for using this engine:
|
|
67
57
|
|
|
68
|
-
- [Option 1 -
|
|
69
|
-
- [Option 2 -
|
|
58
|
+
- [Option 1 - Game class (stateful)](#option-1---game-class-stateful)
|
|
59
|
+
- [Option 2 - Stateless functions](#option-2---stateless-functions)
|
|
60
|
+
|
|
61
|
+
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.
|
|
70
62
|
|
|
71
|
-
### Option 1 -
|
|
63
|
+
### Option 1 - Game class (stateful)
|
|
72
64
|
|
|
73
|
-
Use the Game class to
|
|
65
|
+
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
66
|
|
|
75
67
|
```typescript
|
|
76
68
|
import { Game } from 'js-chess-engine'
|
|
@@ -196,6 +188,8 @@ console.log(result.move) // {"E2": "E4"}
|
|
|
196
188
|
console.log(result.board) // Full board state
|
|
197
189
|
```
|
|
198
190
|
|
|
191
|
+
<a id="ai"></a>
|
|
192
|
+
|
|
199
193
|
**ai**
|
|
200
194
|
|
|
201
195
|
`game.ai(options?)` - Calculate the best move using AI. **Returns both the move and board state**.
|
|
@@ -308,16 +302,16 @@ const fen: string = game.exportFEN()
|
|
|
308
302
|
// "rnbqkbnr/pppppppp/8/8/4P3/8/PPPP1PPP/RNBQKBNR b KQkq e3 0 1"
|
|
309
303
|
```
|
|
310
304
|
|
|
311
|
-
### Option 2 -
|
|
305
|
+
### Option 2 - Stateless functions
|
|
312
306
|
|
|
313
|
-
Call
|
|
307
|
+
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
308
|
|
|
315
309
|
```typescript
|
|
316
|
-
import { move, moves, status,
|
|
310
|
+
import { move, moves, status, ai, aiMove, getFen } from 'js-chess-engine'
|
|
317
311
|
import type { BoardConfig, MovesMap } from 'js-chess-engine'
|
|
318
312
|
```
|
|
319
313
|
|
|
320
|
-
|
|
314
|
+
The stateless functions are wrappers around the same engine used by the `Game` class — the only signature difference is the `boardConfiguration` first parameter.
|
|
321
315
|
|
|
322
316
|
#### API Description
|
|
323
317
|
|
|
@@ -328,13 +322,12 @@ These functions require a board configuration for each call (either a BoardConfi
|
|
|
328
322
|
Params:
|
|
329
323
|
- `boardConfiguration` BoardConfig | string (_mandatory_) - Board [configuration](#board-configuration) (JSON object or FEN string)
|
|
330
324
|
|
|
331
|
-
Returns: `MovesMap`
|
|
325
|
+
Returns: `MovesMap`
|
|
332
326
|
|
|
333
327
|
```typescript
|
|
334
328
|
import { moves } from 'js-chess-engine'
|
|
335
329
|
import type { MovesMap, BoardConfig } from 'js-chess-engine'
|
|
336
330
|
|
|
337
|
-
// From BoardConfig object
|
|
338
331
|
const config: BoardConfig = { /* ... */ }
|
|
339
332
|
const allMoves: MovesMap = moves(config)
|
|
340
333
|
// {"E2": ["E3", "E4"], "B1": ["A3", "C3"], ...}
|
|
@@ -398,13 +391,13 @@ import type { BoardConfig } from 'js-chess-engine'
|
|
|
398
391
|
// Move from FEN string
|
|
399
392
|
const config1: BoardConfig = move('rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1', 'E2', 'E4')
|
|
400
393
|
|
|
401
|
-
//
|
|
394
|
+
// Chain moves
|
|
402
395
|
const config2: BoardConfig = move(config1, 'E7', 'E5')
|
|
403
396
|
```
|
|
404
397
|
|
|
405
398
|
**aiMove**
|
|
406
399
|
|
|
407
|
-
> ⚠️ **DEPRECATED:** This function will be removed in v3.0.0. Use [`ai()`](#ai
|
|
400
|
+
> ⚠️ **DEPRECATED:** This function will be removed in v3.0.0. Use [`ai()`](#ai) instead, which returns both the move and board state.
|
|
408
401
|
|
|
409
402
|
`aiMove(boardConfiguration, level)` - Calculate and return the best move using AI. **Returns only the move** (v1 API compatible).
|
|
410
403
|
|
|
@@ -415,16 +408,14 @@ Params:
|
|
|
415
408
|
Returns: `HistoryEntry` - The played move (e.g., `{"E2": "E4"}`)
|
|
416
409
|
|
|
417
410
|
```typescript
|
|
418
|
-
import { aiMove } from 'js-chess-engine'
|
|
419
|
-
import type { HistoryEntry, AILevel } from 'js-chess-engine'
|
|
411
|
+
import { aiMove, ai } from 'js-chess-engine'
|
|
420
412
|
|
|
421
413
|
const fen = 'rnbqkbnr/pppppppp/8/8/8/8/PPPPPPPP/RNBQKBNR w KQkq - 0 1'
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
414
|
+
|
|
415
|
+
// Deprecated
|
|
416
|
+
const played = aiMove(fen, 4) // {"E2": "E4"}
|
|
425
417
|
|
|
426
418
|
// RECOMMENDED: Use ai() instead
|
|
427
|
-
import { ai } from 'js-chess-engine'
|
|
428
419
|
const result = ai(fen, { level: 4 })
|
|
429
420
|
console.log(result.move) // {"E2": "E4"}
|
|
430
421
|
console.log(result.board) // Full board state
|
|
@@ -432,22 +423,7 @@ console.log(result.board) // Full board state
|
|
|
432
423
|
|
|
433
424
|
**ai**
|
|
434
425
|
|
|
435
|
-
`ai(boardConfiguration, options?)` -
|
|
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`.
|
|
426
|
+
`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
427
|
|
|
452
428
|
```typescript
|
|
453
429
|
import { ai } from 'js-chess-engine'
|
|
@@ -461,35 +437,14 @@ console.log(result1.move) // {"E2": "E4"}
|
|
|
461
437
|
console.log(result1.board.turn) // "black" (updated after move)
|
|
462
438
|
|
|
463
439
|
// Analysis mode: get move without applying it
|
|
464
|
-
const result2 = ai(fen, { level: 4, play: false })
|
|
465
|
-
console.log(result2.
|
|
466
|
-
console.log(result2.
|
|
467
|
-
|
|
468
|
-
|
|
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
|
|
440
|
+
const result2 = ai(fen, { level: 4, play: false, analysis: true })
|
|
441
|
+
console.log(result2.analysis?.slice(0, 5)) // [{ move: {"E2": "E4"}, score: 12 }, ...]
|
|
442
|
+
console.log(result2.bestScore)
|
|
443
|
+
console.log(result2.depth)
|
|
444
|
+
console.log(result2.nodesSearched)
|
|
490
445
|
|
|
491
446
|
// Custom depth overrides
|
|
492
|
-
const
|
|
447
|
+
const result3 = ai(fen, { level: 3, depth: { base: 5, quiescence: 3 } })
|
|
493
448
|
```
|
|
494
449
|
|
|
495
450
|
### Board Configuration
|
|
@@ -595,16 +550,15 @@ The engine includes a sophisticated AI based on the Minimax algorithm with alpha
|
|
|
595
550
|
|
|
596
551
|
```typescript
|
|
597
552
|
import { Game } from 'js-chess-engine'
|
|
598
|
-
import type { AILevel } from 'js-chess-engine'
|
|
599
553
|
|
|
600
554
|
const game = new Game()
|
|
601
555
|
|
|
602
556
|
// Different difficulty levels
|
|
603
|
-
game.
|
|
604
|
-
game.
|
|
605
|
-
game.
|
|
606
|
-
game.
|
|
607
|
-
game.
|
|
557
|
+
game.ai({ level: 1 }) // Beginner
|
|
558
|
+
game.ai({ level: 2 }) // Easy
|
|
559
|
+
game.ai({ level: 3 }) // Intermediate (default)
|
|
560
|
+
game.ai({ level: 4 }) // Advanced
|
|
561
|
+
game.ai({ level: 5 }) // Expert
|
|
608
562
|
```
|
|
609
563
|
|
|
610
564
|
**Implementation Highlights:**
|
|
@@ -733,9 +687,9 @@ game.move('E2', 'E4') // Returns move object: {"E2": "E4"}
|
|
|
733
687
|
game.move('E2', 'E4') // Returns full BoardConfig object
|
|
734
688
|
```
|
|
735
689
|
|
|
736
|
-
### 3. `aiMove()` API -
|
|
690
|
+
### 3. `aiMove()` API - Restored for Migration (Deprecated)
|
|
737
691
|
|
|
738
|
-
The `aiMove()` function has been **restored to v1 API compatibility
|
|
692
|
+
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
693
|
|
|
740
694
|
**v1 Behavior:**
|
|
741
695
|
|
|
@@ -752,7 +706,7 @@ aiMove(config, 3) // Returns move object: {"E2": "E4"} ✅ v1 compatible
|
|
|
752
706
|
**New `ai()` function** - For users who need both move and board state:
|
|
753
707
|
|
|
754
708
|
```typescript
|
|
755
|
-
ai(config, 3) // Returns: { move: {"E2": "E4"}, board: {...} }
|
|
709
|
+
ai(config, { level: 3 }) // Returns: { move: {"E2": "E4"}, board: {...} }
|
|
756
710
|
```
|
|
757
711
|
|
|
758
712
|
> ⚠️ **DEPRECATION NOTICE:** `aiMove()` is deprecated and will be removed in **v3.0.0**. Migrate to `ai()` for better functionality.
|
package/dist/ai/MoveOrdering.js
CHANGED
|
@@ -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
|
|
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":";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,
|
|
1
|
+
{"version":3,"file":"MoveOrdering.js","sourceRoot":"","sources":["../../src/ai/MoveOrdering.ts"],"names":[],"mappings":"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"}
|
package/dist/ai/Search.d.ts.map
CHANGED
|
@@ -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;
|
|
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,
|
|
237
|
+
// Generate pseudo-legal moves, collect forcing (captures + promotions)
|
|
238
238
|
const allMoves = (0, MoveGenerator_1.generatePseudoLegalMoves)(board);
|
|
239
|
-
const
|
|
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);
|
package/dist/ai/Search.js.map
CHANGED
|
@@ -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;
|
|
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"}
|
package/dist/core/zobrist.js
CHANGED
|
@@ -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
|
package/dist/core/zobrist.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"zobrist.js","sourceRoot":"","sources":["../../src/core/zobrist.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;
|
|
1
|
+
{"version":3,"file":"zobrist.js","sourceRoot":"","sources":["../../src/core/zobrist.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 {
|
|
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,
|
|
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"}
|
package/dist/utils/constants.js
CHANGED
|
@@ -3,181 +3,12 @@
|
|
|
3
3
|
* Constants for js-chess-engine v2
|
|
4
4
|
*/
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
exports.
|
|
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"}
|