4 ms·
Are you referring to the images in the post or the actual game? Looks good on my side, might be the unexpected extra traffic. Sorry about that! In any case, you
by ramly 3y ago
Are you referring to the images in the post or the actual game? Looks good on my side, might be the unexpected extra traffic. Sorry about that! In any case, you can try the game directly here: https://echochess.com/ https://echochess.com/
The rules are really simple:
1) You are playing White, there's no opponent. You must capture all pieces to win.
2) You become the "echo" of any piece you capture. Captured a bishop? Become that bishop.
3) You can’t pass through red obstacles. Find the best move order to clear the board.
You can play it on any device, just drag and drop the white piece to move around. Let me know if you have any issues.
p.s. love that you just made your own!
- zzo38computer 3y agoI can't "play it on any device". It doesn't work on my computer. (It is why I asked if there is some way to access the FEN, in case of it won't work and you want to play game on another computer, or by actual chess pieces on a board instead of on the computer, etc) I read the rules like you wrote it here too, it is same thing, and I understand that. Nevertheless, it does not answer all of the questions (e.g. pawns promotion). From the example, it seems to not be check/mate, but I that short explanation won't explain everything. Capture all pieces? Do you mean capture the black pieces only? You cannot capture the white pieces, isn't it (otherwise there won't be any to capture it)? Is the code I wrote, the correct rules of the game?
- stevage 3y agoYes, I found those rules unclear. My version: 1. The goal is to capture all the black pieces, which never move. 2. Move one white piece each turn, using the basic rules of chess piece movement. You can't move through red obstacles. Pawns don't promote. There is no check. 3. When you capture a piece (black or white), your white piece turns into the type of piece you just captured.
- zzo38computer 3y agoYes, that is much better. Then, the code that I wrote is OK (I think) except I did not implement capturing white pieces (although if white pieces can capture white pieces and change into the same piece, then effectively the white piece can become vacant if it can reach another white piece).
- zzo38computer 3y agoHere is the updated code. Push D to destroy the selected white piece (if it meets the criteria for being destroyed). ; Echo Chess (InputXY) (Control (INIT $Cursor 1 1 0 0 Create =@cur) ) ($Cursor Player (Image "Cursor0" "Cursor1") (DefaultImage ()) (Density -10) (CREATE LOOP 0 1 50 Animate) ) ($Tile (Image "Tile0" "Tile1") (Density 10) (INIT Loc + 1 band =Image) (CLICK @cur ,ObjBelow #Move Loc ,Send . 1) ) ($White Input (Image "P" "N" "B" "R" "Q" "K") (CLICK @cur Loc ,MoveTo) (#Move ,:movable if Arg1 Arg2 MoveTo . Arg3 if From ,Image =Image From ,Destroy . (=P $Black) lnot if WinLevel then then @cur Loc ,MoveTo . then ) (:movable Image (case (0 :pawn) (1 :knight) (2 :bishop) (3 :rook) (4 :queen) (5 :king) ) ) (:pawn Yloc Arg2 1 + eq Xloc Arg1 Delta Arg3 eq land) (:knight Xloc Arg1 Delta dup * Yloc Arg2 Delta dup * + 5 eq) (:bishop Xloc Arg1 Delta Yloc Arg2 Delta eq if =:queen else 0 then) (:rook Xloc Arg1 Delta Yloc Arg2 Delta land if 0 else =:queen then) (:queen From Seek =%d Loc begin %d NewXY over over ObjTopAt dup From eq if . . ret then ,Class $Tile ne until . . 0) (:king From Chebyshev 1 eq) (#Destroy From Self ne if From #Move Loc 1 ,SendEx . then Destroyed lnot ) ('D @cur Coloc if $White #Destroy Loc BroadcastAnd . then ) ) ($Black (Image "PB" "NB" "BB" "RB" "QB" "KB") (CLICK @cur ,ObjBelow #Move Loc 1 ,SendEx . 1) ) It is also possible to add more pieces e.g. Chinese cannon, or other kind of changes if desired.