|Posted by Izhido on 2016/06/27 20:04:38|
|So, I'm pretty much close to publishing my iOS engine port in Apple's App Store - it looks like publishing an app based on GPL code is not a problem anymore.
Publishing an app without actual content is pointless. I would like to include vanilla's shareware episode (and dopa, maybe?) into the .ipa (the executable file) so it automatically decompress it in the Documents directory on first time run. I know by now virtually everyone has a copy of the shareware episode, and many many web sites publish it on their own servers.
Do you guys think I would get into serious trouble if I include the shareware episode in my app?
By the way, all this talk is about the Quake engine and the Quake shareware episode. Just in case that wasn't clear (sorry :)
From the SLICENSE.TXT file:
6. Permitted Distribution. So long as this Agreement accompanies the Software at all times, ID grants to Providers the limited right to distribute, free of charge, except normal access fees, and by electronic means only, the Software; provided, however, the Software must be so electronically distributed only in a compressed format. The term "Providers," as used in the foregoing sentence, shall mean persons whose business it is to provide services on the Internet, on commercial online networks, or on the BBS. Anyone who receives the Software from a Provider shall be limited to all the terms and conditions of this Agreement. Further, ID grants to you, the end-user, the limited right to distribute, free of charge only, the Software as a whole.
Pretty sure you can't include the shareware.
It also specifially states you're not allowed to run custom content with it. And that's beside the fact that including user levels is kind of debatable to begin with.
Hm. Think about it this way, @negke. You create a build of the app, include the shareware data as a .zip, then submit it to Apple. Then, Apple distributes it to users around the world.
In this case, the permission to distribute the episode is not granted to me, *but to Apple*. It is in line with the clause above.
Oh, and also, I did not remove the restrictions in the engine that limit your custom content usage. They are still in effect. You *still* need to buy the full game and copy the ID1 folder to the device using iTunes File Sharing if you want to play custom content.
Have a popup when you first start up the app for the user to select their pak0.pak/pak1.pak or provide the URL or path to the data.
/I'm not a lawyer
Worst Case Scenario
Is a DMCA and a takedown, I think? Nothing to lose sleep about.
The license states the software can't be modified. This seems to imply it has to be run "as is" whereas a port/app can be seen as a modification. Not sure.
A question you didn't ask:
If you use the name "Quake" in the name of your app, you might as well be asking for trouble and the trouble is guaranteed trouble.
In the United States, a trademark must be defended in commercial usage and Quake is a trademark of id Software. There is 0% chance they will turn a blind eye.
/Again, I am not a lawyer.
Agreed 100%, @Baker.
In fact, I have a new name for the app. Will let you know in a few days :) .
Now, to continue with the issue at hand, it is possible that I eventually find out that I can't include the file, so @Baker's suggestion sounds like a good idea.
If that happens and I end up including a clickable URL for the file... What are your suggestions on which URL should I use? id Software's FTP site is really, really, REALLY slow. What sites do you recognize as nice, stable and "official" sites to download the shareware episode?
remember that apple prohibits running 3rd party code. iiuc the only real way to deal with this is to bake the progs into the engine itself, but doing so fucks over mod support.
(it also doesn't help that .bsp is technically turing complete...)
the other issue is that if you're going to 'distribute' the demo, then you need to do so 'as a whole', which means you can't strip out the original exe file (again, this would cause issues with apple if it was part of the actual install). and then if you do actually want to distribute the demo, you'll need to 'prepare derivative works based upon the software' by first running the deice.exe from the software so that you don't need to include dosbox with your engine (apple would DEFNITELY not like that)...
regarding derivative works, eulas do not override fair use laws. exactly what can pass as fair use depends upon juristiction.
the eula prohibits 'use of other materials' but doesn't actually say what it means by that, and that clause is in the registered version too.
of course, if we're talking about the registered version's license, then 'permitted derivative works' are the only things that you're allowed to redistribute, and that is exclusively maps, not models nor sprites, nor sounds, nor configs, nor gamecode... luckily most gamecode is a derivative of the released source rather than quake itself *phew*. But still, most people are violating it in some form...
the 'proof of purchase' thing is a joke too. The fact that its in the engine makes it completely trivial to recreate without violating other copyrights (hurrah for a gpl version that passes all tests).
(note that I'm not saying that you should remove the check, just that its stupid, but I guess that's copy protection all over).
nquake distributes the demo pre-deiced recompressed as a zip (one of many). the entire demo is decompressed, and then the installer deletes the useless dos stuff (as well as the licenses etc, probably).
nquake doesn't even block custom maps.
what's most interesting about this is that they plan on using nquake for quakecon. this means a competent lawyer should be able to argue that its fair use or something (or is that just trademarks?).
anyway, I'm not a lawyer so I may as well be talking out of my arse. oh wait, that's what I always do.
tbh, your biggest issue is with apple, at least beyond a basic install.
remember that apple prohibits running 3rd party codeI don't think that has been true in ages. How can an iPad support Microsoft Office but not support macros or the document format?
How can the Unity and Unreal engines run on iOS? Unity uses C# or something for game code doesn't it and that compiles to bytecode.
I do not believe your information is current.
They probably mean third party native code, which could lead to security issues. The QC bytecode isn't a problem in this case.
can extract the resource.1 LHA archive from the shareware zip, so can the 7z command-line tool.
I am pretty confident that you cannot possibly include original ID/Quake media content (maps, sounds, models, etc) inside your own iOS app. I think there was some kind of a "open media" project for the Quake 3 engine to solve this very problem of providing replacement media content for the engine with a permissive license. I don't know of such a project for Quake.
I don't know of such a project for Quake.
OpenQuartz and its "sane" fork OQPlus, but they're far from being complete.
So, no ideas for the URL? :(
I think there was some kind of a "open media" project for the Quake 3 engine to solve this very problem of providing replacement media content for the engine with a permissive license. I don't know of such a project for Quake.
Don't forget that the Quake map sources are GPL.
That only semi-simplifies things, because you still don't have access to the textures, MDLs, SPRs, etc, but it does bring you a good chunk of the way towards a freely-distributable Quake (at least in so far as the GPL defines "free").
I am pretty confident that you cannot possibly include original ID/Quake media content (maps, sounds, models, etc) inside your own iOS app.
Wrong. The shareware license allows this.
Back when I worked on QuakeDC for the Dreamcast, Id Software even allowed for the distribution of a ISO image containing the shareware episode. Their only request was to not include the registered version.
Hey Mankrip.... I remember fooling around with a "dcquake" image on my Dreamcast, don't remember where I got it. But it was nice! The nfo file says:
QuakeDC is a port of Quake to Dreamcast we at Titanium Studios did for in
in some spare time. It is fully functional except for networking and thanks
to our skills and experience, it took just a week and a half to complete.
Not too bad considering the number of things that needed dealing with:
converting OpenGL code to Direct3D, new file I/O, performance issues,
complicated controller support, compacted savegames on the VMS amongst
many smaller issues. In fact it represents about as far as we could go
without modifying the content (which we couldn't distribute) or making
significant improvements to the engine.
Was that the same project you're talking about?
Yes. But by "working on QuakeDC" I actually meant that I've hacked it to fix some bugs and created a mod to make it play better on the Dreamcast, including lots of improvements:
Quake DCEvo - 10th Anniversary Release
... So, I take nobody wants to speak about the URL I mentioned before? Makes me feel like I'm being (actively) ignored :( :( :(
Can't speak for anyone else but I have no suggestions for which URL you should use. Hell, I'm not even a lawyer so I can't even advise if using any URL other than ID's FTP is even legal. Like, "some guy on the internet said it would be OK" is just so much not going to hold up in court.
You must be logged in to post in this thread.
Website copyright © 2002-2021 John Fitzgibbons. All posts are copyright their respective authors.