PHPackages                             villermen/runescape-lookup-commons - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. villermen/runescape-lookup-commons

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

villermen/runescape-lookup-commons
==================================

A PHP library containing RuneScape lookup components.

v6.2.1(4mo ago)01252MITPHPPHP &gt;=8.1CI passing

Since Sep 5Pushed 1w ago1 watchersCompare

[ Source](https://github.com/villermen/runescape-lookup-commons)[ Packagist](https://packagist.org/packages/villermen/runescape-lookup-commons)[ RSS](/packages/villermen-runescape-lookup-commons/feed)WikiDiscussions master Synced 3w ago

READMEChangelog (10)Dependencies (5)Versions (45)Used By (0)

RuneScape lookup commons
========================

[](#runescape-lookup-commons)

A PHP library containing RuneScape lookup components.

Features
--------

[](#features)

- Fetch and compare RS3 and OSRS high scores.
- Alternatively for RS3, RuneMetrics can be used to obtain high scores and activity feed together. It may contain high score data even for non-member players, but lacks activity high scores.
- Fetch player activity feed via RuneMetrics or Adventurer's log.
- Calculate combat levels and virtual skill levels.

Installation
------------

[](#installation)

`composer require villermen/runescape-lookup-commons`

Usage
-----

[](#usage)

Create or obtain an instance of `Player` and use it with the `PlayerDataFetcher` service to obtain high scores and other information.

```
use Villermen\RuneScape\HighScore\HighScoreSkill;
use Villermen\RuneScape\HighScore\OsrsSkill;
use Villermen\RuneScape\HighScore\Rs3HighScore;
use Villermen\RuneScape\HighScore\Rs3Skill;
use Villermen\RuneScape\Player;
use Villermen\RuneScape\Service\PlayerDataFetcher;

$fetcher = new PlayerDataFetcher(); // You can optionally provide your own HTTP client.
$player = new Player('playername');

$rs3HighScore = $fetcher->fetchIndexLite($player, oldSchool: false);
$mining = $rs3HighScore->getSkill(Rs3Skill::MINING);
$mining->level; // 110
$mining->getVirtualLevel(); // 123
$mining->getXpToNextLevel(); // 1231231
$rs3HighScore->getSkill(Rs3Skill::NECROMANCY)->xp // null
$rs3HighScore->getSkill(Rs3Skill::TOTAL)->rank; // 1200000
$rs3HighScore->getCombatLevel(includeSummoning: true); // 138

$osrsHighScore = $fetcher->fetchIndexLite($player, oldSchool: true);
$osrsHighScore->getSkill(OsrsSkill::HITPOINTS)->getLevelOrMinimum(); // 10

$highScore1 = new Rs3HighScore(skills: [new HighScoreSkill(
    skill: Rs3Skill::ATTACK,
    rank: null,
    level: 24,
    xp: 7420,
)], activities: []);
$highScore2 = new Rs3HighScore(skills: [new HighScoreSkill(
    skill: Rs3Skill::ATTACK,
    rank: 2000000,
    level: 25,
    xp: 7840,
)], activities: []);
$comparison = $highScore1->compareTo($highScore2);
$comparison->getLevelDifference(Rs3Skill::ATTACK); // -1
$comparison->getRankDifference(Rs3Skill::ATTACK); // null
$comparison->getXpDifference(Rs3Skill::ATTACK); // 420

$runeMetrics = $fetcher->fetchRuneMetrics($player);
$runeMetrics->displayName; // "PlayerName"
$runeMetrics->highScore; // Rs3HighScore
$runeMetrics->activityFeed->items[0]->title; // "Quest complete: Evil Dave's big day out"

$adventurersLog = $fetcher->fetchAdventurersLog($player);
$adventurersLog->displayName; // "PlayerName"
$adventurersLog->activityFeed->items[0]->description; // "I somehow switched bodies with Evil Dave and survived enough chores and shouting from Doris to find a way to swap back!"
```

###  Health Score

52

—

FairBetter than 96% of packages

Maintenance88

Actively maintained with recent releases

Popularity11

Limited adoption so far

Community9

Small or concentrated contributor base

Maturity84

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~75 days

Recently: every ~33 days

Total

42

Last Release

128d ago

Major Versions

v1.3.1 → v2.0.02018-01-30

v2.0.2 → v3.0.02018-02-01

v3.0.0 → v4.0.02018-02-02

v4.2.4 → v5.0.02020-03-30

v5.2.0 → v6.0.02025-01-21

PHP version history (4 changes)v1.0.0PHP &gt;=7

v5.0.0PHP &gt;=7.1

v5.2.0PHP &gt;=8.0

v6.0.0PHP &gt;=8.1

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/1106303?v=4)[Sjoerd Nuijten](/maintainers/Villermen)[@villermen](https://github.com/villermen)

---

Top Contributors

[![villermen](https://avatars.githubusercontent.com/u/1106303?v=4)](https://github.com/villermen "villermen (116 commits)")

---

Tags

librarylookupphprunescape

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/villermen-runescape-lookup-commons/health.svg)

```
[![Health](https://phpackages.com/badges/villermen-runescape-lookup-commons/health.svg)](https://phpackages.com/packages/villermen-runescape-lookup-commons)
```

###  Alternatives

[craftcms/cms

Craft CMS

3.6k3.6M3.1k](/packages/craftcms-cms)[drupal/drupal-extension

Drupal extension for Behat

22215.7M173](/packages/drupal-drupal-extension)[blackfire/player

A powerful web crawler and web scraper with Blackfire support

49617.1k](/packages/blackfire-player)[chameleon-system/chameleon-base

The Chameleon System core.

1028.6k5](/packages/chameleon-system-chameleon-base)[sproutcms/cms

Enterprise content management and framework

242.5k4](/packages/sproutcms-cms)[drupal/core-dev

require-dev dependencies from drupal/drupal; use in addition to drupal/core-recommended to run tests from drupal/core.

2022.6M343](/packages/drupal-core-dev)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
