diff --git a/GainStation13/code/mechanics/fatness.dm b/GainStation13/code/mechanics/fatness.dm
index 29370458..5ad4c6ed 100644
--- a/GainStation13/code/mechanics/fatness.dm
+++ b/GainStation13/code/mechanics/fatness.dm
@@ -52,6 +52,9 @@
else //If it's not being hidden
fatness = fatness_real //Make their current fatness their real fatness
+ if(client?.prefs?.weight_gain_extreme)
+ xwg_resize()
+
return TRUE
@@ -102,11 +105,21 @@
fatness_hidden = TRUE
fatness_over = hide_amount
fatness = fatness_over //To update a mob's fatness with the new amount to be shown immediately
+ if(client?.prefs?.weight_gain_extreme)
+ xwg_resize()
return TRUE
/mob/living/carbon/proc/fat_show() //If something that hides fatness is removed or expires, it'll call this method
fatness_hidden = FALSE
fatness = fatness_real //To update a mob's fatness with their real one immediately
+ if(client?.prefs?.weight_gain_extreme)
+ xwg_resize()
return TRUE
+
+/mob/living/carbon/proc/xwg_resize()
+ var/xwg_size = sqrt(fatness/FATNESS_LEVEL_BLOB)
+ xwg_size = min(xwg_size, RESIZE_MACRO)
+ xwg_size = max(xwg_size, custom_body_size*0.01)
+ resize(xwg_size)
diff --git a/GainStation13/code/modules/client/preferences/preferences.dm b/GainStation13/code/modules/client/preferences/preferences.dm
index f7f591be..f8166f8f 100644
--- a/GainStation13/code/modules/client/preferences/preferences.dm
+++ b/GainStation13/code/modules/client/preferences/preferences.dm
@@ -13,6 +13,8 @@
var/weight_gain_magic = FALSE
///Weight gain from viruses
var/weight_gain_viruses = FALSE
+ ///Extreme weight gain
+ var/weight_gain_extreme = FALSE
///Does the person wish to be involved with non-con weight gain events?
var/noncon_weight_gain = FALSE
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index 8702b594..0f509622 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -1059,6 +1059,7 @@ GLOBAL_LIST_EMPTY(preferences_datums)
dat += "Weight Gain - Weapons:[weight_gain_weapons == TRUE ? "Enabled" : "Disabled"]
"
dat += "Weight Gain - Magic:[weight_gain_magic == TRUE ? "Enabled" : "Disabled"]
"
dat += "Weight Gain - Viruses:[weight_gain_viruses == TRUE ? "Enabled" : "Disabled"]
"
+ dat += "Extreme Weight Gain:[weight_gain_extreme == TRUE ? "Enabled" : "Disabled"]
"
//Add the Hyper stuff below here
dat += "