public static int saveGame(int slot){
		// If save slot not selected yet, get user input
		if(slot==0){
			Object[] options = {"1", "2", "3"};
			slot = JOptionPane.showOptionDialog(null, "Select your save slot", "Save Slot", JOptionPane.DEFAULT_OPTION, JOptionPane.QUESTION_MESSAGE, null, options, options[0]);
			slot++;
		}
		
		// Find appropriate save directory for OS
		String directory_str = System.getProperty("user.home") + "/.Empous/saves";
		File directory = new File(directory_str);
		if (!directory.exists()){
			directory.mkdirs();
			System.out.println("Save file location created!");
		}
		
		// Save game
		System.out.println("Saving save slot " + slot + "...");
		File saveFile = new File(directory_str + "/savedata"+slot+".dat");
		try{
			FileOutputStream fstream = new FileOutputStream (saveFile);
			ObjectOutputStream out = new ObjectOutputStream(fstream);
			out.writeObject(Empous.empireName);
			out.writeObject(Empous.Com);
			out.writeObject(Empous.Res);
			out.writeObject(Empous.Ind);
			out.writeObject(Empous.LM);
			out.writeObject(Empous.Inf);
			out.writeObject(Empous.Gov);
			out.flush();
			out.close();
		}
		catch(IOException e){
			System.out.println("Couldn't save to file!");
			System.exit(2);
		}
		System.out.println("Saved to file!");
		return slot;
	}