diff --git a/Build/Configurations/Includes/ZDoom_linedefs.cfg b/Build/Configurations/Includes/ZDoom_linedefs.cfg
index f07724d84e29c58fb117712fa267a9e4ffdf21a0..49484b36cd3c71d447f98257dc8d8363bb9d332d 100644
--- a/Build/Configurations/Includes/ZDoom_linedefs.cfg
+++ b/Build/Configurations/Includes/ZDoom_linedefs.cfg
@@ -9,44 +9,44 @@ doom
 	{
 		title = "Script";
 		
-		270	// FraggleScript Execute
+		270
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			prefix = "WR";
 		}
 		273
 		{
-			title = "FraggleScript Execute one-way (GZDoom only)";
+			title = "FraggleScript Execute one-way";
 			prefix = "WR";
 		}
 		274
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			prefix = "W1";
 		}
 		275
 		{
-			title = "FraggleScript Execute one-way (GZDoom only)";
+			title = "FraggleScript Execute one-way";
 			prefix = "W1";
 		}
 		276
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			prefix = "SR";
 		}
 		277
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			prefix = "S1";
 		}
 		278
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			prefix = "GR";
 		}
 		279
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			prefix = "G1";
 		}
 	}
@@ -2691,7 +2691,7 @@ zdoom
 		}
 		158
 		{
-			title = "FraggleScript Execute (GZDoom only)";
+			title = "FraggleScript Execute";
 			id = "FS_Execute";
 			
 			arg0
diff --git a/Source/Core/Controls/DebugConsole.cs b/Source/Core/Controls/DebugConsole.cs
index 4b4d02bc47d3b811e0ab80f7aa9e243614faa706..ca81ee1d341770effd5ccb70fbbfd47d2953e4bb 100644
--- a/Source/Core/Controls/DebugConsole.cs
+++ b/Source/Core/Controls/DebugConsole.cs
@@ -3,6 +3,7 @@
 using System;
 using System.Collections.Generic;
 using System.Drawing;
+using System.Globalization;
 using System.Windows.Forms;
 
 #endregion
@@ -140,21 +141,16 @@ namespace CodeImp.DoomBuilder
 
 		public static void StopTimer(string message) 
 		{
-			if (starttime == -1) 
-			{
-				Write(DebugMessageType.WARNING, "Call General.Console.StartTimer before General.Console.StopTimer!");
-			}
-			else 
-			{
-				long endtime = SlimDX.Configuration.Timer.ElapsedMilliseconds;
-				
-				if (message.Contains("%"))
-					message = message.Replace("&", (endtime - starttime) + " ms.");
-				else 
-					message = message.TrimEnd() + " " + (endtime - starttime) + " ms.";
-
-				Write(DebugMessageType.SPECIAL, message);
-			}
+			if(starttime == -1) throw new InvalidOperationException("DebugConsole.StartTimer() must be called before DebugConsole.StopTimer()!");
+
+			long duration = SlimDX.Configuration.Timer.ElapsedMilliseconds - starttime;
+			
+			if (message.Contains("%"))
+				message = message.Replace("%", duration.ToString(CultureInfo.InvariantCulture));
+			else
+				message = message.TrimEnd() + " " + duration + " ms.";
+
+			WriteLine(DebugMessageType.SPECIAL, message);
 
 			starttime = -1;
 		}
diff --git a/Source/Core/GZBuilder/Data/LinksCollector.cs b/Source/Core/GZBuilder/Data/LinksCollector.cs
index e62b1a8936f508654604ab43663bffa993b3587a..68975788f9f9ecc5ad431864604917f25f825e9c 100644
--- a/Source/Core/GZBuilder/Data/LinksCollector.cs
+++ b/Source/Core/GZBuilder/Data/LinksCollector.cs
@@ -113,22 +113,6 @@ namespace CodeImp.DoomBuilder.GZBuilder.Data
 						if(!result.PolyobjectStartSpots.ContainsKey(t.AngleDoom)) result.PolyobjectStartSpots[t.AngleDoom] = new List<Thing>();
 						result.PolyobjectStartSpots[t.AngleDoom].Add(t);
 						break;
-
-					case "movingcamera":
-						if(t.Args[0] != 0 || t.Args[1] != 0) result.Cameras.Add(t);
-						break;
-
-					case "pathfollower":
-						if(t.Args[0] != 0 || t.Args[1] != 0) result.PathFollowers.Add(t);
-						break;
-
-					case "actormover":
-						if((t.Args[0] != 0 || t.Args[1] != 0) && t.Args[3] != 0)
-						{
-							if(!result.ActorMovers.ContainsKey(t.Args[3])) result.ActorMovers.Add(t.Args[3], new List<Thing>());
-							result.ActorMovers[t.Args[3]].Add(t);
-						}
-						break;
 				}
 
 				// Process Thing_SetGoal action
@@ -142,7 +126,7 @@ namespace CodeImp.DoomBuilder.GZBuilder.Data
 				}
 			}
 
-			// We may need all InterpolationPoints...
+			// We may need all of these actors...
 			foreach (Thing t in General.Map.Map.Things)
 			{
 				ThingTypeInfo info = General.Map.Data.GetThingInfo(t.Type);
@@ -152,6 +136,22 @@ namespace CodeImp.DoomBuilder.GZBuilder.Data
 						if(!result.InterpolationPoints.ContainsKey(t.Tag)) result.InterpolationPoints.Add(t.Tag, new List<PathNode>());
 						result.InterpolationPoints[t.Tag].Add(new PathNode(t, correctheight));
 						break;
+
+					case "movingcamera":
+						if(t.Args[0] != 0 || t.Args[1] != 0) result.Cameras.Add(t);
+						break;
+
+					case "pathfollower":
+						if(t.Args[0] != 0 || t.Args[1] != 0) result.PathFollowers.Add(t);
+						break;
+
+					case "actormover":
+						if((t.Args[0] != 0 || t.Args[1] != 0) && t.Args[3] != 0)
+						{
+							if(!result.ActorMovers.ContainsKey(t.Args[3])) result.ActorMovers.Add(t.Args[3], new List<Thing>());
+							result.ActorMovers[t.Args[3]].Add(t);
+						}
+						break;
 				}
 			}