diff --git a/game/modules/tome/data/maps/vaults/hostel.lua b/game/modules/tome/data/maps/vaults/hostel.lua
index d4bc3776057b4584b05b098e5b20fa8cd20494f9..2696333bf3baeab02f34e0e9c742e19107f3e851 100644
--- a/game/modules/tome/data/maps/vaults/hostel.lua
+++ b/game/modules/tome/data/maps/vaults/hostel.lua
@@ -23,6 +23,7 @@ rotates = {"default", "90", "180", "270", "flipx", "flipy"}
 
 defineTile(' ', "FLOOR")
 defineTile('+', "DOOR")
+defineTile('!', "DOOR_VAULT")
 defineTile('X', "WALL")
 defineTile('$', "FLOOR", {random_filter={add_levels=10}})
 defineTile('~', "FLOOR", {random_filter={add_levels=5}}, nil, {random_filter={add_levels=5}})
@@ -43,7 +44,7 @@ return {
 [[X   X X ooX XXX~~$X$$XXXX   X]],
 [[XO ^X X ooXo OX$$~X$o      oX]],
 [[XO ^+ XXXXXXXXXXXXXXXXXXXXXXX]],
-[[XO ^X                      ^+]],
+[[XO ^X                      ^!]],
 [[XXXXX+XXX+XXXXX+XXX+XXXXX+XXX]],
 [[X~XX   XO  +$X   Xo  +$X   XX]],
 [[X$XX   X O XXXO oX  oXXX o XX]],
diff --git a/game/modules/tome/data/maps/vaults/orc-armoury.lua b/game/modules/tome/data/maps/vaults/orc-armoury.lua
index 1c7b74a31af70a9b6d0cbe4055d0906ef4b7b717..1a8e8dbd04405e90c69da896ed1b4f2bea040f18 100644
--- a/game/modules/tome/data/maps/vaults/orc-armoury.lua
+++ b/game/modules/tome/data/maps/vaults/orc-armoury.lua
@@ -27,6 +27,7 @@ starty = 5
 defineTile(' ', "FLOOR")
 defineTile('^', "FLOOR", nil, nil, {random_filter={add_levels=5}})
 defineTile('+', "DOOR")
+defineTile('!', "DOOR_VAULT")
 defineTile('#', "HARDWALL")
 
 defineTile('a', 'FLOOR', nil, {random_filter={name='hill orc archer', add_levels=15}})
@@ -64,7 +65,7 @@ return {
 [[##  #oOo#xx###bb+ f #nNn#]],
 [[##  #oOo#XXXX#bb#   #knk#]],
 [[##^^##+###########+###+##]],
-[[+ ^^                   ^#]],
+[[! ^^                   ^#]],
 [[##^^##+###########+###+##]],
 [[##  #OoO#SSSS#ww#   #TtT#]],
 [[##  #ooo#ss###ww+ i #ttt#]],
diff --git a/game/modules/tome/data/talents/spells/golemancy.lua b/game/modules/tome/data/talents/spells/golemancy.lua
index fab9c24891e9bf5ebc2302aeaef684787aeabf4c..2fad167601655821fdef8cce693e68b12bb57f91 100644
--- a/game/modules/tome/data/talents/spells/golemancy.lua
+++ b/game/modules/tome/data/talents/spells/golemancy.lua
@@ -63,7 +63,8 @@ local function makeGolem()
 		fear_immune = 1,
 		poison_immune = 1,
 		disease_immune = 1,
-		see_invisible = 2,
+		stone_immune = 1,
+		see_invisible = 30,
 		no_breath = 1,
 	}
 end
diff --git a/game/modules/tome/data/zones/gorbat-pride/grids.lua b/game/modules/tome/data/zones/gorbat-pride/grids.lua
index 17d13d0604094de870b55cca229193a50d5ac0a8..05973e06e96d259cda4fe720da0bec7f9d826d9c 100644
--- a/game/modules/tome/data/zones/gorbat-pride/grids.lua
+++ b/game/modules/tome/data/zones/gorbat-pride/grids.lua
@@ -19,4 +19,6 @@
 
 load("/data/general/grids/basic.lua")
 load("/data/general/grids/forest.lua")
+load("/data/general/grids/sand.lua")
 load("/data/general/grids/water.lua")
+load("/data/general/grids/mountain.lua")
diff --git a/game/modules/tome/data/zones/gorbat-pride/zone.lua b/game/modules/tome/data/zones/gorbat-pride/zone.lua
index b279bbc9060afe393320566be799d4c771584076..f96e5fdf85a119e8781149ddf8f70aeb24fc1573 100644
--- a/game/modules/tome/data/zones/gorbat-pride/zone.lua
+++ b/game/modules/tome/data/zones/gorbat-pride/zone.lua
@@ -36,11 +36,16 @@ return {
 			max_building_w = 8, max_building_h = 8,
 			edge_entrances = {6,4},
 			floor = "FLOOR",
-			external_floor = "FLOOR",
+			external_floor = "SAND",
 			wall = "WALL",
 			up = "UP",
 			down = "DOWN",
 			door = "DOOR",
+
+			nb_rooms = {3},
+			rooms = {"lesser_vault"},
+			lesser_vaults_list = {"orc-armoury", "double-t", "dragon_lair", "hostel"},
+			lite_room_chance = 100,
 		},
 		actor = {
 			class = "engine.generator.actor.Random",
diff --git a/game/modules/tome/data/zones/vor-pride/zone.lua b/game/modules/tome/data/zones/vor-pride/zone.lua
index 8eda283e84eb01060e6b4251344e3b1286145145..b3d3eefb22610852a5f0fadf250bbb120da68b4c 100644
--- a/game/modules/tome/data/zones/vor-pride/zone.lua
+++ b/game/modules/tome/data/zones/vor-pride/zone.lua
@@ -41,6 +41,11 @@ return {
 			up = "UP",
 			down = "DOWN",
 			door = "DOOR",
+
+			nb_rooms = {0,0,0,1},
+			rooms = {"lesser_vault"},
+			lesser_vaults_list = {"orc-armoury", "double-t", "circle", "hostel"},
+			lite_room_chance = 100,
 		},
 		actor = {
 			class = "engine.generator.actor.Random",