Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.
  • Данный раздел создан исключительно для релизов! Вопросы по лаунчеру или обвязке задавайте ТОЛЬКО в соответсвующей теме автора. Любые другие темы будут удалены, а авторы понесут наказание.

Лаунчер [Source] Лаунчер от maximusorg(update 4.0)

память выделялась начиная с версии 3.0 и 3.1.
Все как было так и осталось память не меняется. Фикса для Forge и md5 тоже нет.
1) String f = applicationData + "/.mstag/bin/minecraft.jar"; (Нужно было вывести в конфик чтоб не менять имя папки в 2х местах.
2) Тоже вывести в конфиг URL localURL = new URL("http://mstag.ru/update/md5.php?hash=" + p);
3) Изменить код MinecraftLauncher чтоб он читал память из конфига лаунчера пример ниже.
Java:
package net.minecraft;
 
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Properties;
 
public class MinecraftLauncher
{
public static String memoryId;
 
  public static void main(String[] args)
 
    throws Exception
  {
    float heapSizeMegs = (float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L);
   
    try {
        Properties defaultProps = new Properties();
        FileInputStream in;
        in = new FileInputStream(Util.getWorkingDirectory() + "/launcher.properties");
        defaultProps.load(in);
 
        memoryId = defaultProps.getProperty("memory");
                       
        in.close();
        }catch (IOException e1){
        }
 
    if (heapSizeMegs > 511.0F)
      LauncherFrame.main(args);
    else
      try {
         
          String pathToJar = MinecraftLauncher.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
 
        ArrayList<String> params = new ArrayList<String>();
 
        if (Util.getPlatform() == Util.OS.windows) {
            params.add("javaw");
        } else {
            params.add("java");
        }
        params.add("-Xmx" + memoryId + "m");
        params.add("-Dsun.java2d.noddraw=true");
        params.add("-Dsun.java2d.d3d=false");
        params.add("-Dsun.java2d.opengl=false");
        params.add("-Dsun.java2d.pmoffscreen=false");
        if (System.getProperty("net.minecraft.server") != null)
                params.add("-Dnet.minecraft.server="
                        + System.getProperty("net.minecraft.server"));
        params.add("-classpath");
        params.add(pathToJar);
        params.add("net.minecraft.LauncherFrame");
 
        ProcessBuilder pb = new ProcessBuilder(params);
        Process process = pb.start();
        if (process == null) throw new Exception("!");
        System.exit(0);
      } catch (Exception e) {
        e.printStackTrace();
        LauncherFrame.main(args);
      }
  }
}
 
Все как было так и осталось память не меняется. Фикса для Forge и md5 тоже нет.
1) String f = applicationData + "/.mstag/bin/minecraft.jar"; (Нужно было вывести в конфик чтоб не менять имя папки в 2х местах.
2) Тоже вывести в конфиг URL localURL = new URL("http://mstag.ru/update/md5.php?hash=" + p);
3) Изменить код MinecraftLauncher чтоб он читал память из конфига лаунчера пример ниже.
Java:
package net.minecraft;
 
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Properties;
 
public class MinecraftLauncher
{
public static String memoryId;
 
  public static void main(String[] args)
 
    throws Exception
  {
    float heapSizeMegs = (float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L);
 
    try {
        Properties defaultProps = new Properties();
        FileInputStream in;
        in = new FileInputStream(Util.getWorkingDirectory() + "/launcher.properties");
        defaultProps.load(in);
 
        memoryId = defaultProps.getProperty("memory");
                     
        in.close();
        }catch (IOException e1){
        }
 
    if (heapSizeMegs > 511.0F)
      LauncherFrame.main(args);
    else
      try {
       
          String pathToJar = MinecraftLauncher.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
 
        ArrayList<String> params = new ArrayList<String>();
 
        if (Util.getPlatform() == Util.OS.windows) {
            params.add("javaw");
        } else {
            params.add("java");
        }
        params.add("-Xmx" + memoryId + "m");
        params.add("-Dsun.java2d.noddraw=true");
        params.add("-Dsun.java2d.d3d=false");
        params.add("-Dsun.java2d.opengl=false");
        params.add("-Dsun.java2d.pmoffscreen=false");
        if (System.getProperty("net.minecraft.server") != null)
                params.add("-Dnet.minecraft.server="
                        + System.getProperty("net.minecraft.server"));
        params.add("-classpath");
        params.add(pathToJar);
        params.add("net.minecraft.LauncherFrame");
 
        ProcessBuilder pb = new ProcessBuilder(params);
        Process process = pb.start();
        if (process == null) throw new Exception("!");
        System.exit(0);
      } catch (Exception e) {
        e.printStackTrace();
        LauncherFrame.main(args);
      }
  }
}
фикс форжа есть. В первом посте читай. Идиот. Память выделяется отлично, но на 32бит яве не будет выделяться больше чем 1гиг.
 
фикс форжа есть. В первом посте читай. Идиот. Память выделяется отлично, но на 32бит яве не будет выделяться больше чем 1гиг.

Ну как знаешь. Я тебе показал то что надо исправить. Решать тебе игнорить и считать что все так и должно быть. Или все таки поправить и не мучить нубов :). Я то все это уже давно исправил. И выкладывал в теме для остальных. Но было бы лучше еслиб ты сам добавил все фиксы. Хотя видимо твоих знаний в яве еще меньше моих и тебе тупо не понять что нужно исправлять..
 
Ну как знаешь. Я тебе показал то что надо исправить. Решать тебе игнорить и считать что все так и должно быть. Или все таки поправить и не мучить нубов :). Я то все это уже давно исправил. И выкладывал в теме для остальных. Но было бы лучше еслиб ты сам добавил все фиксы. Хотя видимо твоих знаний в яве еще меньше моих и тебе тупо не понять что нужно исправлять..
хех, тебе не понять. Я же сказал, все мои клиенты остались довольны проделанной работой. Всё работает, но видимо ты не втупляешь то, что на разных компьютерах бывают разные проблемы. И если не работает у тебя, не значит не работает у других.
 
хех, тебе не понять. Я же сказал, все мои клиенты остались довольны проделанной работой. Всё работает, но видимо ты не втупляешь то, что на разных компьютерах бывают разные проблемы. И если не работает у тебя, не значит не работает у других.
Ну ок могу носом ткнуть на 1 из ошибок
Java:
package ru.maximusorg.launcher;
 
import java.util.ArrayList;
 
public class MinecraftLauncher
{
  //private static final int MIN_HEAP = 511;
  //private static final int RECOMMENDED_HEAP = 1024;
 
  public static void main(String[] args)
    throws Exception
  {
    float heapSizeMegs = (float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L);
 
    if (heapSizeMegs > 511.0F)
      LauncherFrame.main(args);
    else
      try {
        String pathToJar = MinecraftLauncher.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
 
        ArrayList<String> params = new ArrayList<String>();
 
        params.add("javaw");
        params.add("-Xms512m");
        params.add("-Xmx1024m");
        params.add("-Dsun.java2d.noddraw=true");
        params.add("-Dsun.java2d.d3d=false");
        params.add("-Dsun.java2d.opengl=false");
        params.add("-Dsun.java2d.pmoffscreen=false");
        params.add("-classpath");
        params.add(pathToJar);
        params.add("ru.maximusorg.launcher.LauncherFrame");
 
        ProcessBuilder pb = new ProcessBuilder(params);
        Process process = pb.start();
        if (process == null) throw new Exception("!");
        System.exit(0);
      } catch (Exception e) {
        e.printStackTrace();
        LauncherFrame.main(args);
      }
  }
}
И в каком месте он читает память из коныфига? Тут тупо фиксированая
params.add("-Xms512m");
params.add("-Xmx1024m");
И не надо меня лечить. Признался бы сразу что не шаришь в этом все поймут.
 
Ну ок могу носом ткнуть на 1 из ошибок
Java:
package ru.maximusorg.launcher;
 
import java.util.ArrayList;
 
public class MinecraftLauncher
{
  //private static final int MIN_HEAP = 511;
  //private static final int RECOMMENDED_HEAP = 1024;
 
  public static void main(String[] args)
    throws Exception
  {
    float heapSizeMegs = (float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L);
 
    if (heapSizeMegs > 511.0F)
      LauncherFrame.main(args);
    else
      try {
        String pathToJar = MinecraftLauncher.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
 
        ArrayList<String> params = new ArrayList<String>();
 
        params.add("javaw");
        params.add("-Xms512m");
        params.add("-Xmx1024m");
        params.add("-Dsun.java2d.noddraw=true");
        params.add("-Dsun.java2d.d3d=false");
        params.add("-Dsun.java2d.opengl=false");
        params.add("-Dsun.java2d.pmoffscreen=false");
        params.add("-classpath");
        params.add(pathToJar);
        params.add("ru.maximusorg.launcher.LauncherFrame");
 
        ProcessBuilder pb = new ProcessBuilder(params);
        Process process = pb.start();
        if (process == null) throw new Exception("!");
        System.exit(0);
      } catch (Exception e) {
        e.printStackTrace();
        LauncherFrame.main(args);
      }
  }
}
И в каком месте он читает память из коныфига? Тут тупо фиксированая
params.add("-Xms512m");
params.add("-Xmx1024m");
И не надо меня лечить. Признался бы сразу что не шаришь в этом все поймут.
Это параметры запуска лаунчера по умолчанию:fp:
 
Это параметры запуска лаунчера по умолчанию:fp:
Вот именно и она не меняется.
А так он читает ее из конфига и можно менять
Java:
package net.minecraft;
 
import java.io.FileInputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Properties;
 
public class MinecraftLauncher
{
public static String memoryId;
 
  public static void main(String[] args)
 
    throws Exception
  {
    float heapSizeMegs = (float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L);
 
    try {
        Properties defaultProps = new Properties();
        FileInputStream in;
        in = new FileInputStream(Util.getWorkingDirectory() + "/launcher.properties");
        defaultProps.load(in);
 
        memoryId = defaultProps.getProperty("memory");
 
        in.close();
        }catch (IOException e1){
        }
 
    if (heapSizeMegs > 511.0F)
      LauncherFrame.main(args);
    else
      try {
 
          String pathToJar = MinecraftLauncher.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
 
        ArrayList<String> params = new ArrayList<String>();
 
        if (Util.getPlatform() == Util.OS.windows) {
            params.add("javaw");
        } else {
            params.add("java");
        }
        params.add("-Xmx" + memoryId + "m");
        params.add("-Dsun.java2d.noddraw=true");
        params.add("-Dsun.java2d.d3d=false");
        params.add("-Dsun.java2d.opengl=false");
        params.add("-Dsun.java2d.pmoffscreen=false");
        if (System.getProperty("net.minecraft.server") != null)
                params.add("-Dnet.minecraft.server="
                        + System.getProperty("net.minecraft.server"));
        params.add("-classpath");
        params.add(pathToJar);
        params.add("net.minecraft.LauncherFrame");
 
        ProcessBuilder pb = new ProcessBuilder(params);
        Process process = pb.start();
        if (process == null) throw new Exception("!");
        System.exit(0);
      } catch (Exception e) {
        e.printStackTrace();
        LauncherFrame.main(args);
      }
  }
}
 
Все работает как часы, спасибо за фикс alexandrage.
Только возникает вопрос. Если изменилась версия лаунчера на сервере - лаунчер выдает ошибку Old Version, но как сказал автор лаунчера он должен перенаправлять на сайт для скачки нового лаунчера. Что и не происходит.
Если поправите это и переведете Old Version(O-o бред, в исходниках не нашел строки), то буду очень благодарен.
 
@maximusorg, Залил бы мой фикс тогда рас руки не доходят довести до ума самому.
http://alexandrage.dyndns.org:8081/maximusor-Forge-fix.zip

alexandrage, использую ваш фикс, все работает как часы, в отличии от версии от maximusorg, с которой были траблы, в т.ч. с форджем.
спасибо!
 
Все работает как часы, спасибо за фикс alexandrage.
Только возникает вопрос. Если изменилась версия лаунчера на сервере - лаунчер выдает ошибку Old Version, но как сказал автор лаунчера он должен перенаправлять на сайт для скачки нового лаунчера. Что и не происходит.
Если поправите это и переведете Old Version(O-o бред, в исходниках не нашел строки), то буду очень благодарен.
Пофиксил. Вывел в конфиг.
Java:
public static String Bad = "Bad login"; //Должно совпадать с ответом от скрипта
public static String Badv = "Bad version"; //Должно совпадать с ответом от скрипта
 
Пофиксил. Вывел в конфиг.
Java:
public static String Bad = "Bad login"; //Должно совпадать с ответом от скрипта
public static String Badv = "Bad version"; //Должно совпадать с ответом от скрипта
Ссылочку на скачку можно?
 
Столкнулся с маленькой проблемой, ланч распаковует моды хз куда или что то около того =) Может кто подсказать?
Java:
Enter path to extract files:
client\Client\mods\CustomMobSpawner 1.11.zip 18372 (18372)
client\Client\mods\DamageIndicators1.4.62.3.6.zip 97881 (97881)
client\Client\mods\DrZharks MoCreatures Mod v4.5.1.zip 16754537 (16754537)
client\Client\mods\ExtrabiomesXL-universal-1.4.7-3.10.0.jar 348744 (348744)
client\Client\mods\MoreBlockz-1.4.7.zip 96878 (96878)
client\Client\mods\Rei-Minimap-Mod-1.4.7.zip 243784 (243784)
client\Client\mods\rei_minimap\keyconfig.txt 322 (322)
client\Client\mods\rei_minimap\option.txt 1029 (1029)
client\Client\mods\__rzi_0.237 97518 (97518)
Done!
 
Настроил конфиг лаунчера и веб-часть, но при входе (в лаунчере) пишет "Неправильный логин или пароль". Как я понял проблема кроется в связке с БД. Не подскажите, где искать проблему?

P.S. После заливки веб-части @alexandrage у меня получилось два connect.php: один находится в корне сайта, а другой в MinecraftDownload. Так должно быть?
 

Поделиться этой страницей

Назад
Верх