public void createBackup() throws AlreadyModdedException {
		logger.debug("Attempt to backup all Files from " + pack.getName());
		if (!hasBackup()) {
			try {
				for (File file : files) {
					File bakFile = new File(file.getAbsolutePath() + "_bak");
					if (!bakFile.exists()) {
						logger.debug("Creating Backup: File: "
								+ file.getAbsolutePath());
						Misc.copyFile(file, bakFile);
					} else {
						logger.error("Backup file still exists: ["
								+ bakFile.getAbsolutePath()
								+ "] this might be the original File, will leave this unchanged!");
					}
				}
			} catch (IOException e) {
				logger.error("[" + this.getName() + "] Backup error");
			}

		} else {
			logger.error("Archive \"" + this.getName() + "\" is already modded");
			throw new AlreadyModdedException("Archive \"" + this.getName()
					+ "\" is already modded");
		}
	}