Skip to content
This repository has been archived by the owner on Apr 29, 2024. It is now read-only.

Latest commit

 

History

History
74 lines (49 loc) · 1.87 KB

README.md

File metadata and controls

74 lines (49 loc) · 1.87 KB

Self-hosted Voxels.com Scripting Server.

A package to allow people to create their own persistent scripting server. This module exports two objects:

  • Method makeVSS(); This function returns a promise containing the WebSocketServer when it has successfully started.
  • Object expressApp which is the express app object. See the express npm module documentation.

NOTE: This is not yet supported on voxels.com

How to run your own server

  1. Run npm i

  2. Import makeVSS and enter a few lines of code: Using import

import {makeVSS} from 'voxels-scripting-server'

makeVSS(670).then((wss) => {
  if (wss) {
    console.log("Websocket started");
  } else {
    console.error("Websocket did not start");
  }
});

Using require:

const vss =require("voxels-scripting-server");

vss.default.makeVSS(670).then((wss) => {
  if (wss) {
    console.log("Websocket started");
  } else {
    console.error("Websocket did not start");
  }
});

There is a demo on repl.it: https://replit.com/@Benjythebee/testCryptovoxelsserver#index.js

  1. In the examples above, replace 670 with the parcel id or space id you want to create a server for.

  2. Once your server setup, go to your parcel page on Voxels.com and set Hosted script to true;

  3. Then set the host address to wss://[The Address of server]/, Hit save.

Development

  1. Clone the repo

  2. npm run test:server will run a quick test server in client/server using the source code.

  3. npm run test:client will run a quick test client in client/client_test.ts.

Contributing

  1. Create a branch and do your changes

  2. Make sure your code is formatted using npm run format

  3. Also make sure your code builds using npm run build

  4. Create a Pull request at https://github.com/cryptovoxels/Voxels-Scripting-Server .

todo:

  1. Introduce ability to interconnect parcels.
  2. Better tests

Any ideas are welcomed