Bug reports, fixes and new plugins are welcome. Please read the Code of Conduct first; it applies to issues, pull requests and discussions.
You need Node.js 22.13 or newer and git.
git clone https://github.com/perronosaurio/MCScript.git
cd MCScript
npm install
npm test
npm startJoin with the ClassiCube client at 127.0.0.1:25565 (local connections skip name verification).
npm run lintpasses. The project uses JavaScript Standard Style.npm testpasses, and new behavior comes with a test. Integration tests intest/server.test.jsstart a real server with simulated clients, seetest/helpers/.- If you changed packets or anything the client sees, try it with the real ClassiCube client as well.
- Keep pull requests focused: one fix or feature each.
- Update
README.md,docs/andCHANGELOG.mdwhen you change how something is used.
lib/is the core: protocol, levels, players, commands and the plugin system. Changes here affect every plugin, so be careful with the public API described indocs/PLUGINS.md.plugins/holds the bundled plugins. Most new features belong here, not inlib/.- The server has no runtime dependencies and that should stay that way. If you need a library, write a plugin that users install on their own.
A short summary in the imperative ("Fix /undo for pasted blocks"), then a blank line and a longer explanation if it helps.
By contributing you agree that your contribution is released under the MIT License.