El botto del Jasso

Documentation Status https://travis-ci.org/jakeret/elbotto.svg?branch=master

A Python Jass client bot skeleton for the Zuhlke Jass Bot challenge (https://github.com/webplatformz/challenge)

This client allows you to easily develop a bot for the Jass challenge.

Start hacking (taken from the JS bot)

Overview

This client skeleton has a very simple structure and the code should be easily understood.

To start immediately check fo the comment CHALLENGE2017. Here you can implement your logic or see what’s important.

You can freely change the structure at anytime to suite your concept of a decent bot implementation.

Start your own tournament

To test your bot against other bots, such das the random bot, you need to start your own tournament:

  1. checkout, build and start the challenge server

    $ npm install
    $ npm start
    
  2. Browse to http://localhost:3000

  3. Enter some user name

  4. Enter some tournament name and press Enter

  5. Join your bots, they should appear on the next page

6. Join random strategy bots for testing. In your challenge server directory enter the command: npm run bot:start This will add 4 random bot teams to your tournament.

Starting 4 bot to see them on the tournament page pic below:

$ node build/client/app.js ws://127.0.0.1:3000 Bot_Team_A
$ node build/client/app.js ws://127.0.0.1:3000 Bot_Team_A
$ node build/client/app.js ws://127.0.0.1:3000 Bot_Team_B
$ node build/client/app.js ws://127.0.0.1:3000 Bot_Team_B

Contents:

Installation

Get your copy of the repository and at the command line:

$ python setup.py develop --user

Usage

To use El botto del Jass in a project:

python elbotto/launcher.py

This will start one bot. To start a tournament run:

python elbotto/tournament.py

To start hacking have a look at the elbotto.bots package

Contributing

Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.

You can contribute in many ways:

Types of Contributions
Report Bugs

If you are reporting a bug, please include:

  • Your operating system name and version.
  • Any details about your local setup that might be helpful in troubleshooting.
  • Detailed steps to reproduce the bug.
Fix Bugs
Implement Features
Write Documentation

El botto del Jass could always use more documentation, whether as part of the official El botto del Jass docs, in docstrings, or even on the web in blog posts, articles, and such.

Submit Feedback

If you are proposing a feature:

  • Explain in detail how it would work.
  • Keep the scope as narrow as possible, to make it easier to implement.
  • Remember that this is a volunteer-driven project, and that contributions are welcome :)
Pull Request Guidelines

Before you submit a pull request, check that it meets these guidelines:

  1. The pull request should include tests.
  2. If the pull request adds functionality, the docs should be updated. Put your new functionality into a function with a docstring, and add the feature to the list in README.rst.
  3. The pull request should work for Python 2.6, 2.7, and 3.3, and for PyPy. make sure that the tests pass for all supported Python versions.
Tips

To run a subset of tests:

$ py.test test/test_elbotto.py

Credits

Development Lead
Contributors

None yet. Why not be the first?

History

0.1.0 (2017-09-15)
  • First release on GitHub

Feedback

If you encounter any errors or problems with El botto del Jass, please let me know!