Skip to content

Conversation

@lucifer4330k
Copy link

@lucifer4330k lucifer4330k commented Oct 26, 2025

Description

Added support for looking up Valorant player profiles on Tracker.gg using Riot IDs (username#tag format).

Features

  • Support for Riot ID format validation (3-16 char username, 3-5 char tag)
  • Added tests for format validation and account detection
  • Documentation about Cloudflare limitations
  • Browser-like headers to improve reliability

Implementation Details

  • Added Valorant site to data.json with proper Riot ID regex validation
  • Added tests to verify format validation and account detection
  • Documented limitations regarding Cloudflare protection
  • Test suite handles both successful cases and expected failures due to Cloudflare

Limitations

The site uses Cloudflare protection which may affect detection reliability. The implementation:

  • Validates Riot ID format correctly
  • Uses browser-like headers to improve reliability
  • Has comprehensive test coverage with appropriate handling of Cloudflare limitations

Testing

  • ✅ Format validation works reliably
  • ⚠️ Account existence checking may be limited by Cloudflare
  • 🧪 Tests cover both successful and failure cases
  • 📝 Clear documentation of limitations

Hacktoberfest

This PR is part of Hacktoberfest — please add the label if the maintainers consider this contribution eligible.

Checklist

  • I have read and followed the project's Code of Conduct
  • Added comprehensive tests
  • Documented known limitations
  • Verified test suite passes

Fixes #2717

Added support for looking up Valorant player profiles on Tracker.gg using Riot IDs (username#tag format). Features: - Support for Riot ID format validation (3-16 char username, 3-5 char tag) - Added tests for format validation and account detection - Documentation about Cloudflare limitations - Browser-like headers to improve reliability Closes sherlock-project#2717
@github-actions
Copy link
Contributor

Automatic validation of changes

Target F+ Check F- Check
Tracker.gg Valorant ✔️   Pass ❌   Fail

Failures were detected on at least one updated target. Commits containing accuracy failures will often not be merged (unless a rationale is provided, such as false negatives due to regional differences).

@DylanDalal
Copy link

curl -I "https://tracker.gg/valorant/profile/riot/TenZ%23NA1/overview"
curl -I "https://tracker.gg/valorant/profile/riot/FakeUser%23FAKE/overview"
Both requests return 403 with cf-mitigated: challenge, which is that's Cloudflare blocking the request before it even reaches Tracker.gg's servers.
RequestExpectedActualTenZ#NA1 (exists) 403 (Cloudflare challenge)
FakeUser#FAKE (doesn't exist) 403 (Cloudflare challenge)

Both return 403s, so Sherlock can't distinguish between existing and non-existing profiles. The status_code detection method is useless here.

This PR should not be merged. The implementation:
Will return QueryStatus.AVAILABLE for every lookup (since 403 ≥ 300)
Will produce 100% false negatives - every real player will be reported as "not found"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

2 participants