diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm
index 34b388833a5..a5e48acbb90 100644
--- a/code/_helpers/global_lists_vr.dm
+++ b/code/_helpers/global_lists_vr.dm
@@ -753,6 +753,7 @@ var/global/list/xenobio_gold_mobs_safe = list(
/mob/living/simple_mob/vore/bee,
/mob/living/simple_mob/vore/fennec,
/mob/living/simple_mob/vore/fennix,
+ /mob/living/simple_mob/vore/seagull,
/mob/living/simple_mob/vore/hippo,
/mob/living/simple_mob/vore/horse,
/mob/living/simple_mob/vore/jelly,
diff --git a/code/modules/mob/living/simple_mob/simple_mob_vr.dm b/code/modules/mob/living/simple_mob/simple_mob_vr.dm
index e72e7aa1608..f9785486d2d 100644
--- a/code/modules/mob/living/simple_mob/simple_mob_vr.dm
+++ b/code/modules/mob/living/simple_mob/simple_mob_vr.dm
@@ -43,6 +43,7 @@
var/vore_fullness = 0 // How "full" the belly is (controls icons)
var/vore_icons = 0 // Bitfield for which fields we have vore icons for.
var/vore_eyes = FALSE // For mobs with fullness specific eye overlays.
+ var/belly_size_multiplier = 1
var/life_disabled = 0 // For performance reasons
var/mount_offset_x = 5 // Horizontal riding offset.
@@ -73,6 +74,7 @@
for(var/mob/living/M in B)
new_fullness += M.size_multiplier
new_fullness = new_fullness / size_multiplier //Divided by pred's size so a macro mob won't get macro belly from a regular prey.
+ new_fullness = new_fullness * belly_size_multiplier // Some mobs are small even at 100% size. Let's account for that.
new_fullness = round(new_fullness, 1) // Because intervals of 0.25 are going to make sprite artists cry.
vore_fullness = min(vore_capacity, new_fullness)
diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm
index ab56b07622f..82bbd33d49a 100644
--- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm
+++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm
@@ -77,8 +77,9 @@
. = ..()
if(!.)
return
- if(vore_fullness == 0 && movement_cooldown == 50)
+ if(vore_fullness == 0 && movement_cooldown == 10)
movement_cooldown = initial(movement_cooldown)
+
/mob/living/simple_mob/vore/alienanimals/dustjumper/perform_the_nom(mob/living/user, mob/living/prey, mob/living/pred, obj/belly/belly, delay)
. = ..()
movement_cooldown = 10
diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm b/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm
new file mode 100644
index 00000000000..84b6f87efdd
--- /dev/null
+++ b/code/modules/mob/living/simple_mob/subtypes/vore/seagull.dm
@@ -0,0 +1,60 @@
+/datum/category_item/catalogue/fauna/seagull // TODO: write actual lore if ever needed
+ name = "Wildlife - Seagull"
+ desc = "Classification: Larus brachyrhynchus\
+
\
+ Gulls, or colloquially seagulls, are seabirds of the family Laridae in the suborder Lari. \
+ They are most closely related to the terns and skimmers and only distantly related to auks, and even more distantly to waders."
+ value = CATALOGUER_REWARD_TRIVIAL
+
+/mob/living/simple_mob/vore/seagull
+ name = "seagull"
+ desc = "The most dangerous and hostile scavenger of seashores. Beware!"
+ tt_desc = "Larus brachyrhynchus"
+ catalogue_data = list(/datum/category_item/catalogue/fauna/seagull)
+
+ icon_state = "seagull"
+ icon_living = "seagull"
+ icon_dead = "seagull_dead"
+ icon_rest = "seagull"
+ icon = 'icons/mob/vore.dmi'
+
+ faction = "seagull"
+ maxHealth = 25
+ health = 25
+
+ response_help = "pats"
+ response_disarm = "gently pushes aside"
+ response_harm = "hits"
+
+ meat_amount = 2
+ meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken
+
+ harm_intent_damage = 3
+ melee_damage_lower = 4
+ melee_damage_upper = 6
+ attacktext = list("pecked", "pinched", "wingslapped")
+
+ say_list_type = /datum/say_list/seagull
+ ai_holder_type = /datum/ai_holder/simple_mob/passive
+
+ vore_active = 1
+ vore_capacity = 5
+ vore_bump_chance = 25
+ vore_bump_emote = "greedily dives at"
+ vore_pounce_chance = 70
+ vore_default_mode = DM_HOLD
+ vore_icons = SA_ICON_LIVING
+ belly_size_multiplier = 2.5
+
+/datum/say_list/seagull
+ speak = list("Ha-Ha-Ha!","Huoh-Huoh-Huoh!","Keow?")
+ emote_hear = list("screams!","chirps.")
+ emote_see = list("pecks at the ground","looks around hungrily")
+
+/mob/living/simple_mob/vore/seagull/update_icon()
+ . = ..()
+
+ if(vore_fullness >= 2)
+ movement_cooldown = 10
+ else if(movement_cooldown == 10)
+ movement_cooldown = initial(movement_cooldown)
\ No newline at end of file
diff --git a/icons/mob/vore.dmi b/icons/mob/vore.dmi
index 4265bd359f3..74df3254001 100644
Binary files a/icons/mob/vore.dmi and b/icons/mob/vore.dmi differ
diff --git a/maps/expedition_vr/beach/_beach.dm b/maps/expedition_vr/beach/_beach.dm
index 9013936d50a..5b1d049fe15 100644
--- a/maps/expedition_vr/beach/_beach.dm
+++ b/maps/expedition_vr/beach/_beach.dm
@@ -85,6 +85,7 @@
//guard = 40 //They'll stay within this range (not defining this disables them staying nearby and they will wander the map (and through step teleports))
mobs_to_pick_from = list(
/mob/living/simple_mob/vore/fennec = 300,
+ /mob/living/simple_mob/vore/seagull = 200,
/mob/living/simple_mob/animal/passive/snake/python = 100
)
diff --git a/vorestation.dme b/vorestation.dme
index 9ee12f42771..34617aafbc7 100644
--- a/vorestation.dme
+++ b/vorestation.dme
@@ -3241,6 +3241,7 @@
#include "code\modules\mob\living\simple_mob\subtypes\vore\rabbit.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\rat.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\redpanda.dm"
+#include "code\modules\mob\living\simple_mob\subtypes\vore\seagull.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\sect_drone.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\sect_queen.dm"
#include "code\modules\mob\living\simple_mob\subtypes\vore\sheep.dm"