I just tested it - good job, works really well! But ermm... what about the legal aspect? I mean you let people play Quake for free - without the usual pak0/pak1 issues.
The plugin downloads what it is told to download, assuming you do not already have it.
The plugin itself is legal, but can be used in violation of copyright, yes.
If the plugin is told to use a game of q1 q2 or q3, the plugin looks for existing content (via windows registry). And if it finds any, it'll use that as a base directory (all write access is performed inside the user's home directory). But quake didn't have a proper installer, so this info is not readily available.
Currently it will attempt to run anyway even if downloads fail.
Content is downloaded from servers using the same rules that id implemented. The exception is that the plugin will run even without pak1 (unlike regular quake) as this is required for stuff like nexuiz.
Paranoid admins running FTE servers can set allow_download_pakcontents 0 and no id models or sounds will be downloadable. But yes, there is the legal issue of id textures in custom maps, for instance.
Hopefully this plugin will encourage the development of a complete set of free stuff.
The TF community have custom models/gfx/sounds for everything bar the player model. There is always openquartz. Packaging is up to the server admin.
This plugin is in no way less legal than running full versions of FTE or DP without data files, or ezQuake/fuhquake/etc (although these demand at least the feely available demo), and downloading from the servers.
Assuming sites do not link the registered pak file.
Its just easier.
Also, is there perhaps a way to be a little restrictive about what commands people are able to use? Because once you're connected you can basically do whatever you want, just like with a real client. And it would be a shame if people used your site not to play TF but to just wander off to another server or use it to spec regular deathmatch games while at work or something.
I'm not sure how disadvantageous that is yet. It may even be a feature of the site (I'd like to add scripting support, so sites could maybe collect stats/etc).
And yes, the server browser is active inside the plugin.
@ruskie:
avirox's site sizes the plugin to be 1024*768. The default size is only 640*480.
I've no real idea how to shrink the plugin on the page (other than with javascript).
The rendered part will downsize if the plugin is too small, but will clamp to the full size if you set large width/height values. Fullscreen mode works as normal, except the cvar is named vid_fullscreen_embed (as the default is certainly intended to be windowed). You should be able to use the video menu to resize it.
Opera users: the plugin on the site named above is distributed in a firefox-specific xpi file for slightly easier installation for those users. Basically its a zip. Rename it and extract the dll inside to your opera/plugins directory and it should work in opera too.
(win32)Safari: I've no idea about (win32) safari. Presumably the same idea as opera.
Google Chrome: Presumably the same. But I'm not sure if plugin support is fully implemented yet. As far as I'm aware, Chrome doesn't fully support the entire API. So you may need a dev build. The plugin doesn't interact with the browser too exotically so it ought to work, if you know how to enable it, which I do not.
Linux: Coming soon, eventually, maybe.
Internet Explorer: lol. just lol. You can get an ActiveX plugin from somewhere which can wrap calls. Presumably this would work, but I've not tried it, so can't help configure the wrapper. The API is noticeably different. Expect a linux/bsd port first.
Gah, wall of text! Run! Flee!