Bukkit插件开发教程 - 序章

2017-12-09  本文已影响0人  Zoyn_

序章

历史:

以下历史也许会出现错误,可以当做故事来看,与教程无太大关系

众所周知在 Minecraft 早期时的多人游戏是只有一个 minecraft_server.jar 的端的,而它并不能满足服主们的需求,只有少数服主可以通过第三方修改,因为它是被混淆
并且这个端的内部代码写得并不是很好,因为它是由 Notch 一个人完成的

那么既然服主有需求那就有了"市场"所以在早期的Minecraft社区就出现了几次较大的"变革"


hMod(Mod向):

hMod是由一个叫 hey0 的大佬制作出来的,也就是那时候所说的hey0端
hMod的原理呢其实就是反混淆,将混淆过的代码,反混淆成可读的代码,所以在服务器加入自己的原创内容,就没有这么困难了...

这里我们可以把hMod理解为一个Wrapper,将我们的代码"翻译"成官方端的代码

hMod.png

但事情永不可能这么顺心如意,不久之后hey0就弃坑了


Bukkit:

既然hey0弃坑了就有第二人接坑,而这个人就是现在被Mojang"收购"的大佬 —— Dinnerbone,并且叫上了几个志同道合的朋友推翻重做,将其反混淆(人工),并且做出了一个叫做BukkitAPI的东西,这一重做就是我们现在熟知的Bukkit,但是虽然是反混淆,但是还是有部分的字段,方法没有反混淆,还是a,b,c...之类的类名 —— 来源 Bukkit About Us
我们来了解一下Bukkit给我们都做了些什么

Bukkit.png

Bukkit制作当中出现的一些问题(2012-2013)

Bukkit 时代看似辉煌,但实际上有不少隐患出现:

Spigot!

自从原开发团队离去后,先不提越来越慢的更新和越来越落后的 BukkitAPICraftBukkit 的性能也饱受诟病。许多人都自己私下制作了 CraftBukkit 的优化版本,当时最出名的是 CraftBukkit++,着重优化了农作物生长的部分,能显著提高 TPS ,但是每个优化版本都只是优化了一小部分,这个优化通讯,这个优化实体,这个优化 AI,这个优化地图加载...

那么有没有一款包含所有优化的 CraftBukkit 呢? 有!
就是由

md_5_64px.png
md_5 开发的 Spigot

Spigot 是个"强化版"的 CraftBukkit,只要换上它你的服务器立刻流畅几倍,提供的 API 和配置文件都更丰富,并且完全开源免费。


开发前的准备:

那我们有了一个初步的概念之后我们就来讲讲关于Java的东西吧
众所周知Minecraft是用Java语言进行开发的,并且BukkitAPI也是用Java语言来开发的,所以在学习之前你需要了解以下Java知识


服务端的选择

这里我列举一些常见的服务端,它们各有各的好处,在这里我就不一一列举了

单服服务端

Bungee服务端


本文开发环境

本文的开发环境如下

本书为了面向广大开发者决定使用以下两种IDE进行开发

上一篇下一篇

猜你喜欢

热点阅读