Skip to content

Add reliable DayZ Workshop mod updates - #292

Open
Nofates wants to merge 2 commits into
Osiris-Team:masterfrom
Nofates:derived/workshop-bounty-fix
Open

Add reliable DayZ Workshop mod updates#292
Nofates wants to merge 2 commits into
Osiris-Team:masterfrom
Nofates:derived/workshop-bounty-fix

Conversation

@Nofates

@Nofates Nofates commented Sep 8, 2026

Copy link
Copy Markdown

Summary

Derived continuation of #290 for #215.

  • Use Steam's consumer_app_id from GetPublishedFileDetails for Workshop downloads, with the configured server app id as a fallback when the response does not provide one.
  • Detect the long timestamp format used by real meta.cpp files instead of comparing it directly with Steam's Unix time_updated value. This ensures the first update check can detect a newer Workshop item.
  • Add regression coverage for the long timestamp and for a dedicated-server app id differing from the Workshop consumer app id.

Testing

  • mvn -q -DskipTests compile
  • mvn -q -Dtest=SteamWorkshopModTest test
  • mvn -q test

All commands passed under JDK 17. The full suite includes the existing SteamCMD setup test and completed successfully.

AI-assisted contribution disclosure

This contribution was created with AI assistance. The changes were reviewed against the existing architecture, compiled, and tested locally. No new dependencies were added.

JnCaoxia and others added 2 commits August 1, 2026 20:10
- Discover Workshop mods by reading publishedid from meta.cpp
- Check for updates via the Steam Web API (GetPublishedFileDetails)
  and only download when time_updated is newer than the cached version
- Download updates through SteamCMD (NOTIFY/MANUAL/AUTOMATIC profiles)
- Cache steam-workshop-id and version in mods.yml
- Add SteamWorkshopUpdateFinder and TaskSteamWorkshopModDownload
- Tests: meta.cpp parsing, mod discovery, end-to-end update flow

Builds upon the earlier work in PR Osiris-Team#280.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants