A .tauric file is a protobuf message. These are the schema files it is written against — the same ones the editor compiles, read straight from the repository rather than copied, so this page cannot drift from what the code does.
Protobuf was chosen to keep files compact. A map is mostly repetition — thousands of tile references, thousands of points — and protobuf writes those as packed numbers against integer tags instead of spelling out a key for every one of them. Measured on the map this editor opens with, the protobuf file is about a quarter the size of the same map as Tiled JSON with its tileset beside it.
Being straight about the limit of that: over a connection that compresses, the gap all but disappears — JSON's repetition is exactly what a compressor eats, and the same two files gzip to within a few percent of each other. The saving is real on disk, in memory, and in not parsing text; it is not a bandwidth argument.
What it costs is readability — this is the one format here you cannot open in a text editor, which is a large part of why this page exists.
Two pages of the specification cover most of what a reader needs: the proto3 language guide for what the schema below means, and the encoding reference for the bytes themselves — the second is the one to read if you are writing a parser rather than generating one.
The schema is MIT licensed. Compile it, vendor it, ship a reader or a writer — no permission needed, and the licence travels inside the file you download. That covers the schema text, not the editor.
What we can't promise is that a fork of it still interoperates. Add a field, renumber one, widen a type, and you have a dialect that shares a package name — and because protobuf skips tags it doesn't recognise instead of complaining, the divergence shows up as quietly missing data rather than an error. Unmodified, this schema round- trips. If you need something it doesn't carry, ask and it gets a field number everyone agrees on.
Field numbers are append-only. A number that has been used is never reused or renumbered: readers skip tags they don't know, which is what lets an old file open in a new build. Each message below lists the next free number.
tauric.map.v1common.proto2 messagesCopyright (c) 2026 Gnarled Helix LLC. All rights reserved. Shared primitives for the Tauric native format.
map.proto19 messages21 internal fields not shownCopyright (c) 2026 Gnarled Helix LLC. All rights reserved. The Tauric native map format: the lossless serialization of a map document. A .tauric file is one MapFile message, encoded binary. Tileset definitions and packed tile placements live in tiles.proto; shared primitives in common.proto. Tiled's own file formats are never embedded — the feature set this editor uses is replicated as typed messages. Field numbers are append-only. The schema still gains fields between releases, so a reader should skip tags it does not recognize rather than treat them as an error.
tiles.proto7 messagesCopyright (c) 2026 Gnarled Helix LLC. All rights reserved. Tile-related messages for the Tauric native format: typed tileset definitions replicating the subset of Tiled's .tsj feature set Tauric uses (no raw Tiled JSON embeds), and a compact chunked encoding for tile placements (no per-cell tileset names).
The collaboration protocol — how peers and the relay talk to each other — is a separate schema and is not published here.