Dark Engine Object Converter Interface

By R Soul

Overview

This program presents you with a graphical user interface (GUI) that runs the tools that convert an object from Dark Engine format (.bin or .e) to .3ds. It also places the object's textures in the same folder as the .3ds, so it is easier for your 3D object program to find them.

Another important feature is that the textures can be converted from their original format (usually .gif or .tga) to another format. This is useful because not all programs support the .gif, .tga or .pcx formats that are most commonly used by Dark Engine objects.

It should also be noted that the object does not have to be converted, and/or the textures don't have to be converted. The user can configure what the program is to do.

Requirements

Installation

Simply extract the files (DEOCI.exe and Ionic.Zip.dll) to any folder and run DEOCI.exe. The .dll file is used to enable access to .crf files, which are actually renamed .zip files.

User Account Control

If you use Windows Vista and above, and you have UAC enabled, this program may occasionally ask for higher privileges. You will be prompted under the following circumstances:

Using the Program

Initial Setup

Object/Texture Info

When you first run the program you will presented with lots of empty lists. Most of these only have to filled once.

Select Object

Use Browse File to select a .bin/.e file. When you do this, the object's folder will automatically be added to the Obj/mesh Folder list below.

Use Model Name to enter in only the name of the file, and the extension. Select .bin for normal objects and .e for AIs. You can get the name by looking in Dromed's Object Hierarchy, editing the object and looking for the Shape > Model Name property. If you don't see it, the value will be inherited, so look for it in one of the parent archetypes instead.

Object/Texture Locations

The lists in this section tell the program where to look for the textures that are used by the object. If you selected the object's model name in the section above, it also uses these items to find the model file.

Obj/mesh Folder

This is the first place the program will look for the required files. It should be set to your Thief obj or mesh folder becuase if you've updated textures or the object itself, this is where the files will be.

EP.crf

If the required files are not in obj/mesh, the next best place to look is the Enhancement Pack, which contains updates to the original objects.

You can select 'Ignore EP.crf' if you don't have it.

OBJ.CRF/MESH.CRF

These are the original files. There are two selections required. The first one is the large .crf file usually stored in your RES folder. This contains the majority of files.

The second selection is the .crf file in your root Thief folder. The files in this will override files of the same name in the other .crf. When Thief 2 was patched to version 1.18, updated files went in these smaller .crfs

You can tell the program to ignore these two .crfs if you know the object doesn't use any original files.

Conversion Program Info

Object Conversion

Locatate bintoe.exe and eto3ds.exe. There are a couple of versions around so you can add multiple ones to the list and choose the best one for your needs. For example, the latest versions are usually fine, but when testing I found an object that wasn't textured properly until I used older versions of these tools.

Texture Conversion

If you don't plan to convert textures you can ignore this section.

Select the .exe of the program that will convert the textures. IrfanView is a good program to use.

Conversion Command

The program you use must have a command line interface. Click on New to define the structure of the command used for converting a single image from one format to another. If you use IrfanView the command structure is [exe-path] [source-img] /convert=[dest-image]

You must use the placeholder text and the square brackets. Before this program runs the commands it will replace those with the real file locations. The extension of [dest-img] will be set according the the options you choose in the 'Texture Format Options' tab.

Texture Format Options

Presets

You can use this list to quickly set the conversion options for each image format. Presets exist for Anim8or, Blender 2.58+, No Conversion, and Custom.

Anim8or supports .gif textures, so those images won't be converted. It does not support the others, so they are all converted to .jpg, which is supported.

From version 2.58 onwards, Blender does not support .gif, so those are converted to .png. It doesn't support .pcx either, so those are converted to .jpg. Those settings are compatible with Elendir's Dark Exporter plugin, which allows the reverse of those conversions. The remaining formats are supported, so they will not be converted.

No Conversion does exactly what it says.

Custom allows you to edit the conversion settings. For example, if Anim8or gained tga support, you could select the Anim8or preset and then select Custom, and select 'Don't Convert' for .tga textures.

Why are there options for .png and .dds?

The NewDark patch has given the Dark Engine support for those two formats. At the time of writing most objects you convert will be using the first two or three, but eventually you may find yourself wanting to convert objects that use the new formats. Bear in mind however that some conversion programs will not be able to convert .dds images.

Output Folders

Converted Object

Select the folder in which the converted object should be placed. If you select 'same as source', it will be placed in the Obj/mesh folder selected in the first tab. This option is not usually recommended but exists just in case.

Textures

Select the folder in which textures are to be placed. It can be useful to select 'same as converted object', because by default most 3D object programs look for textures in the object's own folder. You can however leave the box unchecked and choose a different folder if your object program is configured to look in a specific place.

Convert

When everything has been selected, click on Convert. If you've missed anything, you will see an error message telling you what you missed. The conversion process should be very quick, so you can expect a 'Finished' message almost instantly. You can then import the object into your 3D object program.

Further Use

When you next run the program, most of the settings will be reloaded. All you have to do is select the object, and it's folder if you select a model name, and select the output folder(s).