You are on the backup site for Any posts, moves, or other changes you make here will not be permanent, because the pages and database from the main site will be backed up here every midnight EST. Additionally, things may not be working right, because this site is also a testbed for newer system software. So, if you are not here to test, develop, or merely read this site, you may want to change .org to .com in the navigation bar and go to the main site.

The Chess Variant Pages

This page is written by the game's inventor, (zzo38) A. Black.

Bario Shogi


Each piece other than King, Pawn are replaced by 'kara' which looks like .


When you move a kara, you put another tile in your throw pile (throw pile starts with all tiles missing from start, which would be your own) onto it, and move it like that kind of piece. A piece can only promote if it moved into the promotion zone while it wan't a blank piece already. If it becomes blank again, it is unpromoted. When one player has no more blank pieces left he owns on his board, take ALL pieces on top of kara (both players) and put in its owner throw pile. When a double piece is captured, both go on his bench, as a double piece and it is dropped as that double piece (now he owns the top tile of it).


I played this game, and its good game. Don't sacrifice your angle-mover too early. And once you complete a cycle, if opponent has few or no undefined pieces, you will get a good advantage in your side.

Here is one way of describing this game, I don't know if this is easier or harder to understand: BarioShogi (inherits Shogi) { List throwpile[2] boardsetup()={ board=Shogi:boardsetup() throwpile[1]={GOLD,SILVER,HHORSE,FRAGR,GOLD,SILVER,HHORSE,FRAGR,FLY,ANGLE} throwpile[2]=throwpile[1] for each cell in board { if cell.piece in throwpile[1] then cell.piece=KARA } } checkmoves()={ m=getmove(filter(cell in board where cell.owner=currentplayer) & bench[currentplayer]) if from bench, or m.piece is not KARA, do as shogi, else { p=getmove(throwpile[currentplayer]) remove p from throwpile[currentplayer] board[m.index].piece=p m1=getmove(Shogi:legalmoves(m.index,p)) move(m.index,m1.index) } if len(filter(cell in board where cell.owner=1 and cell.piece=KARA))=0 or len(filter(cell in board where cell.owner=2 and cell.piece=KARA))=0: { for each cell in board { if not cell.piece in {NOTHING,SOLDIER,PSOLDIER,KING} { add cell.piece to throwpile[cell.owner] cell.piece=KARA } } } (everything else like Shogi) } (everything else like Shogi) }

This 'user submitted' page is a collaboration between the posting user and the Chess Variant Pages. Registered contributors to the Chess Variant Pages have the ability to post their own works, subject to review and editing by the Chess Variant Pages Editorial Staff.

By (zzo38) A. Black.
Web page created: 2005-10-18. Web page last updated: 2005-12-04