mirror of
https://github.com/ProjectSWGCore/Holocore.git
synced 2026-01-17 00:06:00 -05:00
Relocated certain sections of README.md into a new CONTRIBUTING.md
This commit is contained in:
51
CONTRIBUTING.md
Normal file
51
CONTRIBUTING.md
Normal file
@@ -0,0 +1,51 @@
|
||||
# Contributing
|
||||
Thanks for considering taking the time to contribute to Holocore! :heart:
|
||||
|
||||
|
||||
|
||||
## Setting up a development environment
|
||||
Ready to help bring back an awesome MMORPG with your programming skills?
|
||||
|
||||
This section will guide you through setting up a development environment for Holocore.
|
||||
|
||||
### Docker
|
||||
The project uses [Docker](https://www.docker.com) to make it easy to run a MongoDB instance.
|
||||
|
||||
You can download Docker [here](https://www.docker.com/get-started).
|
||||
|
||||
### IDE
|
||||
We recommend using [IntelliJ IDEA](https://www.jetbrains.com/idea/download) as your IDE. It's free and has great support for Gradle projects.
|
||||
|
||||
It will also automatically use the project's code style settings, automatically manage license headers.
|
||||
This greatly reduces the amount of friction when contributing.
|
||||
|
||||
### Java Development Kit
|
||||
Assuming you are using IntelliJ IDEA, you can easily install the correct JDK version by opening the project in IntelliJ IDEA and clicking on the "Install JDK" link in the top right corner.
|
||||
|
||||
If you already have a JDK installed, but perhaps not the correct version, follow [this guide](https://www.jetbrains.com/help/idea/sdk.html#define-sdk) to download a JDK.
|
||||
|
||||
### Git submodules
|
||||
The project uses [git submodules](https://git-scm.com/book/en/v2/Git-Tools-Submodules).
|
||||
|
||||
Clone them by running: `git submodule update --init`.
|
||||
|
||||
You may have to manually update the submodules in the future, if become outdated: `git submodule update`.
|
||||
|
||||
### MongoDB
|
||||
A MongoDB instance can be bootstrapped by running `docker-compose up -d`.
|
||||
|
||||
This will run and initialize a MongoDB instance with a default game server user.
|
||||
* Username: user
|
||||
* Password: pass
|
||||
|
||||
This will also run a web UI, which can be accessed in the browser at: http://localhost:8081
|
||||
|
||||
You can stop both with: `docker-compose down`.
|
||||
|
||||
### Running Holocore
|
||||
In IntelliJ idea, run the **Start server (development)** run configuration.
|
||||
|
||||
**NOTE**: A MongoDB instance must be running for the server to start.
|
||||
|
||||
### Running automated tests
|
||||
In IntelliJ idea, run the **Tests** run configuration.
|
||||
45
README.md
45
README.md
@@ -3,48 +3,25 @@
|
||||

|
||||
[](https://discord.gg/BWhBx4F)
|
||||
|
||||
|
||||
# Introduction #
|
||||
This is a Star Wars Galaxies server emulator, targeted at the Combat Upgrade (CU)
|
||||
# Holocore
|
||||
Holocore is a Star Wars Galaxies server emulator, targeted at the [Combat Upgrade (CU)](https://swg.fandom.com/wiki/Combat_Upgrade_Changes)
|
||||
era of the game.
|
||||
|
||||
# Vision
|
||||
## Vision
|
||||
* Providing an experience that's reasonably close to the original, out of the box
|
||||
* Easily expandable with new functionality
|
||||
* Good amount of configuration options for in-game features
|
||||
* Efficient use of system resources and solid performance
|
||||
* Efficient use of system resources
|
||||
|
||||
# Setting up a development environment #
|
||||
Ready to help bring back an awesome MMORPG with your programming skills?
|
||||
## Contributing
|
||||
If you're interested in contributing to the project, please see our [contributing guide](CONTRIBUTING.md).
|
||||
|
||||
## Java Development Kit ##
|
||||
In order to compile the source code, you need a JDK installation on your machine. The `JAVA_HOME` environment variable
|
||||
should point to the directory of the JDK! It should be version **18** as minimum. You can see your installed Java version
|
||||
by running `java -version`.
|
||||
## Running your own server
|
||||
Warning: Holocore is still in early development, and not yet ready for public use. Breaking changes may occur at any time.
|
||||
|
||||
## Submodules ##
|
||||
The project uses submodules. Get them by running: git submodule update --init
|
||||
If you're interested in running your own Holocore server anyway, you can use the provided Docker image.
|
||||
|
||||
## MongoDB ##
|
||||
A MongoDB instance can be bootstrapped by running `docker-compose up -d`.
|
||||
We regularly push new images to [GitHub Packages](https://github.com/ProjectSWGCore/Holocore/pkgs/container/Holocore%2Fholocore).
|
||||
|
||||
This will run and initialize a MongoDB instance with a default game server user.
|
||||
* Username: user
|
||||
* Password: pass
|
||||
|
||||
This will also run a web UI, which can be accessed in the browser at: http://localhost:8081
|
||||
|
||||
You can stop both with: `docker-compose down`.
|
||||
|
||||
## Running Holocore ##
|
||||
Compile and run Holocores main code using Gradle: `./gradlew runDevelopment`
|
||||
|
||||
## Running automated tests ##
|
||||
Compile and run Holocores automated tests using Gradle: `./gradlew test --info`
|
||||
|
||||
# Running your own server #
|
||||
If you're interested in running your own server, you should use the provided
|
||||
Docker image.
|
||||
|
||||
## Help needed ? ##
|
||||
## Help needed ?
|
||||
If you have questions or stuck, please use the channels on Discord [](https://discord.gg/BWhBx4F)
|
||||
|
||||
Reference in New Issue
Block a user