Лаунчер + система скинов + авторизация + привязка к клиента к серверу

Apr 26, 2012 21:43


Что нам нужно:

Итак..Приступим!
1 ЧАСТЬ
Скачиваем NetBeans
Скачали, установили&http://edgi.ru/#8230;.
Жмём: Создать проект, дальше жмём Далее, убираем галочку с &http://edgi.ru/#171;Создать главный класс&http://edgi.ru/#187;
Создаём проект!
Сделано&http://edgi.ru/#8230;.
Теперь жмём правой кнопкой по проекту, и кликаем на Свойства.
Справа будет выведен список исходников&http://edgi.ru/#8230;.
Удаляем исходник, и добавляем тот, что мы скачали.Жмём ОК.
Открываем проект, и находим net.minecraft
Первое,что мы будем редактировать, это GameUpdater.java
Находим 170 строчку.

//http://edgi.ru/# Откуда скачивать
URL path = new URL(&http://edgi.ru/#171;http://s3.amazonaws.com/MinecraftDownload/ &http://edgi.ru/#171;);

Ссылку меняем на ссылку к загрузке файлов lwjgl.jar, jinput.jar, lwjgl_util.jar, minecraft.jar и windows_natives.jar.lzma

Теперь находим LoginForm.java. 188 строка

editorPane.setPage(new URL(&http://edgi.ru/#171;http://mcupdate.tumblr.com/&http://edgi.ru/#171;));

Меняем на свою ссылку на файл news.php (новости)
Официальная ссылка на новости: http://mcupdate.tumblr.com/news.php
Дальше на 299 строке ищем:

Util.openLink(new URL(&http://edgi.ru/#171;http://www.minecraft.net/register.jsp&http://edgi.ru/#171;).toURI());

Меняем на свою ссылку к регистрации&http://edgi.ru/#8230;

И последний класс, это LauncherFrame.java
На 101 строке находим:

String result = Util.excutePost(&http://edgi.ru/#171;https://login.minecraft.net/&http://edgi.ru/#171;, parameters);

Тут меняем ссылку на auth.php файл

Готово&http://edgi.ru/#8230;Жмём правой кнопкой по проекту>>Почистить и построить проект

Далее Выполнить&http://edgi.ru/#8230;ВЫБИРАЕМ ГЛАВНЫЙ КЛАСС: Net.MinecraftLauncher!!!!

Ваш лаунчер находится в папке dist вашего проекта!

Вроде всё готово..теперь надо сделать систему скинов + авторизацию&http://edgi.ru/#8230;

2 ЧАСТЬ
Создаём на сайте папку cpanel
В неё заливаем систему скинов byxar&http://edgi.ru/#8217;а
Залили, настраиваем файл connect.php

Там настраиваем&http://edgi.ru/#8230;всё расписано понятно!

Дальше нам надо будет зайти в вашу БД
Зашли&http://edgi.ru/#8230;Теперь надо залить файлы&http://edgi.ru/#8230;
Жмём Import.В папке системы скинов byxar&http://edgi.ru/#8217;а есть папка sql
Все файлы,которые имеются там, заливаем в БД.

Готово!

3 ЧАСТЬ

Итак&http://edgi.ru/#8230;У нас есть лаунчер&http://edgi.ru/#8230;.Теперь нам нужно отредактировать клиент, и сервер.
Начнём с Системы Скинов
Нам нужна программа InClassTranslator.
Извлекаем из minecraft.jar файлы(а не папки):

Редактируем в InClassTranslator&http://edgi.ru/#8217;е эти файлы&http://edgi.ru/#8230;
Ищем в классах строки, где есть ссылки на скины&http://edgi.ru/#8230;Их и меняем на свои=)
Потом эти файлы обратно заливаем в minecraft.jar
С системой скинов закончили, Congratulations!

4 часть(вроде последняя)

1 вариант
Нужен InClassTranslator.
Открываем minecraft.jar и заходим в net/minecraft/abm.class (для версии 1.2.3)

Меняем http://session.minecraft.net/game/joinserver.jsp?user=
на

http://ваш_путь_к_файлам_авторизации/joinserver.php?user=

Открываем ваше ядро сервера, то есть bukkit.jar и переходим к net/minecraft/server/ThreadLoginVerifier.class

Находим в нём http://session.minecraft.net/game/checkserver.jsp?user=
меняем на

http://ваш_путь_к_файлам_авторизации/checkserver.php?user=

2 вариант
Откройте папку MCP и закиньте клиентскую папку bin и ваше bukkit ядро в папку jars. Теперь В папке MCP запускаем батник Decompile.bat и ждём, пока всё декомпилируется.Потом откройте src\minecraft\net\minecraft\src\NetClientHandler.java в любом текстовом редакторе и замените

http://session.minecraft.net/game/joinserver.jsp?user=

на ссылку к файлу joinserver.php и обязательно оставьте ?user= в конце

Потом откройте src\minecraft_server\net\minecraft\src\ThreadLoginVerifier.java в любом текстовом редакторе и

замените

http://session.minecraft.net/game/checkserver.jsp?user=

на ссылку к файлу checkserver.php и обязательно оставьте ?user= в конце

Запускаем батник recompile.bat и reobfuscate.bat. Теперь закиньте файл в папке reobf\minecraft в minecraft.jar и файл в папке reobf\minecraft_server в Ваш(теперь Ваш) баккит. Все, запускайте сервер c параметром online-mode=true и пробуйте.

1 часть второго Туториала.
Сейчас нам понадобится вот этот исходник.
Редактирование самого лаунчера такое же, как и в 1 туториале!
Компилируйте и делайте лаунчер, изменяя свои ссылки.

Теперь, в папку загрузки вашего клиента добавьте файл client.zip
А в этот архив залейте папки, файлы и прочие фигнистики, которые вы используете
То есть, этот файл будет распаковывать папки и файлы, которые вы указали!

Например, я в него залью папку saves и файл ModLoader.txt&http://edgi.ru/#8230;
И эта папка и файл будет скачиваться в вашу папку!

Удачи!

Дополнения:
Убираем пароль в авторизации:
249 строка:

values.add(password);

Меняем на:

//values.add(password);

Далее 245 строка:

titles.add(new TransparentLabel(&http://edgi.ru/#171;Пароль:&http://edgi.ru/#187;, 4));

Меняем на:

//titles.add(new TransparentLabel(&http://edgi.ru/#171;Пароль:&http://edgi.ru/#187;, 4));

___________________________________________________________

Делаем лаунчер переводим .jar в .exe с помощью jar2exe:
Качаем jar2exe.

Запускаем, устанавливаем&http://edgi.ru/#8230;

оригинал статьи http://goo.gl/7Rmqc

поделится:




Originally published at edgi. You can comment here or there.

Игры, game, minecraft, игры

Previous post Next post
Up