public static boolean save() {
		if (Debuggers.size() == 0) { //If queue is empty OR economy is disabled.
			DebugFile.delete();

			return true;
		}

		ColorKeys.Log(Level.INFO, "Saving Debuggers...");

		try {
			if (!DebugFile.exists()) {
				if (!DebugFile.createNewFile()) {
					ColorKeys.Log(Level.SEVERE, "Error creating Debuggers file.");

					return false;
				}
			}

			DocumentBuilderFactory dbfac = DocumentBuilderFactory.newInstance();
			DocumentBuilder docBuilder = dbfac.newDocumentBuilder();
			Document doc = docBuilder.newDocument();

			Element fileVersionElement = doc.createElement("file");
			fileVersionElement.setAttribute("version", "1.0");
			doc.appendChild(fileVersionElement);

			for (String player : Debuggers.keySet()) {
				Element DebugElement = doc.createElement("player");
				DebugElement.setAttribute("name", player);
				DebugElement.setAttribute("debugging", Debuggers.get(player) + "");
				fileVersionElement.appendChild(DebugElement);
			}

			TransformerFactory transfac = TransformerFactory.newInstance();
			Transformer trans = transfac.newTransformer();
			//trans.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION, "yes");
			trans.setOutputProperty(OutputKeys.ENCODING, "UTF-8");
			trans.setOutputProperty(OutputKeys.INDENT, "yes");

			StreamResult result = new StreamResult(new StringWriter());
			DOMSource source = new DOMSource(doc);
			trans.transform(source, result);

			FileOutputStream OUT = new FileOutputStream(DebugFile);
			OUT.write(result.getWriter().toString().getBytes());
			OUT.flush();
			OUT.close();

			ColorKeys.Log(Level.INFO, "Debuggers Saved Successfully.");

			return true;
		}
		catch (Exception e) {
			ColorKeys.Log(Level.SEVERE, "Unknown error saving Debuggers.");

			e.printStackTrace();

			return false;
		}
	}