I could not fix everything for last weekend so this new 5.6.1 version was delayed, but I think I finally nailed the last bug (still waiting for confirmation from Paul of http://www.spookcentral.tk) so hopefully current build 262 (SVN 601) will be released as final today or tomorrow. I just need to change the doc (install scripts are ready).
Here is finally the new stable version of Dragon UnPACKer : 5.6.0 !
The main news are:
- The program now works correctly under Windows Vista/7 with UAC activated and without administrative privileges needed. This was causing the infamous "Always in French" problem... Sorry for that, I will be testing the program under a system with UAC activated from now on.
- Reduced the use of third party non-Lazarus compatible libraries.
- HypeRipper 5.6: Integrated the plugins to the core (no plugin support anymore). I hope this can help me develop a multi-threaded version of the HyperRipper. This version should also be a little bit more reliable and fast than 5.5d.
- Many bug fixes and usability enhancements.
- New games file formats supported:
- Battleforge .PAK
- Dragon Age: Origins .ERF
- Sid Meier's Civilization V .FPK
Look at the change log to know the details about what is new!
To download this new version, head to the Dragon UnPACKer > Downloads section.
I started coding for v6.x branch. I started from scratch (as stated 2 articles ago) using Lazarus/FPC as a base and this time opening everything as much as possible (at start the 5.x branch was closed-source, some decisions do not make sense, like the obscure "compiled" look file containing icons).
As a proof of concept I also tried to go object-oriented plugins, it seems to work fine so I will stick with that for the moment.
The source of this new Dragon UnPACKer can be downloaded from SVN using DragonUnPACKerLazarus module name instead of DragonUnPACKer. Please note it is nowhere near usability point, I just have the basic interface and themes working, plus the ultra basic PoC of object-oriented plugins.
On the 5.x branch, nothing really new, but following a bug report I noticed some flaws in Dragon Update Server and Duppi. Because of how Sourceforge download files, it wasn't working anymore (downloaded files were "corrupted", actually HTML files redirecting to the download). I decided to drop SourceForge as main download site as a workaround. But I also decided to introduce some modifications to both DUS and Duppi.
For some time now DUS have a list of available servers to download from, but this is not used by Duppi which only uses the first available one. I am modifying Duppi so that it uses the servers in order until the download is completed successfully. For this I added a SHA-1 hash for each D5P file in DUS and the file size (in bytes). In SVN Revision 505 Duppi already does this for Duppi updates, so not very useful for you at the moment. I will be changing all downloads to work like that. DUS v3.2.0 with the modifications is live for more than a week now and Duppi v3.3.0 should be available next week (time permitting).
In short: I was finally able to add nightly builds to Dragon UnPACKer.
Long version: I always wanted to add automatic nightly builds to Dragon UnPACKer, this way everytime I commit code to CVS the binary version would be automatically available to users (if they ever wanted to test).
The problem was that I wanted to do that from my Debian (Linux) dedicated server and Dragon UnPACKer uses Borland Delphi which is a native Windows IDE & compiler.
I knew the solution was to use the command line compiler (DCC32.EXE) from Borland Delphi 7 along with Wine (allows running Windows applications under Linux). But using the clc is more complicated than using the IDE directly to compile. Anyway yesterday I spent a couple of hours to configure everything and voila!
Using cron, every night at 00:30 (GMT+1) a CVS checkout is executed from the HEAD branch (latest one). A small program I made in php checks if any file was modified since last compilation. If there was a modification, the build is executed (the core executable, the plugins, duppi and dlngc are built & compiled, the languages files are generated). The resulting files are compressed by using p7zip (the Linux version of 7zip) and uploaded (along with the build log file) to the download server (which is mirrored every 30min to 2 others servers).
Feel free to try the last nightly build which comes with many speed-ups and bug fixes for the HyperRipper. The nightly of yesterday (20100421) should also be pretty stable (even better than the last unstable...). I would be glad to hear from tests done with this version as it is the first time I use the clc for Dragon UnPACKer.
Download from Dragon UnPACKer Development > Nightly Builds.