forked from openrs2/openrs2
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
86 lines
3.5 KiB
86 lines
3.5 KiB
# OpenRS2
|
|
|
|
[![Drone][drone-badge]][drone] [![Discord][discord-badge]][discord] [![ISC license][isc-badge]][isc]
|
|
|
|
## Introduction
|
|
|
|
OpenRS2 is an open-source multiplayer game server and suite of associated
|
|
tools. It is compatible with build 550 of the RuneScape client, which was
|
|
released in late 2009.
|
|
|
|
## Prerequisites
|
|
|
|
OpenRS2 requires version 11 or later of the [Java Development Kit][jdk].
|
|
|
|
The JDK is required even if a pre-built copy of OpenRS2 is used, as it depends
|
|
on JDK-only tools, such as `jarsigner`, at runtime.
|
|
|
|
### Non-free components
|
|
|
|
OpenRS2 requires the original RuneScape client code, data and location file
|
|
encryption keys, which we cannot legally distribute.
|
|
|
|
These files must be manually placed in the `nonfree` directory (directly
|
|
beneath the root of the repository), in the following structure:
|
|
|
|
```
|
|
nonfree
|
|
└── lib
|
|
├── jaggl.pack200
|
|
├── loader_gl.jar
|
|
├── loader.jar
|
|
├── runescape_gl.pack200
|
|
├── runescape.jar
|
|
└── unpackclass.pack
|
|
```
|
|
|
|
The CRC-32 checksums and SHA-256 digests of the correct files are:
|
|
|
|
| CRC-32 checksum | SHA-256 digest | File |
|
|
|----------------:|--------------------------------------------------------------------|------------------------------------|
|
|
| `-1418094567` | `d39578f4a88a376bcb2571f05da1939a14a80d8c4ed89a4eb172d9e525795fe2` | `nonfree/lib/jaggl.pack200` |
|
|
| `-2129469231` | `31182683ba04dc0ad45859161c13f66424b10deb0b2df10aa58b48bba57402db` | `nonfree/lib/loader_gl.jar` |
|
|
| `-1516355035` | `ccdfaa86be07452ddd69f869ade86ea900dbb916fd853db16602edf2eb54211b` | `nonfree/lib/loader.jar` |
|
|
| `-132784534` | `4a5032ea8079d2154617ae1f21dfcc46a10e023c8ba23a4827d5e25e75c73045` | `nonfree/lib/runescape_gl.pack200` |
|
|
| `1692522675` | `0ab28a95e7c5993860ff439ebb331c0df02ad40aa1f544777ed91b46d30d3d24` | `nonfree/lib/runescape.jar` |
|
|
| `-1911426584` | `7c090e07f8d754d09804ff6e9733ef3ba227893b6b639436db90977b39122590` | `nonfree/lib/unpackclass.pack` |
|
|
|
|
The `.gitignore` file includes the `nonfree` directory to prevent any non-free
|
|
material from being accidentally included in the repository.
|
|
|
|
## Building
|
|
|
|
Run `./gradlew` to download the dependencies, build the code, run the unit tests
|
|
and package it.
|
|
|
|
IDEA 2020.3's built-in build system breaks with a cryptic
|
|
`java: java.lang.IllegalArgumentException` error message when compiling modules
|
|
that use the `deob-annotations` processor. A workaround is to add
|
|
`-Djps.track.ap.dependencies=false` to the 'Shared build process VM options' in
|
|
File -> Settings -> Build, Execution and Deployment -> Compiler. See
|
|
[IDEA-256707][idea-bug] for more information.
|
|
|
|
## Links
|
|
|
|
* [Discord][discord]
|
|
* [Issue tracker][issue-tracker]
|
|
* [KDoc][kdoc]
|
|
* [Website][www]
|
|
|
|
## License
|
|
|
|
OpenRS2 is available under the terms of the [ISC license][isc], which is
|
|
similar to the 2-clause BSD license. The full copyright notice and terms are
|
|
available in the `LICENSE` file.
|
|
|
|
[discord-badge]: https://img.shields.io/discord/684495254145335298
|
|
[discord]: https://chat.openrs2.org/
|
|
[drone-badge]: https://build.openrs2.org/api/badges/openrs2/openrs2/status.svg
|
|
[drone]: https://build.openrs2.org/openrs2/openrs2/
|
|
[idea-bug]: https://youtrack.jetbrains.com/issue/IDEA-256707
|
|
[isc-badge]: https://img.shields.io/badge/license-ISC-informational
|
|
[isc]: https://opensource.org/licenses/ISC
|
|
[issue-tracker]: https://git.openrs2.org/openrs2/openrs2/issues
|
|
[jdk]: https://jdk.java.net/
|
|
[kdoc]: https://docs.openrs2.org/
|
|
[www]: https://www.openrs2.org/
|
|
|