ClickSaver - Creating the Local Database

Read this page in another language

Recent site news:
ClickSaver 3.1.7 released.
ClickSaver 3.1.6 released.
More Site News...

Get this site news by email

But do you really need to create a local database?
Usual creation errors - Troubleshooting
A little history of local database creation
Finding a ctreestd.dll that supports segmented files

But do you really need to create a local database?

With the availability of the Tiny database bundled with ClickSaver 3.0.0 and the other premade downloadable databases, there are few valid reasons I can think of to get an updated database:

  • If ClickSaver LDB tab is reporting "Not found items" / "Error rate" even though you're using an all-items All.cdb, it means Funcom has defined new items since your database was made, AND defined some of them as rollable-as-reward. Unlikely, but may happen.

  • Funcom may have renamed some rollable-as-reward item you want to roll. Happens too, but also rare and anyway hard to notice by the average user.
To give you an idea of how rare these cases are, that I know of:

The last meaningful addition of rewardable items to the rollability tables happened way back, in the ShadowLands launch days (patch 15.0?). Spindles, Coils, many weapons, nanos for shades and keepers, and a few SL advie and crat nanos were added.

In the years since then, I've only noticed these new rewards:

Polizziotto M203 Druid
Polizziotto M204 Hierophant
Map - Coast of Peace
Map - Coast of Tranquility
Nano Crystal (Dimach Expertise)
Nano Crystal (Dimach Proficiency)

And only a few meaningful renamings of rollable items:

Second-Hand Vektor M-31 Automatic Grenade Launche --- Second-Hand Vektor M-31 Automatic Grenade Launcher
NanoCrystal (A sergeant`s knowledge) --- NanoCrystal (A sergeant`s knowledge) (double to single-space)
Nano Crystal (Calia's Form: Dragon) --- Nano Crystal (Calia's Form: Pit Lizard)
Nano Crystal (Monofilament Cat-O --- Nano Crystal (Monofilament Cat-O'Nine-Tails)
NanoCrystal (Dodge Persuers) --- NanoCrystal (Dodge Pursuers)
NanoCrystal (Persuade for Freedom) --- NanoCrystal (Pursuade for Freedom)
Exellent Concrete Cushion --- Excellent Concrete Cushion

So yes, ClickSaver's 2.3.x and 2.4.x "make a new database after each patch" concept might have made sense when ClickSaver was designed. I guess new items were added to the rollability tables pretty often in those days.

But that's not the case anymore.

These days a local database is valid until any of the above RARE cases happen.

And even in both of them you can just download a new local database when it becomes available.

And yet you still want to create a local database?

Ah well. But you're alone from here. The information below is the last I provide about local database creation.
If it doesn't work for you, don't bother to ask me for further support!

Here are the typical errors and some troubleshooting tips in case you tried and failed.

Usual errors reported in cs-err.log by CS 3.x.x - Troubleshooting

  • LDB creation: Can't link to ctreestd.dll
    Reason: There's no ctreestd.dll in your system, or the one ClickSaver is trying to load is unsupported by your system, i.e. your ctreestd.dll requires Win 2000/XP/Vista/whatever, but you're running Win 98.
    Fix: Find and copy to ClickSaver's directory a ctreestd.dll supported by your system.

  • LDB creation: Can't open the AO Resource File, OpenIFile err 12
    Reason: Most likely you're trying to create the local database while AO is running.
    Fix: Close AO and retry.

  • LDB creation: Can't open the AO Resource File, OpenIFile err 43
    Reason: Probably your AO Resource Database is segmented into three files (2 big + one index file), and your ctreestd.dll is old and can't read segmented files.
    Fix: Find and copy to ClickSaver's directory a ctreestd.dll that supports segmented files.

Once upon a time...

Creation was easy:

The AO Resource Database was stored in a single file (ResourceDatabase.dat) and a corresponding .idx in [YourAoDirectory]\cd_image\data\db\

With the AO client came a ctreestd.dll perfectly capable of reading the ResourceDatabase.dat

ClickSaver (and some other third-party AO applications) used that ctreestd.dll to extract items, icons, etc from the AO RDB. In fact, ClickSaver creation 'logic' was so confident in the success of this process, that the first thing it did when creating its local database was deleting the old one, leaving the user database-less if anything went wrong.

Then came patch 18.1.0

With it, most AO users saw their ResourceDatabase.dat split (segmented) in two. The old ctreestd.dll wasn't capable of processing segmented files, and Funcom didn't provide a new dll that could, so ClickSaver local database creation would fail for the users with the old dll and the segmented AO database.

Not enough reason to panic. After all, a solution for that case was already available in my ClickSaver Troubleshooting page in the form of downloading a premade database compatible with 2.3.x and 2.4.x.

Finding a ctreestd.dll that supports segmented files

But indeed, a new ctreestd.dll is needed in order to extract information from the segmented database.
Probably any such dll later than v7.10, April 2001 will do.

With a bit of luck, your system may have already a ctreestd.dll that came bundled with your operating system or with some installed application. I suggest a file search for ctreestd.dll in your hard disks.

If you can't find it there...

Don't look for it in the ClickSaver package. FairCom, the maker of the dll, requires a license agreement before any of their software is distributed with applications, even if they're freeware. That includes ClickSaver, yes. I learned this only recently, while researching the issue with the split AO RDB, so you'll notice that since ClickSaver 3.0.0 I'm not distributing the dll in the ClickSaver package anymore, not even the one that came bundled with the AO installation.

Luckily, at least as I write this (Aug-2009), there is a free way, legal as can be, in which you can get a working dll complying with FairCom's terms of use. It's about getting a licensed developer's package and finding the dll within it. This procedure requires installation of the developer package in a Windows 2000/XP/Vista or higher with NET 2.0
  • Go to FairCom site
  • Look for Downloads / Download c-treeACE and hit the link
  • Fill the form, selecting Windows x86 32bit as your development platform
  • Read, Understand and Accept the developer's license
  • Wait for the email with the link to the package
  • Download and install it. I suggest an install with all options. The default installation didn't install ctreestd.dll in my case.
  • Within the installation directory, search for ctreestd.dll
I may have missed some step, but you get the general idea.

In my case the dll was in win32\sdk\ctree.vcl.delphi\src\ and it worked perfectly with AO's segmented database for patch 18.1.3 under Win XP.

Hope it helps!

P.S.: You know there are other, non-legal ways to get a working copy of this dll. Please show some respect to FairCom and get yours legally. After all it is thanks to their c-tree database engine that AO has been running all these years.

Privacy Policy
Anarchy Online, Funcom, and associated logos are trademarks of Funcom.

© 2003-2023 Javier M. Arpa.