diff --git a/code/game/machinery/computer/arcade_vr.dm b/code/game/machinery/computer/arcade_vr.dm
new file mode 100644
index 00000000000..7408686aeb0
--- /dev/null
+++ b/code/game/machinery/computer/arcade_vr.dm
@@ -0,0 +1,36 @@
+/obj/machinery/computer/arcade
+ list/prizes = list( /obj/item/weapon/storage/box/snappops = 2,
+ /obj/item/toy/blink = 2,
+ /obj/item/clothing/under/syndicate/tacticool = 2,
+ /obj/item/toy/sword = 2,
+ /obj/item/weapon/gun/projectile/revolver/capgun = 2,
+ /obj/item/toy/crossbow = 2,
+ /obj/item/clothing/suit/syndicatefake = 2,
+ /obj/item/weapon/storage/fancy/crayons = 2,
+ /obj/item/toy/spinningtoy = 2,
+ /obj/random/mech_toy = 1,
+ /obj/item/weapon/reagent_containers/spray/waterflower = 1,
+ /obj/random/action_figure = 1,
+ /obj/random/plushie = 1,
+ /obj/item/toy/cultsword = 1,
+ /obj/item/toy/bouquet/fake = 1,
+ /obj/item/clothing/accessory/badge/sheriff = 2,
+ /obj/item/clothing/head/cowboy_hat/small = 2,
+ /obj/item/toy/stickhorse = 2,
+ /obj/item/toy/rock = 2,
+ /obj/item/toy/cat_toy = 2,
+ /obj/item/toy/cat_toy/rod = 2,
+ /obj/item/toy/flash = 2,
+ /obj/item/toy/redbutton = 2,
+ /obj/item/toy/gnome = 2,
+ /obj/item/toy/AI = 2,
+ /obj/item/clothing/gloves/ring/buzzer/toy = 2,
+ /obj/item/weapon/storage/box/handcuffs/fake = 2,
+ /obj/item/toy/nuke = 2,
+ /obj/item/toy/minigibber = 2,
+ /obj/item/toy/toy_xeno = 2,
+ /obj/item/toy/russian_revolver = 1,
+ /obj/item/toy/russian_revolver/trick_revolver = 1,
+ /obj/item/toy/chainsaw = 1,
+ /obj/random/miniature = 1
+ )
\ No newline at end of file
diff --git a/code/game/objects/items/toys/toys_vr.dm b/code/game/objects/items/toys/toys_vr.dm
index 3cafdc7461f..6ad3f8996c9 100644
--- a/code/game/objects/items/toys/toys_vr.dm
+++ b/code/game/objects/items/toys/toys_vr.dm
@@ -129,6 +129,7 @@
* Toy xeno
* Fake gun * 2
* Toy chainsaw
+* Random tabletop miniature spawner
*/
/obj/item/toy/plushie/ipc
@@ -141,6 +142,9 @@
/obj/item/weapon/reagent_containers/food/snacks/slice/bread
var/toasted = FALSE
+/obj/item/weapon/reagent_containers/food/snacks/tastybread
+ var/toasted = FALSE
+
/obj/item/weapon/reagent_containers/food/snacks/slice/bread/afterattack(atom/A, mob/user as mob, proximity)
if(istype(A, /obj/item/toy/plushie/ipc) && !toasted)
toasted = TRUE
@@ -149,6 +153,14 @@
to_chat(user, " You insert bread into the toaster. ")
playsound(loc, 'sound/machines/ding.ogg', 50, 1)
+/obj/item/weapon/reagent_containers/food/snacks/tastybread/afterattack(atom/A, mob/user as mob, proximity)
+ if(istype(A, /obj/item/toy/plushie/ipc) && !toasted)
+ toasted = TRUE
+ icon = 'icons/obj/toy_vr.dmi'
+ icon_state = "toast"
+ to_chat(user, " You insert bread into the toaster. ")
+ playsound(loc, 'sound/machines/ding.ogg', 50, 1)
+
/obj/item/toy/plushie/ipc/attackby(obj/item/I as obj, mob/living/user as mob)
if(istype(I, /obj/item/weapon/material/kitchen/utensil))
to_chat(user, " You insert the [I] into the toaster. ")
@@ -655,4 +667,13 @@
return ..()
/obj/item/toy/chainsaw/proc/cooldownreset()
- cooldown = 0
\ No newline at end of file
+ cooldown = 0
+
+/obj/random/miniature
+ name = "Random miniature"
+ desc = "This is a random miniature."
+ icon = 'icons/obj/toy.dmi'
+ icon_state = "aliencharacter"
+
+/obj/random/mech_toy/item_to_spawn()
+ return pick(typesof(/obj/item/toy/character))
diff --git a/vorestation.dme b/vorestation.dme
index 301e9fd4d94..0c2574556f4 100644
--- a/vorestation.dme
+++ b/vorestation.dme
@@ -877,6 +877,7 @@
#include "code\game\machinery\computer\ai_core.dm"
#include "code\game\machinery\computer\aifixer.dm"
#include "code\game\machinery\computer\arcade.dm"
+#include "code\game\machinery\computer\arcade_vr.dm"
#include "code\game\machinery\computer\atmos_alert.dm"
#include "code\game\machinery\computer\atmos_control.dm"
#include "code\game\machinery\computer\camera.dm"