No description
  • Java 64.9%
  • Kotlin 20.7%
  • Ruby 14.4%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
0xGingi 7a6209810c modified: build.gradle
modified:   game/build.gradle
2024-09-07 12:34:51 +00:00
cache Remove apollo-plugin Gradle plugin 2018-08-27 00:55:41 +01:00
game modified: build.gradle 2024-09-07 12:34:51 +00:00
gradle Fix location of detekt report 2019-07-16 18:47:28 +01:00
net Update test deps for Java 11 2019-07-16 16:35:34 +01:00
util Update test deps for Java 11 2019-07-16 16:35:34 +01:00
.editorconfig Add gradle to .editorconfig 2018-04-08 16:19:48 +01:00
.gitignore Housekeeping 2019-03-26 14:05:40 -04:00
azure-pipelines.yml Publish SonarQube analysis from Azure CI 2019-07-16 18:27:40 +01:00
build.gradle modified: build.gradle 2024-09-07 12:34:51 +00:00
CONTRIBUTING.md Update contributors guidelines 2016-03-12 13:39:47 +00:00
gradlew Add Gradle wrapper 2018-08-22 21:21:58 +01:00
gradlew.bat Add Gradle wrapper 2018-08-22 21:21:58 +01:00
Jenkinsfile Add Jenkinsfile 2017-06-20 08:00:06 +01:00
LICENSE Update LICENSE year 2016-01-26 02:02:00 +00:00
README.md Add discord link 2020-02-29 19:17:13 +00:00
settings.gradle Add library containing detekt rules for apollo plugins 2018-09-04 05:53:06 +01:00

Apollo

Apollo is a high-performance, modular RuneScape emulator with a collection of utilities for managing data files and plugins.

Developer information

Most discussion related to the development of Apollo happens on our Discord. If you have a problem and can't get in touch with anyone, create a GitHub issue. If making a pull request, please make sure all tests are still passing after making your changes, and that your code style is consistent with the rest of Apollo.

Getting started

Apollo uses the gradle build tool, so this must be installed in order to build Apollo.

  1. Run gradle build in the Apollo directory to download dependencies and build Apollo.
  2. Place the full cache of the client revision you want to target in data/fs/[revision] - by default Apollo is compatible with the 377 revision, so the cache would be placed in data/fs/377.
  3. Place an rsa.pem file containing the RSA private key to be used by the server in data/. Apollo comes with a generator that will write the pem file to the appropriate location - see org.apollo.util.tools.RsaKeyGenerator. If you use the generator you must replace the public key and modulus used by your client (the tool will print the new values).
  4. If you are targeting a different client revision, run the EquipmentUpdater (in org.apollo.cache.tools), which identifies the appropriate combat skill levels required to wear equipment. Note that you may have to update the tool yourself if the revision contains equipment not found in 377.

Apollo is now ready, and can be started using gradle run. You may wish to change the player serializer defined in login.xml - by default player data is not saved, and all users who log in will have administrator rights.

Contributing

Please see contributing to Apollo.

Acknowledgements

We'd like to thank the list of service providers/development tool vendors below for offering their products to the Apollo project free of charge.


YourKit

YourKit supports open source projects with its full-featured Java Profiler. YourKit, LLC is the creator of YourKit Java Profiler and YourKit .NET Profiler, innovative and intelligent tools for profiling Java and .NET applications.

Travis CI

Travis CI is a Continuous Integration platform that allows for setup of automated testing with minimal configuration.