ProjectAres

Custom Bukkit/Bungee plugins used by the former Overcast Network

NOTE: This repository is no longer maintained, but you can still contribute to forks.

Install

  1. Clone and install Universe to download the required dependencies.

    git clone [email protected]:Electroid/Universe.git
    cd Universe
    git submodule update --init
    mvn clean install
  2. Clone and install ProjectAres to build the suite of plugins.

    cd ..
    git clone [email protected]:OvercastNetwork/ProjectAres.git
    cd ProjectAres
    mvn clean install

License

ProjectAres is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero General Public License for more details.

A copy of the GNU Affero General Public License is included in the file LICENSE.txt, and can also be found at https://www.gnu.org/licenses/agpl-3.0.en.html

The AGPL license is quite restrictive, please make sure you understand it. If you run a modified version of this software as a network service, anyone who can use that service must also have access to the modified source code.

Status

These plugins were converted from an internal project to open source in a rush, so they are not yet well adapted for third party use. Improving this adaptation is a top development priority, specifically:

Getting Help

You may find some help on the PGM Discord, in these channels:

#help Help with running a ProjectAres server

#contributing Discussion about contributing to ProjectAres

Please keep in mind that this help is provided by volunteers and other users, out of the kindness of their golden hearts, and not as an obligation to you.

Building

You will need a recent version of JDK 8. Old JDK versions do have bugs that will prevent the code from compiling. You will also need Maven.

To build everything, just run mvn clean package. This should download all dependencies from our repository and create several .jar files in the target directories of each module. If the build fails, please report it in Discord.

You can also download builds from our Jenkins server.

Running

The plugins in this repo work only with SportBukkit and our custom fork of BungeeCord. They will not work with standard CraftBukkit or BungeeCord.

Appropriate SportBukkit settings are provided in bukkit.yml.sample in this folder. Of particular interest are these:

On any PGM or Lobby server, these external plugins can/must be loaded:

As well as these plugins from this repo:

For a PGM server, you also need:

For tournament support on PGM, you also need:

And for a Lobby server, you just need:

For a Bungee proxy, you just need these two:

Contents

Direct dependencies between the Bukkit plugins:

The API plugin is used by all the other plugins to interact with the data model. It is split into interface and implementation layers, allowing different backends to be used. There is a built-in default backend that implements minimal functionality for running a standalone server. The api-ocn plugin is the backend implementation for the former Overcast Network.

Coding Guidelines

Workflow