как делать плагины для майнкрафт

[Урок][Глава 1] Учимся писать плагин для сервера

Урок по написанию плагинов

Здравствуйте, в этой новости, я расскажу вам, как правильно сделать плагин с нуля. Начнем мы с вещей, которые нужны для его создания, и напишем маленькую систему. Давайте начнем

Инструменты для создания плагина

Создание проекта в Eclipse

Мы скачали программу и ядро, теперь делаем следующие

Создаем новый проект Java Project

Здесь мы вводим название нашего проекта и нажимаем Next

Здесь нажимаем Add External Jars и ищем свой JAR ядро (в моем случае bukkit 1.8), и отправляем сюда

Далее, мы создаем файл и начинаем редактировать его

Далее мы создаем Package в файле scr и в Package создаем Class. Все файлы называть как название плагина.

Когда вы создадите файл, вы должны добавить к 2 строке extends JavaPlugin, затем, навести на него курсор и нажать импорт. После чего, у вас появится строка с импортом для работы плагина

И так. Дабы не томить вас нудными скринами, составил вам сразу готовый код выдачи лога в консоль. Давайте же разберемся, а не тупо спишем.

Вы наверное спросите, зачем мы пишем < и >> Несколько раз?
Дело в том, что эти скобочки, открывают взаимодействие с пабликом. Если после ввода public void onEnable() поставить <, то все ниже коды будут выполняться тогда, когда паблик начнет их выполнять.
Чтобы закрыть паблик, нужно ввести >. Чтобы полностью закончить код, нужно в самом конце и в самом начале строке, написать еще раз >. Это означает, что паблик и код завершены

В сегодняшнем уроке, мы научились выставлять сообщение в консоль о запуске/выключении консоли.

Источник

Написание плагинов на Spigot/Bukkit

Первый мой туториал, просто хочу донести инфу до людей которые хотят этим заниматься, но не знают где начать. Не судите строго.

Стоит отметить что навыки работы с серверами, так же как и опыт в программировании это очень хорошо и поможет вам в дальнейшем. Если нет, будет чуть сложнее это все понимать.

Писать наши плагины мы будем на Java, так что начать стоит с выбора среды разработки (IDE). Лично я начинал с Eclipse, потом перешел на IntelliJ IDEA. Просто качаем Eclipse и не паримся.

После запуска Eclipse предлагает нам создать рабочее пространство (workspace), размещаем где угодно, я оставлю как есть.

Ну, мы тут плагины писать собирались, так что давайте создадим наш проект. Снизу от Package Explorer нажимаем на Create a Java project.

Возвращаемся в Eclipse. На данный момент мы можем просто писать на Java и не париться, но нам нужно писать плагины. Нам нужно подключить библиотеку, наше ядро сервера. Прожимаем Alt + Enter, видим вот это.

Add External JARs, выбираем наше ядро, Apply and Close.

Снова прожимаем Alt +Enter, Java Compiler, убираем галочку под JDK Compliance, и ставим Compieler Compliance Level на 1.8, это важно.

Всё, библиотеку мы подключили, теперь надо создать пакеты.

Далее нужно создать главный класс. Я не могу тут объяснять что такое классы в Java, советую почитать об этом либо сейчас, либо позже. Для создания класса в нашем пакете, ПКМ по пакету, new, Class. Название главного класса должно совпадать с Plugin name.

Читайте также:  как просмотреть действия пользователя на windows пк

После этого вы должны увидеть примерно это.

Время писать код. В коде ниже мы наследуемся от класса JavaPlugin. Это значит что мы добавляем свой код, который будет отвечать за наш плагин.

Резонный вопрос: почему оно подчёркнуто? Все просто, мы не импортировали класс JavaPlugin. Если навести на ошибку, Eclipse предложит возможные варианты решения, первый из них, это и есть импорт.

Теперь наш код выглядит так:

Следующее что я предлагаю сделать, это сообщение в консоль сервера при включении нашего плагина. Любой плагин содержит метод onEnable(), вызывается он при его включении. Так-же существует и метод onDisable(). В коде это выглядит вот так:

@Override отвечает за переопределение метода, просто запомните что перед этими двумя методами ставится эта аннотация. Сейчас эти методы ничего не делают, время это исправить.

Методом getLogger() получаем наш логгер, записываем в переменную log. Класс Logger содержит в себе метод info( ), котрый и выводит сообщение в консоль. Теперь можно и скомпилировать наш плагин, но для начала нужно добавить один файл: plugin.yml в src

name: Имя плагина
main: Главный класс
version: Версия

НЕ ИСПОЛЬЗУЙТЕ TAB

Для экспорта кликаем File, Export, Java, JAR File. Указываем путь для экспорта, можете ставить сразу папку с плагинами на локальном сервере, ну и кликаем Finish.

После запуска сервера, в консоль будет выведено сообщение о включении нашего плагина. Хоть консоль имеет некоторые проблемы с Русским языком, но это уже какой-то профит.

Это только начало, и я буду писать ещё статьи на эту тему, если это кому-то интересно.

Источник

Создание плагина Майнкрафт

Здравствуйте посмотрел темы на пикабу станет ясно что уроков по написанию плагинов увы очень и очень мало. Зато запросов на разработку плагинов довольно много.

Работа с plugin.yml

Работа с командами

Написать плагин для Bukkit не так уж и сложно.Плагины могут перехватывать эвенты (события) изменять или анулировать результат к примеру эвенты входа и выхода с сервера игроков выглядят так:

public void onJoin(PlayerJoinEvent event) <

event.setJoinMessage(event.getPlayer().getName() + » вошел на сервер»);

public void onQuit(PlayerQuitEvent event) <

event.setQuitMessage(event.getPlayer().getName() + » покинул сервер»);

Рассмотрим их повнимательнее. «@EventHandler» перед функцией означает что дальше идёт перехват эвента, то есть когда игрок заходит или выходит с сервера будет срабатывать та или иная функция при этом в переменную «event» будут переданы некоторые значения.

Изменить игрока не получится зато можно изменить сообщение:

event.setJoinMessage(event.getPlayer().getName() + » вошел на сервер»);

Рассмотрим этот код:

String playername = event.getPlayer().getName();

Так инициализируется переменная playername содержащая текстовую информацию,

в конце должен стоять знак «;» означающий завершение строки иначе при компиляции будет ошибка.

на экран будет выведено «Hello World!»

замете что знак + не заменяется на пробел а просто играет роль связующего.

Теперь давайте приступим к написанию самого плагина.

Во первых понадобится программа для компиляции кода, я посоветую использовать

выберете для Java EE. После установки нужно скачать craftbukkit.

Теперь зайдите в NetBeans и нажмите «Создать проект» (светло коричневая папка с плюсиком в панеле инструментов)

Нажмите готово и у вас должен будет создаться проект и открыться класс Main

Теперь заходим в папку с проектом и создаём папку lib в неё помещаем скачанный craftbukkit после переключаемся сново в NetBeans жмём правой кнопкой по проекту (слева) заходим в свойства, в открывшемся окне выбираем «Библиотеки» и жмём «добавить папку или jar» и выбираем craftbukkit.jar, жмём ок и ещё раз ок.

Читайте также:  как заработать деньги играя в майнкрафт без вложений

Возвращаемся к главному классу

public class Main extends JavaPlugin implements Listener < <

JavaPlugin и Listener будут подчёркнуты красным нажимаем на них и зажимаем Alt+Enter появется подсказка жмём «Добавить оператор импорта org.bukkit.event.Listener»

потом по другому слову тоже самое и выбираем «Добавить оператор импорта org.bukkit.plugin.java.JavaPlugin»

public static void main(String[] args) <

// TODO code application logic here

public void onEnable() <

getServer().broadcastMessage(«Мой плагин включен»);

public void onDisable() <

getServer().broadcastMessage(«Мой плагин отключен»);

public void onJoin(PlayerJoinEvent event) <

event.setJoinMessage(event.getPlayer().getName() + » зашел на сервер»);

public void onQuit(PlayerQuitEvent event) <

event.setQuitMessage(event.getPlayer().getName() + » покинул сервер»);

с PlayerJoinEvent и PlayerQuitEvent сделать тоже самое(иморт)

Готово теперь можно скомпилировать код и плагин готов.

Источник

Туториал по созданию плагинов mineraft

Разработки, созданные для данного туториала, используют ядро Spigot.

Софт для начала работы :
Среда разработки :
1) IntelliJ IDEA [+]
2) Eclipse [+]
3) NetBeans [+]
Для нормального запуска этих программ у Вас должен быть установлен JDK (Java Development Kit) и JRE (Java Runtime Environment)!

Проект, созданный для данного туториала, был разработан в СР Eclipse.

3) В появившемся окне указываем имя проекта (в этом случае » RuBukkitGuide «) и ставим такие настройки:

3) Создаем сами пакеты:

2) Указываем название и нажимаем Finish.

Начинаем кодить!
Созданный нами класс Main пока-что выглядит вот так:

Теперь мы имеем доступ к protected и public полям и методам. Чтобы Java знала наверняка, что мы используем метод из родительского класса (JavaPlugin), мы скажем это, используя аннотацию @Override. Какой метод мы возьмем из родительского класса? onEnable(), так как он запускает весь наш проект. Само ядро будет знать, что это плагин, и начнет получать всю нужную информацию. Если мы уберем extends JavaPlugin и метод onEnable(), то когда добавим плагин в папку plugins, он вообще не загрузится, и его вообще не будет в списке плагинов.

Что такое void? Это тип возвращаемых данных. Поскольку метод onEnable() ни чего не возвращает через return, то мы должны сообщить об этом системе. (Тип доступа может быть любым форматом возвращаемых данных, к примеру: int, boolean и даже String).

Как узнать все методы, к которым мы имеем доступ? Пишем this и ставим точку. Нам программа вывела все доступные методы и поля из класса JavaPlugin.

Что будем делать? Ну давайте выведем при запуске плагина, что он включился.
Для этого заходим в метод onEnable() < >и между < и >пишем нашу команду. Она выглядит так: this.getLogger().info(«ПЛУГИН РАБОТАИТ!»);
Что мы сделали, введя эту команду? Мы получили класс Logger, в которого есть метод info(. ), который и запустили.

Источник

[Plugins][ТОП-5] RPG-плагины

Пятое место — « MCmmo »

О плагине — цель MCmmo — изменить игровую механику Minecraft и добавить качественный RPG-опыт. MCmmo был тщательно продуман и постоянно совершенствуется. На данный момент MCmmo имеет четырнадцать уникальных навыков. Каждый из этих навыков легко настраивается, позволяя администраторам сервера наилучшим образом удовлетворить потребности своих игроков.

Функциональность: ✔
Оригинальность: ✔
RPG опыт: ✔
Что-то новенькое: ✔
★★ ★★★

Читайте также:  как установить точку отката в windows 10

Второе место — « Towny »

О плагине — по названию становится понятно, что плагин связан с городом. Плагин позволяет игрокам создавать и управлять своим городом, сстраивать войны и объявлять союзы. На мой взгляд плагин ненужный, поскольку всё это можно сделать другими плагинами.

Функциональность: ✔
Оригинальность: ✖
RPG опыт: ✖
Что-то новенькое: ✖
★★ ★★★

Третье место — « QuickTrade »

Этот плагин не добавит в игру того, что изменит весь геймплей. Но на мой взгляд, плагин весьма полезен и необычен! С помощью этого плагина игроки смогут обмениваться своими вещами, могут даже продавать их. Игрок зажимает Shift и нажимает на другого игрока правой кнопкой мыши. Открывается такое меню.

Функциональность: ✔
Оригинальность: ✔
RPG опыт: ✖
Что-то новенькое: ✔

Второе место, серебро — « RacesAndClasses »

RacesAndClasses (RaC) был создан для того, чтобы принести лучшие из RPG-игр в Minecraft. Вы можете настроить ваши собственные классы и расы, что делает ваш сервер полным приключений! RaC вдохновлен крупнейшими MMORPG играми в мире, одна из них — World Of Warcraft.

— «RaC.race.change» permission to change the actual race

— «RaC.race.select» permission to select a race

— «RaC.class.change» permission to change the actual class

— «RaC.class.select» permission to select a class

— «RaC.channel.create.private» permission to create a private channel

— «RaC.channel.create.public» permission to create a public channel

— «RaC.channel.create.password» permission to create a password channel

— «RaC.channel.global.banpower» permission to ban people from global, world, race channel.

— «RaC.channel.global.unbanpower» permission to unban people from global, world, race channel.

— «RaC.channel.global.mutepower» permission to mute people in global, world, race channel.

— «RaC.channel.global.unmutepower» permission to mute people in global, world, race channel.

— «RaC.channel.edit» permission to edit channels (ALL channels!)

— «RaC.whisper» permission to whisper someone with /whisper

— «RaC.raceinfo.display» permission to use the /raceinfo command

— «RaC.heal.self» permission to heal self (/raceheal)

— «RaC.heal.other» permission to heal someone else (/raceheal )

— «RaC.debug» permission to use /racedebug commands

— «RaC.reload» permission to use /racesreload [gc]

— «RaC.channel.broadcast» permission to use the /globalbroadcast (alias: /gbr ) command to broadcast a Message in the global channel

— «RaC.god» permission to trigger godmode (/racegod [playername]). Attention! Only for admins and testing purpose.

— «RaC.classes.» permission to select / change to a specific class (config option to use Permissions on Classes must be active)

— «RaC.races.» permission to select / change to a specific race (config options to use Permissions on Races must be active)

Функциональность: ✔
Оригинальность: ✔
RPG опыт: ✔
Что-то новенькое: ✔
★★★★ ★

Первое место — « Campaign »

Campaign — это плагин, который позволяет создавать детальные квесты и сложные подземелья для игроков. В отличие от аналогичных плагинов, Campaign позволяет игрокам выполнять квесты и подземелья совместно с другими игроками. Не нужно опыта программирования, так как плагин не требует настройки. Вы можете создать абсолютно всё. Ограничение лишь ваше воображение.

Кампания предлагает широкий набор инструментов для создания приключений.

Есть NPC и боссы которых вы можете настроить в конфигурациях.

И кое-что. Я создал группу для того что бы вы могли голосовать за понравившиеся вам плагины/карты/моды и т.д.


ГРУППА

Источник

Компьютерный онлайн портал