diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_armorer.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_armorer.png
new file mode 100644
index 000000000..6d0eb39b1
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_armorer.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_butcher.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_butcher.png
index e8529c459..025600ff2 100644
Binary files a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_butcher.png and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_butcher.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_cartographer.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_cartographer.png
new file mode 100644
index 000000000..7ab66072e
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_cartographer.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_farmer.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_farmer.png
index 62c98bcda..851f3a59d 100644
Binary files a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_farmer.png and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_farmer.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_fisherman.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_fisherman.png
new file mode 100644
index 000000000..c394f2e6e
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_fisherman.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_fletcher.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_fletcher.png
new file mode 100644
index 000000000..d9875ec10
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_fletcher.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_leatherworker.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_leatherworker.png
new file mode 100644
index 000000000..ea491713e
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_leatherworker.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_librarian.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_librarian.png
index 66b5c2929..f4a90d6fb 100644
Binary files a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_librarian.png and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_librarian.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_nitwit.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_nitwit.png
new file mode 100644
index 000000000..8009f0326
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_nitwit.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_priest.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_priest.png
index 79682c2c8..38318d4a9 100644
Binary files a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_priest.png and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_priest.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_sheperd.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_sheperd.png
new file mode 100644
index 000000000..db3226969
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_sheperd.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_smith.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_smith.png
index 53a0e3888..8afdc6b29 100644
Binary files a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_smith.png and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_smith.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_toolsmith.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_toolsmith.png
new file mode 100644
index 000000000..538a64b99
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_toolsmith.png differ
diff --git a/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_weaponsmith.png b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_weaponsmith.png
new file mode 100644
index 000000000..07157a553
Binary files /dev/null and b/mods/ENTITIES/mobs_mc/textures/mobs_mc_villager_weaponsmith.png differ
diff --git a/mods/ENTITIES/mobs_mc/villager.lua b/mods/ENTITIES/mobs_mc/villager.lua
index deaee72af..5b71dd3a9 100644
--- a/mods/ENTITIES/mobs_mc/villager.lua
+++ b/mods/ENTITIES/mobs_mc/villager.lua
@@ -126,8 +126,8 @@ local professions = {
 	fisherman = {
 		name = N("Fisherman"),
 		textures = {
-				"mobs_mc_villager_farmer.png",
-				"mobs_mc_villager_farmer.png",
+				"mobs_mc_villager_fisherman.png",
+				"mobs_mc_villager_fisherman.png",
 			},
 		jobsite = "mcl_barrels:barrel_closed",
 		trades = {
@@ -164,8 +164,8 @@ local professions = {
 	fletcher = {
 		name = N("Fletcher"),
 		textures =  {
-				"mobs_mc_villager_farmer.png",
-				"mobs_mc_villager_farmer.png",
+				"mobs_mc_villager_fletcher.png",
+				"mobs_mc_villager_fletcher.png",
 			},
 		jobsite = "mcl_fletching_table:fletching_table",
 		trades = {
@@ -206,8 +206,8 @@ local professions = {
 	shepherd ={
 		name = N("Shepherd"),
 		textures =  {
-				"mobs_mc_villager_farmer.png",
-				"mobs_mc_villager_farmer.png",
+				"mobs_mc_villager_sheperd.png",
+				"mobs_mc_villager_sheperd.png",
 			},
 		jobsite = "mcl_loom:loom",
 		trades = {
@@ -277,8 +277,8 @@ local professions = {
 	cartographer = {
 		name = N("Cartographer"),
 		textures = {
-				"mobs_mc_villager_librarian.png",
-				"mobs_mc_villager_librarian.png",
+				"mobs_mc_villager_cartographer.png",
+				"mobs_mc_villager_cartographer.png",
 			},
 		jobsite = "mcl_cartography_table:cartography_table",
 		trades = {
@@ -323,8 +323,8 @@ local professions = {
 	armorer = {
 		name = N("Armorer"),
 		textures = {
-				"mobs_mc_villager_smith.png",
-				"mobs_mc_villager_smith.png",
+				"mobs_mc_villager_armorer.png",
+				"mobs_mc_villager_armorer.png",
 			},
 		jobsite = "mcl_blast_furnace:blast_furnace",
 		trades = {
@@ -363,8 +363,8 @@ local professions = {
 	leatherworker = {
 		name = N("Leatherworker"),
 		textures = {
-				"mobs_mc_villager_butcher.png",
-				"mobs_mc_villager_butcher.png",
+				"mobs_mc_villager_leatherworker.png",
+				"mobs_mc_villager_leatherworker.png",
 			},
 		jobsite = "mcl_cauldrons:cauldron",
 		trades = {
@@ -428,8 +428,8 @@ local professions = {
 	weapon_smith = {
 		name = N("Weapon Smith"),
 		textures = {
-				"mobs_mc_villager_smith.png",
-				"mobs_mc_villager_smith.png",
+				"mobs_mc_villager_weaponsmith.png",
+				"mobs_mc_villager_weaponsmith.png",
 			},
 		jobsite = "mcl_furnaces:furnace", --FIXME: grindstone
 		trades = {
@@ -459,8 +459,8 @@ local professions = {
 	tool_smith = {
 		name = N("Tool Smith"),
 		textures = {
-				"mobs_mc_villager_smith.png",
-				"mobs_mc_villager_smith.png",
+				"mobs_mc_villager_toolsmith.png",
+				"mobs_mc_villager_toolsmith.png",
 			},
 		jobsite = "mcl_anvils:anvil", --FIXME: smithing table
 		trades = {
@@ -528,8 +528,8 @@ local professions = {
 	nitwit = {
 		name = N("Nitwit"),
 		textures = {
-				"mobs_mc_villager.png",
-				"mobs_mc_villager.png",
+				"mobs_mc_villager_nitwit.png",
+				"mobs_mc_villager_nitwit.png",
 			},
 		-- No trades for nitwit
 		trades = nil,
@@ -1357,6 +1357,9 @@ mobs:register_mob("mobs_mc:villager", {
 		end
 		self._id=minetest.sha1(minetest.get_gametime()..minetest.pos_to_string(self.object:get_pos())..tostring(math.random()))
 		self._profession = "unemployed"
+		if math.random(100) == 1 then
+			self._profession = "nitwit"
+		end
 		set_textures(self)
 	end,
 	on_die = function(self, pos)