Index: binary-improvements/7dtd-server-fixes/src/MapRendering/MapRenderBlockBuffer.cs
===================================================================
--- binary-improvements/7dtd-server-fixes/src/MapRendering/MapRenderBlockBuffer.cs	(revision 192)
+++ binary-improvements/7dtd-server-fixes/src/MapRendering/MapRenderBlockBuffer.cs	(revision 199)
@@ -13,8 +13,10 @@
 		private Texture2D zoomBuffer = new Texture2D (1, 1);
 		private Color nullColor = new Color (0, 0, 0, 0);
+		private AllocsFixes.FileCache.MapTileCache cache;
 
-		public MapRenderBlockBuffer (int level)
+		public MapRenderBlockBuffer (int level, AllocsFixes.FileCache.MapTileCache cache)
 		{
 			zoomLevel = level;
+			this.cache = cache;
 		}
 
@@ -68,8 +70,12 @@
 		private void loadTextureFromFile (string _fileName)
 		{
-			try {
-				byte[] array = File.ReadAllBytes (_fileName);
+			byte[] array = cache.LoadTile (zoomLevel, _fileName);
+			if (array != null) {
 				blockMap.LoadImage (array);
-			} catch (Exception) {
+			} else {
+				//try {
+				//byte[] array = File.ReadAllBytes (_fileName);
+				//blockMap.LoadImage (array);
+				//} catch (Exception) {
 				for (int x = 0; x < Constants.MAP_BLOCK_SIZE; x++) {
 					for (int y = 0; y < Constants.MAP_BLOCK_SIZE; y++) {
@@ -82,10 +88,12 @@
 		private void saveTextureToFile (string _fileName)
 		{
-			try {
-				byte[] array = blockMap.EncodeToPNG ();
-				File.WriteAllBytes (_fileName, array);
-			} catch (Exception e) {
-				Log.Out ("Exception in MapRenderBlockBuffer.saveTextureToFile(): " + e);
-			}
+			byte[] array = blockMap.EncodeToPNG ();
+			cache.SaveTile (zoomLevel, array);
+//			try {
+//				byte[] array = blockMap.EncodeToPNG ();
+//				File.WriteAllBytes (_fileName, array);
+//			} catch (Exception e) {
+//				Log.Out ("Exception in MapRenderBlockBuffer.saveTextureToFile(): " + e);
+//			}
 		}
 
Index: binary-improvements/7dtd-server-fixes/src/MapRendering/MapRendering.cs
===================================================================
--- binary-improvements/7dtd-server-fixes/src/MapRendering/MapRendering.cs	(revision 192)
+++ binary-improvements/7dtd-server-fixes/src/MapRendering/MapRendering.cs	(revision 199)
@@ -29,4 +29,9 @@
 		public static bool renderingEnabled = true;
 		private MicroStopwatch msw = new MicroStopwatch ();
+		private AllocsFixes.FileCache.MapTileCache cache = new AllocsFixes.FileCache.MapTileCache ();
+
+		public AllocsFixes.FileCache.MapTileCache TileCache {
+			get { return cache; }
+		}
 
 		private MapRendering ()
@@ -39,7 +44,9 @@
 			}
 
+			cache.SetZoomCount (Constants.ZOOMLEVELS);
+
 			zoomLevelBuffers = new MapRenderBlockBuffer[Constants.ZOOMLEVELS];
 			for (int i = 0; i < Constants.ZOOMLEVELS; i++) {
-				zoomLevelBuffers [i] = new MapRenderBlockBuffer (i);
+				zoomLevelBuffers [i] = new MapRenderBlockBuffer (i, cache);
 			}
 
