I'm still working out the final details, but it's going to be heavily based on the Qrack/ProQuake system. One critical difference (that's already resolved) is that DirectQ will NOT need the DLLs (libcurl.dll and zlib1.dll) in your Quake folder for general gameplay. So if you have no interest in this feature you don't need to have them, and you will be able to just run DirectQ normally as before. They are however required for downloading to work.
I'm not too certain how to go about distributing the DLLs yet; I might just include a download link in the readme. I guess that most people who would be interested in this feature already have them anyway...
Update: done.
Just to be nice I added a download progress indicator. I was going to do a graphical one, but I realised that all the action happens in the console anyway so it's just some console spew. At least if the downloads taking too long you get some feedback on what's happening.
Monday, March 22, 2010
DirectQ 1.8.2 is getting web download
Posted by
mhquake
at
6:46 PM
Subscribe to:
Post Comments (Atom)
8 comments:
Include the DLLs in along with DirectQ; you can veryfy that they're clean and we'll know they came from you, and not from some shoddy DLL download site off the web. Mind you... it's too bad you can't just decompile those DLLs and add their code right into DirectQ
I probably could you know, but 1.8.2 is going to be about 2.5 MB as is and I'm paranoid about exe size. Maybe I'm just being foolish here, but I have visions of people shouting "bloatware!"
Actually one important reason to not compile them into the engine just yet would be that it would somewhat delay the release... ;)
Ah, but remember that DirectQ is YOUR Quake. Yours. It doesn't belong to the people who play it. You make this. YOU decide when to release it. You can put the DLL code right in there if you like; that way there's no chance of dirty DLLs fouling up the Quake dir (and no chance of someone getting a copy of DirectQ and putting 'virused' DLLs in -that- copy, which is then uploaded to some server like fileplanet)...
The size of the program... Why so big? Is there anything you could tweak or optimize to make it a bit smaller (without removing functionality)? You said the old SDK was the culprit, I think, so what about using a newer SDK?
Or, tweak it and tune it... use the bare minimum of code for what you want and nothing fancy?
People shouting 'bloatware'; well this isn't bloatware, it's Quake, damn it!
I actually recently thought it was the new Windows SDKs were the culprits but I've since compiled it on Windows 2000 using older includes and libs (that give a GLQuake < 500K) and it comes out much the same size. A little smaller but not much. I'm suspecting it's actually C++; those classes translate to a lot of machine code.
I might do a test build with the a more recent DXSDK and see if that helps any, but the tradeoff is those damned d3dx_37 etc DLLs that are needed for that. Can't win!
Overall I shouldn't be too worried, a 2.5 MB application is not too bad these days (still smaller than excel.exe too (18 MB)).
Anyway, like you said, it is my engine, and I've always had that opinion. But I do want to get 1.8.2 out reasonably soon, and that's my choice too. ;)
I should have added - you don't actually need those DLLs unless you're using the web download. If you're running SP or already have the required map, DirectQ will run perfectly fine if you don't have them. This isn't like ProQuake which pops up an error. You get no error, it runs.
Hmmm - I wonder what the Windows API for downloads is like. It's not too late to switch...
Heh. 1 line of code by comparison, no DLLs, no hacking, no ugliness, worked first time. Sweet.
Wooo hooo!
Post a Comment