ActiveWorlds: Local Caching a world
Any user of dial-up who has accessed the VR codebase ActiveWorlds for any length of time knows this problem: You download the world, then the computer locks up, or the browser crashes. You restart, only to find out you have to download the world from scratch again, as the datafile the program uses for downloads, corrupts if it is terminated unexpectedly.
This tutorial is dedicated to bulk-downloading an entire world in one hit, outside of AW, then telling AW where to look for the files, rather than redownloading them each time - saving what can be hours on broadband, and a week or more of redownloading on dial-up.
Part 1: The OP Cache
Before we go any further, we need to define just what an ActiveWorlds world really is, technologically.
An AW world uses what is called an Object Path, or OP which is an absolute URL to a place on the internet where all world objects are stored. An object in this case is every discrete item in the world - each texture is an object, each sound file is an object, each 3D model, or animation sequence file is an object. Everything basically, save the framework of the world itself - the database full of pointers - is an object.
Without the object path, a world is basically a 2D green grid, with a plethora of object placement markers in the 3D space above and below it.
Locating your cache
Since everyone installs AW in different places, a tutorial locating the directory to find your cache in, is a monumentous effort in itself. If you are sufficiently technically adept to locate your ActiveWorlds install directory, please skip the following section.
When you first start AW, you usually double click an icon, representing it. This launches the program. It also tells the computer where to find theprogram, and this is the function we are going to leverage.
Step by step:
1. Use the opposite mouse button to normal. If you usually double-click with the left mouse button, click one with the right mouse button.
If you usually double-click with the right mouse button, click once with the
left mouse button.
There will also be a host of other files, including your telegrams list, and dynamic link library files. For now, the one we are interested in, is the directory cache. Open it now.
Inside, you are presented with two more files 'art' and 'property'. This tutorial deals with the 'art' folder. Open it now.
You are now presented with a long list of directories, each with gobbledy-gook seeming names. Everyone's selection will be different, based on the worlds they visit, but will look something like this:
awboutique.com-world chicago3d.net-opphp-ravenmtn.php- conquest.hostedworlds.net-op faeried.hostedworlds.net-multiop.php- host.activeworlds.com-awdebate objects.activeworlds.com-awgate4 objects.activeworlds.com-aw
These, are OPs for all the different worlds you visit. Even if you have only been to a world once, it's OP will be listed here. The name of the world is usually, if not always, part of the name. For example, above we see the worlds:
Boutique, Ravenmtn, Conquest, FaerieD, AWDebate, AWGate, AW (AlphaWorld).
Turning a local OP into a URL
The weird folder names are actually internet URLs. They contain copies of data found on the real OP for their respective worlds, and so the internet paths have been changed slightly, so they point to your local hard drive instead.
We can reverse engineer these OPs from the information we have, to find the original URL and visit it in a web browser.
To do this, we need to make a few changes to the file names.
1. Add "http://" (without the quotes) to the start.
For example, the Conquest path above:
If we were to add the changes to it, it becomes:
Do not make any actual changes to the folder names stored here, instead make a note of how the name would alter, and type it into your favourite web browser's address line.
You will find yourself taken to a white web 'page' that lists several directories - usually:
These are the places the various objects are stored in for that world.
Part 2: Setting up Local Cache
If you use either of the following modifications:
SW-City's AWE VWN's Avatar Override
Then you already have the base configuration set up, and can safely skip
The localpath file structure is set up, now we activate it.
You now have a basic localpath running. It doesn't have anything in it, but it is a fully functional localpath.
Now we get to put stuff in it.
A note on downloading worlds, and object stealing
Several world-owners are likely panicking by now, fearing this is a tutorial on stealing their objects. Rest assured, it is not.
This procedure in no way bypasses the file passwords you have placed on objects in your world - the passwords remain in place, which ensures objects downloaded in this manner will work only on the worlds they originally came from.
If a person has the level of expertise necessary to remove a password from a zip archive, well, they have knowledge way above the level this tutorial is aimed at, and, if they're inclined to lift objects, were certainly doing so, years before this tutorial came out.
Mass File Download
In order to shift files in the quantities we need to download even a small world - we are talking hundreds, maybe thousands of files - manual downloading, one file at a time, will not do.
Therefore, to proceed, we will need use of a download manager - a program designed to manage large volume downloads, and / or reconnect and resume a download after one or more line disconnects.
There are three programs recommended for this: WebSnake, GetRight, or GoZilla.
The remainder of this tutorial assumes GetRight is used, as this particular manager is free to trial, and readily available. The other two will also work, but you will have to figure out how to stream downloads on your own.
GetRight can be downloaded here: http://www.getright.com/
Setting up the Download
Once GetRight is downloaded and installed, open it, and click past the shareware screens.
Remember when we discussed the OP paths in cache before? We will need the url version of the path for the desired world to proceed here. For simplicities sake, the tutorial will assume Conquest is to be downloaded. Replace with whichever world you desire.
What we are about to perform, is known as a server sync - downloading the contents of a server to your hard drive, to ensure the copy you have, is the same as what is on the server.
To start the process with GetRight:
At this point, another new window will open, "Select files to download"
When the download finishes - or at any point whilst it is progressing, just restart AW, and whatever was already fully downloaded when you opened AW, will appear instantly, without having to wait for it to download, every time. Even if AW crashes, it will never need to re-download from the internet, once it is local.