So the new Minecraft version is out, and with it I’ve created a new Vanilla server for my friends to play on.
Over the weekend, I wrote a service loading daemon for my Minecraft server that essentially allows me to interact with players to create custom, scripted actions and dynamically run commands – all tied into a Database thanks to the comfort of PHP!
I’ve aptly named the system the Minecraft Assistant Interactive Daemon (MAID for short). So far things have been working wonderfully but we’re still exploring the possibilities with this tool; from gathering player positions, to inventory security, and more! The system is based around a PHP script running in a ‘daemon’ mode that never times out, and monitors the console of the server – it reacts to things that then happen via the console (picks up commands, events, and so forth) – and updates as needed – be it via a website, database, or otherwise.
A big benefit of how I’ve implemented MAID is that I can run a Vanilla based Minecraft server, that still allows for the latest versions released by Microsoft to run – without essentially affecting functionality.
The current plan is to have:
- Custom vault control – players can protect valuables in a web-managed inventory/delivery system
- Production of materials – a “maid hiring” system, where players can pay an amount of emeralds for various maids that’ll help them acquire resources
The system is essentially a PHP based plugin wrapper on Minecraft – it doesn’t directly interface or interfere with the Minecraft client’s functionality, but instead runs as a parallel service alongside the server. So the only real drawback is a lack of real-time in-game interaction and even then, some degree of interaction can be created via the command-block system; all the features of Command Blocks are directly accessible to the MAID system.
I’m keeping it in a private repo for the time being; but in the near future I might look into releasing it 🙂
Well now, over the last month or so; I’ve been running a Minecraft server that I’ve tentatively called Northrealm, after a dear friend, Claire Northman. Claire passed away in 2012; and it’s an event that I’ve carried close to my heart ever since.
It’s been a complicated run for this ‘server’ of sorts – over the last near-decade, I’ve been tinkering with a variety of Minecraft servers that are modded, in various levels of interaction – in an effort to build the ‘ideal’ fantasy world that would represent everything Claire loved about Minecraft.
Finally, I settled on the idea of just running a plain, standard, Minecraft server. One that my friends and I can play on, and build upon using only the unmodified, basic installation of Minecraft. Luckily for me, the game’s reached a point where a lot of features that were once mods, are now doable within the confines of standard Minecraft!
Anyway, I’ve started by opening the gaming/Minecraft section of my site – it’s completely bare, except for an interactive map that gets generated at about 4:34am UTC every day. The map has zoom/drag capabilities, and should be fairly high res enough for people to use. It’s powered by Overviewer!
You can view a larger version of the map by visiting https://minecraft.jtiong.com as well. (NB: these links don’t work anymore! – JT, 29/05/2022)
Coming features over the next few days will include:
- An ability to create an account, and apply to join the whitelist for this server
- Some rules and regulations on this
- A materials pipeline that somehow interacts with players online and offline
The third point in particular, is of interest to me, because I’d really love for players on the server to be able to “build” something on the site, which then generates an amount of materials over a time period, which can then be deducted from a player’s inventory. My initial thoughts on the flow of such a system would be:
While a player is online – they will have the ability to:
- Construct basic workshops – these can refine raw materials, create basic components
- Recruit workers, these workers affect the speed a workshop functions at
Eventually, I think, I’d like to increase the functionality – but that’ll require some more thought! A post for another time 🙂