ChessUSA.com TalkChess.com
Hosted by Your Move Chess & Games
 
 FAQFAQ   SearchSearch   MemberlistMemberlist   UsergroupsUsergroups   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

best board representation for variants (javascript) ?

 
Post new topic       TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions Threaded
View previous topic :: View next topic  
Author Message
Mahmoud Uthman



Joined: 17 Jan 2015
Posts: 220

PostPosted: Sun Dec 10, 2017 1:54 pm    Post subject: best board representation for variants (javascript) ? Reply to topic Reply with quote

In your opinion what is the best (most convenient) board representation for move generation only , that can be easily made to support arbitrary variants with the least amount of coding effort (javascript) ?
Back to top
View user's profile Send private message
H.G.Muller



Joined: 10 Mar 2006
Posts: 21824
Location: Amsterdam

PostPosted: Sun Dec 10, 2017 8:53 pm    Post subject: Re: best board representation for variants (javascript) ? Reply to topic Reply with quote

Least coding would be a 1-dimensional array containing the piece types, with a 0x88-type square layout (i.e. gaps between the ranks), and a band of boundary guards around it to prevent pieces could jump off board. You can generate moves from that with a triply mested loop, over the board to find pieces, then over directions the piece moves in, and then (if it is a sliding move) over the number of steps taken in that direction.

This is not very efficient, though, as you spend a lot of time locating your own pieces on the board. And captures are only generated as the last move of a slide, meaning that you basically always generate all the moves, even if you only want captures. There are ways to enormously speed up the move generation, but they all add code complexity.
Back to top
View user's profile Send private message Visit poster's website
Tamás Kuzmics



Joined: 04 Mar 2017
Posts: 113
Location: Hungary

PostPosted: Mon Dec 11, 2017 6:49 pm    Post subject: Re: best board representation for variants (javascript) ? Reply to topic Reply with quote

https://www.youtube.com/watch?v=2eA0bD3wV3Q&list=PLZ1QII7yudbe4gz2gh9BCI6VDA-xafLog
_________________
https://github.com/tomitank/tomitankChess
Back to top
View user's profile Send private message
Evert Glebbeek



Joined: 21 Jan 2011
Posts: 2841
Location: NL

PostPosted: Mon Dec 11, 2017 8:22 pm    Post subject: Re: best board representation for variants (javascript) ? Reply to topic Reply with quote

Mailbox with piecelists. You can do generalised 0x88 for alignment tests by making the in-memory board twice as wide as the actual board.

That's what I'd do anyway.
Back to top
View user's profile Send private message Visit poster's website
Display posts from previous:   
Post new topic       TalkChess.com Forum Index -> Computer Chess Club: Programming and Technical Discussions All times are GMT
Threaded
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum




Powered by phpBB © 2001, 2005 phpBB Group
Enhanced with Moby Threads