Guicraft лаунчер, написанный на Object Pascal в среде Delphi 2007


с. 1
GUICraft v7.2+ All-In-One

Minecraft 1.4.6 + lwjgl 2.8.4

+скины и плащи без регистраций и прочего мракобесия

guicraft logo.jpg

GUICraft - лаунчер, написанный на Object Pascal в среде Delphi 2007.



Что он умеет:
1) Запуск Minecraft =)
2) Ручное выделение памяти (в МБ)
3) Смена ника
4) Проверка основных библиотек и *.jar-файлов в панели, стилизованной под POST-экран базовой системы ввода-вывода. Если что, POST = Power-On Self Test, самотестирование при загрузке
5) Информация о памяти
6) Быстрый доступ к папке Minecraft и директории, где находится GUICraft
7) Автоматическое определение пути к папке AppData
8) Обновление Minecraft через суровый FTP на базе кошерной, ИМХО лучшей в своём роде библиотеки Synapse (не вручную же все процедуры писать!)
9) Ручной ввод расположения Java (по хардкору, ибо раз в тысячу лет (в основном, у школьников людей, страдающих острой формой криворучия) случается так, что используется 32-х битная джава вместо 64х-битной на 64х-битной ОС, а отсюда все тормоза и часто Out of memory)
10) Определение локального IP-адреса
11) Удобная статусная панелька внизу, повествующая о состоянии ini-файла с настройками, правильности пути к Java и статусе текущей версии Minecraft.
12) Удаление ini-файла кнопкой
14) Система скинов и плащей без регистрации ;)
15) True Exit! Ну как же, в любой уважающей себя программе должна быть кнопка быстрого и удобного выхода =) Всем Application.Terminate, посоны!
16) Подключаемые библиотеки

Преимущества над остальными подобными лаунчерами:
1) Скорость работы (всё же Object Pascal, а не медленные С++ или Java)
2) Удобство
3) Настраиваемость
4) Наглядность
5) Быстрый доступ ко всем папкам
6) Маленький размер (спасибо upx'у и Delphi 2007)
7) Многопоточность
8) Цветные лэйблы
9) Система скинов не требует регистрации где бы то ни было. Скины и плащи всем, даром, и пусть никто не уйдёт обиженным!
10) True Exit


Вид спереди:

72.png
Расширение ESV.
Подойдёт для тех, кто держит сервер: добавлена форма для локального и дистанционного (удалённого) запуска\остановки вашего сервера. Зачем нужно дистанционное управление, может быть спросите вы? Ну вот представьте: пришли вы с работы домой, купили пивища, решили уйти в запой хотите отдохнуть, а тут народ требует включить сервер. Вот, собственно, народ этот пусть и включает сам себе ваш сервер. Управление сервером через лёгкий клиент, передача команд через сокеты (из стандартного набора).

Сервер:

server51.png

Client:
client51.png


Настройки всего этого дела:
1) Пишете ваш ник в поле Nickname
2) Пишете адрес к вашей Джаве
3) Задаёте минимальный и максимальный размер размещаемой джавой памяти (в МБ)
4) Щёлкаете "Сохранить настройки" - создаётся ini-файл с вашими настройками в папке с Minecraft'ом. То есть, при следующем запуске все настройки сохранятся.

Обновление Minecraft:
1) Щёлкаете кнопку "Обновление и система скинов"
2) В открывшемся окне выбираете интересующий вас вариант:
3) Загрузка продолжается и после закрытия окна FTPClient'a

FTPClient:


72ftp.png
Настроим расширение ESV:

Серверная часть:
1) Порт сокета - это порт, в котором будет происходить приём команд от клиентской части для дистанционного управления сервером. По умолчанию 65533. НЕ ДОЛЖЕН совпадать с портом вашего сервера Minecraft. Итак, порт задаётся любым целым числом в диапазоне от 0 до 65533 включительно.
2) Путь - путь к вашему лаунчеру сервера.
3) Заголовок - это заголовок окна с вашим сервером (с тем, что вы написали в поле "Путь"). Вот допустим вы запускаете сервер из командного файла напрямую (то есть, не с ярлыка). Смотрите на открывшееся окно сервера. И наверху, где кнопки "Закрыть", "Свернуть", "Развернуть", есть надпись - вот это и есть заголовок окна. Он должен быть переписан полностью, с соблюдением регистра. В случае командного файла, заголовок будет C:\Windows\system32\cmd.exe - вот его и пишете в пункт "Заголовок".
4) Сохраняете настройки.
Готово.
Кнопки "Запустить" и "Остановить" - кнопки локального запуска и остановки (будет запущен сервер с текущим IP (изменяется поле server-ip в файле server.properties, лаунчер сервера должен лежать в папке, где находится весь сервер и файл server.properties); для открытия порта (чтобы можно было дистанционно управлять сервером) следует нажать кнопку "Открыть порт". Сообщения порта выводятся в соответствующую панель.

GUI Server Automatization System: система, предназначенная для автоматического перезапуска сервера при смене IP. Изменяется IP в поле server-ip в файле server.properties (для этого лаунчер сервера должен находиться там же, где и файл server.properties). Интервал проверки IP выставляется в миллисекундах.

Клиентская часть:
Кнопки "Запустить" и "Остановить" посылают на серверную часть GUICraft'a по определённому IP запросы на включение или остановку сервера. Требуют открытого порта на серверной части GUICraft'a.
Кнопка "Открыть порт" открывает порт на серверной стороне для доступа к запуску\остановке сервера, если порт закрыт (система в дежурном режиме). Номер порта берётся из поля "Порт" в серверной части.
Remote True Exit закрывает GUICraft на серверной стороне. Открывать на серверном GUICraft'e порт для этого не нужно.

Расширение для работы с динамически подключаемыми библиотеками (*.dll)
72dll.png
Расширение позволяет подключать и использовать библиотеки, написанные сторонними разработчиками на любых языках. Для этого достаточно поместить библиотеку в каталог с GUICraft'ом, нажать "Искать библиотеки" и для запуска щёлкнуть по библиотеке в списке. Следует воздержаться от запуска нескольких библиотек сразу и от закрытия библиотечной формы во время выполнения какого-либо незавершённого процесса в этой форме.

Правила написания библиотек для совместимости с GUICraft


1) Использовать соглашение о вызове stdcall и только его


2) Для запуска в библиотеке должна быть экспортируемая процедура с именем "ExecuteDLL" (без кавычек, с учётом регистра)

Пример процедуры для запуска формы, содержащейся в dll:

library SimpleLibraryForFun;

uses
Forms,
Unit1 in 'Unit1.pas';

{$R *.RES}

procedure ExecuteDLL; stdcall; // используем stdcall вместо стандартного fastcall
begin
if Assigned(Form1) then
begin
Form1.Show;
Exit;
end
else
begin
Application.Initialize;
Application.CreateForm(TForm1, Form1);
Application.Run;
Form1.Free;
Form1:=nil;
end;
end;

exports ExecuteDLL; //экспортируем эту процедуру
begin
end.

Доступные библиотеки

ExtFTP.dll
Расширенный FTP-клиент, удалённый из GUICraft

extftp.png

SystemInfo.dll
Системная информация (для владельцев процессоров от AMD)

systeminfo.png

А теперь десерт: система скинов!

61ftpclientskins.png
Указываем путь к скину\плащу, жмём "установить скин\плащ" - и готово!

Никаких регистраций, авторизаций и прочей чепухи, всё просто и быстро.

Крайне нежелательно присутствие пробелов в нике.
Владельцам версий ДО v6.1 следует обновить minecraft.jar для активации системы скинов.
За это всё БОЛЬШОЕ СПАСИБО HoShiMin!

Взято с форума: http://rubukkit.org/

Редактор файла: Aqel

Сайт: http://amaderuon.at.ua/

Сервер Minecraft: AMADEY

IP: 80.77.173.202:25593
с. 1

скачать файл

Смотрите также: