Open-source multiplayer game server compatible with the RuneScape client
https://www.openrs2.org/
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.
64 lines
2.8 KiB
64 lines
2.8 KiB
<!DOCTYPE html>
|
|
<html xmlns:th="http://www.thymeleaf.org" lang="en">
|
|
<head>
|
|
<title>OpenRS2 Archive</title>
|
|
<link rel="stylesheet" href="/webjars/bootstrap/css/bootstrap.min.css" />
|
|
</head>
|
|
<body>
|
|
<main class="container">
|
|
<table class="table table-striped table-bordered table-hover">
|
|
<thead class="thead-dark">
|
|
<tr>
|
|
<th>Game</th>
|
|
<th>Build</th>
|
|
<th>Timestamp</th>
|
|
<th>Name</th>
|
|
<th>Indexes</th>
|
|
<th>Groups</th>
|
|
<th>Keys<sup><a href="#empty-locs">[1]</a></sup></th>
|
|
<th>Download</th>
|
|
</tr>
|
|
</thead>
|
|
<tbody>
|
|
<!--/*@thymesVar id="caches" type="java.util.List<org.openrs2.archive.cache.CacheExporter.Cache>"*/-->
|
|
<tr th:each="cache : ${caches}">
|
|
<td th:text="${cache.game}">runescape</td>
|
|
<td th:text="${cache.build}">550</td>
|
|
<td th:text="${#temporals.formatISO(cache.timestamp)}"></td>
|
|
<td th:text="${cache.name}"></td>
|
|
<td
|
|
th:class="${cache.archiveStats}? (${cache.archiveStats.allIndexesValid}? 'table-success' : 'table-danger')"
|
|
th:text="${cache.archiveStats}? ${cache.archiveStats.validIndexes} + ' / ' + ${cache.archiveStats.indexes} : 'Calculating...'"
|
|
>Calculating...
|
|
</td>
|
|
<td
|
|
th:class="${cache.groupStats}? (${cache.groupStats.allGroupsValid}? 'table-success' : 'table-warning')"
|
|
th:text="${cache.groupStats}? ${#numbers.formatInteger(cache.groupStats.validGroups, 1, 'COMMA')} + ' / ' + ${#numbers.formatInteger(cache.groupStats.groups, 1, 'COMMA')} : 'Calculating...'"
|
|
>Calculating...
|
|
</td>
|
|
<td
|
|
th:class="${cache.groupStats}? (${cache.groupStats.allKeysValid}? 'table-success' : 'table-warning')"
|
|
th:text="${cache.groupStats}? ${#numbers.formatInteger(cache.groupStats.validKeys, 1, 'COMMA')} + ' / ' + ${#numbers.formatInteger(cache.groupStats.keys, 1, 'COMMA')} : 'Calculating...'"
|
|
>Calculating...
|
|
</td>
|
|
<td>
|
|
<a th:href="${'/caches/' + cache.id + '.zip'}" class="btn btn-primary btn-sm">Cache</a>
|
|
<a th:href="${'/caches/' + cache.id + '.json'}" class="btn btn-primary btn-sm">Keys</a>
|
|
</td>
|
|
</tr>
|
|
</tbody>
|
|
</table>
|
|
<p id="empty-locs">
|
|
[1]: Map squares in the middle of the sea are unreachable by
|
|
normal players, making it impossible to obtain the keys for
|
|
their loc groups. However, the loc groups for these map squares
|
|
are empty. As XTEA does not hide the length of the compressed
|
|
data, this service infers which encrypted loc groups are empty
|
|
and includes them in the number of valid keys, regardless of
|
|
whether we know the key or not. After downloading a cache from
|
|
this service, a cache editor may be used to replace the empty
|
|
encrypted loc groups with unencrypted replacements.
|
|
</p>
|
|
</main>
|
|
</body>
|
|
</html>
|
|
|