2013-12-29 Daigo Moriwaki * [shogi-server] - Previously, parameters in Floodgate time configuration file were not applied to actual instances. This issue has been fixed. 2013-12-21 Daigo Moriwaki * [shogi-server] - shogi_server/pairing.rb: Impose penalty on matches between likely kin players. 2013-12-15 Daigo Moriwaki * [webserver] - Listen on only IPv4 explicitly. Under ruby 1.9.3p194, without any bind addresses, ruby attempts to listen on both "0.0.0.0" and "::". Specifying "::" on Linux leads to listen on both IPv4 and IPv6, which results in a warning message saying "Address already in use - bind(2)". * [shogi-server] - Released: Revision "20131215" 2013-12-14 Daigo Moriwaki * [usiToCsa] - Added a new program, bin/usiToCsa.rb, which is a bridge for a USI engine to connect to the Shogi-server. - bin/usiToCsa is a sample wrapper script. 2013-12-13 Daigo Moriwaki * [shogi-server] - shogi_server/league/floodgate_thread.rb: - Added a log message. 2013-12-08 Daigo Moriwaki * [shogi-server] - shogi-server/shogi_server/pairing.rb: - Modified comment for LeastDiff match. - Changed log messages and levels. 2013-12-07 Daigo Moriwaki * [shogi-server] - shogi_server/pairing.rb, player.rb: Simplify estimated rate of unrated players (less memory). - Enhanced syntax of Floodgate time configuration file. Now it supports "set sacrifice "; it sets a sacrificed player for a specific Floodgate game. ex. set sacrifice gps500+e293220e3f8a3e59f79f6b0efffaa931 2013-12-05 Daigo Moriwaki * [shogi-server] - Added a new pairing method, ShogiServer::ExcludeUnratedPlayers, which filters out unrated players. - Enhanced syntax of Floodgate time configuration file. Now it supports "set pairing_factory "; it sets a factory function name generating a pairing method which will be used in a specific Floodgate game. ex. set pairing_factory floodgate_zyunisen ======= - Implemented conversion of move representation between CSA format and USI one. >>>>>>> 201312-usiToCsa 2013-11-24 Daigo Moriwaki * [shogi-server] - shogi_server/league/floodgate.rb: Improved robustness against empty file under ruby 1.9.3p194 - shogi-server: - Previously, reloading in daemon mode failed on ruby 1.9.3p194. This issue has been fixed. - Listen on only IPv4 explicitly. Under ruby 1.9.3p194, without any bind addresses, ruby attempts to listen on both "0.0.0.0" and "::". Specifying "::" on Linux leads to listen on both IPv4 and IPv6, which results in a warning message saying "Address already in use - bind(2)". * [mk_game_results] - Fixed for reading Japanese comments under ruby1.9.3p194. * mk_rate-from-grep, mk_rate-grep: - Removed files that are no longer used. 2013-11-23 Daigo Moriwaki * [mk_rate] - gsl library may be provided as a gem - Now duplicated inputs are checked and skipped. * test/TC_floodgate.rb - Improved randomness check so that it works on Ruby 2.0.0 as well 2013-11-04 Daigo Moriwaki * [mk_rate] - Added a new option, --ignore, which is imported from mk_rate-from-grep. * [mk_game_results] - Flush after each output line. * Rleased: Revision "20131104" 2013-09-08 Daigo Moriwaki * [shogi-server] - shogi_server/{game,time_clock}.rb: When StopWatchClock is used, "Time_Unit:" of starting messages in CSA protocol supplies "1min". 2013-04-07 Daigo Moriwaki * [shogi-server] - shogi_server/{game,time_clock}.rb: Adds variations of thinking time calculation: ChessClock (current) and StopWatchClock (new). StopWatchClock, which is usually used at official games of human professional players, is a clock where thiking time less than a miniute is regarded as zero. To select StopWatchClock, use a special game name with "060" byoyomi time. ex. "gamename_1500_060". 2013-03-31 Daigo Moriwaki * [shogi-server] - %%FORK command: %%FORK [] [] The new_buoy_game parameter is now optional. If it is not supplied, Shogi-server generates a new buoy game name from source_game. - command.rb: More elaborate error messages for the %%GAME command. 2013-03-20 Daigo Moriwaki * [shogi-server] - New pairing algorithm: ShogiServer::Pairing::LeastDiff This pairing algorithm aims to minimize the total differences of matching players' rates. It also includes penalyties when a match is same as the previous one or a match is between human players. It is based on a discussion with Yamashita-san on http://www.sgtpepper.net/kaneko/diary/20120511.html. 2013-02-23 Daigo Moriwaki * [shogi-server] - New command: %%FORK [] Fork a new game from the posistion where the n-th (starting from one) move of a source game is played. The new game should be a valid buoy game name. The default value of n is the position where the previous position of the last one. - The objective of this command: The shogi-server may be used as the back end server of computer-human match where a human player plays with a real board and someone, or a proxy, inputs moves to the shogi-server. If the proxy happens to enter a wrong move, with this command you can restart a new buoy game from the previous stable position. ex. %%FORK server-denou-14400-60+p1+p2+20130223185013 buoy_denou-14400-60 2012-12-30 Daigo Moriwaki * [shogi-server] - Backported a5c94012656902e73e00f46e7a4c7004b24d4578: test/TC_logger.rb depeneded on a specific directory where it was running on. This issues has been fixed. - Backported 87d145bd1f1a14a33f5f6fbc78b63a1952f1ca90 and 2df8c798aeb7f0e77735e893fd1370c2c6f15c4d: shogi_server/floodgate.rb: Generating next time around the new year day by reading configuration files did not work correctly. This issue has been fixed. 2012-12-28 Daigo Moriwaki * [shogi-server] - shogi_server/pairing.rb: + There was a bug in the logic avoiding human-human match. This issue has been fixed. + Improved the logic avoiding human-human match. Human-human matches will less likely happen. 2012-01-07 Daigo Moriwaki * [shogi-server] - Added shogi_server/compatible.rb, which implements compatible methods and allows Ruby 1.8.7 to run the server. - test/TC_floodgate.rb failed with Ruby 1.8.7. This issue has been fixed. - test/TC_uchifuzume.rb did not run with Ruby 1.8.7. This issue has been fixed. - test/TC_league.rb failed with Ruby 1.8.7. This issue has been fixed. * csa-file-filter,mk_game_results,mk_html,mk_rate: - Updated documents in the command files. Both Ruby 1.9.3 and 1.8.7 are supported. - Make their shebang consistent (/usr/bin/ruby1.9.1) * README: - Both Ruby 1.9.3 and 1.8.7 are supported. * Renewed year of copyright notice in each file. 2012-01-06 Daigo Moriwaki * [shogi-server] - test/TC_logger.rb depeneded on a specific directory where it was running on. This issues has been fixed. 2012-01-01 Daigo Moriwaki * [shogi-server] - shogi_server/floodgate.rb: Generating next time around the new year day by reading configuration files did not work correctly. This issue has been fixed. 2011-12-18 Daigo Moriwaki * [shogi-server] - shogi_server/board.rb, piece.rb: Refactoring to cache OU pieces, which was inspired by 81SquareShogi-server's change (74b24b88c843f1dd767412475b117481d1d5e8eb). - Added shogi-server-profile to take profile of shogi-server. * [mk_rate] [mk_game_results] - Supports Ruby 1.9.3. 2011-12-12 Daigo Moriwaki * [shogi-server] - Support Ruby 1.9.3. - Result of test/benchmark.rb - Environment: - CPU: AMD Athlon(tm) 64 X2 Dual Core Processor 4200+ - RAM: 4GB - OS: Debian Squeeze - ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux] - ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux] - Server: ruby1.8 (or ruby1.9.1) ./shogi-server hoge 4000 - Clients: ruby1.8 (or ruby1.9.1) -d ./benchmark.rb csa/wdoor+floodgate-900-0+gps_normal+gps_l+20100507120007.csa 20 - Scores in seconds: (the smaller, the better) clients 1.8.7 1.9.3 server 1.8.7 20 sec 21 sec 1.9.3 26 sec 27 sec 2010-10-06 Daigo Moriwaki * [shogi-server] - mk_rate: the usage was not updated. Thanks to Hoki-san to report this issue. (Closes: #23358) 2010-09-18 Daigo Moriwaki * [shogi-server] - shogi_server/board.rb, game.rb: For hadicapped games, wrong initial positions were delivered to players and monitors. This issue has been fixed. (Closes: #23245) Thanks to HIDETCHI for reporting the issue. 2010-09-05 Daigo Moriwaki * [shogi-server] - shogi_server/login.rb: Enhanced the CSA Login mode. Logging in the server with the CSA mode, users are now allowed to specify a turn preference in an enhanced gamename string which looks like -