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