trevorld / game-bit-font

Board game diagram font (WIP)
Other
1 stars 0 forks source link
bitmap-font board-game piecepack

Game Bit Font

.. image:: https://www.repostatus.org/badges/latest/wip.svg :alt: Project Status: WIP – Initial development is in progress, but there has not yet been a stable, usable release suitable for the public. :target: https://www.repostatus.org/#wip

Warning: This project is a Work In Progress.

This project provides a fixed-width bitmap <https://en.wikipedia.org/wiki/Computer_font#BITMAP>_ font specialized for making board game diagrams. The duospaced <https://en.wikipedia.org/wiki/Duospaced_font>_ version is called Game Bit Duo while the square monospaced <https://en.wikipedia.org/wiki/Monospaced_font>_ version is called Game Bit Mono.

.. contents::

Font Files

Game Bit Duo


* `game-bit-duo.bdf <https://raw.githubusercontent.com/trevorld/game-bit-duo/main/game-bit-duo.bdf>`_
* `game-bit-duo.hex <https://raw.githubusercontent.com/trevorld/game-bit-duo/main/game-bit-duo.hex>`_
* `game-bit-duo.ttf <https://trevorldavis.com/share/fonts/game-bit-duo.ttf>`_

Game Bit Mono

PDF documentation


* `game-bit-code-charts.pdf <https://trevorldavis.com/share/fonts/game-bit-code-charts.pdf>`_
* `game-bit-private-use-area.pdf <https://trevorldavis.com/share/fonts/game-bit-private-use-area.pdf>`_

Features
---------

**Game Bit Duo** has the following features:

* A fixed-width `duospaced font <https://en.wikipedia.org/wiki/Duospaced_font>`__.
* "Fullwidth" Characters intended for use in diagrams are square whereas some blocks such as *Basic Latin* are "halfwidth" to better support text rendering.
* Has support for several public domain game systems both in Unicode proper and its Private Use Area.  In particular in its Private Use Area has the important piecepack rank/suit symbols including support for all rotated versions of the glyphs. These symbols must still look nice when combined with various combining/enclosing marks to create piecepack coins, dice, and pawns.
* Supports all *Box Drawing* and *Block Elements* characters. These combine well with the game bits so it looks like those pieces are truly on top of the tiles (i.e. no lines going through the "edge" of piecepack coins, dice, pawns or awkward gaps between lines and piece "edges").  Includes additional box-drawing characters in its Private Use Area.

**Game Bit Mono** is the same as **Game Bit Duo** except **all** characters are square.

Supported game systems
----------------------

The font will aim to support making diagrams for every game system supported by the R function `ppgames::cat_piece() <https://trevorldavis.com/R/ppgames/dev/reference/cat_piece.html>`_ which generates Unicode plaintext game diagrams:

Checkers

Chess


+ U+2654 through U+265F are "standard" chess pieces
+ *Chess Symbols* block has Xiangqi and "fairy" chess pieces

Dice

Dominoes


+ "Domino Tiles" block is included but not recommended for diagrams.
  Instead make 3x5 or 5x3 glyph dominoes.  
  Adjacent dominoes will share "Box Drawing" outline glyphs.
+ Includes "Private Use Area" glyphs for 0-18 pips.

  .. image:: png/dominoes_mono.png

Go
~~

+ U+25CF is "black circle" and U+25CB" is "white circle"
+ U+2686 through U+2689 are "Go markers"
+ Several circled numbers and letters in "Dingbats", "Enclosed Alphanumerics",
  and "Enclosed Alphanumeric Supplement" blocks that can be used for annotation.

  .. image:: png/go_mono.png

Piecepack

Miscellaneous abstracts


+ Can use any of the above game pieces.
+ "Geometric Shapes" block has a variety of shapes that can be also be used for abstracts.

To re-build fonts/documentation from scratch
--------------------------------------------

In a (i.e. bash) shell::

    rake

Build dependencies

GNU Unifont

Related Fonts of Interest