My problem is that I can run minecraft from a different folder, but when I run it, it is still using .minecraft folder. It saves the worlds there and so on. How can I run it like "everything get from and save to my folder"? I heard you can mod it to run from somewhere else, but I did not found it anywhere.
public static string generateSession(string username, string password, int clientVer)
{
return httpGET("https://login.minecraft.net?user=" + username + "&password=" + password + "&version=" + clientVer);
}
private static string httpGET(string URI)
{
WebRequest req = WebRequest.Create(URI);
WebResponse resp = req.GetResponse();
StreamReader sr = new StreamReader(resp.GetResponseStream());
return sr.ReadToEnd().Trim();
}
public static void startMinecraft(bool mode, int ramMin, int ramMax, string username, string sessionID, bool debug, int modpack)
{
string appPath = Path.GetDirectoryName(Application.ExecutablePath) + @"\";
string appData = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) + @"\";
string mcFolder;
//Launching a modpack
if (modpack == 0)
mcFolder = @".gslauncher\vanilla";
else mcFolder = @".gslauncher\gstech";
Process proc = new Process();
if (debug == true)
proc.StartInfo.FileName = "java";
else
proc.StartInfo.FileName = "javaw";
//Online and offline modes
if (mode == true)
proc.StartInfo.Arguments = "-Xms" + ramMin + "m -Xmx" + ramMax + "m -Djava.library.path=" + appData + mcFolder + "/bin/natives -cp " + appData + mcFolder + "/bin/minecraft.jar;" + appData + mcFolder + "/bin/jinput.jar;" + appData + mcFolder + "/bin/lwjgl.jar;" + appData + mcFolder + "/bin/lwjgl_util.jar net.minecraft.client.Minecraft " + username + " " + sessionID;
else
proc.StartInfo.Arguments = "-Xms" + ramMin + "m -Xmx" + ramMax + "m -Djava.library.path=" + appData + mcFolder + "/bin/natives -cp " + appData + mcFolder + "/bin/minecraft.jar;" + appData + mcFolder + "/bin/jinput.jar;" + appData + mcFolder + "/bin/lwjgl.jar;" + appData + mcFolder + "/bin/lwjgl_util.jar net.minecraft.client.Minecraft " + username;
proc.Start();
}
