Code Monkey home page Code Monkey logo

monkeyjump's Introduction

Monkeyjump

Overview

Monkeyjump is a program for messing around with GNU Go and SGF-files.

I wrote it back in 2005 but decided to release it in 2013, since it was somewhat fun.

Note that it requires Python 2. I might port it to Python 3 some day.

Works with pypy!

Screenshots

Quickstart

Checkout the project and run:

./monkeyjump

Default keybindings:

click to place a stone
g to view the last placed stone
z to pass (for white)
f to view the final score
backspace to clear the board and start a new game

q to quit
u to undo
e estimates the score

General information

  • GNU Go is a program that can play Go
  • The term "monkeyjump" is used in Go
  • Go is an approximately 4000 year old game
  • Search the web for "igo", "baduk", "weichi" or "go" for more info about Go Here's the Wikipedia entry: http://en.wikipedia.org/wiki/Go_(board_game)

What can I use it for?

  • Interfacing GNU Go via GTP (the program speaks GTP for you)
  • Guessing your way through professional games you might have stored as SGF
  • Playing Go against GNU Go, while beeing able to edit the board at any time (this means you have to check for yourself if your move is valid)
  • Avoiding Cgoban1 and/or the ascii-interface of GNU Go (Cgoban2 doesn't seem to support GNU Go directly)
  • Stepping through an SGF-file
  • Saving the pattern of the white stones as an image
  • Saving basic SGF-files
  • Playing with patterns of stones
  • Checking what GNU Go would have played

Requirements

  • Python2 and Pygame (Psyco is optional)
  • GnuGo or another GTP-speaking go-playing computer program (that speaks the same GTP dialect as gnugo, few do).

Configuration

  • Edit the file "gnugocmd.conf" in order to enable your favorite gtp-compatible program ("gnugo --mode gtp" should work).
  • Edit the file "keybindings.conf", so that you know what all the keys does.
  • Start the program. You can give a board size as the first argument (9, 13 and 19 are common)

Known bugs

  • Loading SGF-files doesn't always give the correct positions. Patches and pull requests are welcome.
  • Does not work with Leela Zera or Katago yet.

Thanks

Thanks to Ulrich Goertz ([email protected]) for the images of the board and the black and white stones, which are included in his GPL-ed program uliGo.

General info

  • Author: Alexander F. Rødseth
  • License: GPL2
  • Version: 0.5

monkeyjump's People

Contributors

xyproto avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

monkeyjump's Issues

Add support for Pachi

There is a Go engine named Pachi:

https://github.com/pasky/pachi

However, when using pachi in /etc/monkeyjump/gnugocmd.conf, the dialect of GTP that pachi speaks is different from gnugo, and does not work together with Monkeyjump.

This is a feature request to add support for pachi.

All instances of gnugo in the monkeyjump source code could at the same time be renamed to something with GTP, since it would then be a more general feature than supporting just gnugo.

Port to Python 3.x

Python 2 will reach its end-of-life soon.

This is a feature request to port Monkeyjump from Python 2 to Python 3.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.