<?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%2FPlaytesting</id>
	<title>Level Editor/Workflows/Playtesting - 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%2FPlaytesting"/>
	<link rel="alternate" type="text/html" href="https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Playtesting&amp;action=history"/>
	<updated>2026-10-29T00:02:58Z</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/Playtesting&amp;diff=102&amp;oldid=prev</id>
		<title>TeamSpecBot: Level Editor: playtesting workflow</title>
		<link rel="alternate" type="text/html" href="https://wiki.teamspec.net/index.php?title=Level_Editor/Workflows/Playtesting&amp;diff=102&amp;oldid=prev"/>
		<updated>2026-10-20T03:47:53Z</updated>

		<summary type="html">&lt;p&gt;Level Editor: playtesting workflow&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;You can play your map in TeamSpec at any time without exporting it yourself. There are two ways: &amp;#039;&amp;#039;&amp;#039;Run&amp;#039;&amp;#039;&amp;#039;, which starts the game on a copy of the map, and &amp;#039;&amp;#039;&amp;#039;Quick Playtest&amp;#039;&amp;#039;&amp;#039;, which keeps a game open that you can update from the editor as you work.&lt;br /&gt;
&lt;br /&gt;
{{Note|Both need &amp;#039;&amp;#039;&amp;#039;TeamSpec Executable Path&amp;#039;&amp;#039;&amp;#039; set in [[Level Editor/Settings|Settings]]. If it is missing, the editor opens Settings for you and the status line says &amp;#039;&amp;#039;Set the TeamSpec executable in Settings before launching.&amp;#039;&amp;#039;}}&lt;br /&gt;
&lt;br /&gt;
== Run ==&lt;br /&gt;
The &amp;#039;&amp;#039;&amp;#039;Run&amp;#039;&amp;#039;&amp;#039; menu in the top bar:&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Run&amp;#039;&amp;#039;&amp;#039; exports a temporary copy of the map, gamemode scripts included, and starts TeamSpec on it. The status line says &amp;#039;&amp;#039;Launching TeamSpec...&amp;#039;&amp;#039; and then &amp;#039;&amp;#039;TeamSpec launched&amp;#039;&amp;#039;.&lt;br /&gt;
* &amp;#039;&amp;#039;&amp;#039;Run (Console)&amp;#039;&amp;#039;&amp;#039; does the same with the console version of TeamSpec, when there is one beside &amp;lt;code&amp;gt;TeamSpec.exe&amp;lt;/code&amp;gt;, so a window shows everything the game prints. Use it to read your script&amp;#039;s &amp;lt;code&amp;gt;api.log&amp;lt;/code&amp;gt; lines and errors.&lt;br /&gt;
&lt;br /&gt;
Each Run starts a fresh game. Close it when you are done.&lt;br /&gt;
&lt;br /&gt;
== Quick Playtest ==&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Quick Playtest / Apply&amp;#039;&amp;#039;&amp;#039; starts a local playtest on your current map. Once it is running, clicking it again sends your changes to the game that is already open, so you do not have to restart after every edit. A &amp;#039;&amp;#039;Preparing Playtest&amp;#039;&amp;#039; window shows progress while the map is sent.&lt;br /&gt;
&lt;br /&gt;
The list beside it chooses when changes are sent:&lt;br /&gt;
{| class=&amp;quot;wikitable&amp;quot;&lt;br /&gt;
! Mode !! Sends changes&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Manual&amp;#039;&amp;#039;&amp;#039; (default) || Only when you click Quick Playtest / Apply.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Selective live&amp;#039;&amp;#039;&amp;#039; || Supported visual edits are sent automatically, a moment after you make them, and update in place.&lt;br /&gt;
|-&lt;br /&gt;
| &amp;#039;&amp;#039;&amp;#039;Full live&amp;#039;&amp;#039;&amp;#039; || Structural edits are sent too. Static geometry is updated in place when that is safe; changes that need it (gameplay entities, scripts) reset the round.&lt;br /&gt;
|}&lt;br /&gt;
&lt;br /&gt;
&amp;#039;&amp;#039;&amp;#039;Disconnect Playtest&amp;#039;&amp;#039;&amp;#039; stops the editor talking to the game and leaves the game open. To reconnect, start a new playtest.&lt;br /&gt;
&lt;br /&gt;
=== Status messages ===&lt;br /&gt;
The status line reports every step:&lt;br /&gt;
* &amp;#039;&amp;#039;Applying playtest revision N...&amp;#039;&amp;#039; then &amp;#039;&amp;#039;Playtest revision N applied.&amp;#039;&amp;#039; with a short note on what changed.&lt;br /&gt;
* &amp;#039;&amp;#039;A playtest revision is already being prepared or applied.&amp;#039;&amp;#039;: wait for the last one to finish.&lt;br /&gt;
* &amp;#039;&amp;#039;Playtest could not apply: ...&amp;#039;&amp;#039; with the reason. The game keeps the last version that worked. A script that steps outside the [[Level Editor/Scripting/Sandbox limits|sandbox]] is refused like this:&lt;br /&gt;
&amp;lt;pre&amp;gt;Playtest could not apply: Map validation failed: server.gd (server script): line 12: `OS` is not available to a server script; the current world is unchanged.&amp;lt;/pre&amp;gt;&lt;br /&gt;
* &amp;#039;&amp;#039;Playtest timed out. Check the game, then start a new playtest.&amp;#039;&amp;#039;&lt;br /&gt;
* &amp;#039;&amp;#039;Playtest disconnected. Start a new playtest to reconnect.&amp;#039;&amp;#039;&lt;br /&gt;
&lt;br /&gt;
== What to check ==&lt;br /&gt;
* Every team has spawn points, and there is a [[Level Editor/Entities/World Boundary|World Boundary]] under the map.&lt;br /&gt;
* Doorways, ceilings and jumps work at a player&amp;#039;s size.&lt;br /&gt;
* Zones fire, doors open, outputs reach their targets.&lt;br /&gt;
* Bots find their way (see [[Level Editor/Workflows/Bots and navigation|Bots and navigation]]).&lt;br /&gt;
* For gamemode scripts, see [[Level Editor/Scripting/Testing|Testing a mode]].&lt;br /&gt;
&lt;br /&gt;
== Related pages ==&lt;br /&gt;
* [[Level Editor/Scripting/Testing|Testing a mode]]&lt;br /&gt;
* [[Level Editor/Workflows/Exporting and publishing|Exporting and publishing]]&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>