EnigmaProjects · Mod Tooling

Titan Quest Studio

Complete User Guide — Professional Mod Editor for Titan Quest Anniversary Edition

v0.1.0 · 2024
01

Requirements

The Game

  • Titan Quest Anniversary Edition — installed through Steam (App ID 475150)
  • The game must have been launched at least once so that Database.arz is present on disk

Titan Quest Studio

The installer is completely self-contained. No Python, no PySide6, no additional software is required — everything is bundled inside.
02

Installation

  1. Download TitanQuestStudio_Setup.exe from enigmaprojects.org
  2. Run the installer and follow the on-screen wizard
  3. Choose an install location (the default is fine) and click Install
  4. Optionally tick "Create a desktop shortcut" on the tasks page
  5. Click Finish — the app is ready to launch
No Python, no PySide6, no command line — the installer bundles everything. Just run it and you are done.
03

Starting the App

Launch Titan Quest Studio from the Start Menu shortcut or your Desktop shortcut (if you ticked that option during install).

A dark-themed window opens. On the very first launch, the Setup Wizard starts automatically to configure your game path and workspace.

04

First-Time Setup Wizard

The wizard runs once on first launch. You can re-run it at any time via Help → Run Setup Wizard…

Page 1 — Detect the Game

The wizard searches for Titan Quest automatically via the Windows registry and Steam's library config file. Two outcomes:

  • Found automatically — the game path is shown. Click Next.
  • Not found — click Browse and navigate to your TQ:AE folder manually, e.g.:
C:\Program Files (x86)\Steam\steamapps\common\Titan Quest Anniversary Edition

Page 2 — Create a Project

A project is a workspace folder where all your edits are stored.

  1. Type a project name (e.g. MyMod — this becomes the mod name when you build)
  2. Click Browse and choose (or create) a folder on disk for this project
  3. Click Next

Page 3 — Done

The wizard saves your settings and loads the application. The Database Explorer fills with the game's full record tree.

You can have multiple projects — each is a separate folder with its own edits. Switch between them with File → Open Project…
05

Understanding the Main Window

┌──────────────────────┬─────────────────────────────────┬───────────────────┐
│  DATABASE EXPLORER   │  EDITOR TABS (centre)           │  PROPERTY         │
│                      │                                 │  INSPECTOR        │
│  Virtual file tree   │  Each .dbr you open gets        │                   │
│  of all 74 000+      │  its own tab here.              │  Shows the fields │
│  game records        │  Edit fields directly           │  of whatever you  │
│                      │  in the table.                  │  clicked on.      │
│                      │                                 │  Read-only        │
│                      │                                 │  preview.         │
├──────────────────────┴─────────────────────────────────┴───────────────────┤
│  SEARCH                                      │  CONSOLE / LOG              │
│  Find records by name, field, value, etc.    │  Shows save/index messages  │
└──────────────────────────────────────────────┴─────────────────────────────┘
  • All four panels are dockable — drag their title bars to rearrange, float, or snap them.
  • Each panel can be shown or hidden from the View menu.

Menu Bar Overview

MenuKey actions
FileNew / Open project, Open .dbr, Open Database.arz, Save All, Quit
BuildBuild Mod, Extract Database, Re-index Database
ViewShow/hide each dock panel
HelpRun Setup Wizard again, About
06

Database Explorer — Browsing Records

The left panel shows the full contents of Database.arz as a virtual folder tree (over 74 000 records). It loads instantly because it only reads the archive's index, not the record data itself.

Navigating the Tree

  • Click the ▶ arrow on a folder to expand it
  • Keep drilling down: records → creatures → monster → satyr → …
  • The tree mirrors the exact folder structure inside the archive

Filtering the Tree

Type in the "Filter records…" box at the top of the panel.

  • The tree narrows to only entries whose name contains what you typed
  • Clearing the box restores the full tree

Opening a Record

ActionResult
Single-click a .dbrPreviews it in the Property Inspector (right panel) — read-only
Double-click a .dbrOpens it in a full editor tab in the centre

The ✏ Edited Toggle

In the header of the Explorer there is a small toggle button.

  • When on (glows gold): the tree shows only records you have already saved in this project
  • When off: shows the full 74 000-entry tree
  • Records you have edited show a gold pencil icon next to their name

Refreshing the Tree

Click the button in the header to rescan your project folder and update which records show the pencil icon.

07

Opening and Editing a Record

How to Open

Double-click any .dbr in the Database Explorer or Search panel. The record opens as a new tab in the centre.

The Editor Tab Layout

┌─────────────────────────────────────────────────────────────┐
│  record_name   database/Templates/Monster.tpl    ● unsaved  Save │
├─────────────────────────────────────────────────────────────┤
│  Filter fields…                          1048 fields         │
├──────────────────┬──────────┬────────────────────────────────┤
│  Field           │  Type    │  Value                         │
├──────────────────┼──────────┼────────────────────────────────┤
│  templateName    │  str     │  database/Templates/Monster.tpl│
│  characterLife   │  float   │  1200                          │
│  characterSpeed  │  float   │  6                             │
│  ...             │  ...     │  ...                           │
└──────────────────┴──────────┴────────────────────────────────┘

Editing a Field

  1. Find the field you want — use the "Filter fields…" box to search by name
  2. Double-click the value in the Value column to start editing
  3. Type the new value and press Enter (or click elsewhere to confirm)
  4. The row turns amber/orange — field changed but not yet saved
  5. The header shows ● unsaved

Field Types

Type shownWhat to type
strAny text
intA whole number, e.g. 1200
floatA decimal number, e.g. 6.5
booltrue or false (or 1 / 0)
ListSeparate multiple values with ; — e.g. 10;20;30

Filtering the Field List

Records often have 1000+ fields. Use the "Filter fields…" bar below the record header:

  • Type life → shows only fields with "life" in the name
  • Type resist → shows resistance fields
  • Clear to see everything again

Multiple Tabs & Closing

You can have as many tabs open as you want. Switch by clicking the tabs. Click the × on a tab to close it — if there are unsaved changes you will be asked to save, discard, or cancel.

08

Property Inspector — Quick Preview

The right panel gives a formatted, grouped, read-only preview of any record.

  • Single-click a record in the Explorer or Search to load it here
  • When you switch editor tabs, the Inspector automatically updates to match
  • Fields are grouped into collapsible sections — click a section header to collapse/expand
  • Fields that reference other records show a link — click it to jump to that record
The Inspector is ideal for quickly comparing values across records without opening them as full editor tabs.
09

Search Panel — Finding Records

Basic Search

  1. Click the Search tab at the bottom
  2. Type a name or path fragment — e.g. satyr_warrior
  3. Press Enter or click Search
  4. Results appear below — up to 500 matches

Filter by Template

To find all records of a specific type, type in the Template box:

  • Monster.tpl — all monster records
  • character.tpl — all character records
  • Combine with a name search for narrower results

Filter by Field and Value

  1. Type the field name in the Field box — e.g. monsterClassification
  2. Optionally type a value in the Value box — e.g. Boss
  3. Press Search
  4. Only matching records are returned

Show Only Edited Records

Check the ✏ Edited checkbox in the filter row. Results are filtered to only records that exist in your project folder (records you have already saved).

Opening a Search Result

ActionResult
Single-clickPreviews in the Property Inspector
Double-clickOpens in a full editor tab

Results that have been edited show a gold pencil ✏ icon.

10

Saving Your Changes

Save the Current Record

  • Press Ctrl+S, or
  • Click the Save button in the editor tab header

Save All Open Records

  • Press Ctrl+Shift+S, or
  • Go to File → Save All

Where Files Are Saved

<your project folder>/records/<original path in archive>

For example, if you edit records/creatures/monster/satyr/satyr_warrior01.dbr, it is saved to:

C:\YourProject\records\creatures\monster\satyr\satyr_warrior01.dbr
The original game file inside Database.arz is never modified. Your project folder only holds the files you have changed.

Automatic Backups

Every time you overwrite an existing file in your project folder, the old version is copied to <project>/backups/ before it is replaced. You can always recover a previous version from there.

What Happens After Saving

  • The amber highlight clears — the row returns to normal
  • The ● unsaved indicator disappears from the tab header
  • The ✏ pencil icon appears on that record in the Explorer and Search results
  • The SQLite search index updates automatically
11

Tracking Edited Records ✏

A gold pencil icon ✏ appears on any record that has been saved to your project folder. It shows in three places:

LocationWhat you see
Database ExplorerPencil on the .dbr leaf item in the tree
Search resultsPencil next to the result name
Explorer "Edited only" viewClick ✏ in Explorer header to filter to only your records

This makes it easy to see at a glance which records are part of your mod and which are untouched base-game records.

If the pencil icon doesn't appear after saving, click the ↻ Refresh button in the Explorer header to rescan the project folder.
12

Building the Mod

When your edits are ready, build them into a mod archive:

  1. Go to Build → Build Mod…
  2. Choose an output folder (e.g. your Desktop, or a mod staging folder)
  3. Click Build
  4. The tool packs all records in your project's records/ folder into a .arc archive named after your project
  5. The Console panel logs how many records were packed and where the file was written

Installing the Built Mod

Copy the .arc file to your Titan Quest mods directory:

Documents\My Games\Titan Quest - Anniversary Edition\CustomMaps\<YourModName>\

Or follow the standard TQ mod installation instructions for your version of the game.

13

Project Folder Structure

When you create a project at e.g. C:\Mods\MyMod, it looks like this:

MyMod/
  project.json          ← project name, game path, author, and settings
  records/              ← only the records YOU have saved (mirrors ARZ structure)
    creatures/
      monster/
        satyr/
          satyr_warrior01.dbr
  cache/
    index.db            ← SQLite search index (auto-built; safe to delete)
  backups/              ← automatic pre-overwrite backups, named with timestamps

You can open an existing project at any time with File → Open Project… — just point it to the project folder.

14

Keyboard Shortcuts

Ctrl+S
Save current record
Ctrl+Shift+S
Save all open records
Ctrl+O
Open a .dbr file from disk
Ctrl+Shift+O
Open an existing project folder
Ctrl+Shift+N
New project (runs wizard)
Ctrl+Shift+A
Manually open a Database.arz file
Ctrl+E
Extract game database
Ctrl+B
Build mod archive
Ctrl+Q
Quit
15

Practical Examples

Increase a Monster's Health

  1. In the Search panel type satyr_warrior01 and press Enter
  2. Double-click the result to open the record
  3. In the field filter bar type life
  4. Find the field characterLife — double-click its value
  5. Change it from 1200 to 2400
  6. The row turns amber — press Ctrl+S to save
  7. The pencil icon appears on the record in the tree and search results

Find All Boss Monsters and Check Their Resistances

  1. In the Search panel, fill Field = monsterClassification and Value = Boss
  2. Click Search — every boss record is listed
  3. Single-click one to preview it in the Property Inspector
  4. Scroll to the resistance fields in the inspector to compare values
  5. Double-click the one you want to edit it in a full tab

See Everything You Have Changed So Far

Option 1 — Database Explorer:
Click the ✏ toggle button in the Explorer header. The tree instantly filters to show only records in your project folder.

Option 2 — Search Panel:
Check the ✏ Edited checkbox and click Search. The list shows only your edited records, with a pencil icon on each.

Recover an Accidental Edit

  1. Navigate to your project folder in Windows Explorer
  2. Open the backups/ subfolder
  3. Find the backup copy of the file (named with a timestamp)
  4. Copy it back over the file in records/ to restore the old version

Work on Multiple Mods Simultaneously

Create a separate project for each mod:

  • Use File → New Project… (or Help → Run Setup Wizard…)
  • Give it a different name and a different folder
  • Switch between projects with File → Open Project…

Each project has completely independent records, backups, and search index.

16

Troubleshooting

The app does not start

  • Try running it as Administrator (right-click the shortcut → Run as administrator)
  • If Windows Defender or your antivirus blocked it, add an exception for the install folder
  • Uninstall and re-run TitanQuestStudio_Setup.exe to repair the installation

"No database loaded" or the tree is empty

The game path was not configured. Go to Help → Run Setup Wizard… and re-enter the path to the TQ:AE folder. Alternatively use File → Open Database.arz… to manually select the archive.

The Setup Wizard can't find Titan Quest automatically

Steam's registry entry may be missing. Click Browse in the wizard and navigate manually to:

<Steam library>\steamapps\common\Titan Quest Anniversary Edition\

Search returns no results after saving

The SQLite index updates in the background. Wait a few seconds and search again. If it still doesn't appear, go to Build → Re-index Database to force a full rebuild.

The ✏ pencil icon does not appear after saving

Click the ↻ Refresh button in the Database Explorer header. This rescans the project folder and updates all icons.

A record I edited does not appear in the Explorer's "Edited only" view

The edited-only filter shows files that physically exist in your project's records/ folder. Make sure you saved the record with Ctrl+S — amber rows mean not saved yet.

How do I undo a change before saving?

While the row is still amber (not saved), close the tab and choose Discard when prompted. The original value is never touched until you click Save.

How do I undo a change after saving?

Check the backups/ folder inside your project. Every save backs up the previous version with a timestamp. Copy it back to restore the prior state.

The index is taking a long time

The first run has to scan all 74 000+ records — this is normal and takes a few minutes. Progress is shown in the status bar. You can browse and edit records while it runs. Subsequent launches are instant because already-indexed records are skipped.

The cache/index.db file is always safe to delete. The next launch will rebuild it automatically. This is a good first step when troubleshooting any search or indexing issue.