diff --git a/extras/conf/udb/Includes/SRB222_linedefs.cfg b/extras/conf/udb/Includes/SRB222_linedefs.cfg
index 44da4134b646aea7c1b7ef278b835ffd7f27737f..b88d97aef6d9202c034a9f6cbb8e89db4191638f 100644
--- a/extras/conf/udb/Includes/SRB222_linedefs.cfg
+++ b/extras/conf/udb/Includes/SRB222_linedefs.cfg
@@ -1822,21 +1822,10 @@ udmf
 				type = 13;
 			}
 			arg1
-			{
-				title = "Alpha";
-				default = 255;
-			}
-			arg2
-			{
-				title = "Cut cyan flat pixels?";
-				type = 11;
-				enum = "noyes";
-			}
-			arg3
 			{
 				title = "Bobbing distance";
 			}
-			arg4
+			arg2
 			{
 				title = "Flags";
 				type = 12;
@@ -1847,12 +1836,6 @@ udmf
 					4 = "Dynamic";
 				}
 			}
-			arg5
-			{
-				title = "Tangibility";
-				type = 12;
-				enum = "tangibility";
-			}
 		}
 
 		160
@@ -1864,23 +1847,6 @@ udmf
 				title = "Target sector tag";
 				type = 13;
 			}
-			arg1
-			{
-				title = "Alpha";
-				default = 255;
-			}
-			arg2
-			{
-				title = "Cut cyan flat pixels?";
-				type = 11;
-				enum = "noyes";
-			}
-			arg3
-			{
-				title = "Tangibility";
-				type = 12;
-				enum = "tangibility";
-			}
 		}
 
 		170
diff --git a/src/p_setup.c b/src/p_setup.c
index c2df65397c0164d77541e3ffaf3a6409e2c210c8..5a2b7e580d00803753d79c5fcdedd47a69663e8c 100644
--- a/src/p_setup.c
+++ b/src/p_setup.c
@@ -3142,37 +3142,20 @@ static void P_ConvertBinaryMap(void)
 		case 152: //FOF: Reverse air bobbing (adjustable)
 		case 153: //FOF: Dynamically sinking platform
 			lines[i].args[0] = lines[i].tag;
-			lines[i].args[1] = 255;
-			lines[i].args[2] = !!(lines[i].flags & ML_EFFECT6);
-			lines[i].args[3] = (lines[i].special == 150) ? 16 : (P_AproxDistance(lines[i].dx, lines[i].dy) >> FRACBITS);
+			lines[i].args[1] = (lines[i].special == 150) ? 16 : (P_AproxDistance(lines[i].dx, lines[i].dy) >> FRACBITS);
 
 			//Flags
 			if (lines[i].special == 152)
-				lines[i].args[4] |= TMFB_REVERSE;
+				lines[i].args[2] |= TMFB_REVERSE;
 			if (lines[i].flags & ML_NOCLIMB)
-				lines[i].args[4] |= TMFB_SPINDASH;
+				lines[i].args[2] |= TMFB_SPINDASH;
 			if (lines[i].special == 153)
-				lines[i].args[4] |= TMFB_DYNAMIC;
-
-			//Tangibility
-			if (lines[i].flags & ML_EFFECT1)
-				lines[i].args[5] |= TMFT_DONTBLOCKOTHERS;
-			if (lines[i].flags & ML_EFFECT2)
-				lines[i].args[5] |= TMFT_DONTBLOCKPLAYER;
+				lines[i].args[2] |= TMFB_DYNAMIC;
 
 			lines[i].special = 150;
 			break;
 		case 160: //FOF: Water bobbing
 			lines[i].args[0] = lines[i].tag;
-			lines[i].args[1] = 255;
-			lines[i].args[2] = !!(lines[i].flags & ML_EFFECT6);
-
-			//Tangibility
-			if (lines[i].flags & ML_EFFECT1)
-				lines[i].args[3] |= TMFT_DONTBLOCKOTHERS;
-			if (lines[i].flags & ML_EFFECT2)
-				lines[i].args[3] |= TMFT_DONTBLOCKPLAYER;
-
 			break;
 		case 170: //FOF: Crumbling, respawn
 		case 171: //FOF: Crumbling, no respawn
diff --git a/src/p_spec.c b/src/p_spec.c
index 1c0a4ce9d8d9777d2c0d42a9ebce6b55a1378c21..2998478d57b056857595206f8782a408c9fc3843 100644
--- a/src/p_spec.c
+++ b/src/p_spec.c
@@ -6667,57 +6667,12 @@ void P_SpawnSpecials(boolean fromnetsave)
 				break;
 
 			case 150: // FOF (Air bobbing)
-				ffloorflags = FF_EXISTS|FF_SOLID|FF_RENDERALL;
-
-				if (lines[i].args[2])
-					ffloorflags |= FF_SPLAT;
-
-				//Tangibility settings
-				if (lines[i].args[5] & TMFT_INTANGIBLETOP)
-					ffloorflags |= FF_REVERSEPLATFORM;
-				if (lines[i].args[5] & TMFT_INTANGIBLEBOTTOM)
-					ffloorflags |= FF_PLATFORM;
-				if (lines[i].args[5] & TMFT_DONTBLOCKPLAYER)
-					ffloorflags &= ~FF_BLOCKPLAYER;
-				if (lines[i].args[5] & TMFT_DONTBLOCKOTHERS)
-					ffloorflags &= ~FF_BLOCKOTHERS;
-
-				//If player can enter it, cut inner walls
-				if (lines[i].args[5] & TMFT_VISIBLEFROMINSIDE)
-					ffloorflags |= FF_CUTEXTRA|FF_EXTRA;
-				else
-					ffloorflags |= FF_CUTLEVEL;
-
-				P_AddFakeFloorsByLine(i, lines[i].args[1], ffloorflags, secthinkers);
-				P_AddAirbob(lines[i].frontsector, lines[i].args[0], lines[i].args[3] << FRACBITS, !!(lines[i].args[4] & TMFB_REVERSE), !!(lines[i].args[4] & TMFB_SPINDASH), !!(lines[i].args[4] & TMFB_DYNAMIC));
+				P_AddFakeFloorsByLine(i, 0xff, FF_EXISTS|FF_SOLID|FF_RENDERALL, secthinkers);
+				P_AddAirbob(lines[i].frontsector, lines[i].args[0], lines[i].args[1] << FRACBITS, !!(lines[i].args[2] & TMFB_REVERSE), !!(lines[i].args[2] & TMFB_SPINDASH), !!(lines[i].args[2] & TMFB_DYNAMIC));
 				break;
 
 			case 160: // FOF (Water bobbing)
-				ffloorflags = FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_FLOATBOB;
-
-				if (lines[i].args[2])
-					ffloorflags |= FF_SPLAT;
-
-				//Tangibility settings
-				if (lines[i].args[3] & TMFT_INTANGIBLETOP)
-					ffloorflags |= FF_REVERSEPLATFORM;
-				if (lines[i].args[3] & TMFT_INTANGIBLEBOTTOM)
-					ffloorflags |= FF_PLATFORM;
-				if (lines[i].args[3] & TMFT_DONTBLOCKPLAYER)
-					ffloorflags &= ~FF_BLOCKPLAYER;
-				if (lines[i].args[3] & TMFT_DONTBLOCKOTHERS)
-					ffloorflags &= ~FF_BLOCKOTHERS;
-
-				//If player can enter it, render insides
-				if (lines[i].args[3] & TMFT_VISIBLEFROMINSIDE)
-				{
-					if (ffloorflags & FF_RENDERPLANES)
-						ffloorflags |= FF_BOTHPLANES;
-					if (ffloorflags & FF_RENDERSIDES)
-						ffloorflags |= FF_ALLSIDES;
-				}
-
-				P_AddFakeFloorsByLine(i, lines[i].args[1], ffloorflags, secthinkers);
+				P_AddFakeFloorsByLine(i, 0xff, FF_EXISTS|FF_SOLID|FF_RENDERALL|FF_FLOATBOB, secthinkers);
 				break;
 
 			case 170: // FOF (Crumbling)