diff --git a/extras/conf/udb/Includes/SRB222_linedefs.cfg b/extras/conf/udb/Includes/SRB222_linedefs.cfg
index 8c093052fab3f000ea92e11ef7f1ef4f8c27eaab..87ef6db3382d77424a4119f1d308325b5b2bc3e1 100644
--- a/extras/conf/udb/Includes/SRB222_linedefs.cfg
+++ b/extras/conf/udb/Includes/SRB222_linedefs.cfg
@@ -1991,6 +1991,23 @@ udmf
 				type = 2;
 			}
 		}
+
+		263
+		{
+			title = "Add Laser Thinker";
+			prefix = "(263)";
+			arg0
+			{
+				title = "Control linedef tag";
+				type = 15;
+			}
+			arg1
+			{
+				title = "Damage bosses?";
+				type = 11;
+				enum = "yesno";
+			}
+		}
 	}
 
 	linedefexecmisc
diff --git a/src/p_spec.c b/src/p_spec.c
index a207b0fad4e45c1bfd14ed8202be096ba4871e21..e5e50d73ef5ff99f4e4f516bb3a34c81d78994c0 100644
--- a/src/p_spec.c
+++ b/src/p_spec.c
@@ -6999,6 +6999,19 @@ void P_SpawnSpecials(boolean fromnetsave)
 				}
 				break;
 
+			case 263: // Add laser thinker to FOF
+				if (udmf)
+				{
+					for (l = -1; (l = P_FindLineFromTag(lines[i].args[0], l)) >= 0 ;)
+					{
+						if (lines[l].special < 100 || lines[l].special >= 300)
+							continue;
+
+						P_AddLaserThinker(lines[l].args[0], lines + l, !!(lines[i].args[1]));
+					}
+				}
+				break;
+
 			case 300: // Linedef executor (combines with sector special 974/975) and commands
 			case 302:
 			case 303: