diff --git a/extras/conf/SRB2-22.cfg b/extras/conf/SRB2-22.cfg
index dd5cdb46b2c2338fd1b2728f877ab903389054ad..41ad998891154f56fe850cdfe457a48189dd648f 100644
--- a/extras/conf/SRB2-22.cfg
+++ b/extras/conf/SRB2-22.cfg
@@ -4367,7 +4367,6 @@ thingtypes
 	{
 		color = 14; // Yellow
 		title = "Rings and Weapon Panels";
-		width = 24;
 		height = 24;
 		flags8height = 24;
 		flags8text = "[8] Float";
@@ -4377,7 +4376,6 @@ thingtypes
 		{
 			title = "Ring";
 			sprite = "RINGA0";
-			width = 16;
 		}
 		301
 		{
@@ -4393,6 +4391,7 @@ thingtypes
 		{
 			title = "Infinity Ring";
 			sprite = "RNGIA0";
+			width = 24;
 		}
 		304
 		{
@@ -4418,43 +4417,53 @@ thingtypes
 		{
 			title = "CTF Team Ring (Red)";
 			sprite = "internal:TRNGA0R";
-			width = 16;
 		}
 		309
 		{
 			title = "CTF Team Ring (Blue)";
 			sprite = "internal:TRNGA0B";
-			width = 16;
 		}
 		330
 		{
 			title = "Bounce Ring Panel";
 			sprite = "PIKBA0";
+			width = 24;
+			height = 40;
 		}
 		331
 		{
 			title = "Rail Ring Panel";
 			sprite = "PIKRA0";
+			width = 24;
+			height = 40;
 		}
 		332
 		{
 			title = "Automatic Ring Panel";
 			sprite = "PIKAA0";
+			width = 24;
+			height = 40;
 		}
 		333
 		{
 			title = "Explosion Ring Panel";
 			sprite = "PIKEA0";
+			width = 24;
+			height = 40;
 		}
 		334
 		{
 			title = "Scatter Ring Panel";
 			sprite = "PIKSA0";
+			width = 24;
+			height = 40;
 		}
 		335
 		{
 			title = "Grenade Ring Panel";
 			sprite = "PIKGA0";
+			width = 24;
+			height = 40;
 		}
 	}
 
@@ -4463,7 +4472,7 @@ thingtypes
 		color = 10; // Light Green
 		title = "Other Collectibles";
 		width = 16;
-		height = 32;
+		height = 24;
 		sort = 1;
 		sprite = "CEMGA0";
 
@@ -4529,6 +4538,7 @@ thingtypes
 		{
 			title = "Emerald Hunt Location";
 			sprite = "SHRDA0";
+			height = 32;
 			flags8height = 24;
 			flags8text = "[8] Float";
 		}
diff --git a/extras/conf/udb/Includes/SRB222_things.cfg b/extras/conf/udb/Includes/SRB222_things.cfg
index df08e3ac50fb47c80b412da2966e10cc2cec5f79..9eb227974dfd0b33de593a7ced83b42fab7d6738 100644
--- a/extras/conf/udb/Includes/SRB222_things.cfg
+++ b/extras/conf/udb/Includes/SRB222_things.cfg
@@ -1185,7 +1185,7 @@ udmf
 	{
 		color = 14; // Yellow
 		title = "Rings and Weapon Panels";
-		width = 24;
+		width = 16;
 		height = 24;
 		sprite = "RINGA0";
 
@@ -1193,7 +1193,6 @@ udmf
 		{
 			title = "Ring";
 			sprite = "RINGA0";
-			width = 16;
 			arg0
 			{
 				title = "Float?";
@@ -1227,6 +1226,7 @@ udmf
 		{
 			title = "Infinity Ring";
 			sprite = "RNGIA0";
+			width = 24;
 			arg0
 			{
 				title = "Float?";
@@ -1282,7 +1282,6 @@ udmf
 		{
 			title = "CTF Team Ring (Red)";
 			sprite = "internal:TRNGA0R";
-			width = 16;
 			arg0
 			{
 				title = "Float?";
@@ -1294,7 +1293,6 @@ udmf
 		{
 			title = "CTF Team Ring (Blue)";
 			sprite = "internal:TRNGA0B";
-			width = 16;
 			arg0
 			{
 				title = "Float?";
@@ -1306,6 +1304,8 @@ udmf
 		{
 			title = "Bounce Ring Panel";
 			sprite = "PIKBA0";
+			width = 24;
+			height = 40;
 			arg0
 			{
 				title = "Float?";
@@ -1317,6 +1317,8 @@ udmf
 		{
 			title = "Rail Ring Panel";
 			sprite = "PIKRA0";
+			width = 24;
+			height = 40;
 			arg0
 			{
 				title = "Float?";
@@ -1328,6 +1330,8 @@ udmf
 		{
 			title = "Automatic Ring Panel";
 			sprite = "PIKAA0";
+			width = 24;
+			height = 40;
 			arg0
 			{
 				title = "Float?";
@@ -1339,6 +1343,8 @@ udmf
 		{
 			title = "Explosion Ring Panel";
 			sprite = "PIKEA0";
+			width = 24;
+			height = 40;
 			arg0
 			{
 				title = "Float?";
@@ -1350,6 +1356,8 @@ udmf
 		{
 			title = "Scatter Ring Panel";
 			sprite = "PIKSA0";
+			width = 24;
+			height = 40;
 			arg0
 			{
 				title = "Float?";
@@ -1361,6 +1369,8 @@ udmf
 		{
 			title = "Grenade Ring Panel";
 			sprite = "PIKGA0";
+			width = 24;
+			height = 40;
 			arg0
 			{
 				title = "Float?";
@@ -1375,7 +1385,7 @@ udmf
 		color = 10; // Light_Green
 		title = "Other Collectibles";
 		width = 16;
-		height = 32;
+		height = 24;
 		sort = 1;
 		sprite = "CEMGA0";
 
@@ -1445,6 +1455,7 @@ udmf
 		{
 			title = "Emerald Hunt Location";
 			sprite = "SHRDA0";
+			height = 32;
 			arg0
 			{
 				title = "Float?";
diff --git a/src/info.c b/src/info.c
index abcf4b49998e827c42d8abb6f80b494bec8eb68c..eab6ac82a418c64d470a7f43f14176bf30774eac 100644
--- a/src/info.c
+++ b/src/info.c
@@ -7194,7 +7194,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD1,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -7220,7 +7220,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD2,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -7246,7 +7246,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD3,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -7272,7 +7272,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD4,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -7298,7 +7298,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD5,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -7324,7 +7324,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD6,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -7350,7 +7350,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_cgot,       // deathsound
 		EMERALD7,       // speed
 		16*FRACUNIT,    // radius
-		32*FRACUNIT,    // height
+		24*FRACUNIT,    // height
 		0,              // display offset
 		16,             // mass
 		0,              // damage
@@ -18344,7 +18344,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		S_NULL,         // xdeathstate
 		sfx_itemup,     // deathsound
 		60*FRACUNIT,    // speed
-		24*FRACUNIT,    // radius
+		16*FRACUNIT,    // radius
 		24*FRACUNIT,    // height
 		0,              // display offset
 		pw_bouncering,  // mass
@@ -18371,7 +18371,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		S_NULL,         // xdeathstate
 		sfx_itemup,     // deathsound
 		60*FRACUNIT,    // speed
-		24*FRACUNIT,    // radius
+		16*FRACUNIT,    // radius
 		24*FRACUNIT,    // height
 		0,              // display offset
 		pw_railring,    // mass
@@ -18425,7 +18425,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		S_NULL,         // xdeathstate
 		sfx_itemup,     // deathsound
 		60*FRACUNIT,    // speed
-		24*FRACUNIT,    // radius
+		16*FRACUNIT,    // radius
 		24*FRACUNIT,    // height
 		0,              // display offset
 		pw_automaticring, // mass
@@ -18452,7 +18452,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		S_NULL,         // xdeathstate
 		sfx_itemup,     // deathsound
 		60*FRACUNIT,    // speed
-		24*FRACUNIT,    // radius
+		16*FRACUNIT,    // radius
 		24*FRACUNIT,    // height
 		0,              // display offset
 		pw_explosionring, // mass
@@ -18479,7 +18479,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		S_NULL,         // xdeathstate
 		sfx_itemup,     // deathsound
 		60*FRACUNIT,    // speed
-		24*FRACUNIT,    // radius
+		16*FRACUNIT,    // radius
 		24*FRACUNIT,    // height
 		0,              // display offset
 		pw_scatterring, // mass
@@ -18506,7 +18506,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		S_NULL,         // xdeathstate
 		sfx_itemup,     // deathsound
 		60*FRACUNIT,    // speed
-		24*FRACUNIT,    // radius
+		16*FRACUNIT,    // radius
 		24*FRACUNIT,    // height
 		0,              // display offset
 		pw_grenadering, // mass
@@ -18535,7 +18535,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_ncitem,     // deathsound
 		60*FRACUNIT,    // speed
 		24*FRACUNIT,    // radius
-		24*FRACUNIT,    // height
+		40*FRACUNIT,    // height
 		0,              // display offset
 		pw_bouncering,  // mass
 		2*TICRATE,      // damage
@@ -18562,7 +18562,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_ncitem,     // deathsound
 		60*FRACUNIT,    // speed
 		24*FRACUNIT,    // radius
-		24*FRACUNIT,    // height
+		40*FRACUNIT,    // height
 		0,              // display offset
 		pw_railring,    // mass
 		2*TICRATE,      // damage
@@ -18589,7 +18589,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_ncitem,     // deathsound
 		60*FRACUNIT,    // speed
 		24*FRACUNIT,    // radius
-		24*FRACUNIT,    // height
+		40*FRACUNIT,    // height
 		0,              // display offset
 		pw_automaticring, // mass
 		2*TICRATE,      // damage
@@ -18616,7 +18616,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_ncitem,     // deathsound
 		60*FRACUNIT,    // speed
 		24*FRACUNIT,    // radius
-		24*FRACUNIT,    // height
+		40*FRACUNIT,    // height
 		0,              // display offset
 		pw_explosionring, // mass
 		2*TICRATE,      // damage
@@ -18643,7 +18643,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_ncitem,     // deathsound
 		60*FRACUNIT,    // speed
 		24*FRACUNIT,    // radius
-		24*FRACUNIT,    // height
+		40*FRACUNIT,    // height
 		0,              // display offset
 		pw_scatterring, // mass
 		2*TICRATE,      // damage
@@ -18670,7 +18670,7 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
 		sfx_ncitem,     // deathsound
 		60*FRACUNIT,    // speed
 		24*FRACUNIT,    // radius
-		24*FRACUNIT,    // height
+		40*FRACUNIT,    // height
 		0,              // display offset
 		pw_grenadering, // mass
 		2*TICRATE,      // damage
diff --git a/src/p_mobj.c b/src/p_mobj.c
index e89298fddfaa92a07822d3835f4eaad62d736910..a2f7a8c7e06ee2d8470d2ed4fde9fdd717418bf7 100644
--- a/src/p_mobj.c
+++ b/src/p_mobj.c
@@ -10564,6 +10564,29 @@ static fixed_t P_DefaultMobjShadowScale (mobj_t *thing)
 		case MT_REDFLAG:
 		case MT_BLUEFLAG:
 
+		case MT_BOUNCERING:
+		case MT_AUTOMATICRING:
+		case MT_INFINITYRING:
+		case MT_RAILRING:
+		case MT_EXPLOSIONRING:
+		case MT_SCATTERRING:
+		case MT_GRENADERING:
+		
+		case MT_BOUNCEPICKUP:
+		case MT_RAILPICKUP:
+		case MT_AUTOPICKUP:
+		case MT_EXPLODEPICKUP:
+		case MT_SCATTERPICKUP:
+		case MT_GRENADEPICKUP:
+		
+		case MT_REDRING:
+		case MT_THROWNBOUNCE:
+		case MT_THROWNINFINITY:
+		case MT_THROWNAUTOMATIC:
+		case MT_THROWNSCATTER:
+		case MT_THROWNEXPLOSION:
+		case MT_THROWNGRENADE:
+
 		case MT_EMBLEM:
 
 		case MT_TOKEN: