Created
September 29, 2022 12:36
-
-
Save ElectricCoffee/b1cc42c437b992b8515949d3f217d0cb to your computer and use it in GitHub Desktop.
an idea for a 'game description language' for board games inspired by the Plain English programming language
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Carnac | |
players: 2 | |
components: | |
- 28 megaliths | |
- 3 boards | |
board sizes: small, medium, and large. | |
player actions are: proceed and skip. | |
to check if able to topple: | |
if no megalith, return unable. | |
check for two contiguous free spaces next to the megalith. | |
if there are no free spaces, return unable. | |
else return able | |
to topple a megalith: | |
choose the last placed megalith | |
turn it on its side, leaving the space it started on free | |
to check if able to erect: | |
if megalith pool is empty, return unable | |
check for free spaces on the board | |
if there are no free spaces, return unable | |
else return able | |
to erect a new megalith: | |
take a megalith from the pool | |
place it on an empty square on a short side | |
setup: | |
choose board size | |
set aside the 28 megaliths | |
players choose colours (red or white) | |
choose active player | |
goto game | |
game: | |
:topple megalith if able | |
:erect new megalith if able | |
goto end if unable | |
switch player | |
goto game:erect if player action is proceed | |
goto game:topple if player action is skip | |
end: | |
count contiguous groups of size 3 or greater | |
player with most groups of their own colour wins | |
player with largest group wins if tied |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment