Туториал Делаем лаунчер для своего сервера

  • Автор темы Автор темы Ccc
  • Дата начала Дата начала
скачал новый исходник с этой темы
"Ultimate-MC Launcher"; //Заголовок лаунчера
"alpha_2.0"; //Мастер-версия лаунчера
собрал и получается такая ошибка:

036 Обновлять minecraft.jar: true
037 Обновлять lwjgl.jar: true
038 Обновлять lwjgl_util.jar: true
039 Обновлять jinput.jar: true
040 Обновлять client.zip: true
041 Обновлять моды: false
minecraft.jar
java.lang.Exception: Файл не найден: minecraft.jar
at org.survivalserver.launcher.components.Panel_Updater.getJarInputStream(Panel_Updater.java:218)
at org.survivalserver.launcher.components.Panel_Updater$2.doRun(Panel_Updater.java:131)
at org.survivalserver.launcher.components.Panel_Updater$2.run(Panel_Updater.java:85)

что делать не знаю может кто подскажет откуда он хочет закачать обновления

ну так что некто не подскажет откуда он обновляется и как исправить эту ошибку
 
Возможно глупый вопрос.
Но как убрать кнопку "Регистрация" с лаунчера?
 
Возможно глупый вопрос.
Но как убрать кнопку "Регистрация" с лаунчера?
в файле news.php 19 строчке убери вот это:
<a style="text-decoration: none;" href="#register">Регистрация</a></div></td></tr></table>
и регистрации не будет лаунчере
 
У меня проблема, в чём не знаю.
Пишет :
HTML:
000 Открыто локальное изображение: transparent.png
001 ****sashok724's launcher****
002 Установка LnF...
003 Выполнение отладочных функций...
004 Открыто локальное изображение: minecraft_favicon.png
005 Открыто локальное изображение: minecraft_background.png
006 Открыто локальное изображение: minecraft_logo.png
007 Обновление темы лаунчера...
008 Обновление страницы новостей...
009 Открываю соединение: http://simplecraft.p.ht/launcher/launcher.php?action=getsettings
010 Соединение с http://simplecraft.p.ht/launcher/launcher.php?action=getsettings успешно установлено, возвращаю ответ:
011    ""
012 Загрузка настроек с сервера...
013 Разделяю строку на части: "", символ: "#"
014    ""
015 Разделение строки "" закончено, элементов: 1
[COLOR=#ff0000]Exception in thread "Thread-4" java.lang.ArrayIndexOutOfBoundsException: 1[/COLOR]
[COLOR=#ff0000]    at org.survivalserver.launcher.utils.BaseUtils$1.run(BaseUtils.java:177)[/COLOR]
016 Открыто локальное изображение: favicon.png
017 Открыто локальное изображение: background.png
018 Открыто локальное изображение: logo.png
019 Обновление темы лаунчера...[/code]
Вот что написано в Settings.java:
Код:
package org.survivalserver.launcher;
 
import org.survivalserver.launcher.components.UI_Theme;
import org.survivalserver.launcher.themes.Aperture;
import org.survivalserver.launcher.themes.Default;
import org.survivalserver.launcher.themes.DevMC;
import org.survivalserver.launcher.themes.Minecraft;
 
public class Settings
{   
    /** Настройка заголовка лаунчера */
    public static String        title              = "SimpleCraft Launcher"; //Заголовок лаунчера
    public static String        titleInGame      = "SimpleCraft"; //Заголовок лаунчера после авторизации
    public static String        basedir            = "AppData"; //Родительская папка для Minecraft (только для Windows) [ProgramFiles, AppData]
    public static String          dir              = ".SimpleCraft";//Папка с Minecraft
   
    /** Параметры подключения */
    public static final String    domain              = "simplecraft.p.ht";//Домен сайта
    public static final String  siteDir              = "launcher";//Папка с файлами лаунчера на сайте
   
    /** Для одиночной игры */
    public static final String defaultUsername    = "Player"; //Имя пользователя для одиночной игры
    public static final String defaultSession      = "123456"; //Номер сессии для одиночной игры
   
    /** Настройка серверов */
    public static final String[] servers =
    {
        "SimpleCraft - Sandbox, sv1.ensemplix.ru, 25565", //Удалите, если Вы не хотите, что бы игроки вашего сервера могли зайти в одиночную игру
    };
 
    /** Настройки структуры лаунчера */
    public static boolean useOnlineSetts        =  true; //Использовать настройки из интернета (Темы, заголовки, тд)
    public static boolean useAutoenter            =  true; //Использовать функцию автозахода на выбранный сервер
    public static boolean useFullscreen            =  true; //Разворачивать клиент на весь экран при запуске
    public static boolean useModCheck            =  false; //ВНИМАНИЕ! Функция в тесте, если проверка работает неправильно - выключите!
    public static boolean removeBeforeUpdate    =  true; //Удалять содержимое некоторых папок перед обновлением
    public static boolean useMulticlient        =  true; //Использовать функцию "по клиенту на сервер"
    public static boolean useStandartWB            =  true; //Использовать стандартный браузер для открытия ссылок
    public static boolean useExtendStyle        =  true; //Использовать расширеные стили для компонентов (Пока только текстовые поля)
    public static boolean usePersonal              =  true; //Использовать ЛК
   
    public static UI_Theme[] themes =
    {
        new Default(),
        new DevMC(),
        new Aperture(),
        new Minecraft()
    };
   
    /** Всё, что ниже, не трогать! */
    public static final boolean debug              =  true;
    public static final String masterVersion      = "alpha_2.0";
   
    public static void onStart()
    {
       
    }
}
 
У меня проблема, в чём не знаю.
Пишет :
HTML:
000 Открыто локальное изображение: transparent.png
001 ****sashok724's launcher****
002 Установка LnF...
003 Выполнение отладочных функций...
004 Открыто локальное изображение: minecraft_favicon.png
005 Открыто локальное изображение: minecraft_background.png
006 Открыто локальное изображение: minecraft_logo.png
007 Обновление темы лаунчера...
008 Обновление страницы новостей...
009 Открываю соединение: http://simplecraft.p.ht/launcher/launcher.php?action=getsettings
010 Соединение с http://simplecraft.p.ht/launcher/launcher.php?action=getsettings успешно установлено, возвращаю ответ:
011    ""
012 Загрузка настроек с сервера...
013 Разделяю строку на части: "", символ: "#"
014    ""
015 Разделение строки "" закончено, элементов: 1
[COLOR=#ff0000]Exception in thread "Thread-4" java.lang.ArrayIndexOutOfBoundsException: 1[/COLOR]
[COLOR=#ff0000]    at org.survivalserver.launcher.utils.BaseUtils$1.run(BaseUtils.java:177)[/COLOR]
016 Открыто локальное изображение: favicon.png
017 Открыто локальное изображение: background.png
018 Открыто локальное изображение: logo.png
019 Обновление темы лаунчера...[/code]
Вот что написано в Settings.java:
Код:
package org.survivalserver.launcher;
 
import org.survivalserver.launcher.components.UI_Theme;
import org.survivalserver.launcher.themes.Aperture;
import org.survivalserver.launcher.themes.Default;
import org.survivalserver.launcher.themes.DevMC;
import org.survivalserver.launcher.themes.Minecraft;
 
public class Settings
{
    /** Настройка заголовка лаунчера */
    public static String        title              = "SimpleCraft Launcher"; //Заголовок лаунчера
    public static String        titleInGame      = "SimpleCraft"; //Заголовок лаунчера после авторизации
    public static String        basedir            = "AppData"; //Родительская папка для Minecraft (только для Windows) [ProgramFiles, AppData]
    public static String          dir              = ".SimpleCraft";//Папка с Minecraft
 
    /** Параметры подключения */
    public static final String    domain              = "simplecraft.p.ht";//Домен сайта
    public static final String  siteDir              = "launcher";//Папка с файлами лаунчера на сайте
 
    /** Для одиночной игры */
    public static final String defaultUsername    = "Player"; //Имя пользователя для одиночной игры
    public static final String defaultSession      = "123456"; //Номер сессии для одиночной игры
 
    /** Настройка серверов */
    public static final String[] servers =
    {
        "SimpleCraft - Sandbox, sv1.ensemplix.ru, 25565", //Удалите, если Вы не хотите, что бы игроки вашего сервера могли зайти в одиночную игру
    };
 
    /** Настройки структуры лаунчера */
    public static boolean useOnlineSetts        =  true; //Использовать настройки из интернета (Темы, заголовки, тд)
    public static boolean useAutoenter            =  true; //Использовать функцию автозахода на выбранный сервер
    public static boolean useFullscreen            =  true; //Разворачивать клиент на весь экран при запуске
    public static boolean useModCheck            =  false; //ВНИМАНИЕ! Функция в тесте, если проверка работает неправильно - выключите!
    public static boolean removeBeforeUpdate    =  true; //Удалять содержимое некоторых папок перед обновлением
    public static boolean useMulticlient        =  true; //Использовать функцию "по клиенту на сервер"
    public static boolean useStandartWB            =  true; //Использовать стандартный браузер для открытия ссылок
    public static boolean useExtendStyle        =  true; //Использовать расширеные стили для компонентов (Пока только текстовые поля)
    public static boolean usePersonal              =  true; //Использовать ЛК
 
    public static UI_Theme[] themes =
    {
        new Default(),
        new DevMC(),
        new Aperture(),
        new Minecraft()
    };
 
    /** Всё, что ниже, не трогать! */
    public static final boolean debug              =  true;
    public static final String masterVersion      = "alpha_2.0";
 
    public static void onStart()
    {
   
    }
}
стартовый класс - starter.java
 
стартовый класс - starter.java
А что там надо исправить?
starter.java:
Код:
package org.survivalserver.launcher;
 
import java.util.ArrayList;
 
import org.survivalserver.launcher.utils.BaseUtils;
 
public class Starter
{
    public static int memory;
   
    public static void main(String[] args) throws Exception
    {
        memory = BaseUtils.getPropertyInt("memory", 1024);
        if ((float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L) > 511.0F) Main.main(args);
        else try
        {
            String jar = Starter.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
            ArrayList<String> params = new ArrayList<String>();
            if (BaseUtils.getPlatform() == 2) params.add("javaw");
            else params.add("java");
            params.add("-Xmx" + memory + "m");
            params.add("-Xms" + memory + "m");
            params.add("-classpath");
            params.add(jar);
            params.add("org.survivalserver.launcher.Main");
           
            ProcessBuilder pb = new ProcessBuilder(params);
            Process process = pb.start();
            if(process == null) throw new Exception("!");
            System.exit(0);
        } catch (Exception e)
        {
            e.printStackTrace();
            Main.main(args);
        }
    }
}
 
А что там надо исправить?
starter.java:
Код:
package org.survivalserver.launcher;
 
import java.util.ArrayList;
 
import org.survivalserver.launcher.utils.BaseUtils;
 
public class Starter
{
    public static int memory;
 
    public static void main(String[] args) throws Exception
    {
        memory = BaseUtils.getPropertyInt("memory", 1024);
        if ((float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L) > 511.0F) Main.main(args);
        else try
        {
            String jar = Starter.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
            ArrayList<String> params = new ArrayList<String>();
            if (BaseUtils.getPlatform() == 2) params.add("javaw");
            else params.add("java");
            params.add("-Xmx" + memory + "m");
            params.add("-Xms" + memory + "m");
            params.add("-classpath");
            params.add(jar);
            params.add("org.survivalserver.launcher.Main");
         
            ProcessBuilder pb = new ProcessBuilder(params);
            Process process = pb.start();
            if(process == null) throw new Exception("!");
            System.exit(0);
        } catch (Exception e)
        {
            e.printStackTrace();
            Main.main(args);
        }
    }
}
его просто нужно поставить в запускаемый класс
 
желательно сам лог и settings.java
Лог:
Код:
000 Открыто локальное изображение: transparent.png
001 ****sashok724's launcher****
002 Установка LnF...
003 Выполнение отладочных функций...
004 Открыто локальное изображение: favicon.png
005 Открыто локальное изображение: background.png
006 Открыто локальное изображение: logo.png
007 Обновление темы лаунчера...
008 Обновление страницы новостей...
009 Открываю соединение: http://simplecraft.p.ht/launcher/launcher.php?action=getsettings
010 Соединение с http://simplecraft.p.ht/launcher/launcher.php?action=getsettings успешно установлено, возвращаю ответ:
011    ""
012 Загрузка настроек с сервера...
013 Разделяю строку на части: "", символ: "#"
014    ""
015 Разделение строки "" закончено, элементов: 1
Exception in thread "Thread-4" java.lang.ArrayIndexOutOfBoundsException: 1
    at org.survivalserver.launcher.utils.BaseUtils$1.run(BaseUtils.java:177)
016 Открываю соединение: http://simplecraft.p.ht/launcher/launcher.php?action=getserverstatus&addr=sv1.ensemplix.ru&port=25565
017 Соединение с http://simplecraft.p.ht/launcher/launcher.php?action=getserverstatus&addr=sv1.ensemplix.ru&port=25565 успешно установлено, возвращаю ответ:
018    ""
019 Лаунчер закрыт


Settings.java:
};

/** Настройки структуры лаунчера */
public static boolean useOnlineSetts= true; //Использовать настройки из интернета (Темы, заголовки, тд)
public static boolean useAutoenter= true; //Использовать функцию автозахода на выбранный сервер
public static boolean useFullscreen= true; //Разворачивать клиент на весь экран при запуске
public static boolean useModCheck= true; //ВНИМАНИЕ! Функция в тесте, если проверка работает неправильно - выключите!
public static boolean removeBeforeUpdate= true; //Удалять содержимое некоторых папок перед обновлением
public static boolean useMulticlient= true; //Использовать функцию "по клиенту на сервер"
public static boolean useStandartWB= true; //Использовать стандартный браузер для открытия ссылок
public static boolean useExtendStyle= true; //Использовать расширеные стили для компонентов (Пока только текстовые поля)
public static boolean usePersonal= true; //Использовать ЛК

public static UI_Theme[] themes =
{
new Default(),
new DevMC(),
new Aperture(),
new Minecraft()
};

/** Всё, что ниже, не трогать! */
public static final boolean debug= true;
public static final String masterVersion = "alpha_2.0";

public static void onStart()
{

}
}

Starter.java:
Код:
package org.survivalserver.launcher;
 
import java.util.ArrayList;
 
import org.survivalserver.launcher.utils.BaseUtils;
 
public class Starter
{
    public static int memory;
 
    public static void main(String[] args) throws Exception
    {
        memory = BaseUtils.getPropertyInt("memory", 1024);
        if ((float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L) > 511.0F) Main.main(args);
        else try
        {
            String jar = Starter.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
            ArrayList<String> params = new ArrayList<String>();
            if (BaseUtils.getPlatform() == 2) params.add("javaw");
            else params.add("java");
            params.add("-Xmx" + memory + "m");
            params.add("-Xms" + memory + "m");
            params.add("-classpath");
            params.add(jar);
            params.add("org.survivalserver.launcher.Main");
     
            ProcessBuilder pb = new ProcessBuilder(params);
            Process process = pb.start();
            if(process == null) throw new Exception("!");
            System.exit(0);
        } catch (Exception e)
        {
            e.printStackTrace();
            Main.main(args);
        }
    }
}

Разное:
  • Я изменял только Settings.java
  • Стартовый класс Settings.java
  • У меня сайт находится на хостингере (но по логам ошибка не в этом)
  • Лаунчер "Сашка" (если не увидел)
 
Что то с лаунчер.php?
 
Лог:
Код:
000 Открыто локальное изображение: transparent.png
001 ****sashok724's launcher****
002 Установка LnF...
003 Выполнение отладочных функций...
004 Открыто локальное изображение: favicon.png
005 Открыто локальное изображение: background.png
006 Открыто локальное изображение: logo.png
007 Обновление темы лаунчера...
008 Обновление страницы новостей...
009 Открываю соединение: http://simplecraft.p.ht/launcher/launcher.php?action=getsettings
010 Соединение с http://simplecraft.p.ht/launcher/launcher.php?action=getsettings успешно установлено, возвращаю ответ:
011    ""
012 Загрузка настроек с сервера...
013 Разделяю строку на части: "", символ: "#"
014    ""
015 Разделение строки "" закончено, элементов: 1
Exception in thread "Thread-4" java.lang.ArrayIndexOutOfBoundsException: 1
    at org.survivalserver.launcher.utils.BaseUtils$1.run(BaseUtils.java:177)
016 Открываю соединение: http://simplecraft.p.ht/launcher/launcher.php?action=getserverstatus&addr=sv1.ensemplix.ru&port=25565
017 Соединение с http://simplecraft.p.ht/launcher/launcher.php?action=getserverstatus&addr=sv1.ensemplix.ru&port=25565 успешно установлено, возвращаю ответ:
018    ""
019 Лаунчер закрыт


Settings.java:
};

/** Настройки структуры лаунчера */
public static boolean useOnlineSetts= true; //Использовать настройки из интернета (Темы, заголовки, тд)
public static boolean useAutoenter= true; //Использовать функцию автозахода на выбранный сервер
public static boolean useFullscreen= true; //Разворачивать клиент на весь экран при запуске
public static boolean useModCheck= true; //ВНИМАНИЕ! Функция в тесте, если проверка работает неправильно - выключите!
public static boolean removeBeforeUpdate= true; //Удалять содержимое некоторых папок перед обновлением
public static boolean useMulticlient= true; //Использовать функцию "по клиенту на сервер"
public static boolean useStandartWB= true; //Использовать стандартный браузер для открытия ссылок
public static boolean useExtendStyle= true; //Использовать расширеные стили для компонентов (Пока только текстовые поля)
public static boolean usePersonal= true; //Использовать ЛК

public static UI_Theme[] themes =
{
new Default(),
new DevMC(),
new Aperture(),
new Minecraft()
};

/** Всё, что ниже, не трогать! */
public static final boolean debug= true;
public static final String masterVersion = "alpha_2.0";

public static void onStart()
{

}
}

Starter.java:
Код:
package org.survivalserver.launcher;
 
import java.util.ArrayList;
 
import org.survivalserver.launcher.utils.BaseUtils;
 
public class Starter
{
    public static int memory;
 
    public static void main(String[] args) throws Exception
    {
        memory = BaseUtils.getPropertyInt("memory", 1024);
        if ((float)(Runtime.getRuntime().maxMemory() / 1024L / 1024L) > 511.0F) Main.main(args);
        else try
        {
            String jar = Starter.class.getProtectionDomain().getCodeSource().getLocation().toURI().getPath();
            ArrayList<String> params = new ArrayList<String>();
            if (BaseUtils.getPlatform() == 2) params.add("javaw");
            else params.add("java");
            params.add("-Xmx" + memory + "m");
            params.add("-Xms" + memory + "m");
            params.add("-classpath");
            params.add(jar);
            params.add("org.survivalserver.launcher.Main");
   
            ProcessBuilder pb = new ProcessBuilder(params);
            Process process = pb.start();
            if(process == null) throw new Exception("!");
            System.exit(0);
        } catch (Exception e)
        {
            e.printStackTrace();
            Main.main(args);
        }
    }
}

Разное:
  • Я изменял только Settings.java
  • Стартовый класс Settings.java
  • У меня сайт находится на хостингере (но по логам ошибка не в этом)
  • Лаунчер "Сашка" (если не увидел)
Лаунчер не нашел знака # в строке. Поэтому вот такая ошибонька. Идем вот сюда, обращаемся к другим пользователям)
 
Прошу всех меня простить:я был в больнице последние 10 дней и по этому не отвечал на вопросы. Исправлюсь.:oops:
 
Назад
Верх