<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.teamspec.net/index.php?action=history&amp;feed=atom&amp;title=Level_Editor%2FWorkflows%2FExporting_and_publishing</id>
	<title>Level Editor/Workflows/Exporting and publishing - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.teamspec.net/index.php?action=history&amp;feed=atom&amp;title=Level_Editor%2FWorkflows%2FExporting_and_publishing"/>
	<link rel="alternate" type="text/html" href="https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Exporting_and_publishing&amp;action=history"/>
	<updated>2026-10-28T19:40:05Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.11</generator>
	<entry>
		<id>https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Exporting_and_publishing&amp;diff=502&amp;oldid=prev</id>
		<title>TeamSpecBot: American spelling</title>
		<link rel="alternate" type="text/html" href="https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Exporting_and_publishing&amp;diff=502&amp;oldid=prev"/>
		<updated>2026-10-20T04:46:07Z</updated>

		<summary type="html">&lt;p&gt;American spelling&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 04:46, 20 October 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l7&quot;&gt;Line 7:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 7:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# When it finishes it says &amp;#039;&amp;#039;Export complete&amp;#039;&amp;#039; and where the file is. Click &amp;#039;&amp;#039;&amp;#039;OK&amp;#039;&amp;#039;&amp;#039;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;# When it finishes it says &amp;#039;&amp;#039;Export complete&amp;#039;&amp;#039; and where the file is. Click &amp;#039;&amp;#039;&amp;#039;OK&amp;#039;&amp;#039;&amp;#039;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;−&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #ffe49c; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&#039;&#039;Hold ESC to cancel.&#039;&#039; The editor does not respond while it bakes, on purpose, so the level cannot change mid-bake. A &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;cancelled &lt;/del&gt;export says &#039;&#039;Export &lt;del style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;cancelled&lt;/del&gt;&#039;&#039; and &#039;&#039;No file was written&#039;&#039;.&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&#039;&#039;Hold ESC to cancel.&#039;&#039; The editor does not respond while it bakes, on purpose, so the level cannot change mid-bake. A &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;canceled &lt;/ins&gt;export says &#039;&#039;Export &lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;canceled&lt;/ins&gt;&#039;&#039; and &#039;&#039;No file was written&#039;&#039;.&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;br&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== What goes into the file ===&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;=== What goes into the file ===&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key wiki:diff:1.41:old-96:rev-502:php=table --&gt;
&lt;/table&gt;</summary>
		<author><name>TeamSpecBot</name></author>
	</entry>
	<entry>
		<id>https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Exporting_and_publishing&amp;diff=96&amp;oldid=prev</id>
		<title>TeamSpecBot: Level Editor: exporting and publishing workflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Exporting_and_publishing&amp;diff=96&amp;oldid=prev"/>
		<updated>2026-10-20T03:47:48Z</updated>

		<summary type="html">&lt;p&gt;Level Editor: exporting and publishing workflow&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;When a map is ready to share, you &amp;#039;&amp;#039;&amp;#039;export&amp;#039;&amp;#039;&amp;#039; it to a single &amp;lt;code&amp;gt;.tsmap&amp;lt;/code&amp;gt; file. TeamSpec plays that file, and you can publish it on the Steam Workshop.&lt;br /&gt;
&lt;br /&gt;
== Exporting ==&lt;br /&gt;
# Save the map.&lt;br /&gt;
# Choose &amp;#039;&amp;#039;&amp;#039;File &amp;gt; Export to TeamSpec (.tsmap)...&amp;#039;&amp;#039;&amp;#039; and pick where to save the file.&lt;br /&gt;
# The &amp;#039;&amp;#039;&amp;#039;Exporting Map&amp;#039;&amp;#039;&amp;#039; window shows each stage and a progress bar. With &amp;#039;&amp;#039;&amp;#039;Bake lightmaps on export&amp;#039;&amp;#039;&amp;#039; on (the default; see [[Level Editor/Map Config#LightmapGI|Map Config]]) the light is baked as part of the export, which can take a while on a big map.&lt;br /&gt;
# When it finishes it says &amp;#039;&amp;#039;Export complete&amp;#039;&amp;#039; and where the file is. Click &amp;#039;&amp;#039;&amp;#039;OK&amp;#039;&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;Hold ESC to cancel.&amp;#039;&amp;#039; The editor does not respond while it bakes, on purpose, so the level cannot change mid-bake. A cancelled export says &amp;#039;&amp;#039;Export cancelled&amp;#039;&amp;#039; and &amp;#039;&amp;#039;No file was written&amp;#039;&amp;#039;.&lt;br /&gt;
&lt;br /&gt;
=== What goes into the file ===&lt;br /&gt;
* The level: brushes, props, terrain, water, decals, lights and every gameplay entity.&lt;br /&gt;
* The baked lightmap and the navigation for bots (nav regions with &amp;#039;&amp;#039;&amp;#039;Bake On Export&amp;#039;&amp;#039;&amp;#039; are baked again).&lt;br /&gt;
* The gamemode scripts. An empty script pane is replaced by the starter script.&lt;br /&gt;
* Your own imported models, materials, textures and sounds. Built-in assets are part of the game and are not copied.&lt;br /&gt;
* The 3D skybox, full size, as scenery (the miniature is left out).&lt;br /&gt;
&lt;br /&gt;
Hiding things in the editor ({{Key|H}}, the cordon) does not change the export: hidden things are exported as usual. Player figures and the other editor-only helpers are never exported.&lt;br /&gt;
&lt;br /&gt;
=== The export log ===&lt;br /&gt;
While exporting, the editor writes what it did to its log, including warnings about things it could not carry or had to change. The common ones, and what to do, are on [[Level Editor/Troubleshooting#Export warnings|Troubleshooting]].&lt;br /&gt;
&lt;br /&gt;
== Playing the exported map ==&lt;br /&gt;
In TeamSpec, open &amp;#039;&amp;#039;&amp;#039;Host / Join Game&amp;#039;&amp;#039;&amp;#039; and click &amp;#039;&amp;#039;&amp;#039;Import Map&amp;#039;&amp;#039;&amp;#039;, then choose the &amp;lt;code&amp;gt;.tsmap&amp;lt;/code&amp;gt; file.&lt;br /&gt;
&lt;br /&gt;
== Publishing on the Steam Workshop ==&lt;br /&gt;
In TeamSpec&amp;#039;s main menu, open &amp;#039;&amp;#039;&amp;#039;Workshop&amp;#039;&amp;#039;&amp;#039;. The &amp;#039;&amp;#039;&amp;#039;Steam Workshop&amp;#039;&amp;#039;&amp;#039; window has two tabs.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Publish&amp;#039;&amp;#039;&amp;#039;&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Field !! What to enter&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Map file (.tsmap)&amp;#039;&amp;#039;&amp;#039; || The exported file; &amp;#039;&amp;#039;&amp;#039;Browse...&amp;#039;&amp;#039;&amp;#039; to find it.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Title&amp;#039;&amp;#039;&amp;#039; || The map&amp;#039;s name on the Workshop.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Description&amp;#039;&amp;#039;&amp;#039; || What the map is and how it plays.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Tags (comma-separated)&amp;#039;&amp;#039;&amp;#039; || For example &amp;#039;&amp;#039;ctf, indoor, small&amp;#039;&amp;#039;.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Visibility&amp;#039;&amp;#039;&amp;#039; || Public, Friends-only, Private or Unlisted.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Preview PNG (optional)&amp;#039;&amp;#039;&amp;#039; || A picture for the Workshop page. Steam requires 1 MB or less.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Existing file id (update)&amp;#039;&amp;#039;&amp;#039; || To update a map you published before, its Workshop id. Leave it blank for a new upload.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Change note&amp;#039;&amp;#039;&amp;#039; || What changed, for an update (&amp;#039;&amp;#039;Initial upload&amp;#039;&amp;#039; for a new one).&lt;br /&gt;
|}&lt;br /&gt;
&amp;#039;&amp;#039;Pick a .tsmap and test it before publishing.&amp;#039;&amp;#039; &amp;#039;&amp;#039;&amp;#039;Test in Game&amp;#039;&amp;#039;&amp;#039; plays the file; &amp;#039;&amp;#039;&amp;#039;Publish to Workshop&amp;#039;&amp;#039;&amp;#039; uploads it.&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;My Submissions&amp;#039;&amp;#039;&amp;#039; lists what you have published: click &amp;#039;&amp;#039;&amp;#039;Refresh&amp;#039;&amp;#039;&amp;#039; to load it.&lt;br /&gt;
&lt;br /&gt;
== Other exports ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;File &amp;gt; Export as GLTF...&amp;#039;&amp;#039;&amp;#039; writes the level&amp;#039;s geometry as a &amp;lt;code&amp;gt;.gltf&amp;lt;/code&amp;gt; file for other 3D programs. It is not a playable map.&lt;br /&gt;
&lt;br /&gt;
== Related pages ==&lt;br /&gt;
* [[Level Editor/Workflows/Playtesting|Playtesting]]&lt;br /&gt;
* [[Level Editor/Workflows/Lighting and lightmaps|Lighting and lightmaps]]&lt;br /&gt;
* [[Level Editor/Troubleshooting|Troubleshooting]]&lt;br /&gt;
&lt;br /&gt;
{{Level Editor nav}}&lt;br /&gt;
&lt;br /&gt;
[[Category:Level Editor]]&lt;br /&gt;
[[Category:Level Editor workflows]]&lt;/div&gt;</summary>
		<author><name>TeamSpecBot</name></author>
	</entry>
</feed>