Commit | Line | Data |
---|---|---|
41534b92 | 1 | const variants = [ |
b99ce1fb | 2 | // TODO: https://mancala.fandom.com/wiki/William_Daniel_Troyka Cleopatra chess |
2ba476f3 BA |
3 | {name: 'Absorption', desc: 'Absorb powers'}, |
4 | // {name: 'Alapo', desc: 'Geometric Chess'}, | |
5 | // {name: 'Alice', desc: 'Both sides of the mirror'}, | |
6 | // {name: 'Align4', desc: 'Align four pawns'}, | |
7 | // {name: 'Allmate', desc: 'Mate any piece'}, | |
8 | // {name: 'Ambiguous', desc: "Play opponent's pieces"}, | |
9 | // {name: 'Antiking1', desc: 'Keep antiking in check', disp: 'Anti-King'}, | |
10 | // {name: 'Antimatter', desc: 'Dangerous collisions'}, | |
11 | // {name: 'Apocalypse', desc: 'The end of the world'}, | |
12 | // {name: 'Arena', desc: 'Middle battle'}, | |
13 | // {name: 'Atarigo', desc: 'First capture wins', disp: 'Atari-Go'}, | |
3a77a0b4 | 14 | {name: 'Atomic', desc: 'Explosive captures'}, |
2ba476f3 BA |
15 | // {name: 'Avalam', desc: 'Build towers'}, |
16 | // {name: 'Avalanche', desc: 'Pawnfalls'}, | |
17 | // {name: 'Ball', desc: 'Score a goal'}, | |
18 | // {name: 'Balaklava', desc: 'Meet the Mammoth'}, | |
19 | // {name: 'Bario', desc: 'A quantum story'}, | |
3a77a0b4 | 20 | {name: "Balanced", desc: "balanced chess"}, |
2ba476f3 BA |
21 | // {name: 'Baroque', desc: 'Exotic captures'},*/ |
22 | {name: "Benedict", desc: "Change colors"}, | |
23 | // {name: 'Berolina', desc: 'Pawns move diagonally'}, | |
24 | // {name: 'Bicolour', desc: 'Harassed kings'}, | |
25 | // {name: 'Brotherhood', desc: 'Friendly pieces'}, | |
26 | {name: 'Cannibal', desc: 'Capture powers'}, | |
27 | // {name: 'Capablanca', desc: 'Capablanca Chess', disp: 'Capablanca Chess'}, | |
28 | {name: 'Capture', desc: 'Mandatory captures'}, | |
29 | // {name: 'Castle', desc: 'Win by castling long'}, | |
bc2bc396 | 30 | {name: 'Chakart', desc: 'Capture the princess'}, |
2ba476f3 BA |
31 | // {name: 'Checkered', desc: 'Shared pieces'}, |
32 | // {name: 'Checkless', desc: 'No-check mode'}, | |
33 | {name: 'Chess960', disp: "Chess 960", desc: "Standard rules"}, | |
34 | // {name: 'Circular', desc: 'Run forward'}, | |
35 | // {name: 'Clorange', desc: 'A Clockwork Orange', disp: 'Clockwork Orange'}, | |
36 | // {name: 'Convert', desc: 'Convert enemy pieces'}, | |
37 | // {name: 'Copycat', desc: 'Borrow powers'}, | |
38 | // {name: 'Coregal', desc: 'Two royal pieces'}, | |
39 | // {name: 'Coronation', desc: 'Long live the Queen'}, | |
40 | {name: 'Crazyhouse', desc: 'Captures reborn'}, | |
41 | // {name: 'Crossing', desc: 'Cross the river'}, | |
42 | {name: 'Cylinder', desc: 'Neverending rows'}, | |
43 | // {name: 'Cwda', desc: 'New teams', disp: 'Different armies'}, | |
44 | {name: 'Dark', desc: 'In the shadow'}, | |
45 | // {name: 'Diamond', desc: 'Rotating board'}, | |
46 | // {name: 'Dice', desc: 'Roll the dice'}, | |
47 | // {name: 'Discoduel', desc: 'Enter the disco', disp: 'Disco Duel'}, | |
48 | // {name: 'Dobutsu', desc: "Let's catch the Lion!"}, | |
49 | // {name: 'Doublearmy', desc: '64 pieces on the board', disp: 'Double Army'}, | |
50 | {name: 'Doublemove', desc: 'Double moves'}, | |
51 | // {name: 'Dynamo', desc: 'Push and pull'}, | |
52 | // {name: 'Eightpieces', desc: 'Each piece is unique', disp: '8 Pieces'}, | |
53 | // {name: 'Emergo', desc: 'Stacking Checkers variant'}, | |
54 | // {name: 'Empire', desc: 'Empire versus Kingdom'}, | |
55 | // {name: 'Enpassant', desc: 'Capture en passant', disp: 'En-passant'}, | |
56 | // {name: 'Evolution', desc: 'Faster development'}, | |
57 | // {name: 'Extinction', desc: 'Capture all of a kind'}, | |
58 | // {name: 'Fanorona', desc: 'Malagasy Draughts'}, | |
59 | // {name: 'Football', desc: 'Score a goal'}, | |
60 | // {name: 'Forward', desc: 'Moving forward'}, | |
61 | // {name: 'Freecapture', desc: 'Capture both colors', disp: 'Free Capture'}, | |
62 | // {name: 'Fugue', desc: 'Baroque Music'}, | |
63 | // {name: 'Fullcavalry', desc: 'Lancers everywhere', disp: 'Full Cavalry'}, | |
64 | // {name: 'Fusion', desc: 'Fusion pieces (v1)'}, | |
8f57fbf2 | 65 | {name: 'Giveaway', desc: 'Lose all pieces'}, |
2ba476f3 BA |
66 | // {name: 'Gomoku', desc: 'Align five stones'}, |
67 | // {name: 'Grand', desc: 'Big board'}, | |
68 | // {name: 'Grasshopper', desc: 'Long jumps over pieces'}, | |
69 | // {name: 'Gridolina', desc: 'Jump the borders'}, | |
70 | // {name: 'Hamilton', desc: 'Walk on a graph'}, | |
535c464b | 71 | {name: 'Hex', desc: 'Connect sides'}, |
2ba476f3 BA |
72 | // {name: 'Hidden', desc: 'Unidentified pieces', disp: 'Strate-Go'}, |
73 | // {name: 'Hiddenqueen', desc: 'Queen disguised as a pawn', disp: 'Hidden Queen'}, | |
74 | // {name: 'Hoppelpoppel', desc: 'Knibis and Bisknis', disp: 'Hoppel-Poppel'}, | |
75 | // {name: 'Horde', desc: 'A pawns cloud'}, | |
76 | // {name: 'Hypnotic', desc: 'Mind control (v1)'}, | |
77 | // {name: 'Iceage', desc: 'Ice Age is coming!', disp: 'Ice Age'}, | |
78 | // {name: 'Interweave', desc: 'Interweaved colorbound teams'}, | |
79 | // {name: 'Isardam', desc: 'No paralyzed pieces'}, | |
80 | // {name: 'Janggi', desc: 'Korean Chess'}, | |
81 | // {name: 'Joker', desc: 'Replace pieces'}, | |
82 | // {name: 'Karouk', desc: 'Thai Chess (v3)', disp: 'Kar-Ouk'}, | |
83 | // {name: 'Kinglet', desc: 'Protect your pawns'}, | |
84 | // {name: 'Kingsmaker', desc: 'Promote into kings'}, | |
85 | // {name: 'Knightmate', desc: 'Mate the knight'}, | |
86 | // {name: 'Knightrelay', desc: 'Move like a knight'}, | |
87 | // {name: 'Konane', desc: 'Hawaiian Checkers'}, | |
88 | // {name: 'Koopa', desc: 'Stun & kick pieces'}, | |
89 | // {name: 'Koth', desc: 'King of the Hill', disp:'King of the Hill'}, | |
2ba476f3 BA |
90 | // {name: 'Madhouse', desc: 'Rearrange enemy pieces'}, |
91 | {name: 'Madrasi', desc: 'Paralyzed pieces'}, | |
92 | // {name: 'Magnetic', desc: 'Laws of attraction'}, | |
93 | // {name: 'Maharajah', desc: 'Augmented Queens'}, | |
94 | // {name: 'Makpong', desc: 'Thai Chess (v2)'}, | |
95 | // {name: 'Makruk', desc: 'Thai Chess (v1)'}, | |
96 | // {name: 'Maxima', desc: 'Occupy the enemy palace'}, | |
97 | // {name: 'Mesmer', desc: 'Mind control (v2)'}, | |
98 | // {name: 'Minishogi', desc: 'Shogi 5 x 5'}, | |
99 | // {name: 'Minixiangqi', desc: 'Xiangqi 7 x 7'}, | |
100 | // {name: 'Monocolor', desc: 'All of the same color'}, | |
101 | // {name: 'Monster', desc: 'White move twice'}, | |
102 | // {name: 'Musketeer', desc: 'New fairy pieces'}, | |
103 | // {name: 'Newzealand', desc: 'Kniros and Rosknis', disp: 'New-Zealand'}, | |
104 | // {name: 'Omega', desc: 'A wizard in the corner'}, | |
105 | // {name: 'Orda', desc: 'Mongolian Horde (v1)'}, | |
106 | // {name: 'Ordamirror', desc: 'Mongolian Horde (v2)', disp: 'Orda Mirror'}, | |
107 | // {name: 'Otage', desc: 'Capture and release hostages'}, | |
108 | // {name: 'Pacifist', desc: 'Convert & support'}, | |
109 | // {name: 'Pacosako', desc: 'Dance with the King', disp: 'Paco-Sako'}, | |
110 | // {name: 'Pandemonium', desc: 'Noise and confusion'}, | |
111 | // {name: 'Parachute', desc: 'Landing on the board'}, | |
112 | // {name: 'Pawnmassacre', desc: 'Pieces upside down', disp: 'Pawn Massacre'}, | |
113 | // {name: 'Pawns', desc: 'Reach the last rank (v1)'}, | |
114 | // {name: 'Pawnsking', desc: 'Reach the last rank (v2)', disp: 'Pawns & King'}, | |
115 | // {name: 'Perfect', desc: 'Powerful pieces'}, | |
116 | // {name: 'Pocketknight', desc: 'Knight in pocket', disp: 'Pocket Knight'}, | |
117 | {name: 'Progressive', desc: 'Play more and more moves'}, | |
118 | // {name: 'Racingkings', desc: 'Kings cross the 8x8 board', disp: 'Racing Kings'}, | |
119 | // {name: 'Rampage', desc: 'Move under cover'}, | |
120 | // {name: 'Relayup', desc: 'Upgrade pieces', disp: 'Relay-up'}, | |
121 | {name: 'Rifle', desc: 'Shoot pieces'}, | |
122 | {name: 'Recycle', desc: 'Reuse pieces'}, | |
123 | // {name: 'Refusal', desc: 'Do not play that!'}, | |
124 | // {name: 'Rollerball', desc: 'As in the movie'}, | |
125 | // {name: 'Rococo', desc: 'Capture on the edge'}, | |
126 | // {name: 'Royalrace', desc: 'Kings cross the 11x11 board', disp: 'Royal Race'}, | |
127 | // {name: 'Rugby', desc: 'Transform an essay'}, | |
128 | // {name: 'Schess', desc: 'Seirawan-Harper Chess', disp: 'S-Chess'}, | |
129 | // {name: 'Screen', desc: 'Free initial setup'}, | |
130 | // {name: 'Selfabsorb', desc: 'Fusion pieces (v2)', disp: 'Self-Absorption'}, | |
131 | // {name: 'Shako', desc: 'Non-conformism and utopia'}, | |
132 | // {name: 'Shatranj', desc: 'Ancient rules'}, | |
133 | // {name: 'Shinobi', desc: 'A story of invasion'}, | |
134 | // {name: 'Shogi', desc: 'Japanese Chess'}, | |
135 | // {name: 'Shogun', desc: "General's Chess"}, | |
136 | // {name: 'Sittuyin', desc: 'Burmese Chess'}, | |
137 | // {name: 'Spartan', desc: 'Spartan versus Persians'}, | |
138 | // {name: 'Squatter', desc: 'Squat last rank'}, | |
139 | // {name: 'Stealthbomb', desc: 'Beware the bomb'}, | |
2ba476f3 BA |
140 | // {name: 'Suction', desc: 'Attract opposite king'}, |
141 | // {name: 'Swap', desc: 'Dangerous captures'}, | |
142 | // {name: 'Switching', desc: "Exchange pieces' positions"}, | |
143 | // {name: 'Synchrone', desc: 'Play at the same time'}, | |
144 | // {name: 'Synochess', desc: 'Dynasty versus Kingdom'}, | |
145 | // {name: 'Takenmake', desc: 'Prolongated captures', disp: 'Take and make'}, | |
146 | {name: 'Teleport', desc: 'Reposition pieces'}, | |
147 | // {name: 'Tencubed', desc: 'Four new pieces'}, | |
148 | // {name: 'Threechecks', desc: 'Give three checks', disp: 'Three Checks'}, | |
149 | // {name: 'Titan', desc: 'Extra bishops and knights'}, | |
150 | // {name: 'Twokings', desc: 'Two kings', disp: 'Two Kings'}, | |
151 | // {name: 'Upsidedown', desc: 'Board upside down', disp: 'Upside-down'}, | |
152 | // {name: 'Vchess', desc: 'Pawns capture backward', disp: 'Victor Chess'}, | |
153 | // {name: 'Wildebeest', desc: 'Balanced sliders & leapers'}, | |
154 | // {name: 'Wormhole', desc: 'Squares disappear'}, | |
155 | // {name: 'Xiangqi', desc: 'Chinese Chess'}, | |
156 | // {name: 'Yote', desc: 'African Draughts'}, | |
157 | {name: "Zen", desc: "Reverse captures"} | |
41534b92 BA |
158 | ]; |
159 | ||
160 | // Next line for usage on server (Node.js) | |
161 | if (typeof window === 'undefined') module.exports = variants; |