---------
Synkroban
---------
Synkroban is a Sokoban engine for Synchronet BBS. Sokoban is an awesome warehouse game, where you move the boxes onto the goals.

Note that InterBBS features are disabled by default. See the Installation section to enable, recommended by the author.


------------
Requirements
------------
You need the following libraries, from the Synchronet CVS:
- json-client.js
- frame.js
You can grab this from the Synchronet CVS repository, if you don't have it already.


------------
Installation
------------
1. Get the sources. They can be found on cvs.synchro.net, the official Synchronet repository.

2. Configure the door in SCFG:
+[¦][?]----------------------------------------------------+
¦                         Synkroban                        ¦
¦----------------------------------------------------------¦
¦ ¦Name                       Synkroban                    ¦ <--- pay attention!
¦ ¦Internal Code              SOKOBAN                      ¦ <--- pay attention!
¦ ¦Start-up Directory         ../xtrn/synkroban            ¦ <--- pay attention!
¦ ¦Command Line               ?synkroban                   ¦ <--- pay attention!
¦ ¦Clean-up Command Line                                   ¦
¦ ¦Execution Cost             None                         ¦
¦ ¦Access Requirements                                     ¦
¦ ¦Execution Requirements                                  ¦
¦ ¦Multiple Concurrent Users  Yes                          ¦ <--- PAY ATTENTION!
¦ ¦Intercept I/O              Standard, WWIV Color         ¦
¦ ¦Native Executable          No                           ¦
¦ ¦Use Shell to Execute       No                           ¦
¦ ¦Modify User Data           No                           ¦
¦ ¦Execute on Event           No                           ¦
¦ ¦Pause After Execution      No                           ¦
¦ ¦BBS Drop File Type         None                         ¦
¦ ¦Place Drop File In         Node Directory               ¦
+----------------------------------------------------------+

3. InterBBS global scores are disabled by default, but is simple to enable. Edit 'synkroban.js' and set the 'USE_GLOBAL_SERVER' key in skb_config to true:

	var skb_config = {
		...
		USE_GLOBAL_SERVER: true,
		...
	}

   If you wish to use another InterBBS server or host your own high scores service please read the hosting section below.


------------------------
Hosting the JSON Service
------------------------
Synkroban can send and retrieve InterBBS data from the global server.  If you want to use another server, skip to step 4.

If you want to host your own JSON service, follow these steps:

1. Your BBS should be configured with the JSON service. In your ctrl/services.ini, ensure this is enabled:
	[JSON]
	Port=10088
	Options=STATIC | LOOP
	Command=json-service.js

2. Edit ctrl/json-service.ini, adding:
    [synkroban]
    dir=../xtrn/synkroban/
   Note that if you changed the installation path, this line must be similarly changed.

3. Restart the Synchronet Services service.

4. Edit 'server.ini' to set the host and port to the desired JSON service.

5. Edit 'synkroban.js' and change the settings to:

	var skb_config = {
		...
		USE_JSON: true,
		USE_GLOBAL_SERVER: false,
		...
	}
