ProjectLighthouse icon indicating copy to clipboard operation
ProjectLighthouse copied to clipboard

LBP will show levels that aren’t compatible for the game

Open W0lf4llo opened this issue 2 years ago • 1 comments

Describe the bug In LBP1 it will show all levels published on the servers instead of levels compatible for the game. This issue persists in LBP1, LBP2, LBP3, and LBP Vita

To Reproduce Steps to reproduce the behavior:

  1. Open any LBP
  2. Click on the community tab
  3. Look at the published levels.
  4. It will show every published level instead of ones that are compatible

Expected behavior The game will show every level that is compatible for the game and will show the compatible levels for the “published levels” count for the game.

Screenshots 434835E0-3D9B-4C67-8FAB-5A5C58CA04AE 9048EA06-6B59-45AC-AC5C-5D7A4DE260E0

Game(s) affected

  • Platform Every platform
  • Game Every game

Additional context Add any other context about the problem here.

W0lf4llo avatar Sep 01 '22 02:09 W0lf4llo

iirc it was like this on the official servers too

i have no clue if it actually was like that though

Arcadius2006 avatar Sep 04 '22 16:09 Arcadius2006

iirc it was like this on the official servers too

i have no clue if it actually was like that though

It was.

Luckily, LBP includes the game version in User-Agent:

  • LBP1: MM CHTTPClient $Id: HTTPClient.cpp 37276 2010-01-15 19:51:36Z amy $

  • LBP2/LBP Vita/LBP HUB/LBP3(0–1.26) include the app version: MM CHTTPClient LBP2 1.26

  • LBP3 1.27+: MM CHTTPClient LBP3 1.28

You could potentially have some kind of hash table User-Agent->enum mapping in the database for levels/resources, and decide to filter levels/resources that way. I wouldn't try this for LBP1 though since revision checks branch off when it's a disc/digital copy (don't attempt with LBP1.)

ghost avatar Oct 28 '22 14:10 ghost