diff --git a/code/game/area/areas/centcom.dm b/code/game/area/areas/centcom.dm
index d5c8a8c841..1241b7a240 100644
--- a/code/game/area/areas/centcom.dm
+++ b/code/game/area/areas/centcom.dm
@@ -29,6 +29,13 @@
/area/centcom/holding
name = "Holding Facility"
+/area/centcom/vip
+ name = "VIP Zone"
+ dynamic_lighting = DYNAMIC_LIGHTING_DISABLED
+ /area/centcom/winterball
+ name = "winterball Zone"
+ dynamic_lighting = DYNAMIC_LIGHTING_DISABLED
+
/area/centcom/supplypod
name = "Supplypod Facility"
icon_state = "supplypod"
diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm
index bbace70bec..e63ddd1c02 100644
--- a/code/game/objects/items/stacks/sheets/sheet_types.dm
+++ b/code/game/objects/items/stacks/sheets/sheet_types.dm
@@ -190,8 +190,10 @@ GLOBAL_LIST_INIT(wood_recipes, list ( \
new/datum/stack_recipe("rolling pin", /obj/item/kitchen/rollingpin, 2, time = 30), \
new/datum/stack_recipe("wooden chair", /obj/structure/chair/wood/, 3, time = 10, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("winged wooden chair", /obj/structure/chair/wood/wings, 3, time = 10, one_per_turf = TRUE, on_floor = TRUE), \
+ new/datum/stack_recipe("plywood chair", /obj/structure/chair/comfy/plywood, 4, time = 10, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("wooden barricade", /obj/structure/barricade/wooden, 5, time = 50, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("wooden door", /obj/structure/mineral_door/wood, 10, time = 20, one_per_turf = TRUE, on_floor = TRUE), \
+ new/datum/stack_recipe("rustic wooden door", /obj/structure/mineral_door/woodrustic, 10, time = 20, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("coffin", /obj/structure/closet/crate/coffin, 5, time = 15, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("book case", /obj/structure/bookcase, 4, time = 15, one_per_turf = TRUE, on_floor = TRUE), \
new/datum/stack_recipe("drying rack", /obj/machinery/smartfridge/drying_rack, 10, time = 15, one_per_turf = TRUE, on_floor = TRUE), \
diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm
index 7b52ca7af1..7aaee7c5d4 100644
--- a/code/game/objects/items/toys.dm
+++ b/code/game/objects/items/toys.dm
@@ -1039,6 +1039,7 @@
icon = 'icons/obj/toy.dmi'
icon_state = "snowball"
throwforce = 12 //pelt your enemies to death with lumps of snow
+ damtype = STAMINA
/obj/item/toy/snowball/afterattack(atom/target as mob|obj|turf|area, mob/user)
. = ..()
diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm
index 840ca74143..e944eb32da 100644
--- a/code/game/objects/structures/beds_chairs/chair.dm
+++ b/code/game/objects/structures/beds_chairs/chair.dm
@@ -192,6 +192,17 @@
/obj/structure/chair/comfy/lime
color = rgb(255,251,0)
+/obj/structure/chair/comfy/plywood
+ name = "plywood chair"
+ desc = "A relaxing plywood chair."
+ icon_state = "plywood_chair"
+ anchored = FALSE
+ buildstacktype = /obj/item/stack/sheet/mineral/wood
+ buildstackamount = 4
+
+/obj/structure/chair/comfy/plywood/GetArmrest()
+ return mutable_appearance('icons/obj/chairs.dmi', "plywood_chair_armrest")
+
/obj/structure/chair/comfy/shuttle
name = "shuttle seat"
desc = "A comfortable, secure seat. It has a more sturdy looking buckling system, for smoother flights."
diff --git a/code/game/objects/structures/fluff.dm b/code/game/objects/structures/fluff.dm
index d9a4406acd..baf0cf312f 100644
--- a/code/game/objects/structures/fluff.dm
+++ b/code/game/objects/structures/fluff.dm
@@ -70,6 +70,13 @@
desc = "A towering basalt sculpture of a drake. Cracks run down its surface and parts of it have fallen off."
icon_state = "drake_statue_falling"
+/obj/structure/fluff/lightpost
+ name = "lightpost"
+ desc = "A homely lightpost adorned with festive decor."
+ icon = 'icons/obj/2x2.dmi'
+ icon_state = "lightpost"
+ deconstructible = FALSE
+ layer = EDGED_TURF_LAYER
/obj/structure/fluff/bus
name = "bus"
@@ -167,3 +174,11 @@
desc = "A crudely-made sign with the words 'fok of' written in some sort of red paint."
icon = 'icons/obj/fluff.dmi'
icon_state = "fokof"
+
+/obj/structure/fluff/snowlegion
+ name = "snowlegion"
+ desc = "Looks like that weird kid with the tiger plushie has been round here again."
+ icon = 'icons/obj/fluff.dmi'
+ icon_state = "snowlegion"
+ anchored = TRUE
+ deconstructible = FALSE
diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm
index 3c9b70e967..13ca421daa 100644
--- a/code/game/objects/structures/mineral_doors.dm
+++ b/code/game/objects/structures/mineral_doors.dm
@@ -223,6 +223,16 @@
max_integrity = 200
rad_insulation = RAD_VERY_LIGHT_INSULATION
+/obj/structure/mineral_door/woodrustic
+ name = "rustic wood door"
+ icon_state = "woodrustic"
+ openSound = 'sound/effects/doorcreaky.ogg'
+ closeSound = 'sound/effects/doorcreaky.ogg'
+ sheetType = /obj/item/stack/sheet/mineral/wood
+ sheetAmount = 10
+ max_integrity = 200
+ rad_insulation = RAD_VERY_LIGHT_INSULATION
+
/obj/structure/mineral_door/paperframe
name = "paper frame door"
icon_state = "paperframe"
diff --git a/code/game/objects/structures/signs/signs_maps.dm b/code/game/objects/structures/signs/signs_maps.dm
index 8468516502..f3188b90c2 100644
--- a/code/game/objects/structures/signs/signs_maps.dm
+++ b/code/game/objects/structures/signs/signs_maps.dm
@@ -45,3 +45,12 @@
name = "command department"
desc = "A direction sign, pointing out which way the Command department is."
icon_state = "direction_bridge"
+
+/obj/structure/sign/directions/bar
+ name = "bar"
+ desc = "A direction sign, pointing out which way the Bar is."
+ icon_state = "direction_bar"
+ /obj/structure/sign/directions/cafe
+ name = "cafe"
+ desc = "A direction sign, pointing out which way the Cafe is."
+ icon_state = "direction_cafe"
diff --git a/code/game/turfs/closed.dm b/code/game/turfs/closed.dm
index 2165dbd8db..bcffd728c6 100644
--- a/code/game/turfs/closed.dm
+++ b/code/game/turfs/closed.dm
@@ -49,6 +49,14 @@
baseturfs = /turf/closed/indestructible/sandstone
smooth = SMOOTH_TRUE
+/turf/closed/indestructible/wood
+ name = "wooden wall"
+ desc = "A wall with wooden plating. Stiff."
+ icon = 'icons/turf/walls/wood_wall.dmi'
+ icon_state = "wood"
+ baseturfs = /turf/closed/indestructible/wood
+ smooth = SMOOTH_TRUE
+
/turf/closed/indestructible/oldshuttle/corner
icon_state = "corner"
diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm
index 7aa1183512..659a58b2dc 100644
--- a/code/game/turfs/open.dm
+++ b/code/game/turfs/open.dm
@@ -49,6 +49,20 @@
if(istype(AM))
playsound(src,sound,50,1)
+/turf/open/indestructible/cobble/side
+ icon_state = "cobble_side"
+
+/turf/open/indestructible/cobble/corner
+ icon_state = "cobble_corner"
+
+/turf/open/indestructible/cobble
+ name = "cobblestone path"
+ desc = "A simple but beautiful path made of various sized stones."
+ icon = 'icons/turf/floors.dmi'
+ icon_state = "cobble"
+ baseturfs = /turf/open/indestructible/cobble
+ tiled_dirt = FALSE
+
/turf/open/indestructible/necropolis
name = "necropolis floor"
desc = "It's regarding you suspiciously."
diff --git a/code/modules/awaymissions/mission_code/snowdin.dm b/code/modules/awaymissions/mission_code/snowdin.dm
index 16ecae7a5f..7cb771737e 100644
--- a/code/modules/awaymissions/mission_code/snowdin.dm
+++ b/code/modules/awaymissions/mission_code/snowdin.dm
@@ -10,6 +10,10 @@
name = "Snowdin Tundra Plains"
icon_state = "awaycontent25"
+/area/awaymission/snowdin/outside/vip
+ name = "Snowdin Tundra Plains"
+ icon_state = "awaycontent25"
+
/area/awaymission/snowdin/post
name = "Snowdin Outpost"
icon_state = "awaycontent2"
@@ -116,7 +120,7 @@
name = "Snowdin Main Base"
icon_state = "awaycontent16"
dynamic_lighting = DYNAMIC_LIGHTING_ENABLED
- requires_power = TRUE
+ requires_power = FALSE
/area/awaymission/snowdin/dungeon1
name = "Snowdin Depths"
diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm
index 2a36983561..67ae789a1b 100644
--- a/code/modules/holodeck/turfs.dm
+++ b/code/modules/holodeck/turfs.dm
@@ -122,7 +122,7 @@
/turf/open/floor/holofloor/wood
icon_state = "wood"
tiled_dirt = FALSE
-
+
/turf/open/floor/holofloor/snow
gender = PLURAL
name = "snow"
@@ -133,6 +133,15 @@
bullet_sizzle = TRUE
bullet_bounce_sound = null
tiled_dirt = FALSE
+ baseturfs = /turf/open/floor/holofloor/snow
+
+/turf/open/floor/holofloor/snow/attack_hand(mob/living/user)
+ . = ..()
+ if(.)
+ return
+ user.visible_message("[user] scroops up some snow from [src].", "You scoop up some snow from [src].")
+ var/obj/item/toy/snowball/S = new(get_turf(src))
+ user.put_in_hands(S)
/turf/open/floor/holofloor/snow/cold
initial_gas_mix = "nob=7500;TEMP=2.7"
@@ -143,3 +152,25 @@
icon = 'icons/turf/floors.dmi'
icon_state = "asteroid"
tiled_dirt = FALSE
+
+/turf/open/floor/holofloor/ice
+ name = "ice sheet"
+ desc = "A sheet of solid ice. Looks slippery."
+ icon = 'icons/turf/floors/ice_turf.dmi'
+ icon_state = "unsmooth"
+ baseturfs = /turf/open/floor/holofloor/ice
+ slowdown = 1
+ footstep = FOOTSTEP_FLOOR
+ barefootstep = FOOTSTEP_HARD_BAREFOOT
+ clawfootstep = FOOTSTEP_HARD_CLAW
+ heavyfootstep = FOOTSTEP_GENERIC_HEAVY
+
+/turf/open/floor/holofloor/ice/smooth
+ icon_state = "smooth"
+ smooth = SMOOTH_MORE | SMOOTH_BORDER
+ canSmoothWith = list(/turf/open/floor/plating/ice/smooth, /turf/open/floor/plating/ice, /turf/open/floor/holofloor/ice)
+ baseturfs = /turf/open/floor/holofloor/ice/smooth
+
+/turf/open/floor/holofloor/ice/Initialize()
+ . = ..()
+ MakeSlippery(TURF_WET_PERMAFROST, INFINITY, 0, INFINITY, TRUE)
diff --git a/icons/obj/2x2.dmi b/icons/obj/2x2.dmi
index a72a86f3d8..c5b1df680a 100644
Binary files a/icons/obj/2x2.dmi and b/icons/obj/2x2.dmi differ
diff --git a/icons/obj/chairs.dmi b/icons/obj/chairs.dmi
index 96e4a4228e..3754ff052c 100644
Binary files a/icons/obj/chairs.dmi and b/icons/obj/chairs.dmi differ
diff --git a/icons/obj/doors/mineral_doors.dmi b/icons/obj/doors/mineral_doors.dmi
index 7682252a6d..03fab197fe 100644
Binary files a/icons/obj/doors/mineral_doors.dmi and b/icons/obj/doors/mineral_doors.dmi differ
diff --git a/icons/obj/fluff.dmi b/icons/obj/fluff.dmi
index b476d25228..72edaa0528 100644
Binary files a/icons/obj/fluff.dmi and b/icons/obj/fluff.dmi differ
diff --git a/icons/turf/floors.dmi b/icons/turf/floors.dmi
index 518adfc766..2a56a03e66 100644
Binary files a/icons/turf/floors.dmi and b/icons/turf/floors.dmi differ