samurai2016's Introduction
This is a Jindai Harada-team repository for SamurAI Coding 2016. The followings are original readme. (2017-01-06) -- SamurAI 3x3 Game Manager (2016-11-24) This directory contains the source code of the SamurAI 3x3 2016 game management system, sample setting, and several sample players. A visualzer for the game is provided in the web page with the following URL, dragging and dropping log file generated by the game management system to the page will give graphical presentation of the game. http://samuraicoding.info/software/views/samurai.html 1. Reporting Problems or Requesting Improvements When you find any problems with this system, please send an e-mail directed to the following. mailto:[email protected] Requests for improvements of the system can also be sent to the above address. 2. Installation The game management system and sample AI players are written in C++ and is meant to be compatible with C++11 standard. Simply issueing "make all" should work on many systems, but you possibly have to modify first several lines of Makefile in subdirectories "manager" and "players". The visualizer is written in Javascript and no particular installation procedure is required. As the system has only be tested on Linux with g++ 5.4.2 under Linux, it might not work on other systems. Reports about working/non-working systems are most welcome. 3. How to play games The game manager system is in the subdirectory "manager". By the installation procedure, an executable file with its name "gameManager" should result in this subdirectory, which is the main program of the game management system. The game manager lets two AI players specified on the command line, and writes out a game log in JSON format to the standard output. The game log is planned to be used by the separate graphical visualizer software. A command line to invoke the system is as follows. # manager/gameManager [<options>] <first> <second> Here, <first> and <second> are numbers identifying the first and the second AI players. Details of these numbers can be found in the file players/README. A number of options can be specified on running the game manager. -h: outputs help. -g<string>: specifies game name. The game name has nothing to do with the game itself, but is used by the game log visualizer. If this option is not specified, the name will be a null string. -s<path>: specifies AI player database path. The AI player database file is decided by the following. 1. If this command line option is given, as specified. 2. Value of the environment variable SAMURAIPLAYERDB, if any. 3. The file "players.txt" under the subdirectory "players" of the working directory. -m<path>: duplicates messages to AI program. Messages sent to player N are also recorded in a file with its name obtained by concatenating <path> and N. For example, if you specify "-minput", then files with names "input0" through "input5" are made. This option is useful for debugging your player AI program. After running the game manager as specified above with this option, you can debug your AI program separately passing the message log obtained to its standard input. -p<#periods>: specifies the number of periods of the game. When this option is not given, 16 periods are played in the game. A smaller number of periods might be useful for debugging your AI. -d: dumps game process to stderr. -d<path>: dumps game process to <path>. An alternative invocation for automatic tournament management system is as follows. # manager/gameManager [<options>] >logfile In this case, players are not specified as database entries but by specifying the following options. -A<command>: specifies the command string to start a player -P<command>: specifies the command string to pause the player -U<command>: specifies the command string to resume its execution -N<name>: specifies player name string For these options, all except for -N should be specified twice. The one for specifying the first player, and the other for the second player. When -N options are not given, player names are a null string. For options with an argument, no space after the command name is allowed. Option arguments may be enclosed in double quotes when spaces are to be included. Double quotes should be prefixed by a backslash ('\'). 4. Known Problems It is reported that the game management system does not work when installed using "clang" on MacOS. It works using g++ installed with "homebrew". The game management system occasionally causes an error when an AI player times out. The problems are under investigation but may take some time to fix.
samurai2016's People
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. ๐๐๐
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google โค๏ธ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.