Installation
To try GrayCore, use the local development stack: it starts everything below with one command. This page is about running it on real servers.
What you need
| Component | Version |
|---|---|
| Paper (game servers) | 26.3 |
| Velocity (proxy) | 4.3 |
| Java | 25 |
| PostgreSQL | any supported version (the driver is 42.7) |
| Redis | any supported version |
server-service | built from this repository (server-service/), a Docker image is published by the CI |
Each Paper server also needs TAB, PlaceholderAPI and WorldGuard (with FastAsyncWorldEdit or WorldEdit): GrayCore does not start without them. The proxy needs TAB.
Steps
- Start PostgreSQL, Redis and
server-service.server-serviceneedsGRPC_API_KEY: the key the servers will present. - Install the jars:
graycore-paper.jarin theplugins/folder of every Paper server,graycore-velocity.jarin the one of the proxy. - Set the environment variables of each server and of the proxy, see Environment variables. A game server refuses to start without them.
- Fill in the configurations: the database and Redis in
plugins/GrayCorePaper/config.yml, the database in the proxy'sconfig.yml. See Configuration. - Create the database schema once: set
enableLiquibase: trueon one server (orcreateStructure: trueon the proxy) for the first start. - Start the servers, then the proxy. On its first start, a Paper server creates the
admingroup with every GrayCore permission. Give it to yourself from the console with/grayperms.
Checking it works
- In game,
/grayserver list(with the admin permission) shows the servers the proxy knows. /debug onshows how your profile was loaded and which servers the proxy considered when routing you.