ModernLoader

Posted April 10, 2012

Further development ceased

I was thinking about investing more time in ModernLoader, however, I had to realize that it saw less downloads in the last 12 months than it saw in the few weeks after its release. So instead of garnering more interest, usage went pretty much down. This is probably in part due to ModernLoader’s goal of delivering space-efficient fan mission management, while fan mission players are mostly old-school gamers that barely seem to play other games (or undertake other space consuming usage scenarios) and thus don’t encounter space shortages. Another reason is certainly the “early design” and “unstable” tag that has been appended to ML’s name, combined with user’s silly attitude to wait till it’s “stable”. Well, if no one uses the software, how can it ever be “stabilized”? Software is always being tested before release, but of course people’s setups vary, so without users there’s no way to prepare for problems induced to external factors the developer can’t possibly predict.

Besides, software isn’t like wine. While you could expect a more aged project to be more mature, that doesn’t necessarily mean that a program that was developed in a short period of time is less evolved. Not to mention the motivational point of view (or lack thereof) that people who see it that way don’t seem to consider. Luckily, ML saw some support from a few but ambitious users and I want to thank those that supported it by using it from from version 0.1 and stood by it through the bugs it encountered.

Speaking of which, I didn’t receive any critical bug reports since 0.32 was released, leading me to believe that this version is stable. It also supports every feature it needs to run most, if not all FMs, which is all I ever wanted when I started this project. Long story short, due to its lack of user support any development time I’m able to scrape off of my little spare time will be tending to more rewarding projects.

——————————————————————————————————————————————————————————–

Posted January 05, 2011

ModernLoader 0.32

Maintenance release, but an important one. Turns out that the new zip-handler that was introduced in ML 0.31 doesn’t properly overwrite files when extracting FMs. Instead it modified them which means that also original hardlinked game files were edited. This is a mmajor screw up and caused me quite some headaches to find the source of the problem, because ML’s code is basically error free in that regard. While at it, it turns out that Freearc works the same way, so missions using that format were affected also. Only 7z handles overwrites properly and therefor people using this format were lucky and had no problems. 7z was also used prior to 0.31 to handle zip-files, which hid this external bug effectively.

Another problem that was addressed was an incompatibility of TDS with special characters in paths. In case of mission names that use periods (e.g. “The Keeper v3.0.zip”), TDS was suddenly unable to load certain assets. Again, no ML bug, but one that only affects ML. The loader now replaces all dots within names with underscores upon installing a mission, circumventing the problem. Other special characters are still unprocessed, since I don’t want to cripple mission names precautiously.

Download MLoader 0.32

——————————————————————————————————————————————————————————–

Posted December 22, 2010

ModernLoader 0.31

The new symlink feature that was introduced in the last version had to be limited in this one. Turns out that this is only supported by Vista and newer operating systems, so if you still kling to that decade old XP of yours, you’re out of luck.

I revamped the zip handling function. Now, ML is twice as fast as GarrettLoader when it comes to extracting zips and more than four times faster than DarkLoader, making it the fastest loader available. For comparison, under the same conditions described in the speed test in the last post Cosas Mission X was installed in mere 6 seconds. Zip compression is also almost twice as fast now. Zip2zip save imports profit the most from the new enhancement. An 80MB test set of saves took 8:05 minutes to be imported and recompressed with 0.30. With 0.31 it took “only” 4:20 minutes.

Download MLoader 0.31

——————————————————————————————————————————————————————————–

Posted December 22, 2010

ModernLoader 0.30

Starting with this release ML no longer limits the user to have the game and the FM install folder on the same drive. Thanks to symbolic links you can install your FMs anywhere you like. For symlinks basically the same effects apply: no space gets wasted and it allows for parallel installs. Contrary to hard links, symlinks point to the file instead of the data directly. This enables them to point to all kinds of locations, even to other drives or networks. The downside is that if you delete the file the symlink points to, the link will still exist but will be invalid. ML will use hard links whenever possible, because they allow for more flexibility. For example, if you delete your game folder then your hardlinked FMs will still work. Your symlinked ones won’t.

ML can now install T2X for you. This keeps your Thief 2 directory tidy and is also faster than running the native installer. If I ever implement support for T2X-FMs (are there any at all?) then installing T2X this way would pretty much become mandatory to avoid problems with Thief 2. Only T2X 1.1 is supported. Place the executable in your Thief 2 FM folder and install it like any other mission.
Don’t rename it. ML is hardcoded to look for the original name. Also, ML will only recognize the mission if it is in the FM folder upon start up. Using the refresh button doesn’t work yet. Also, there’s a small bug that throws an error message if you cancel the VP3-codec installation. No biggie though, because the mission itself installs fine.

The import saves function has been fixed and updated. Now ML not just imports all saves it finds, it also updates the saves for FMs that have already been installed by ML.

———————————————————————————
Gui – Re-design
———————————————————————————

ModernLoader is nearing its completion install-feature-wise. Except for language and darkmod support, ML should have all features to support all available FMs out there (unless there are still some hoops I still don’t know about). Time to think about prettying up the gui. All people who use ML (all three of them :P ) are welcome to suggest designs for a more appealing user interface. A picture says more than a thousand words, so if you have a good idea of how a well crafted gui for ML could look like, then make a design study and post it in the ML thread at TTLG for discussion. However, not everything Gui-related is up for discussion:

– ML uses a fixed window size of 800×600 to allow users with lower resolutions to get the most out the loader. This size won’t change, so all options have to fit in there.

– I do like the fact that all options are available on a single page, giving the user a complete overview over the functions and total control over every function with only a single click. I will not turn ML into a menu monster like GL.

– Options should be displayed in a coherent style. Ml already makes use of that. However, it could be prettier. Bad counter example so that you know what I mean: GL uses icons, tabs, buttons and a standard windows option bar. All these components have different sizes, colors, shapes and styles and are spread all around the screen, making it much harder for the user to actually see which options are available. In my case, I have only checked out the options I needed to install missions. I don’t even feel like clicking on the icons or the tabs to see what’s behind there. So, a coherent style is important to give the user a quick overview of what’s there.

– I like the design of the upper half of the screen, but I hate the lower part with the paths. They take up far too much space, which could be used for more important things.

– Minimalist gui approaches rule. I don’t want to turn ML into overloaded bloatware by cramming every piece of information there is about FMs. There’s GL for that.

———————————————————————————
Speed tests
———————————————————————————

With version 0.29 ML became significantly faster. The fact that T2X installs faster through ML than by using the native installer adds to this successful development. I wanted to know how ML would fare against the other loaders, so I conducted a little speed test.

I placed a Thief 2 copy and the FM install folder on a 1.5GB Ramdisk to cancel out the io-overhead. As test mission I used Cosas Mission X, since it was the biggest I had lying around. With 4217 files it also offers quite a load to handle. The mission was stored on the Ramdrive, too. Since GL and DL basically just unzip the archive for every game they support, I only tested this with Thief 2. Since ML also supports 7z and Freearc, I recompressed the mission and also tested ML’s performance with these formats. Finally, I made a comparison for T2X installs. For this, the T2X-executable was placed on the Ramdrive and then was also installed to it. All installs were repeated 3 times to ensure accurate results.

Here are the results:

Cosas Mission X

ModernLoader: 18s (zip, 319MB), 36s (7z, 286MB, LZMA2, Ultra, 96MB dic), 58s (arc, maximum compression)
GarrettLoader: 18s
DarkLoader: 27s

T2X ML install: 1:36
T2X native install: 2:16

As you can see, ML’s zip-decompression performance is on par with GL and both leave DL far behind them. 7z and arc decompression naturally takes longer, so it’s kind of expected that those extraction times can’t compete with zip. Still, ML is nowhere near as optimized as it could be, so there’s still plenty room for improvement. The T2X installation times speak for themselves. The native installer takes 50% longer than ML does. Nuff said, here’s the new version:

Download MLoader 0.30

——————————————————————————————————————————————————————————–

Posted December 20, 2010

ModernLoader 0.29b

Maintenance release.

Download MLoader 0.29b

——————————————————————————————————————————————————————————–

Posted December 19, 2010

ModernLoader 0.29a

Maintenance release.

Download MLoader 0.29a

——————————————————————————————————————————————————————————–

Posted December 19, 2010

ModernLoader 0.29

This version comes with huge updates. For one, the hardlink creation no longer relies on an external tool, but uses win api. This speeds up the process by a factor of 20, making ML’s FM-installations now as fast as GarrettLoader’s. This will allow users of Windows 2000 and those that run ML on Wine to use the loader without the necessity to add fsutil to their system.

With this enhancement the need for the turbo-function vanished so it was removed. This allowed me to re-structure the gui. Not by much, but ML looks more structured now than before.

I also replaced the ogg decoding tool with a dll which is supposed to be twice as fast than the original ogg decoder. This should speed up installations that rely on ogg while also making ML slimmer. For more information on these and other new features check the version history and readme.

Big thanks to Shadowspawn for allowing me to use his dll to reconstruct IBT-files.

This release celebrates the first month of ModernLoader’s existence.

Download MLoader 0.29

——————————————————————————————————————————————————————————–

Posted December 13, 2010

ModernLoader 0.28

ModernLoader finally received the long awaited progress bar. I also added an info bar to let the user know what exactly is going on. Uninstallations are not displayed by the progress bar, but by the info bar. This version also removes some bugs in the savegame backup feature, which was not just fixed but also expanded. ML now tracks folder changes and moves the savegames accordingly. Future versions will also allow the user to rename FM-archives and then rename the saves automatically. People with multi-core setups will profit a lot more during installation due to the progress bar’s nature.

The bar only works for FMs compressed with zip or 7z. Arc-based missions will throw an error resulting in no installation. Arc-support in that regard will be implemented in the next version.

The version history already promises support for IBT-compressed FMs. This isn’t supported yet. I just forgot to remove the line.

For now, ML will be distributed without runtime compression. This should stop av-software from going hog-wild during downloads or upon program execution and will allow the program to do its tasks much quicker, resulting in faster start up times and higher responsiveness in general. The trade off is that ML uses almost twice as much disk space now and that it has to be distributed as 7z-archive instead of zip. The archive was compressed with LZMA2, so if you get extraction errors, make sure to have at least 7zip 9.xx installed. WinRar 3.91 will suffice too.

Download MLoader 0.28

——————————————————————————————————————————————————————————–

Posted December 10, 2010

ModernLoader 0.27

This version introduces the long awaited feature of savegame backups. Also a few minor bugs have been taken care of.

The zip-file is password protected to stop over-eager antivirus-applications from meddling with the download. The password is “retrocast” (without quotes). Let me stress again that any detection by av-software is a false positive due to heuristics not liking ML’s Upack-compression. My computer is clean and was scanned today with F-Prot. If you don’t trust this then you’re welcome to unpack the executable and scan it yourself.

Now have fun with ML, except LarryG who is explicitly forbidden to download and use any version of ML now and for the future and therefor doomed to use alternatives that don’t support parallel installs, modern compression, install T3ed for you and that need unnecessary backups for the game folders they work with.

Download MLoader 0.27
Download MLoader 0.27 (uncompressed)

——————————————————————————————————————————————————————————–

Posted December 6, 2010

ModernLoader 0.26

Small update, yet a big feature gets introduced: ML now installs T3Ed for you. All you need is one click and everything will be done for you. If that doesn’t sell you on using ModernLoader then nothing will. Read the readme for more information on the new feature! This is of course untested except for the obligatory start-the-editor-and-see-if-it-comes-up-without-errors. Loading a map also worked flawlessly for me. If it really works as intended in all regards is up to you FM-authors out there to test :)

Download MLoader 0.26

——————————————————————————————————————————————————————————–

Posted December 5, 2010

ModernLoader 0.25

Thanks to gnartsch I had to learn that ML’s T3-functionality was broken since 0.23. Thanks for setting my attention to this serious bug! At first I had planned to introduce some major features for this version (hence the slightly different gui), but those have been postponed in favor of a major bugfix release.

Still, I wanted to present something new, so I implemented a new turbo-mode for installations which really speeds up FM-installations for T3 and makes those for the LGS-titles lightning fast (granted you have a fast enough comp).

Download MLoader 0.25

——————————————————————————————————————————————————————————–

Posted December 4, 2010

ModernLoader 0.24

ML now fully supports MP3 and OGG-based FMs. Due to misinterpretations I thought this was needed for Thief 3. Since this function is only needed for the earlier games and is also a must for them to run, the option “ogg2wav” has been removed. Also a few bugs have been eliminated.

Download MLoader 0.24

——————————————————————————————————————————————————————————–

Posted December 2, 2010

ModernLoader 0.23

Mini-update: I forgot to remove some pop-up messages that I usually use for error tracing, so whenever a user uses the new ogg2wav-option he/she will be greeted with a ton of messages. I also included a more obvious way to tell people that an installation is going on. Remember to read the documentation including the version history!

Download MLoader 0.23

——————————————————————————————————————————————————————————–

Posted December 2, 2010

ModernLoader 0.22

Quite a big update here, even if the version number doesn’t show it – the version history sure does. With this release ML’s Thief 3 support made a big leap to completion, but it’s not there yet. FMs using compressed IBTs such as “Evicted” are not yet supported.

Download MLoader 0.22

——————————————————————————————————————————————————————————–

Posted November 30, 2010

ModernLoader 0.21a

The last version wasn’t exactly blessed with stability. In fact it was almost unusable. Most major bugs should be fixed now. I intensively tested T3-functionality and even added savegame support to this otherwise bugfix-only release. For some reason the
goals in T3 FMs only show up partially or even not at all. I know too little about T3’s file structure yet to fix it, but may be someone can give me a lead.

Download MLoader 0.21a

——————————————————————————————————————————————————————————–

Posted November 25, 2010

ModernLoader 0.20

This version introduces support for Thief 3, corrects a few minor bugs and hopefully doesn’t introduce new ones. My T3-install has been acting up, so I wasn’t able to test the feature as much as I would have liked, so be prepared for some bugs.

Download MLoader 0.20

For those who care, here’s a list of planned features:

Planned Features:

– sorting by Date, Name, Completion
– support for individual missions within one zip-file
– support for ogg/mp3-FMs
– support for mission info
– multilanguage support for FMs and ML including thief non-native languages
– support for stats (played – yes/no, score), exportable (txt-file)
– combination of several FMs into one archive
– support for FM-recompression
– support for error reports
– keep savegames during uninstall
– EP-support from several thief installs

Todo:

– recognition of thief exes from The complete edition and other sources

——————————————————————————————————————————————————————————–

Posted November 23, 2010

ModernLoader 0.11

Small update that fixes minor issues with the 0.10 version.

Download MLoader 0.11

——————————————————————————————————————————————————————————–

Posted November 22, 2010

ModernLoader 0.10 released

In the past few months I didn’t have as much time to pursue projects as I would have liked to have. So I’m even more looking forward to the upcoming holidays to finally get cracking at a project I have been thinking of for the last two years. It involves one of my all-time-favorite game series: Thief. To keep this announcement of an announcement short: I need some special tools for my project and one of them is a mission loader that is a little more versatile than what the community has to offer.

It took about a minute to decide whether I wanted to code my own or rather contact one of the other loaders’ authors.  Since I always like a challenge I started right away. Contrary to most of my former projects the challenge in this case isn’t to get it done, but how many features I can put in and how many bugs I can kick out before the holidays.  After less than a week of coding I’m proud that the loader is pretty usable at this point, even though it still needs a massive amount of polish.

Thanks flys out to the fine people at TTLG who tried out the first unstable versions and helped me nail down some nasty bugs.  You can leave feedback and bug reports either in the comments section here or at the ModernLoader thread at TTLG.

Download ModernLoader 0.10

Advertisements

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: