And so we come to April’s release, Glowstone 2017.4, the Intelligence Update. Our goal for this month was to get AI implemented. We didn’t exactly get to our goal, but since May’s release was already planned to be a light one, we’ve decided to shift some of the AI work to May so we can finish it up.
Right now we have a great framework for AI we can work with, with a task/state system that determines mob behavior and actions, as well as improved physics that will help support advanced mob movement. So, a deadline of May should be much more manageable, especially since some of our contributors will become more available this month.
Anyway, let’s get into the details:
50 commits, containing 2,090 additions and 298 deletions, went into this release.
- Added a custom classloader for compatibility with Java 9, while still working with Java 8
- Mob state system to dictate general mob behavior
- OpenCL support/API
- Shield pattern support
- World borders
- Movement helper to navigate entities to a certain location
- Add purpur pillar, purpur block, end rod and purpur stairs
- Basic GlowClient support
- Basic zombie AI (incomplete)
- Some improvements to entity look and look at player tasks
- Base color support for banners
- Rewrote physics logic, along with some (incomplete) changes to velocity application to match new physics
- Update Glowkit to latest upstream (with unimplemented item cooldown API)
- Respect doMobSpawning gamerule properly
- Store name tag visibility NBT tag properly
- Destroy removed entities from client view
- Don’t do physics on item frames
- Slight redundancy cleanup in some network systems
- Update repo’s start.sh to latest recommended start script
- Block entity creation fast pathed failure to improve performance
- Don’t search for block entities on newly created chunks
- Link to correct website for JLine 2 in README
- Fix rabbit hitbox, spawn egg and metadata
- Fixes to attached blocks, especially torches
- Have a default generation for books
We’ve also been working on 1.12 snapshots, on another branch. Right now features are on freeze and only necessary compatibility/protocol updates are being applied while we wait for the Spigot project to release their 1.12 update to the Bukkit API. Depending on the size of changes to the Bukkit API upon 1.12’s release, we may have to wait for new patches for Spigot and PaperSpigot before we update Glowkit and subsequently Glowstone.
The release is available here. Please keep in mind that just because it is a release, doesn’t mean it is stable or supported. Only the latest Glowstone build will get support, as we continue to improve and develop Glowstone.
Here’s to AI for this coming May. I hope you’re excited as we are!