Apollo is a high-performance, modular RuneScape emulator with a collection of utilities for managing data files and plugins.
Most discussion related to the development of Apollo happens on the IRC channel #apollorsps on irc.freenode.net. 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.
Apollo uses the gradle build tool, so this must be installed in order to build Apollo.
- Run
gradle build
in the Apollo directory to download dependencies and build Apollo. - 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 indata/fs/377
. - Place an
rsa.pem
file containing the RSA private key to be used by the server indata/
. Apollo comes with a generator that will write the pem file to the appropriate location - seeorg.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). - If you are targeting a different client revision, run the
EquipmentUpdater
(inorg.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.
Please see contributing to Apollo.