Skip to content

Commit

Permalink
Updated documentation (to reflect windows)
Browse files Browse the repository at this point in the history
  • Loading branch information
desertkun committed Sep 27, 2018
1 parent 9f73836 commit d236204
Show file tree
Hide file tree
Showing 5 changed files with 60 additions and 15 deletions.
53 changes: 46 additions & 7 deletions docs/development.rst
@@ -1,9 +1,51 @@

.. toctree::
:maxdepth: 1

Development
===========

.. note:: This document describes steps how to setup minimal environment for development or testing purposes.

Windows
~~~~~~~

To setup minimal development environment on Windows, you will need:

1. Install `PyCharm <https://www.jetbrains.com/pycharm/download>`__ (Community Edition is fine)
2. Clone the `dev repository <https://github.com/anthill-platform/anthill-dev>`__:

.. code-block:: bash
git clone -b dev https://github.com/anthill-platform/anthill-dev.git
cd anthill-dev
git submodule update --init --recursive
3. Run installation script

.. code-block:: bash
cd dev\win
setup.bat
This will install Scoop, and Scoop will install all of the required components.

4. Open cloned repo in PyCharm.

5. Setup the Project Interpreter.

To do that, go to ``Preferences``, select ``Project Interpreter``, select ``Show All`` from the dropdown,
hit “+”, select ``Add Local``, and feed it with ``C:\Anthill\venv\Scripts\python.exe``.

6. Select ``all`` run configuration, hit Run

.. image:: images/compound_configuration.png
:width: 89px

7. Open http://localhost:9500 in your browser
8. Press “Proceed”, login using username ``root`` and password
``anthill``. You should see something like this:

Mac OS X
~~~~~~~~

Expand All @@ -25,15 +67,14 @@ To setup minimal development environment on Mac Os X, you will need:
cd dev/osx
./setup.sh
It would take awhile (up to several hours).
This will install Homebrew, and Homebrew will install all of the required components.

4. Open cloned repo in PyCharm.

5. Setup the Project Interpreter.

To do that, go to ``Preferences``, select ``Project Interpreter``, select ``Show All`` from the dropdown,
hit “+”, select ``Add Local``, and feed it with ``/usr/local/venv/dev/bin/python``.
hit “+”, select ``Add Local``, and feed it with ``/usr/local/anthill/venv/bin/python``.

6. Select ``all`` run configuration, hit Run

Expand All @@ -47,9 +88,7 @@ This will install Homebrew, and Homebrew will install all of the required compon
.. image:: images/admin_page.png
:width: 400px

Happy coding!

Windows
~~~~~~~
Linux
~~~~~

The Windows platform is not supported and never will be.
There is no development environment for Linux as of yet. See :doc:`installation` (on Linux) for more information.
2 changes: 1 addition & 1 deletion docs/index.rst
Expand Up @@ -37,7 +37,7 @@ Installation
Please see :doc:`installation` for a simple instruction on how to install
Anthill Platform on a Linux machine.

If you'd like to test it out on Mac, please see :doc:`development`.
If you'd like to test it out on Windows or Mac Os X, please see :doc:`development`.

Core Services List
------------------
Expand Down
3 changes: 2 additions & 1 deletion docs/installation.rst
Expand Up @@ -3,7 +3,8 @@ Installation
============

.. note::
If you need to install Anthill Platform on Mac OS X for testing purposes, see :doc:`development` instead.
If you need to install Anthill Platform on Windows or Mac OS X for development purposes,
see :doc:`development` instead.
This page describes installation steps on Linux (Debian 8 or 9) for production purposes.

Along with actual services, Anthill Platform consists of a lot of
Expand Down
8 changes: 5 additions & 3 deletions docs/services/game-master/flow.rst
Expand Up @@ -32,11 +32,13 @@ At this point, all communication is happens on the Host the spawning process is

On the Host machine, depending of which Game Server Configuration is being spawned, a new process is instantiated. That process is completely game-specific. Upon starting a process, multiple command line arguments are passed:

``<binary>`` ``<unix domain socket path>`` ``<ports>`` ``<other> ...``
``<binary>`` ``<zeromq endpoint>`` ``<ports>`` ``<other> ...``

- *<binary>* A binary file that is actually being instantiated.
- *<unix domain socket path>* A path to a special `Unix Domain Socket <https://en.wikipedia.org/wiki/Unix_domain_socket>`__ that
Controller will communicate with a Game Server upon.
- *<zeromq endpoint>* A path to `ZeroMQ Endpoint <http://api.zeromq.org/2-1:zmq-bind>`__ that
Controller will communicate with a Game Server upon, depending on the operation system, could have format
``tcp://127.0.0.1:<port>`` (tcp) or ``ipc://<unix domain socket>``
(`Unix Domain Socket <https://en.wikipedia.org/wiki/Unix_domain_socket>`__)
- *<ports>* A comma separated list of ports us made available for that particular Game Server instance.
For example, ``32765,32766``. Game Server instance may listen on that ports as Player may connect to them.
- *<other> …* Additional command line arguments, that may appear as defined in
Expand Down
9 changes: 6 additions & 3 deletions docs/services/game-master/json-rpc.rst
Expand Up @@ -72,11 +72,14 @@ Token extention is used to do strict actions server side in behalf of the Player

If the request is successful, the Controller will respond:

.. code:: json
::

{
"access_token": "<Player's access token>",
"scopes": ["<A list of Player's access token scopes>"]
"access_token": <Player's access token>,
"scopes": [<A list of Player's access token scopes>],
"account": <Player's account>,
"credential": <Player's credential>,
"info": { ... additional info ... }
}

Player Left Request
Expand Down

0 comments on commit d236204

Please sign in to comment.