{"action":"created","issue":{"url":"https://api.github.com/repos/MovingBlocks/TerasologyLauncher/issues/311","labels_url":"https://api.github.com/repos/MovingBlocks/TerasologyLauncher/issues/311/labels{/name}","comments_url":"https://api.github.com/repos/MovingBlocks/TerasologyLauncher/issues/311/comments","events_url":"https://api.github.com/repos/MovingBlocks/TerasologyLauncher/issues/311/events","html_url":"https://github.com/MovingBlocks/TerasologyLauncher/issues/311","id":57741055,"number":311,"title":"Launcher cannot start Developer versions of Terasology","user":{"login":"Halamix2","id":5176598,"avatar_url":"https://avatars.githubusercontent.com/u/5176598?v=3","gravatar_id":"","url":"https://api.github.com/users/Halamix2","html_url":"https://github.com/Halamix2","followers_url":"https://api.github.com/users/Halamix2/followers","following_url":"https://api.github.com/users/Halamix2/following{/other_user}","gists_url":"https://api.github.com/users/Halamix2/gists{/gist_id}","starred_url":"https://api.github.com/users/Halamix2/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Halamix2/subscriptions","organizations_url":"https://api.github.com/users/Halamix2/orgs","repos_url":"https://api.github.com/users/Halamix2/repos","events_url":"https://api.github.com/users/Halamix2/events{/privacy}","received_events_url":"https://api.github.com/users/Halamix2/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":4,"created_at":"2015-02-15T18:53:18Z","updated_at":"2015-02-16T17:43:59Z","closed_at":null,"body":"After downloading dev version launcher displays \"The game downloaded and extracted okay, but required version information was not found.\" error. (Launcher 1.4.2, Terasology dev 1351, win7 64 bit, java 8)"},"comment":{"url":"https://api.github.com/repos/MovingBlocks/TerasologyLauncher/issues/comments/74546339","html_url":"https://github.com/MovingBlocks/TerasologyLauncher/issues/311#issuecomment-74546339","issue_url":"https://api.github.com/repos/MovingBlocks/TerasologyLauncher/issues/311","id":74546339,"user":{"login":"Cervator","id":1063833,"avatar_url":"https://avatars.githubusercontent.com/u/1063833?v=3","gravatar_id":"","url":"https://api.github.com/users/Cervator","html_url":"https://github.com/Cervator","followers_url":"https://api.github.com/users/Cervator/followers","following_url":"https://api.github.com/users/Cervator/following{/other_user}","gists_url":"https://api.github.com/users/Cervator/gists{/gist_id}","starred_url":"https://api.github.com/users/Cervator/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Cervator/subscriptions","organizations_url":"https://api.github.com/users/Cervator/orgs","repos_url":"https://api.github.com/users/Cervator/repos","events_url":"https://api.github.com/users/Cervator/events{/privacy}","received_events_url":"https://api.github.com/users/Cervator/received_events","type":"User","site_admin":false},"created_at":"2015-02-16T17:43:59Z","updated_at":"2015-02-16T17:43:59Z","body":"For a little more state detail:\r\n\r\nThe launcher has the internal concept of jobs, or lines, that is the stable release, the develop release, and legacy. Each is paired to a single instance of the \"Terasology\" engine job in Jenkins (TerasologyStable and TerasologyLegacy for those two lines).\r\n\r\nAttached to that job is the Terasology.zip and a version file generated during the build, I believe that file is what the launcher reads to detect what releases are available per line. That part works fine.\r\n\r\nThen when you download an actual instance of the game, in this situation specifically the develop line, the launcher downloads Terasology.zip from the correct execution of the job from that line. It extracts it - and then something fails. I didn't actually realize the launcher cares about version info from the extracted zip, but we did put some stuff in there (inside the engine jar, IIRC)\r\n\r\nOn top of that the tricky situation now is that we *don't* want to use the plain Terasology.zip from the engine build job - we want the corresponding TerasologyOmega.zip from the distro packager. That way we actually get the extra modules no longer included in the base zip.\r\n\r\nThat adds an additional slight complication: Terasology engine job executions aren't necessarily 1:1 for Omega packages. If something fails on either side we end up skipping a number. And we might re-run Omega if a module was misbehaving. In any case the most recent Omega zip from the chosen engine version should be what downloads.\r\n\r\nIn the future we then also need to get into module changelogs. What changed for the *modules* since the last Omega package. That info would be in the changelog for the individual module build jobs (or their Git history on GitHub)\r\n\r\nA fair amount of that is out of scope for this issue though :-)"}}