github ZL154/AchievementBadges_for_Jellyfin v1.5.30

latest releases: v2.4.0, v2.3.1, v2.3.0...
5 months ago

Diamond spritesheet for legendary/mythic + diagnostic endpoint

Diamond animation: Legendary and mythic unlocks now show the 147-frame diamond spritesheet (the rotating prismatic crystal from the CodePen) instead of the trophy. The trophy icon is hidden for these two tiers and the diamond fades in at 20% of the cycle, plays through all 147 frames, and fades out at 93%. The spritesheet PNG is served from a new binary asset endpoint.

Diagnostic endpoint: /Plugins/AchievementBadges/test now returns JSON with full injection diagnostics:

{
  "InjectionDiag": {
    "DiagWebPath": "/usr/share/jellyfin/web",
    "DiagIndexFound": true,
    "DiagIndexPatched": true,
    "DiagPatchedPath": "/usr/share/jellyfin/web/index.html",
    "DiagLastError": "none"
  },
  "EmbeddedResources": {
    "EnhanceJs": true,
    "SidebarJs": true,
    "StandaloneJs": true,
    "Spritesheet": true
  }
}

If a user reports that enhance.js isn't loading or the sidebar is missing, have them visit this endpoint. It shows whether the web directory was found, whether index.html was successfully patched, and whether all embedded resources are present in the DLL.

For users where injection fails: the most common cause is the web directory not being writable (Docker containers with read-only mounts, or custom Jellyfin installations where the web files live outside the standard paths). The middleware fallback should handle these cases, but if neither layer works, the diagnostic will show exactly which path was tried and what error occurred.

Don't miss a new AchievementBadges_for_Jellyfin release

NewReleases is sending notifications on new releases.