ID:79536
 
Keywords: bgc, chess, development
Alright, so I finally just went ahead and faced the demon, and I must say that while it seems to work rather reliably, I'm not particularly pleased with the amount of code it required. Imposition and pinning sounds simple on paper, but once you delve into it trying to program the rule into a game setting, you find out just how irritating it is.

These two (game essential) items were entirely hit or miss in the last version of chess because of the way I decided to keep the map display free of references to anything else. This meant that there was no immediate concept of threat to the king, and at the end of every turn, I had to consult every enemy piece of the current player's to gather a list of threats to the square, and then I could start working backward forming imposition paths and the like. This time, the gameboard turf contains a matrix of pieces threatening any hapless royal piece of the opposing colour, and the process of determining check actually *starts* with a direct datum reference to the threatening piece(s). In short: the unique system BGC uses to support multiple games on the same board simplified the process immensely.

The server running on Tibbius has been updated with the chess-available version and is in need of testing. I imagine the bulk of any problems would be in the play structure (E.G., only allowing a player to select his own pieces in turn), but anyone checking it out should be on the lookout for any game-related issues as well.

It should also be noted that for now, the chess movelog is not being recorded, and is actually unreliable at present. Once the game's been determined to be working nicely, I'll get back to that and start sending the game records to the cataloguing script again.
Just a hint, you can link to games on the server with tibbius.com too. =)

And I look forward to challenging you.
If it doesn't already, could you have the game ding when someone enters so I don't have to look every 15 seconds while doing other work?

Looks great and I like the simple/clean interface.

ts
Mobius and I discovered a few small bugs in the game when we played a round or two last night.

He won two games because the pawn didn't realise that although it had checked my king, it could still be taken by any number of my pieces, so it checkmated me. =(
Tiberath wrote:
Mobius and I discovered a few small bugs in the game when we played a round or two last night.

He won two games because the pawn didn't realise that although it had checked my king, it could still be taken by any number of my pieces, so it checkmated me. =(


heh... play testing is king.
ts
Tsfreaks wrote:
If it doesn't already, could you have the game ding when someone enters so I don't have to look every 15 seconds while doing other work?

I suppose I could make an option for that. I'll start digging for a nice sound effect.


Tiberath wrote:
Mobius and I discovered a few small bugs in the game when we played a round or two last night.

He won two games because the pawn didn't realise that although it had checked my king, it could still be taken by any number of my pieces, so it checkmated me. =(

A pawn had a check-resolving capture move on the knight I used on you both times. From what I can tell, the problem's been resolved since, though.