Title: | Board game setups |
---|---|
Description: | Generate 'tibble' data frames indicating how to set up over a hundred board games playable with public domain game systems. Data format can be used by 'piecepackr' to generate graphics with the 'grid', 'ggplot2', 'rayrender', 'rayvertex', and 'rgl' graphics systems and by 'ppcli' to generate plaintext graphics with 'cli'. |
Authors: | Trevor L. Davis [aut, cre] |
Maintainer: | Trevor L. Davis <[email protected]> |
License: | MIT + file LICENSE |
Version: | 0.1.0-5 |
Built: | 2024-11-04 05:50:22 UTC |
Source: | https://github.com/piecepackr/ppdf |
checkers_board()
returns a square checkers board of desired size and type.
chess_board()
returns a square checkered board of desired size and type.
checkers_board( nrows = 8L, ncols = nrows, x0 = 1, y0 = 1, ..., piece_side = "board_face", suit = 3L, angle = 0, cell_width = 1L ) chess_board( nrows = 8L, ncols = nrows, x0 = 1, y0 = 1, ..., piece_side = "board_face", suit = 3L, angle = 0, cell_width = NULL )
checkers_board( nrows = 8L, ncols = nrows, x0 = 1, y0 = 1, ..., piece_side = "board_face", suit = 3L, angle = 0, cell_width = 1L ) chess_board( nrows = 8L, ncols = nrows, x0 = 1, y0 = 1, ..., piece_side = "board_face", suit = 3L, angle = 0, cell_width = NULL )
nrows |
Number of rows in game board |
ncols |
Number of columns in game board |
x0 |
X coordinate for the center of the first cell |
y0 |
Y coordinate for the center of the first cell |
... |
Ignored |
piece_side |
If |
suit |
Suit value (color) of board. |
angle |
Angle of board in degrees. Italian Checkers rotates its board 90 degrees compared to other checkers variants. |
cell_width |
Width of board cell.
|
tibble
data frames of setups for 7 other games playable with a checkers set.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
checkers_breakthrough(cell_width = 1) checkers_crossings(cell_width = 1) checkers_focus(cell_width = 1) checkers_four_field_kono(cell_width = 1) checkers_grasshopper(cell_width = 1) checkers_julgonu(cell_width = 1) checkers_lines_of_action(cell_width = 1)
checkers_breakthrough(cell_width = 1) checkers_crossings(cell_width = 1) checkers_focus(cell_width = 1) checkers_four_field_kono(cell_width = 1) checkers_grasshopper(cell_width = 1) checkers_julgonu(cell_width = 1) checkers_lines_of_action(cell_width = 1)
cell_width |
Width of board cell. Most renderers support |
Here are links for more information about the various games:
Game | URL |
Breakthrough | https://en.wikipedia.org/wiki/Breakthrough_(board_game) |
Crossings | https://en.wikipedia.org/wiki/Crossings_(game) |
Focus | https://en.wikipedia.org/wiki/Focus_(board_game) |
Four Field Kono | https://en.wikipedia.org/wiki/Four_Field_Kono |
Grasshopper | http://www.cyningstan.com/game/71/grasshopper |
Jul-Gonu | https://en.wikipedia.org/wiki/Jul-Gonu |
Lines of Action | https://en.wikipedia.org/wiki/Lines_of_Action |
tibble
data frames of setups for 16 checkers variants.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
checkers_american_checkers(cell_width = 1) checkers_american_pool_checkers(cell_width = 1) checkers_brazilian_checkers(cell_width = 1) checkers_canadian_checkers(cell_width = 1) checkers_checkers(cell_width = 1) checkers_czech_checkers(cell_width = 1) checkers_dameo(cell_width = 1) checkers_english_checkers(cell_width = 1) checkers_frisian_checkers(cell_width = 1) checkers_gothic_checkers(cell_width = 1) checkers_international_checkers(cell_width = 1) checkers_italian_checkers(cell_width = 1) checkers_jamaican_checkers(cell_width = 1) checkers_portuguese_checkers(cell_width = 1) checkers_russian_checkers(cell_width = 1) checkers_spanish_checkers(cell_width = 1) checkers_thai_checkers(cell_width = 1) checkers_turkish_checkers(cell_width = 1)
checkers_american_checkers(cell_width = 1) checkers_american_pool_checkers(cell_width = 1) checkers_brazilian_checkers(cell_width = 1) checkers_canadian_checkers(cell_width = 1) checkers_checkers(cell_width = 1) checkers_czech_checkers(cell_width = 1) checkers_dameo(cell_width = 1) checkers_english_checkers(cell_width = 1) checkers_frisian_checkers(cell_width = 1) checkers_gothic_checkers(cell_width = 1) checkers_international_checkers(cell_width = 1) checkers_italian_checkers(cell_width = 1) checkers_jamaican_checkers(cell_width = 1) checkers_portuguese_checkers(cell_width = 1) checkers_russian_checkers(cell_width = 1) checkers_spanish_checkers(cell_width = 1) checkers_thai_checkers(cell_width = 1) checkers_turkish_checkers(cell_width = 1)
cell_width |
Width of board cell. Most renderers support |
Here are links for more information about the various games:
tibble
data frames of setups for 2 chess variants.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
chess_chess(cell_width = 1) chess_chess960(seed = NULL, cell_width = 1) chess_fischer_random_chess(seed = NULL, cell_width = 1) chess_international_chess(cell_width = 1)
chess_chess(cell_width = 1) chess_chess960(seed = NULL, cell_width = 1) chess_fischer_random_chess(seed = NULL, cell_width = 1) chess_international_chess(cell_width = 1)
cell_width |
Width of board cell. Most renderers support |
seed |
Seed that determines setup, either an integer or |
Here are links for more information about the various games:
Game | URL |
(International) Chess | https://en.wikipedia.org/wiki/Chess |
Fischer Random Chess AKA Chess960 | https://www.chessvariants.com/diffsetup.dir/fischer.html |
tibble
data frames of setups for 1 dominoes variants.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
dominoes_fujisan(seed = NULL)
dominoes_fujisan(seed = NULL)
seed |
Seed that determines setup, either an integer or |
Here are links for more information about the various games:
Game | URL |
(Domino) Fuji-san | http://donkirkby.github.io/donimoes/rules.html#fujisan |
games_chess()
, games_dominoes()
, games_checkers()
, games_piecepack()
, and games_stackpack()
contain information about the games
whose setups are provided by this package.
games_chess() games_checkers() games_dominoes() games_piecepack() games_stackpack()
games_chess() games_checkers() games_dominoes() games_piecepack() games_stackpack()
A tibble::tibble()
data frame with character columns "game", "methods", "comment", and "url"
for game name, setup function name(s), possible comment, and url for more information.
head(games_piecepack()) # Number of games for each game system nrow(games_chess()) nrow(games_checkers()) nrow(games_dominoes()) nrow(games_piecepack()) nrow(games_stackpack())
head(games_piecepack()) # Number of games for each game system nrow(games_chess()) nrow(games_checkers()) nrow(games_dominoes()) nrow(games_piecepack()) nrow(games_stackpack())
normalize_name()
normalizes (game) name(s).
normalize_name(x, sep = "_")
normalize_name(x, sep = "_")
x |
Name to normalize. |
sep |
Separator character. |
normalize_name(x, sep = "_") is used to help create R variable names while
normalize_name(x, sep = "-")' is used to help create filenames and LaTeX labels.
Character vector of normalized names.
normalize_name("Fuji-san") normalize_name("Nine Men's Morris", sep = "-")
normalize_name("Fuji-san") normalize_name("Nine Men's Morris", sep = "-")
tibble
data frames of setups for 12 checkers variants playable with a piecepack.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
piecepack_american_checkers() piecepack_american_pool_checkers() piecepack_checkers() piecepack_brazilian_checkers() piecepack_czech_checkers() piecepack_english_checkers() piecepack_gothic_checkers() piecepack_italian_checkers() piecepack_jamaican_checkers() piecepack_portuguese_checkers() piecepack_russian_checkers() piecepack_spanish_checkers() piecepack_thai_checkers() piecepack_turkish_checkers()
piecepack_american_checkers() piecepack_american_pool_checkers() piecepack_checkers() piecepack_brazilian_checkers() piecepack_czech_checkers() piecepack_english_checkers() piecepack_gothic_checkers() piecepack_italian_checkers() piecepack_jamaican_checkers() piecepack_portuguese_checkers() piecepack_russian_checkers() piecepack_spanish_checkers() piecepack_thai_checkers() piecepack_turkish_checkers()
Here are links for more information about the various checkers variants:
tibble
data frames of setups for 8 chess variants playable with a piecepack.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
piecepack_alice_chess(has_subpack = FALSE, max_tiles = 24L) piecepack_baroque_chess(has_subpack = FALSE) piecepack_chaturaji(has_subpack = FALSE) piecepack_chess(has_subpack = FALSE) piecepack_chinese_chess(has_subpack = FALSE) piecepack_four_seasons_chess(has_subpack = FALSE) piecepack_international_chess(has_subpack = FALSE) piecepack_japanese_chess(has_subpack = FALSE, cfg2 = "piecepack") piecepack_minishogi() piecepack_shogi(has_subpack = FALSE, cfg2 = "piecepack") piecepack_ultima(has_subpack = FALSE) piecepack_xiangqi(has_subpack = FALSE)
piecepack_alice_chess(has_subpack = FALSE, max_tiles = 24L) piecepack_baroque_chess(has_subpack = FALSE) piecepack_chaturaji(has_subpack = FALSE) piecepack_chess(has_subpack = FALSE) piecepack_chinese_chess(has_subpack = FALSE) piecepack_four_seasons_chess(has_subpack = FALSE) piecepack_international_chess(has_subpack = FALSE) piecepack_japanese_chess(has_subpack = FALSE, cfg2 = "piecepack") piecepack_minishogi() piecepack_shogi(has_subpack = FALSE, cfg2 = "piecepack") piecepack_ultima(has_subpack = FALSE) piecepack_xiangqi(has_subpack = FALSE)
has_subpack |
Has a piecepack subpack |
max_tiles |
Maximum number of (piecepack) tiles available to build boards |
cfg2 |
A string of a piecepack expansion (or perhaps |
Here are links for more information about the various chess variants:
Game | URL |
Alice Chess | https://en.wikipedia.org/wiki/Alice_chess |
Chaturaji | https://www.ludism.org/ppwiki/Chaturaji |
Four Seasons Chess | https://www.chessvariants.com/historic.dir/4seiz.html |
(International) Chess | https://www.ludism.org/ppwiki/Chess |
Minishogi | https://en.wikipedia.org/wiki/Minishogi |
Shogi AKA Japanese Chess | https://www.ludism.org/ppwiki/Shogi |
Ultima AKA Baroque Chess | https://en.wikipedia.org/wiki/Baroque_chess |
Xiangqi AKA Chinese Chess | https://www.ludism.org/ppwiki/Xiangqi |
tibble
data frames of setups for 49 games playable with a piecepack.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
piecepack_alien_city(seed = NULL, tiles = NULL) piecepack_black_pawn_trucking(seed = NULL) piecepack_brain_burn(seed = NULL) piecepack_burbuja(seed = NULL, tiles = NULL) piecepack_cardinals_guards(seed = NULL, tiles = NULL) piecepack_cell_management(seed = NULL) piecepack_chariots() piecepack_chinese_checkers() piecepack_piecepack_halma() piecepack_coin_collectors(seed = NULL, tiles = NULL, coins = NULL, dice = NULL) piecepack_climbing_man(seed = NULL, variant = c("Basic", "Free")) piecepack_crocodile_hop(seed = NULL) piecepack_desfases(seed = NULL, tiles = NULL, dice = NULL) piecepack_easy_slider(seed = NULL, tiles = NULL, coins = NULL, pawns = NULL) piecepack_everest() piecepack_four_blind_mice() piecepack_froggy_bottom() piecepack_fujisan(seed = NULL, coins = NULL, dice = NULL) piecepack_galaxy_express(seed = NULL) piecepack_iceberg(seed = NULL, tiles = NULL) piecepack_ice_floe() piecepack_japan(seed = NULL) piecepack_lab_rats(seed = NULL) piecepack_landlocked(seed = NULL) piecepack_ley_lines() piecepack_mathrix(seed = NULL, coins = NULL) piecepack_piecepackman(seed = NULL, variant = "Roundabout") piecepack_one_man_thrag(seed = NULL) piecepack_pass_the_food() piecepack_piecepack_klondike(seed = NULL) piecepack_piece_gaps(seed = NULL) piecepack_piece_packing_pirates(seed = NULL) piecepack_plans_of_action(seed = NULL, coins = NULL) piecepack_relativity(seed = NULL, coins = NULL) piecepack_san_andreas() piecepack_sarcophagus(seed = NULL) piecepack_shopping_mall(seed = NULL, cfg2 = "go") piecepack_skyscrapers(seed = NULL, tiles = NULL) piecepack_slides_of_action() piecepack_speedy_towers(n_players = 2, seed = NULL) piecepack_steppin_stones(seed = NULL) piecepack_the_in_crowd() piecepack_the_magic_bag(seed = NULL) piecepack_the_penguin_game(seed = NULL) piecepack_tower_of_babel(seed = NULL, tiles = NULL) piecepack_tracers() piecepack_triactor(seed = NULL, cfg2 = "playing_cards_expansion") piecepack_tula( seed = NULL, tiles = NULL, variant = c("Original", "Variant 1", "Variant 2", "Variant 3", "Variant 4") ) piecepack_wormholes()
piecepack_alien_city(seed = NULL, tiles = NULL) piecepack_black_pawn_trucking(seed = NULL) piecepack_brain_burn(seed = NULL) piecepack_burbuja(seed = NULL, tiles = NULL) piecepack_cardinals_guards(seed = NULL, tiles = NULL) piecepack_cell_management(seed = NULL) piecepack_chariots() piecepack_chinese_checkers() piecepack_piecepack_halma() piecepack_coin_collectors(seed = NULL, tiles = NULL, coins = NULL, dice = NULL) piecepack_climbing_man(seed = NULL, variant = c("Basic", "Free")) piecepack_crocodile_hop(seed = NULL) piecepack_desfases(seed = NULL, tiles = NULL, dice = NULL) piecepack_easy_slider(seed = NULL, tiles = NULL, coins = NULL, pawns = NULL) piecepack_everest() piecepack_four_blind_mice() piecepack_froggy_bottom() piecepack_fujisan(seed = NULL, coins = NULL, dice = NULL) piecepack_galaxy_express(seed = NULL) piecepack_iceberg(seed = NULL, tiles = NULL) piecepack_ice_floe() piecepack_japan(seed = NULL) piecepack_lab_rats(seed = NULL) piecepack_landlocked(seed = NULL) piecepack_ley_lines() piecepack_mathrix(seed = NULL, coins = NULL) piecepack_piecepackman(seed = NULL, variant = "Roundabout") piecepack_one_man_thrag(seed = NULL) piecepack_pass_the_food() piecepack_piecepack_klondike(seed = NULL) piecepack_piece_gaps(seed = NULL) piecepack_piece_packing_pirates(seed = NULL) piecepack_plans_of_action(seed = NULL, coins = NULL) piecepack_relativity(seed = NULL, coins = NULL) piecepack_san_andreas() piecepack_sarcophagus(seed = NULL) piecepack_shopping_mall(seed = NULL, cfg2 = "go") piecepack_skyscrapers(seed = NULL, tiles = NULL) piecepack_slides_of_action() piecepack_speedy_towers(n_players = 2, seed = NULL) piecepack_steppin_stones(seed = NULL) piecepack_the_in_crowd() piecepack_the_magic_bag(seed = NULL) piecepack_the_penguin_game(seed = NULL) piecepack_tower_of_babel(seed = NULL, tiles = NULL) piecepack_tracers() piecepack_triactor(seed = NULL, cfg2 = "playing_cards_expansion") piecepack_tula( seed = NULL, tiles = NULL, variant = c("Original", "Variant 1", "Variant 2", "Variant 3", "Variant 4") ) piecepack_wormholes()
seed |
Seed that determines setup, either an integer or |
tiles |
String of tile layout |
coins |
String of coin layout |
dice |
String of dice layout |
variant |
Name of variant |
pawns |
String of pawns layout |
cfg2 |
A string of a piecepack expansion (or perhaps |
n_players |
Number of players |
Here are links for more information about the various games:
tibble
data frames of setups for 7 other games playable with a piecepack.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
piecepack_breakthrough() piecepack_change_change(seed = NULL, coins = NULL) piecepack_crossings() piecepack_evade() piecepack_grasshopper() piecepack_lines_of_action() piecepack_quatri()
piecepack_breakthrough() piecepack_change_change(seed = NULL, coins = NULL) piecepack_crossings() piecepack_evade() piecepack_grasshopper() piecepack_lines_of_action() piecepack_quatri()
seed |
Seed that determines setup, either an integer or |
coins |
String of coin layout |
Here are links for more information about the various other games:
Game | URL |
Breakthrough | https://en.wikipedia.org/wiki/Breakthrough_(board_game) |
Crossings | https://en.wikipedia.org/wiki/Crossings_(game) |
Change Change | https://www.ludism.org/ppwiki/ChangeChange |
Grasshopper | http://www.cyningstan.com/game/71/grasshopper |
Evade | https://www.ludism.org/ppwiki/Evade |
Lines of Action | https://en.wikipedia.org/wiki/Lines_of_Action |
Quatri | https://www.ludism.org/ppwiki/Quatri |
tibble
data frames of setups for 11 other traditional games playable with a piecepack.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
piecepack_alquerque(has_matchsticks = FALSE) piecepack_awithlaknannai_mosona(has_matchsticks = FALSE) piecepack_backgammon() piecepack_brandubh() piecepack_cribbage() piecepack_cribbage_board() piecepack_four_field_kono() piecepack_julgonu() piecepack_ludo() piecepack_nine_mens_morris(has_matchsticks = FALSE) piecepack_salta(has_subpack = FALSE) piecepack_tablut(die_width = 0.63) piecepack_twelve_mens_morris(has_matchsticks = FALSE)
piecepack_alquerque(has_matchsticks = FALSE) piecepack_awithlaknannai_mosona(has_matchsticks = FALSE) piecepack_backgammon() piecepack_brandubh() piecepack_cribbage() piecepack_cribbage_board() piecepack_four_field_kono() piecepack_julgonu() piecepack_ludo() piecepack_nine_mens_morris(has_matchsticks = FALSE) piecepack_salta(has_subpack = FALSE) piecepack_tablut(die_width = 0.63) piecepack_twelve_mens_morris(has_matchsticks = FALSE)
has_matchsticks |
Has matchsticks |
has_subpack |
Has a piecepack subpack |
die_width |
Width of dice |
Here are links for more information about the various other traditional games:
Game | URL |
Alquerque AKA Qirkat | https://en.wikipedia.org/wiki/Alquerque |
Awithlaknannai Mosona | https://en.wikipedia.org/wiki/Awithlaknannai_Mosona |
Backgammon | https://www.ludism.org/ppwiki/Backgammon |
Brandubh AKA Brandub | http://www.cyningstan.com/game/125/brandub |
Cribbage | https://www.ludism.org/ppwiki/Cribbage |
Four Field Kono | https://www.ludism.org/ppwiki/FourFieldKono |
Jul-Gonu | https://www.ludism.org/ppwiki/JulGonu |
Ludo | https://en.wikipedia.org/wiki/Ludo_(board_game) |
Nine Men's Morris | https://en.wikipedia.org/wiki/Nine_men\%27s_morris |
Salta | https://en.wikipedia.org/wiki/Salta_(game) |
Tablut | https://www.ludism.org/ppwiki/Tablut |
df_rect_board_tiles
returns a tibble data_frame
of a rectangular board of desired size
made using a maximum number of piecepack tiles.
It will use either “cells”, “points”, and/or “rivers” as necessary.
piecepack_rect_board_tiles( nrows = 8, ncols = 8, x0 = 1, y0 = 1, max_tiles = 24, suit = rep(1:4, 6), rank = rep(1:6, each = 4) )
piecepack_rect_board_tiles( nrows = 8, ncols = 8, x0 = 1, y0 = 1, max_tiles = 24, suit = rep(1:4, 6), rank = rep(1:6, each = 4) )
nrows |
Number of rows in game board |
ncols |
Number of columns in game board |
x0 |
X coordinate for the center of the first cell/point |
y0 |
Y coordinate for the center of the first cell/point |
max_tiles |
Maximum number of tiles that can be used |
suit |
Vector of suit values to use for tile back (will be repeated). |
rank |
Vector of rank values to use for tile back (will be repeated). |
setup_by_name()
returns setup data frames by game name and game system.
checkers_by_name()
, chess_by_name()
, dominoes_by_name()
, and piecepack_by_name()
are
aliases that set the game system.
setup_by_name( name, system = known_game_systems, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) checkers_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) chess_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) dominoes_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) piecepack_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) stackpack_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) )
setup_by_name( name, system = known_game_systems, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) checkers_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) chess_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) dominoes_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) piecepack_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) ) stackpack_by_name( name, ..., getter = function(x) get(x, envir = getNamespace("ppdf")) )
name |
Game name. Will be normalized by |
system |
Game system. |
... |
Additional arguments to pass to the underlying setup function. |
getter |
Function with a single function name argument to use.
By default will just look for packages in this package but
a developer may want to consider |
checkers_none()
, chess_none()
, dominoes_none()
,
piecepack_none()
, and stackpack_none()
return zero-row data frames.
checkers_none() chess_none() dominoes_none() piecepack_none() stackpack_none()
checkers_none() chess_none() dominoes_none() piecepack_none() stackpack_none()
A data frame with zero rows.
checkers_none()
checkers_none()
tibble
data frames of setups for 8 other games playable with a piecepack stackpack.
Data frame output can usually be plotted with pmap_piece(df, default.units = "in")
.
stackpack_alice_chess(max_tiles = 24L) stackpack_baroque_chess() stackpack_chaturaji() stackpack_chess() stackpack_chinese_chess() stackpack_four_seasons_chess() stackpack_international_chess() stackpack_japanese_chess() stackpack_salta() stackpack_shogi() stackpack_ultima() stackpack_xiangqi()
stackpack_alice_chess(max_tiles = 24L) stackpack_baroque_chess() stackpack_chaturaji() stackpack_chess() stackpack_chinese_chess() stackpack_four_seasons_chess() stackpack_international_chess() stackpack_japanese_chess() stackpack_salta() stackpack_shogi() stackpack_ultima() stackpack_xiangqi()
max_tiles |
Maximum number of (piecepack) tiles available to build boards |
Here are links for more information about the games:
Game | URL |
Alice Chess | https://en.wikipedia.org/wiki/Alice_chess |
Chaturaji | https://www.ludism.org/ppwiki/Chaturaji |
Four Seasons Chess | https://www.chessvariants.com/historic.dir/4seiz.html |
(International) Chess | https://www.ludism.org/ppwiki/Chess |
Salta | https://en.wikipedia.org/wiki/Salta_(game) |
Shogi aka Japanese Chess | https://www.ludism.org/ppwiki/Shogi |
Ultima aka Baroque Chess | https://en.wikipedia.org/wiki/Baroque_chess |
Xiangqi AKA Chinese Chess | https://www.ludism.org/ppwiki/Xiangqi |