diff --git a/game/modules/tome/class/Encounter.lua b/game/modules/tome/class/Encounter.lua
index 55f0971a41f1be6c7dc5083749848ac58b1650ce..f0ae1a41e071af60a2eb017db7ba558d158d9915 100644
--- a/game/modules/tome/class/Encounter.lua
+++ b/game/modules/tome/class/Encounter.lua
@@ -65,6 +65,19 @@ function _M:checkFilter(filter)
 	return true
 end
 
+function _M:findSpotGeneric(who, fct)
+	local spots = {}
+	for i = -1, 1 do for j = -1, 1 do if i ~= 0 or j ~= 0 then
+		if fct(game.level.map, who.x + i, who.y + j) then
+			spots[#spots+1] = {who.x + i, who.y + j}
+		end
+	end end end
+	if #spots > 0 then
+		local s = rng.table(spots)
+		return s[1], s[2]
+	end
+end
+
 function _M:findSpot(who, what)
 	what = what or "block_move"
 	local spots = {}
diff --git a/game/modules/tome/class/Game.lua b/game/modules/tome/class/Game.lua
index 31c5989fc24554d51e7ededd1b23c153de7f6428..7f50d4e3c604abd4f8e91aa8954bd9c8cf405851 100644
--- a/game/modules/tome/class/Game.lua
+++ b/game/modules/tome/class/Game.lua
@@ -468,9 +468,10 @@ function _M:setupCommands()
 				self.player.esp.all = 1
 				self.player.esp.range = 50
 				self.player.inc_damage.all = 100000
-				self:changeLevel(2, "flooded-cave")
---				game.memory_levels["wilderness-arda-fareast-1"] = game.level
---				self.player:grantQuest("orc-pride")
+--				self:changeLevel(2, "flooded-cave")
+				self:changeLevel(1, "wilderness-arda-fareast")
+				game.memory_levels["wilderness-arda-fareast-1"] = game.level
+				self.player:grantQuest("orc-pride")
 --				self.player:grantQuest("escort-duty")
 			end
 		end,
diff --git a/game/modules/tome/data/general/encounters/arda-fareast.lua b/game/modules/tome/data/general/encounters/arda-fareast.lua
index 697816b240e10a4dce68eddad9195824597c7bb1..45a6eb33800fda7ac3d9cb3491d46eede303f75e 100644
--- a/game/modules/tome/data/general/encounters/arda-fareast.lua
+++ b/game/modules/tome/data/general/encounters/arda-fareast.lua
@@ -53,6 +53,32 @@ newEntity{
 	end,
 }
 
+newEntity{
+	name = "Underwater Cave",
+	type = "harmless", subtype = "special", unique = true,
+	level_range = {30, 40},
+	rarity = 1,
+	coords = {{ x=0, y=0, w=100, h=100}},
+	special_filter = function(self)
+		return self:findSpotGeneric(game.player, function(map, x, y) local enc = map:checkAllEntities(x, y, "can_encounter") return enc and enc == "water" end) and true or false
+	end,
+	on_encounter = function(self, who)
+		local x, y = self:findSpotGeneric(who, function(map, x, y) local enc = map:checkAllEntities(x, y, "can_encounter") return enc and enc == "water" end)
+		if not x then return end
+
+		local g = mod.class.Grid.new{
+			show_tooltip=true,
+			name="Entrance to an underwater cave",
+			display='>', color=colors.AQUAMARINE,
+			notice = true,
+			change_level=1, change_zone="flooded-cave"
+		}
+		g:resolve() g:resolve(nil, true)
+		game.zone:addEntity(game.level, g, "terrain", x, y)
+		game.logPlayer(who, "#LIGHT_BLUE#You notice an entrance to an underwater cave.")
+		return true
+	end,
+}
 ---------------------------- Hostiles -----------------------------
 
 -- Ambushed!
@@ -61,7 +87,7 @@ newEntity{
 	name = "Orcs",
 	type = "hostile", subtype = "ambush",
 	level_range = {1, 50},
-	rarity = 8,
+	rarity = 11118,
 	coords = {{ x=0, y=0, w=100, h=100}},
 	special_filter = function(self)
 		return game.player:reactionToward{faction="orc-pride"} < 0 and true or false
diff --git a/game/modules/tome/data/maps/wilderness/arda-fareast.lua b/game/modules/tome/data/maps/wilderness/arda-fareast.lua
index 3dade50ac83bf43d1582a0324b1624a7ed51929b..3cf3807e7f824cebc3509b9a749591037523cf95 100644
--- a/game/modules/tome/data/maps/wilderness/arda-fareast.lua
+++ b/game/modules/tome/data/maps/wilderness/arda-fareast.lua
@@ -20,9 +20,9 @@
 -- The far east on Arda
 
 quickEntity('w', {always_remember = true, show_tooltip=true, name='Sun Wall', display='^', color=colors.GOLD, back_color=colors.CRIMSON, image="terrain/mountain.png", tint=colors.GOLD, block_move=true})
-quickEntity('=', {always_remember = true, show_tooltip=true, name='the great sea', display='~', color=colors.DARK_BLUE, back_color=colors.BLUE, image="terrain/river.png", block_move=true, shader = "water", textures = { function() return _3DNoise, true end }, })
+quickEntity('=', {always_remember = true, show_tooltip=true, name='the great sea', display='~', color=colors.DARK_BLUE, back_color=colors.BLUE, image="terrain/river.png", block_move=true, can_encounter="water", shader = "water", textures = { function() return _3DNoise, true end }, })
 quickEntity(' ', {always_remember = true, show_tooltip=true, name='plains', display='.', color=colors.LIGHT_GREEN, back_color=colors.DARK_GREEN, image="terrain/grass.png", can_encounter="plain", equilibrium_level=-10})
-quickEntity('~', {always_remember = true, show_tooltip=true, name='river', display='~', color={r=0, g=80, b=255}, back_color=colors.BLUE, image="terrain/river.png", can_encounter="plain", equilibrium_level=-10, shader = "water", textures = { function() return _3DNoise, true end }, })
+quickEntity('~', {always_remember = true, show_tooltip=true, name='river', display='~', color={r=0, g=80, b=255}, back_color=colors.BLUE, image="terrain/river.png", can_encounter="plain", equilibrium_level=-10, can_encounter="water", shader = "water", textures = { function() return _3DNoise, true end }, })
 quickEntity('s', {always_remember = true, show_tooltip=true, name='desert', display='.', color={r=203,g=189,b=72}, back_color={r=163,g=149,b=42}, image="terrain/sand.png", can_encounter="desert", equilibrium_level=-10})
 quickEntity('t', {always_remember = true, show_tooltip=true, name='forest', display='#', color=colors.LIGHT_GREEN, back_color=colors.DARK_GREEN, image="terrain/grass.png", add_displays = {mod.class.Grid.new{image="terrain/tree_alpha1.png"}}, block_move=true})
 quickEntity('p', {always_remember = true, show_tooltip=true, name='oasis', display='#', color=colors.LIGHT_GREEN, back_color={r=163,g=149,b=42}, image="terrain/sand.png", add_displays = {mod.class.Grid.new{image="terrain/palmtree_alpha1.png"}}, block_move=true})