Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up

A fairy chess game for Emacs

License

NotificationsYou must be signed in to change notification settings

bcardoso/shoggy

Repository files navigation

         __   _____/ /_  ____  ____ _____ ___  __  / ___/ __ \/ __ \/ __ `/ __ `/ / / / (__  ) / / / /_/ / /_/ / /_/ / /_/ //____/_/ /_/\____/\__, /\__, /\__, /                 /____//____//____/

shoggy is a 6x6 board, fairy chess variant with spell cards, written in Emacs Lisp.

screenshot1.png

shoggy was developed during theSpring Lisp Game Jam 2024.

Requirements

  • GNU Emacs 29.3 with SVG support (probably runs on older versions too)
  • There are no third-party packages required.

Installation

;; Manual install;; clone this repo:;; git clone https://github.com/bcardoso/shoggy(add-to-list'load-path"/path/to/shoggy")(require'shoggy);; With use-package + straight.el(use-package shoggy:straight (shoggy:host github:repo"bcardoso/shoggy":files (:defaults"images""sounds"):build (:not compile)));; compiler won't be happy

How to play

M-x shoggy RET

You can adjust and toggle some game options in the main screen.

screenshot2.png

The rules

  • No checks, no castling: when theSage is captured, the game ends!
  • Noen passant: pawns can move one or two squares in their first move (you can toggle this behavior), and that’s it.
  • When a player is out of moves, it’s game over.
  • In each turn, you can either move a piece or cast a spell: you are given a spell card after every capture.
  • You can’t hold more than 3 cards at a time: cards are randomly discarded if your hand is full.
  • All else is pretty much chess.

The pieces

shoggy has standard andnon-standard pieces:

NameAtomRangeValueDescription
PawnP1 or 21A pawn
FerzF12Advisor, like a 1 square bishop
WazirW12Like a Rook, also moves 1 square
KnightN2,132,1 Leaper
RookRboard5Same as a Rook
SageS199Like a King, but wiser

The spells

After each capture of an enemy’s piece, you earn a spell card. In your turn, you can either move a piece or cast a spell.

There are three types of spells (for now):

SpellDescription
BOOSTBoost a piece’s range (applies to Ferz or Wazir)
PROMOTEPromote a piece (Pawn -> Ferz/Wazir -> Knight -> Rook)
DEMOTEDemote anenemy piece (Rook -> Knight -> Ferz/Wazir -> Pawn)

The engines

shoggy has two engines to play against:dumbfish andsanefish.

dumbfish
tries to capture pieces or makes random moves
sanefish
tries to be a more reasonable fish (the default)

The lore

shoggy was loosely inspired byShogi, a Japanese chess variant (which you can play online athttps://lishogi.org/).

At first I was planning to make aMinichess/Los Alamos chess variant, but I soon started to deviate into other directions.

I also had this idea a long time ago about adding playing cards into the game of chess. Perhaps in the future I’ll add some more spell cards toshoggy. Also, check outKnightmare Chess, which I discovered during my research of the Game Jam.

So there are hundreds of chess variants and fairy chess pieces out there. This is my own :)

Acknowledgements

I’m thankful to the creators mentioned below for sharing their work under free and open-source licences.

Images

Sounds

Releases

No releases published

Packages

No packages published

[8]ページ先頭

©2009-2025 Movatter.jp