Sunday, 28 March 2021

Randomization in chess and roguelikes


Chess960: chess with a random setup

Chess960, also known as Fischer random chess, is a variant of standard Western chess in which the home-rank pieces (that is, all pieces except the pawns) are given random starting positions, making it a type of shuffle chess. Published in 1996, the game has increased in prominence in recent years, with 2019 seeing the first official FIDE World Fischer Random Chess Championship.

The effect of varying the starting positions is to reduce the dependence on memorizing openings. This potentially quite interesting game is sadly marred by sharing a name with its creator, Bobby Fischer, the Holocaust-denying Hitler fanboy of the chess world. To avoid giving this vile man any more respect than he deserves, which is to say none at all, I will be referring to the game as Chess960. "Fischerandom" and "Chess960" are both variant names accepted by chess programs.


Using polyhedral dice for Chess960 starting positions

Starting positions are mirrored between the two players, so the randomization process for Chess960 needs to only fill in one player's home rank. The second player's starting positions are implied by the first player's.

The starting positions of the pieces have the following constraints:

  • The player's two bishops must be on squares of opposite colours.
  • The player's king must be between the two rooks (to allow castling as in standard chess).

When a computer is not available, we can use a set of polyhedral dice (sometimes called "roleplaying dice" or "D&D dice") to determine the starting positions.

Image 1. The pawns always start at the same positions.

A rank on a chess board has 8 columns/squares, 4 of each color. Thus, there are 4 possible positions for each bishop. Using polyhedral dice, this can be rolled using two d4 (one of each colour).

Let's assume we rolled a 2 and a 2, placing the bishops on columns c and d.

Image 2. The bishops have been placed.

6 squares remain, and the queen is placed next on any one of them. This can be rolled using a d6.

Let's assume we rolled a 5 on the d6, placing the queen on column g.

Image 3. The queen has been placed.

Then, with 5 squares remaining, the two knights are placed randomly on any of them.

Roll a d10. On a result of 1-5, place the first knight on the corresponding free square, and then the second knight on the next free position immediately to its right. On a result of 6-10, place the first knight in the same way (treating a 6 as a 1, and so on), but place the second knight two free positions to the right, instead of one. Wrap the second knight around, so that if there are no more free positions on the right, start counting from the left again.

So, if our free positions are abefh, then the results on the die correspond to the following placements:

d10 First knight Second knight
1 a b
2 b e
3 e f
4 f h
5 h a
6 a e
7 b f
8 e h
9 f a
10 h b

Let's assume we rolled a 10 on the d10. The knights are then placed on columns h and b - or, equivalently, b and h.


Image 4. The knights have been placed in b1 and h1.

The 3 remaining squares can only be filled one way, due to the constraint that the king must be between the rooks.

Image 5. The rooks and king have been placed. All positions have been selected. Now, all that remains is to fill out the other player's positions as a mirror image.

Image 6. The final starting positions for both players. White to play.

There are 4 x 4 x 6 x 10 = 960 different starting positions.

Using our example method of generating these positions with polyhedral dice, four dice are needed: a black d4, a white d4, and a d6 and a d10. Or, you can roll the same d4 two times in sequence, once for each bishop.

The method for determining knight positions given here is only one of many possibilities, chosen here because it avoids rerolls and redundancies and seems like something I could remember. I recommend using any rule which you find easy to remember to avoid having to consult a player aid.


Other randomized chess variants

Transcendental chess is another randomized chess variant, invented in 1978 by Maxwell Lawrence, (a full 18 years earlier than Chess960). In transcendental chess, the constraint on the rook and king positions does not apply, and castling is removed. Rather than mirroring the board, each player's positions are determined independently. Additionally, a player may use their first turn to swap two pieces on their back row, instead of making a move. As many setups will have one side starting at an advantage, it will perhaps be sporting to play two games for each setup, changing sides in between.

D-chess is similar to transcendental chess, but rather than playing two games, one player gets to choose the side they think is stronger, and the other player gets the option to swap two pieces and also gets the first move.


Is there room for randomization in chess?

Traditional chess is fully deterministic, with no random factors. Everything depends on the players' decisions. In many other games and sports, much of the excitement comes from the combination of luck and skill. Their interplay allows for bold risk-taking and dramatic upsets. Far from the usual derision of chance as a factor that makes skill completely irrelevant, taking the right risks at the right time is a skill in itself. Reacting to unlikely chance occurrences can also be a kind of skill, as can knowing and regulating the impact of uncertainty on one's strategy.

In the Wikipedia article linked above, you can read quotes from chess grandmasters on shuffle chess. Some even go as far as saying it's "the future". Reading between the lines, one can get the impression that the game's lack of excitement and human drama is hampering its public profile and influx of new players. Could adding a chance element make chess a bit... well, less boring?

The interplay of chance and skill in games can be broadly divided into two categories: chance that comes after a player's decision, and that which comes before a player's decision. In other words, "randomness of outcome" or output randomness, and "randomness of setup" or input randomness. For example, a chess variant in which the attacker must roll a die to determine the success of a capture has output randomness. This kind of randomness promotes the correct gauging of risk, but it typically has a very large effect on the game's outcome. 

Meanwhile, a chess variant with randomized starting positions would be in the second category, having input randomness. The initial positions may have a large effect on the odds of wining, but beyond that, the only measure of skill is in how the players react and adapt to this new and surprising situation. The player makes an informed decision, and its result is deterministic.

It may be noted that within board games, the output randomness design pattern is more common in American-style boardgames such as Risk, which often include direct conflict, and combat resolution mechanics resembling wargames or Dungeons & Dragons. There, uncertainty is a tool to heighten drama. European-style games, meanwhile, have little or no output randomness, and typically less hidden information. A Eurogame may include input randomness through a randomized initial setup, but from there onward the players' decisions have largely deterministic results. This typically makes for a game that requires careful planning.

Chess, while considered an early wargame, has neither the elements of dice-based combat resolution nor hidden information (fog of war) featured in many wargames starting with the 19th-century Kriegsspiel. It could be argued that adding input randomness to chess through randomized initial setups would turn it into "a Euro-style boardgame".


Genres & generations

Arguably the most important games of the 20th century were chess, poker, and Dungeons & Dragons (in increasing order of randomness). D&D's influence has been huge not only in traditional roleplaying games but also in video games and board games. Its dice-based combat system has been passed down through Rogue, Nethack, Dungeon Crawl, Diablo, Elder Scrolls, Final Fantasy, and so on - essentially, the entire "RPG" videogame genre, and beyond.

Although D&D came from the wargaming tradition, it is a cooperative game, not a competitive one. Unlike D&D and the mostly single-player RPGs it inspired, some games in this lineage are competitive. Dota 2 is a multiplayer game of conflict with quite clear D&D-style elements. Dungeon Crawl: Stone Soup is a single-player game in the roguelike genre which is played in competitive tournament formats.



Interestingly, while the roguelike genre is known for its large degree of randomness, in recent years there has been more experimentation in minimizing output randomness, removing the dice resolution of combat in favour of deterministic models. What is left is just a randomization of maps - input randomness. Often, the entire map is revealed to the player, reducing hidden information as well. This could be seen as a move towards a "Eurogame-ization" of roguelikes. Examples include 868-HACK, Hoplite, and HyperRogue, in which the levels, enemy positions, and powerups are random, but attacks cannot miss and damage is predictable. These games have been described as abstract roguelikes, "tactical puzzles", or even feeling "chess-like". Here, chess-like is being used as an adjective - for now at least, chesslikes are not a recognized game genre.

But... what if? 


Image 7. A screenshot from 868-HACK by Michael Brough. Source.

Chess, with its deterministic head-to-head battles, and roguelikes with their iconically chaotic single-player experiences may seem as far apart as games can be. But at their core, both are games of tactics and strategy that play out on a square grid. Both require geometric pattern recognition - and heapings of experience and knowledge. Both are games that can hold a player's interest for 20 years or more.

Perhaps as chess begins to include more random factors, and roguelikes lessen their output randomness, we will see the two genres move closer and closer until they almost seem to merge. Could we even begin to see roguelikes which play out as a battle between two opposing players? Who knows. The future, for now, is under a fog of war.


Jack Tremain said...

It is cool that I started following and reading your blog and suddently you write a new entry after 2 years.

Homebrew Homunculus said...

Apologies for the silence, Jack!

The truth is, I've drifted away from playing and modding tabletop RPGs, for several reasons. I'm still thinking about game design, maybe more than ever - but I've moved more to playing, hacking, and designing roguelike computer games (with maybe a side of boardgames).

I've been dubious about posting those thoughts onto this blog, because until now it has been dedicated to D&D and the OSR. I do think that the OSR and roguelikes have many, many things in common, but I'm also aware that many readers will only be interested in the one but not the other.

So from the reader's perspective it would probably be preferable to put the roguelike ideas onto a wholly separate blog. But my own interests are in crossing and blurring those lines. I also want to see a rejuvenation of the blogging culture within roguelike design, which I think has a lot to learn from the innovative melting pot of ideas that is the OSR blogosphere.

But if you happen to be interested in tactical computer games, read on - I'll likely be sharing the first version of my own mod of the game Brogue soon.

Jack Tremain said...

No apologies! its your blog, your house, and you do what you want here hehehe!

I'm not really into Roguelikes as much as in D&D, but I do have played the shit out of Cardinal Quest 1 and 2. I've heard that they are not considered TRVE ROGUELIKES by the hardcore fanbase, but I really liked them and yeah, in the end there is lots of strategy and turn management; always thinking when its the time for a potion, for attacking, for boosting up or for teleporting the shit out of there. I don't know if it might be very basic for you, but I can say I enjoyed it and that had some unexpected depth in its "infinite tower" mode

I really liked your essay on removing hit points, as I am trying similar things myself. Did you use your rules it in the end? How did it go?