Welcome to the example C++ plugin for Endstone servers.
- Visual Studio 2017 or newer
- Clang 5 or higher
- libc++ installed
cpp-example-plugin/
├── include/ # Header files for the plugin
├── src/ # Source files for the plugin
│ ├── example_listener.h # Header for the ExampleListener class
│ ├── fibonacci_command.h # Header for the FibonacciCommand class
│ ├── example_plugin.h # Header for the ExamplePlugin class
│ └── example_plugin.cpp # Source and metadata for the plugin
├── .clang-format # Configuration for Clang format rules
├── .clang-tidy # Configuration for Clang tidy rules
├── .clangd # Configuration for Clangd language server
├── .gitignore # Git ignore rules
├── xmake.lua # xmake configuration for building the plugin
├── LICENSE # License details
└── README.md # This file
-
Clone this Repository
git clone https://github.com/EndstoneMC/cpp-example-plugin.git
-
Navigate to the Cloned Directory
cd cpp-example-plugin
-
Build Your Plugin
xmake
This process will compile your code and produce a shared library that Endstone servers can load.
Note: If you wish to build against a specific version of Endstone, you can modify the
add_requires
in thexmake.lua
file to point to the desired tag or commit. -
Test Your Plugin
Once built, copy the output binary
endstone_example_plugin.dll
(Windows) orendstone_example_plugin.so
(Linux) to theplugins
directory of your Endstone server. Start the Endstone server and check the logs to ensure your plugin loads and operates as expected.
For a deeper dive into the Endstone API and its functionalities, refer to the main Endstone documentation (WIP).
This project is licensed under the MIT License - see the LICENSE file for details.