@Override
	public void save(Output output, String name, int chunksX, int chunksY) {
		this.filepath = "output/"+name+"/build/"+name+".ow";
		
		System.out.println(":: OutlanderWorld format (.ow format) ::");
		System.out.println(": The file will be located in: "+filepath);
		
		File f = new File(filepath);
		if (f.exists()) f.delete();
		
		int dimx = chunksX * MyzoGEN.DIMENSION_X;
		int dimy = chunksY * MyzoGEN.DIMENSION_Y;
		
		tempBuffer = ByteBuffer.allocate(calcSize(name, description, output));
		writeShort(VERSION);
		writeString(name);
		writeInt(dimx);
		writeInt(dimy);
		writeBoolean(compression);
		writeString(description);
		
		for (Tile tile : output.getTilesArray().values()) {
			writeByte((byte) 0xFF);
			writePoint(tile.origin);
			if (compression) {
				if (!(tile.floor == 1 && tile.biome == Biomes.MODERATE && tile.tile == Tiles.GRASS)) {
					writeByte((byte) tile.floor);
					writeByte(tile.biome);
					writeByte(tile.tile);
				}
			} else {
				writeByte((byte) tile.floor);
				writeByte(tile.biome);
				writeByte(tile.tile);
			}
		}
		
		push();
	}