dybbuk81 Posted July 13, 2016 are there any java ports that support custom wads yet? have any source ports been made browser-friendly yet? do you think this could one day be possible? Edit: Totally in the wrong forum category :-/ 0 Share this post Link to post
Voros Posted July 14, 2016 By Java, do you mean like the language only or the those phones? Phone-Sedoom and C2doom seems like that. Code-Mocha Doom is a Doom port written in Java. https://en.m.wikipedia.org/wiki/List_of_Doom_source_ports 0 Share this post Link to post
Maes Posted July 14, 2016 Mocha Doom supports PWADs and is written in Java, it's multi-platform but it's not browser-friendly yet. Also, the level of compatibility is "limit removing": no Boom or Dehacked support yet. 0 Share this post Link to post
LexiMax Posted July 14, 2016 What do you mean by "browser friendly"? Java Applets are on their way out due to the deprecation of NPAPI in major browsers. Java Web Start doesn't require a plugin, but what would need to be done to make Mocha Doom compatible with it - isn't JWS just a way of starting a normal Java program more conveniently? 0 Share this post Link to post
Linguica Posted July 14, 2016 It's perfectly feasible to make a Javascript source port that runs in a web browser, but no one has really bothered. 0 Share this post Link to post
LexiMax Posted July 14, 2016 Linguica said:It's perfectly feasible to make a Javascript source port that runs in a web browser, but no one has really bothered. Someone did bother, it was just DMCA'ed. https://wiki.mozilla.org/Legal/Infringement_Notices/3_June_2011 0 Share this post Link to post
Graf Zahl Posted July 14, 2016 Of course the problem with such a port is the necessary distribution of the game assets, not porting the code to Javascript. Which renders any attempt to create a Doom port that runs in a web browser DOA. 0 Share this post Link to post
Linguica Posted July 14, 2016 AlexMax said:Someone did bother, it was just DMCA'ed. https://wiki.mozilla.org/Legal/Infringement_Notices/3_June_2011 Like I said, no one has really bothered. 0 Share this post Link to post
Maes Posted July 15, 2016 Some ports have gotten into trouble simply for including the shareware IWAD, because of some over-zealous pointy haireds. So, regardless of the technology involved (browser, dedicated mobile or desktop app, etc.), some way to allow the final user to point to IWADs already in their possession must be provided. Bundling is legally risky. 0 Share this post Link to post
Graf Zahl Posted July 15, 2016 Maes said:Some ports have gotten into trouble simply for including the shareware IWAD, because of some over-zealous pointy haireds. There's nothing overzealous here - just a clear violation of the shareware version's terms of use. The JavaScript port that got mentioned required each user to download the IWAD off the website where the port was hosted - and that's simply not allowed by the license it comes with. 0 Share this post Link to post
Maes Posted July 15, 2016 Other than that, that particular Javascript port lacked some usability features like configurable controls, higher resolutions, saves, ability to load PWADs etc. that would make it actually useful, even if for single play. As it was, it simply allowed to casually play the shareware episode of Doom with none of the aforementioned features (I don't recall if there was sound, even), and the codebase itself was almost straight linuxdoom v1.10 (which as we know, needs some fixes to properly support all IWADs). It is also debatable how much "JavaScript" it really was, as it was produced by cross-compiling C with the EmScripten JavaScript X-compiler, into some sort of JavaScript middleware VM's, so the end result was not editable and clear-cut JavaScript code. That's probably one of the reasons it would not be trivial to actually integrate it with browser plugins, JavaScript libraries and frameworks etc. 0 Share this post Link to post
Maes Posted July 15, 2016 Anyway, to stick with the OP, the only currently available "browser Doom" is the one in the Doom Triple Pack (requires Adobe Flash player). Includes shareware Doom, Hexen and Heretic, actually predates the DMCA'ed JavaScript port, and somehow got past the radar.... 0 Share this post Link to post
Jon Posted July 15, 2016 an emscripten port is on chocolate-doom's wishlist: https://github.com/chocolate-doom/chocolate-doom/issues/538 0 Share this post Link to post
Maes Posted July 15, 2016 I wonder how easy it is to access "native" JavaScript code when using a cross-compiler such as Emscripten. E.g. if you have some plain JavaScript code to open a local filesystem dialog, or you want to use the browser's built-in XML transfer/DOM mechanisms, how do you access them from a codebase that's mostly C? Is there a special API and special bindings to do that? By "plain" and "native" JavaScript code I mean code that's already available in the form of libraries and NOT generated by Emscripten from C. So, in particular, how do you cross this double boundary? C --> Emscripten VM --> native JavaScript? This will be necessary to do, if one wishes to have any sort of network or local file system interactivity, and not rely on everything being compiled into a static Emscripten VM blob (in that previous implementation, even DOOM1.WAD was statically compiled as an asset into the blob). 0 Share this post Link to post