Skip to content
forked from pioz/chess

A fast chess library that use bitboards to play chess with Ruby

License

Notifications You must be signed in to change notification settings

fmalazemi/chess

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

76 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Chess

A fast Ruby library to play chess with Ruby. This library is quite fast because rappresent the game situations with bitboards. In addition, the move generator is written in C as a Ruby extension.

Requirements

  • Ruby 1.9 or higher

Installation

gem install chess

Usage

require 'chess'
g = Chess::Game.new
until g.over?
  begin
    print "Give me a #{g.active_player} move: "
    input = gets.chop
    break if input == 'quit'
    g << input
    puts g
    puts g.moves.last
  rescue Chess::IllegalMoveError => e
    puts 'Illegal move!'
  end
end
puts g.status

Documentation is available here.

Questions or problems?

If you have any issues please add an issue on GitHub or fork the project and send a pull request.

Copyright © 2015 Enrico Pilotto (@pioz). See LICENSE for details.

About

A fast chess library that use bitboards to play chess with Ruby

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • C 77.2%
  • Ruby 22.1%
  • C++ 0.7%