RO Patcher Lite (c) 2009-2023 Ai4rei/AN

Old news

[2022-07-01] Release

This release fixes mirror server fallback from a different mirror server not working correctly.

[2022-06-15] Release

This release fixes reusage of waste in GRF archives was not enabled (ever since its introduction in 4.0.0). Depending on amount of wasted space, some archives may shrink in response to being updated. It also fixes the /testpak command reporting Sakray/Test archives as corrupted.

[2021-11-05] Release

This release adds support for the new, short-lived (2021-11-03 ~ 2021-11-17) kRO Sakray server. This is a different server from the one removed in 4.1.2 and requires a new full client. There is no mirror support for this one and it is released only as part of the bundle package.

[2021-11-04] Release

This release fixes an assertion when applying optimized patches.

[2021-10-30] Release

This release improves performance on x64 and WINE and removes kRO RE support, because the patch server is gone. You can still update kRO RE with the previous version for a limited time by using the "Always use mirrors" option from the window menu.

[2021-10-23] Release

This is a maintenance release, which revises native x64 builds and other minor things.

[2021-08-22] Results of the MSVC 2019 investigation/questioning - Guilty

Whole thing started with me accidentally opening a 64-bit release in a hex editor, only to see a fragment of random source code embedded around the PE header. That's not something that is supposed to be inside a compiled executable file, nor was it rsu source code in the first place. Taking a look at the uploaded 64-bit releases, the result was the same, so I pulled them; the 32-bit releases were clean.

Doing a few more 64-bit compiles revealed, that the fragments come from free disk space; basically an information disclosure vulnerability. Now who is at fault? The 64-bit build-chain is not local (because VS2019 does not run on Win98 obviously), so the remote Win7 machine mounts the rsu source share and builds it.

To do tests, I made an application that fills all free disk space with the string "DISCLOSE" and ran it before every test build. Doing 32-bit builds on the remote Win7 machine fails the test. Doing 64-bit builds (VS2005 and VS2010) from a remote WinXP machine worked fine. So it's not a 64-bit thing. To rule out the OS variable, I tried a 64-build with VS2005 on Win7; fails. And a 32-bit build with VS6 on the same machine; clean. Doing the 64-build on Win7 locally passes the test.

VS2019 information disclosure vulnerability

TL;DR: In short, combining Visual C++ 2005 (maybe even 2003) on Win7 (maybe even Vista) and a Win98 network share is a bad idea, as it leads to information disclosure. Not sure why WinXP is not affected, but the general reason for this vulnerability is probably that the Win7+VS2005/2019 installation assumes the contents of pre-allocated files to be zero-initialized, which they aren't on Win98.

So, unfortunately1)2), VS2019 will only serve for internal builds, public builds will use VS2005 or VS2010, depending on which one does better on current hardware.

  1. Since Microsoft is not going to fix a vulnerability that occurs only in one case on a 23 year old OS
  2. It was a great help when migrating to 64-bit

[2021-05-21] Note on native 64-bit releases

Native 64-bit releases (built with MSVC 2019) have been pulled for investigation/questioning. Data is not at risk, but you are better off using the 32-bit version (built with MSVC 6) for now.

[2021-04-23] Release

This release fixes, among others, an issue that prevented updating jRO RAG, when there are more than one year worth of patches to apply.

[2021-02-19] Release

This major release contains a refreshed UI, completely reworked GRF engine, native 64-bit builds and other, far too many under-the-hood changes and bug fixes to mention them all, see included doc/history.txt for details.

[2020-12-05] Released rsu.split

This tool splits a GRF archive into parts that are no larger than ~1.5 GB. Each created part is a normal GRF archive with no dependency on the original archive or other parts. The point of this tool is to serve as a workaround for software, that cannot open GRF archives over 2 GB, but can use multiple smaller GRF archives as one. You can use it either from the command line, or just drop the offending GRF archive on it. If you give it a data.grf, it will give you data_0.grf, data_1.grf, and so on, back. The contents are not recompressed1), so it can be used on encrypted archives as well.

  1. Archives that were processed with GRF Diet Plan may lose reusage opportunities and gain weight; re-process the individual parts.

[2020-11-28] History: GRAVE

GRAVE stands for Gravity Resource Archive Viewer and Editor. What a convoluted, yet self-explanatory name. Most development took place between 2012 and 2013, but due to lack of time, the V was incomplete and the E did not even start development. But there were enough viewers and editors out there anyway. I did not even need it myself, because the competing program was enough for me, which is never a good sign. That need only came up this year, where I wrote GRF Viewer Lite from scratch. May GRAVE rest in peace in its grave.

Gravity Resource Archive Viewer and Editor

[2020-11-28] History: RSU.FX

Rewind to May 2010, servers are switching from kRO SAK (sdata.grf) to kRO RAG (data.grf), because the last update to Sakray was in June 2009, for Renewal-related reasons. Instead of making players re-download the entire archive, RSU.FX was a self-patching patch solution at the tenth of the size of the entire archive. Fast-forward to December 2011, Gravity deleted some patches a month before that, which broke patching for people who weren't fast enough. RSU.FX patches for RAG and RE allowed to fix that mess. Fast-forward to present, today there is the mirror server and most people have fast internet, so downloading a GiB or two is not a problem.

RSU.FX worked in similar way SFX archives do; a minimalist patcher comes with a payload (the GPF archive) and merges it with whatever archive you throw it at.

[2020-11-28] History: RO Patcher Lite SettingsIn anticipation of the 1000th commit, repository cleaning is in progress, so some forgotten things tend to pop-up.

This tool was supposed to provide a user-friendly interface to editing RO Patcher Lite settings, instead of hacking the .ini directly. While these days the patcher has less than five settings, it dates back to the time when there was support for plugins, translations and custom patcher config; a load of settings to be tweaked. It was forgotten and never finished.

RSU Config

[2020-11-03] Release

This release fixes file corruption caused by back-ports from trunk, that were added to 2.4.26. Please read follow up instructions, if you update from 2.4.26 or 2.4.27.

[2020-11-02] Release

This release fixes possible buffer corruption (security issue).

[2020-10-30] Released GRF Viewer Lite

This release adds support for finding files (Ctrl+F).

[2020-10-29] Release

This release updates phRO patch information, fixes few issues and removes idRO and some iRO variants.

[2020-10-17] HTTP kRO Mirror issues resolved

Since switching to HTTP, the mirror server has experinced sporadic 500 errors. These should be resolved now.

[2020-10-16] Nightly

I have noticed, that the phRO patch information was out of date since around February 2020, so here is a hotfix for that. I do not feel like re-branching the last release just to push this probably unnecessary update, so this is the only release format that fits. Note, that all the nightly-fineprint still applies.

[2020-06-09] Experimental HTTP Mirror

From today on, the kRO RAG mirror runs over HTTP rather than FTP. This is a logical consequence of the last update and also Gravity's move to HTTP. Also since kRO's move to AWS, the regional locks are probably void and the mirror serves only outdated clients and FTP scrapers, thus no longer serving its actual purpose. Thus I'm currently thinking of repurposing it for something else.

Edit: RE and ZERO followed suit.

[2020-04-13] Released GRF Viewer Lite

GRF Viewer Lite is a bare-bones GRF browser/extractor, primarily for my own purposes. Wait... yet another GRF editor? Aren't there already enough in the field? Yes, neither of them both works (with 2GB+ archives) and works (on Windows 98, oh boy...). Of course, it cannot match the feature set of the other GRF tools/editors. But maybe someone finds some use for it.

[2020-04-06] Release

This release updates kRO patch information, adds mirror-support to kRO Zero (read this notice, if you want to know why) and allows mirror servers to use HTTP (maybe it serves as motivation for people who weren't willing to set up an FTP server for that). Thanks to 4144 for help with patch data recovery and MetaRO for supporting this release.

[2020-03-22] Hotfix for kRO Zero

This hotfix updates kRO Zero patch information. Due to CoViD(19); related reasons the release is done in this unfavorable format, which also does not run on anything older than Windows XP. Download (113 KB). Thanks to Hemagx (#846) for reporting.

[2019-12-29] Release

Long time no see. This maintenance release updates bRO patch information and removes fRO (closed).

[2018-10-23] Release

This release removes notices and behavior related to archives over 2GiB.

[2018-06-03] Release

This release fixes potential patch process issues introduced in previous release.

[2018-06-02] Release

This release updates kRO patch information.

[2018-05-26] Release

That was some extended April Fool's, anyway this is the real thing.

[2018-04-01] Release

This release updates twRO patch information and makes the UI less confusing.

[2018-01-21] Release

This release fixes a potential crash due to wrong memory usage.

[2018-01-14] Release

This release adds iRO:Restart, kRO Zero and phRO, and updates jRO patch information. Fixes a super-random crash on super-modern systems.

[2017-12-07] Development updates

Currently there are only nightly releases for the insane ones. Recently the memory manager was replaced, which causes less memory to go to waste and makes exiting a bit quicker. The UI will remain more or less the same, most of the changes happen under the hood in preparation for new features. There are also plans to add support for new pRO and iRO:Restart, assuming they stay alive until the next stable release, which probably will not make it this year anymore.

[2017-09-07] Missile testing at Gravity

The patch 2017-09-06_data_sakray_k.rgz updates the binkw32.dll responsible for bink video rendering in a way, that breaks old clients. If that applies to you, here is the old one.

[2017-05-25] Release

This release updates kRO patch information to reflect a change in the patch transfer protocol (HTTP). This update is needed to continue receiving new kRO patches whether you use the mirror server or not.

[2017-04-01] Release

This release adds support for GRF resets employed on sakray servers and fixes a bunch of various issues, among others, patch failures caused by non-standard file attributes on NT platforms.

[2017-03-03] Release

This release fixes incorrect handling of mirror failures introduced in last release.

[2017-01-25] Seemingly missing files and random RO client crashes after patching

After updating a Ragnarok installation with the official patcher or with RO Patcher Lite 2.4.7 or older, the following symptoms can occur:

  • the client crashes either during start-up or in-game
  • the client reports missing files
  • sprites or textures appear corrupted

This can be caused by too large GRF archive. The RO client and most GRF tools cannot handle archives of more than 2 GB in size and depending on the archive layout and the file being requested, the above issues may occur. The issue can be remedied by repacking the GRF archive with the command line option /repak or with GRF Diet Plan. You might want to update to RO Patcher Lite 2.4.8 or newer, as these automatically repack the archive when it reaches the limit.

[2017-01-15] Release

This release improves download performance and stability, and fixes minor UI glitches and memory leaks.

[2017-01-14] Statistics

The collected usage data can be viewed in some fancy graphs now (updated weekly). Also belated Happy New Year, there are some updates coming in the next days.

[2016-06-12] Release (twRO only)

This release updates twRO patch information and adds support for patches distributed through HTTP (needed for twRO).

[2016-06-07] Release

This release fixes mirror selection issues and adds an option to always patch from kRO mirrors.

[2016-06-04] Release

This release fixes, among others, some elevation-related issues.

[2016-05-14] RO Patcher Lite's future and the ELUR Project

For some time the 2.x branch has been limited to bugfixes (except maybe the mirror support). There will be one more update to this branch, before it is limited to critical bugfixes1) and occasional refreshes2) only. There are also no changes to the fact, that the 3.x branch is dropped. The 4.x3) branch is on hold until ELUR is released and stable.

Now, what the heck is ELUR? The ELUR Project is a suite of universal auto-patcher applications, based among others on the RO Patcher Lite and ROCred code-base, that are distributed under a less restrictive extensions API. The point is, that RO Patcher Lite is only for updating on official RO Servers, the ELUR Project is to satisfy specialized patching needs, and mixing those made a mess of the original code-base. There is currently no ETA on when it will be available.

And to close with some rants, the kRO mirror backup/load-balance server closed last month with 63GiB of traffic; free things sure are great, aren't they?

  1. There were not many of those since the public-release, as this reflects only worst-case bugs, ex. OS incompatibilities.
  2. When enough significant shared code-base updates accumulate and the binary has not been updated in a long while, a "refresh release" occurs. A long while can also be 2 years.
  3. Full rewrite to separate UI/misc from core, also includes liniris and general *nix support.

[2016-01-09] Release

This release adds support for ASLR and DEP, improves kRO mirror balancing and the GRF repacking scenario.

[2016-01-09] Windows 10 issues with HTML patch news (panhtml)

When the update KB3132372 is installed, a patcher enhanced with the HTML patch news plug-in may crash, if the patch news contain Flash-based content. This is a problem in the flash control (issues DebugBreak when SetProcessValidCallTargets fails) and unrelated to the patcher or the plug-in.

[2015-05-02] Release

This release undoes settings removal in 2.4.5, improves performance and stability, and adds support for idRO (region-locked). There is also some more stuff to read in the doc/ folder.

[2015-04-10] Release

This release fixes kRO mirror attributions not being readable on certain Windows versions.

[2015-04-09] Release

This release adds support for community contributed fall-back mirror servers (kRO only).

[2015-01-03] Release

This release fixes various UI issues, improves UAC handling and fixes a rare, but possible GRF archive corruption issue. The executable is now tested and marked as Windows 10 compatible.

[2014-04-15] Randoms

Hello. There is currently one known issue with the patcher and one minor notice:

  • Issue: In user- or 3rdparty-induced scenarios, the patcher fails to realize that it has no write access to the GRF archive or files patched with RGZ patches due to security constraints. Current workaround is to fix the security attributes of the RO folder by applying an inherited security descriptor recursively (guide pending). All versions up to 2.4.3 are affected. A patch for this issue is being worked on. Fixed.
  • Notice: There will be no future releases of RO Patcher Lite for eRO/myRO and thRO due to a region-lock and shutdown respectively.

[2013-12-01] Release

This release fixes an issue, where the client would take over the patcher's privileges, rather than asking for elevation. The executable is now marked as Windows 8.1 compatible.

[2013-10-13] Release

*blows off dust* This release updates iRO patch information and refreshes some core/snippets code. The executable should now also be properly recognized by Windows as Windows 8 compatible. And no, RO Patcher Lite is not dead yet.

[2012-12-13] Windows 8

RO Patcher Lite has been tested for compatibility with OOBE Windows 8; result: supported, there are no changes to the user experience from Windows 7.

[2012-09-28] Random stuff from 3.x development

While testing a new code component for the patcher, I ended up writing a generator for visual waste maps of GRF archives in the spirit of common defrag programs. When I said that 3.x had reached usable state it turned out, it wasn't and it isn't. Plug-ins are currently broken, the UI has various glitches and accompanied source hacks. It would be nice to get things done until Christmas.

[2012-07-29] Note on 'run it as administrator'-fix suggestions

I have stumbled upon various threads over the last months telling people to run the patcher or any other of my tools 'as administrator' when they are experiencing problems. While this certainly fixes issues with a lot of software, it does not apply to my tools. They are UAC-aware, which means that they ask for elevation only when really necessary and otherwise do not need it. Running as administrator should not be considered a bug-fixing measure in general, especially not with software you do not know and use for the first time. That said, also avoid telling others to run something 'as administrator' and ask them to report the issue instead.

[2012-04-15] Release

Aw, I'm slow; sorry, I meant lazy. Anyway this release fixes most of the timeout related issues experienced with various versions of the WinInet library. Additionally almost all network-related failures are collected in a debug log file in this version, so any remaining people experiencing issues can send it to me. The 'keep patches' (SHIFT+Close) feature now works regardless of patch process outcome. Finally pure and full-bundle packages were also updated to benefit from this bug-fix. The latter needed an update anyway, as the aRO patch information was outdated.

[2012-02-18] Time-out issues

Users with a high latency connection between themselves and the patch server they connect to, may experience either of the following issues:

  • Patcher gets stuck at 'attempt to connect to file server' or starts downloading patches slowly and gets stuck after a while, and does not continue for an hour unless the patch process is canceled or the connection taken down by force (ex. disconnecting cable/wireless network).
  • Patcher randomly fails to connect to file server or fails in mids of downloading on random patches when the download connection speed drops below 340 bytes/s (2.7 kbit/s).

The first issue can be experienced when IE6 is installed and is caused by a bug that makes the patcher unable to detect the failed connection within reasonable time, and the other with IE7 and newer[1] which is caused by a code defect that makes the patcher unable to correctly adjust to the connection (read: it is implemented, but it does not work as it should). Either of the issues is unlikely to occur with IE4. Both issues will be addressed by a 2.x bugfix release.

[2011-12-07] Roll-up patch for missing patches

Still having outdated client, but cannot patch because the patches are no longer available, yet don't want to download a new client? There are two patch-roll-up packages available, one for kRO RAG and the other for kRO RE. Each package contains extracted .rgz files and a patcher that updates the GRF archive to a state that is patch-able (up to 2011-07-20).

Just extract the package, launch the patcher and choose the correct GRF archive (patch8 -> data.grf, patchRE3 -> rdata.grf). After the patch process is complete, copy all stuff from folder 'RO' into the folder you just updated (overwrite everything). After this you should be able to patch with RO Patcher Lite again.

Download: (49 MB; mediafire), (48 MB; mediafire).

[2011-11-05] Deleted kRO patches

Some bad news for those, who weren't fast enough. Patches 2011-04-19aRagexe.rgz through 2011-07-13rdata_j.gpf were deleted from old kRO patch server, so if your data is still out-of-date you will no longer be able to patch normally and get an error, that fetching 2011-04-20data_x.gpf failed.

[2011-11-02] Release

Another kRO specific release, this time to update location of the old patch server, which seemed shut-off or dead, until I was brought into attention that it is not. If you weren't able to patch these days, get this release and try again.

[2011-10-02] RO Patcher Lite 3.0

The development of the 3.x branch is slowly advancing to some usable state. Most parts have been rewritten, which will also make development of Liniris easier. The windows UI will remain the same. Changes in behavior will mainly affect handling of file types, plug-ins and the settings file.

Some interesting suggestions from various people will also make it in. Do you have some idea as well? Feel free to share it.

[2011-08-12] Release

This release is kRO specific to reflect the recent change of the file server and patch list location. You are encouraged to update if you want to continue to receive new patches. Do not worry about whether the old patcher finished patching at the old file server, as this version detects automatically when to use the new location.

[2011-05-25] Tools Release 1.5

All tools (diff, merge, pack, test) have been updated to use the latest stable version of the RSU GRF engine. Minor issues and typos have been fixed as well.

[2011-04-06] Release

This is a maintenance release with a few fixes and updates here and there, see the history for details. The SSO login mechanism for kRO patchers has been taken out again and it is uncertain, whether or not it will ever make it again in there.

[2011-01-15] Upcoming planned changes

Most of the planned changes are not really visible code clean ups from mess caused between 1.3.x and 1.4.x, among others the weird behavioral changes depending on rsu.ini existence will go. UI access for plug-ins will be simplified, so that multiple changes do not cause mess (such as pantext with panhtml). RSU for iRO (all except Valkyrie) will be updated soon as their patch information seems to be outdated.

[2010-11-19] Release

This release fixes multiple issues with the kRO sign-in feature introduced in 2.1.0, that have arisen during testing. They do not affect the patch process, but it is recommended to update. Non-kRO patchers are not affected by these issues.

[2010-11-17] Release

This release primarily introduces support for kRO specific SSO/OTP sign-in and Lua-based in-archive file deletion. The support for the 1.x versions of the GRF archive is now complete as well. Some traces of context-sensitive help are also present in this release, though the help content is still incomplete. Finally jRO PK patcher is now finally able to run the client after patching and no known false-positives are currently present for the kRO patchers.

Thanks for implementation details on the kRO OTP part, not present inside the ActiveX, go to kRO Auto Login System. Feedback on whether it works or not, is still appreciated.

[2010-10-30] kRO sign-in

The worst part of implementing the kRO sign-in is done, although waiting for the credentials getting confirmed currently freezes up the entire patcher interface. The log-in dialog is available since Windows XP, everything before that, except Windows 2000, is not able to play kRO anyway, so there will be no down-level implementation for that.

On top of that, I'm not able to test the log-in procedure, because I do not have a kRO account. Anyway using this feature is obviously at your own risk, because it substitutes the ActiveX control completely, which was originally intended for that purpose by Gravity. If you feel adventurous, you can try nightly versions and later, and report back, whether it works or not.

[Update] No longer freezes up and does not take that long for initial log-in.

[2010-10-16] Release

This release is in sign of clearing misconceptions from initial release and reflecting recent updates to the official patcher. Apparently I also managed to mix up the links of the previous release, with those of 1.4.4, causing some links not downloading the expected files.

[2010-10-11] Release

This release fixes a bunch of minor and major bugs, memory leaks and crashes. All ipatch and i18n functionality is now part of the patcher, the related plug-ins are no longer available. The performance and stability of the GRF archive engine has been improved. Ability to automatically check for updates has been added. See doc/history.txt for details.

Network access related changes did not make it into this release, due to various hardships. Actually this version should have been released yesterday, but Avira AntiVir, CAT-QuickHeal and McAfee had marked the patcher as various kinds of malware, so the code required further tweaks. Documentation will be updated soon, next release might be able to deal with kRO's new authentication scheme.

[2010-10-07] RSU/2.0 progress

One could say, things get slowly to the point of being called completed. Most of the significant TODO (especially bug fixes) is done, the insignificant part, which I want to get into 2.0 is kinda large though. How can you help? Use RSU or test the nightly releases, and if it does something, what you think it should not, or if it does not do something, what it should, post it in the bbs.

On an unrelated note, I got finally rid of a wast amount of typos in this page, even though I probably did not get all of them...

[2010-08-05] Regarding kRO authentication update

During the kRO maintenance on 2010/08/04, the authentication scheme was changed and the patcher was made part of it. This means, you can still use RSU for patching kRO, but you are required to use the official kRO/RE patcher to log-in. If it does not turn out to be waste of effort, I'll make the next release to support starting the kRO client again together with some minor features, which were implemented into the official patcher.

[2010-07-29] Plans on 2.x, no further updates to 1.x

RSU will experience some major changes until the next release, thus there will not be any further updates released for the 1.x line, except for critical bugs. I noticed a certain confusion between the lite and normal releases, so the patcher will be split into two semi-separate development lines; RO Patcher Lite and RO Patcher Max, which will correspond to the lite and normal releases respectively.

The lite patchers will have i18n functionality included, but continue to have fixed patch information. Additionally there will be always a release for each and every official server I know of (currently 7, total of 11 patchers). The max patchers will have i18n and ipatch functionality included and will not have any default patch information (so it must be specified via rsu.ini). Patches will no longer require to have them hosted on FTP. Likewise you will be able to host patch-allow and patch-listing on FTP and the settings file remotely as well.

Existing plugins, except i18n, ipatch and possibly banned ones, will continue to work without problems, and the UI will not receive any visible changes. If you have any further ideas, for either lite or max patchers, feel free to post them inside the bbs.

[2010-07-07] Lite Release Collection

This is a single, all-in-one lite release, which contains patchers for all currently supported official RO servers. Documentation is a bit stripped down and adjusted, so if you need the entire thing, you will have to take it from a normal release.

Download: (Version; 724KB)

[2010-07-07] Tools BugFix Release

This tool release fixes a GRF handling (retrieving data) issue, which can occur with specially crafted archives. Normal archives found in the wild are not affected.

[2010-07-05] #*@! Week

Another batch of hardware failures managed to keep me busy since last week. 'Luckily' the only thing, which did not get damaged at all, were sources. The repositories and their recent backups did not survive that 'Double Attack' though, so I'll probably have to recommit into a three month old backup (343 revisions difference…), which was not affected. That's also why some nightly do not have proper version.

[2010-06-13] Release

First of all sorry for the late release, it took a while to figure out the cause for the patch issues and on top of that, the machine hosting the rsu repository exploded. This release fixes patch issues with slow/high-latency/broken connections (hopefully) and certain lock-ups during the patch process. For further updates, check doc/history.txt, which is included with every patcher.

[2010-06-03] 'Failed to retrieve patch_allow.txt' issues

Recently some people are running into this error while patching. I'm not exactly aware what it is caused by, could be a block or network issue. To find out, I made a release, which tracks, what really fails and writes it into a log file. 'NIO' in the log file means the last code spot, where data is actually about being transfered. All error codes are system error codes retrieved from GetLastError(). If you or your players are having such issues, download the logging client, and look for the log file after patching (ex. rsu.log).

[Update] Thanks to those, who sent the reports back to resolve the issues, will be part of the next release soon.

[2010-06-01] Release

This release fixes a small issue in RGZ processing and introduces support for mouse-less usage.

[2010-05-22] Release

This release fixes 2 minor UI glitches with start-button and status line and changes the behavior of lite releases to match the official patchers.

[2010-05-19] Release

This release introduces a plug-in system, which allows you to extend or change the patcher to match your needs. All you need is the plug-in SDK below. Translating and changing patch information is now done through the plug-in API, basic pre-made plug-ins are available, that work, like the old patcher did.

[2010-05-16] Bugfix Release 1.4.1

Today during some worst-case-scenario tests of 1.4.1, an annoying bug popped up; all GRF archives beyond 2GB on-disk size will break, because of an impossible seek. Unfortunately, this bug is not only in RSU, but in all GRF browsing/manipulation software, that uses SetFilePointer, ftell or fseek, because all of them use 'long' as offset. That being said, it also affects the official RO client and patcher. This release fixes the issue in the patcher, so that GRF archives beyond 2GB can be read without errors (writing was not affected). Until Gravity fixes their CGPak class, you may try to reclaim wasted space with /repak, if your GRF archive hits the limit, to get the file size below 2GB.

This also means, that all releases up to now are removed, since they are not able to process GRFs once they reach 2GB. Although this bug does not pose a risk at the moment (most official GRF archives are about 1.5GB large), you are encouraged to update. The customizable release will come within the next days.

[2010-05-04] Release 1.4.0 (Lite)

So yeah, where are the plug-ins? They work, and they do not. I'm not really satisfied the way everything works inside the plug-in part, so the full version with plug-in support will be delayed. Never mind, even that way there is a lot of changes and bug fixes, check the included history for details. The mentioned self-update feature can be found inside the system menu.

[2010-04-18] Generic plug-in preview

The plug-in system is done soon. The entire thing uses COM-like interfaces for version independence and allows plug-ins even to offer functionality for other plug-ins. Release is planned around first week of May, until then you can take a look at a generic plug-in made for testing. If you have any suggestions, feel free to post them in the simple bbs. Except the main (common) interface, network, UI, grf and rgz interfaces are present.

[2010-04-10] Removal of custom releases

Some issues have arisen with custom-released patchers, so this offer is no longer available. Those who already have such patcher, will continue to receive their updates. For everyone else the previously mentioned plug-in system will be available in future releases.

[2010-04-04] Going for 1.4.0

OK, 1.3.0 is said to be the final release, but I felt like toying around with it further. So 1.3.0 can be considered final in means, that everything it advertises, is really in there. Various stuff popped up through regular use, that proved to be annoying (ex. minimizing to see overall progress), as well as two issues/glitches, that are considered minor, thus not requiring an extra patch. Currently, I am considering to add plug-in support, so that the skilled ones can add stuff, like patch news, to the patcher. That would also make translation (i18n) and custom patch info (ipatch) plug-ins as well, but that is still not decided.

[2010-03-06] Release

This is the final release, and most probably the last, unless there are updates necessary, due to changes made by Gravity or any bug occurrence. It does, want I wanted it to, actually even more, considering the external patch information and translation support. UAC compatibility is improved, with on-demand elevation in case, that you are running RO on Vista/7 in wrong folder. The patcher also attempts to retry a failed download once, and if it fails even when retrying (seems to happen on kRO FTP kinda often lately), it will at least apply already downloaded patches, so it can resume on the failed download on next start.

[2010-01-18] Release

This release introduces lightweight customization of the patcher in means of translating and using own patch information. Downloaded patches can be preserved just by pressing SHIFT key when 'Close' is clicked. Finally certain UI issues have been resolved. Until final release, there is not much to do, except few performance tweaks, like safe re-usage of gaps inside the GRF archive and avoiding patches, that get overwritten anyway.

[2010-01-04] Release

This release says good bye to grf.dll and introduces own grf engine, based observations, tests and some days of debugging of newer and older official patchers and clients. All started with tracking down random missing files or completely unusable archives. There is issue in grf.dll, that cannot handle transition between v1.x and v2.x grf archives. As most of the main grf archives are v2.0 and the patches are provided in encrypted v1.02 ones, there was need for an alternative; libgrf wasn't one, due to GPL.