screeps-modules

1.2.0 • Public • Published

screeps-modules

Build status NPM Node version bitHound Dependencies bitHound Dev Dependencies Coverage

A thin client for committing/retrieving modules from a Screeps server, including private servers. If you are using Webpack, see langri-sha/screeps-webpack-plugin.

The client uses the Screeps Web API. To authenticate, make sure you have an account password configured, if you've registered via Steam or GitHub. If you provide a token, it will be used instead to authorize requests.

On private servers, make sure that you have the authorization mod installed and an account created.

For something more comprehensive, check out screepers/node-sreeps-api.

Install

npm install screeps-modules

Usage

import ScreepsModules from 'screeps-modules'

const client = new ScreepsModules(options)

Options

const client = new ScreepsModules({
  email: 'EMAIL',
  password: 'PASSWORD',
  token: 'TOKEN'
  serverUrl: 'https://screeps.com',
  serverPassword: 'SERVER_PASS',
  gzip: false
}

ScreepsModules#commit([branch,] modules): Object

Commit modules to the provided branch, or to the one that's active in the world.

// Update branch 'sim'
await client.commit('sim', {
  main: 'module.exports = () => {console.log(Game.time)}'
})
// => {ok: 1}
// Update branch 'sim'

// Update the active world branch
await client.commit({
  main: 'module.exports = () => {console.log(Game.time)}'
})
// => {ok: 1}

ScreepsModules#fetch([branch])

Retrieve scripts from the provided branch, or from the one that's active in the world.

// Retrieve branch 'sim'
await client.retrieve('sim')
// => {main: 'module.exports = () => {console.log(Game.time)}'}

// Fetch active world branch
await client.retrieve()
// => Object

ScreepsModules#refreshToken()

Updates the client token. Returns the token.

await client.refreshToken()
// => 'TOKEN'

Troubleshooting

To avoid leaking sensitive information, the client only returns opaque responses and is safe to use in CI. If you need to inspect the responses, start your process with DEBUG=screeps-modules node $ARGS.

Dependencies (2)

Dev Dependencies (8)

Package Sidebar

Install

npm i screeps-modules

Weekly Downloads

1

Version

1.2.0

License

MIT

Last publish

Collaborators

  • malkron