MachinaCraft
Plugin under development!
This plugin has not been updated since MC version 1.5 so some if not all features will not work. While I find the time to update and expand it please use starcomedon's fork of this same plugin. you can find it Here!
What is MachinaCraft?
MachinaCraft is a framework for machines made up out of blocks, activated by right-clicking on a lever. It is modular and includes several plugins that can make repetitive tasks easier, such as digging or building in a line, even placing and clearing bodies of water. Because it is modular, other plugins can also use MachinaCraft to make their own activatable machines.
How do I build a Machina?
Similar to crafting something on a crafting table, but in the game world. Place blocks in the world in a predefined way and put a lever on the right block. Rightclick the lever, and if you built it correctly, the Machina will activate.
A demonstration please!
- Plugin Showcase by WoopaGaming
- A video series in German by BukkitDE - 1, 2, 3
Machina Plugin Info & Permissions
These are the Machina plugins available right now, included in the download:
- MachinaDrill
- MachinaBuilder
- MachinaPump
- HoverPad
- MachinaFactory
- MachinaPlanter
- MachinaRedstoneBridge
On their respective pages you can find pictures, instructions how to build them, and the permission nodes available for them.
Plugins that work with MachinaCraft
- SignShop 2 can activate a machina with a sign, possibly with a cost.
Permissions
To enable all machinacraft permissions at once, replace your server's permissions.yml with the included permissions.yml. (or add the contents if you already have something there)
This works even if you do not have a permissions plugin.
If you do have a permissions plugin and want more control, you can change the default in permissions.yml to 'op' and use the global permission node:
machinacraft
Troubleshooting
Are you having trouble getting MachinaCraft to work? Take a look at the Troubleshooting page.
Anti Cheating Plugins
Does your server use an anti cheating plugin such as NoCheatPlus? See MachinaCraft and other plugins.
Plugin Developers
MachinaCraft allows other plugins to register a blueprint for the Machina they implement. When a player rightclicks a lever, MachinaCraft will ask each registered blueprint to detect itself at that location. If successful, a new Machina is created from that blueprint.
MachinaCraft will periodically ask the Machina to check its integrity, and if successful send a heartbeat in which it can take action. The Machina can inform MachinaCraft when it should receive the next heartbeat, what its new location is (if any), or deactivate itself.
Included is an optional framework that:
- Simplifies specifying the blueprint
- Implements the integrity check for your Machina using the above blueprint
- Can move a Machina 1 block up, down, north, east, south, west
- Can teleport the Machina to a location
- Can rotate the Machina
- Can detect collisions for move, teleport, rotate actions
- Supports blocks that have additional data such as torches, levers, rails, and blocks with inventory such as furnaces and chests
- Support for optional modules.
Plugin developers looking for an example can take a look at the code for MachinaCraft.
On Hiatus
Short version: I'm on hiatus from Minecraft and developing this plugin, but the source code is available for anyone who wants to fork this and continue development.
Long version: As some of you may know, I haven't updated MachinaCraft in some time and I wanted to explain a little bit. Minecraft has taken a back seat for me in the last couple months. Also, the server I play on is Forge-based rather than Bukkit-based, which means I haven't been able to play with the results of my own plugin for a long time now. That has been a real motivation killer which is why there hasn't been any real development activity.
So it hasn't been an easy decision but I'm now officially on hiatus. My apologies to you who were hoping for more updates and even more features or cool machines - unfortunately I won't be the one implementing them. The project is open source however, and I hope there is someone out there who is willing to pick up the torch - you've got my blessing if you do.
Last but not least, a thanks to everyone who visited this site, helped out others with their questions when I wasn't around to answer them, or just had fun with the plugin! :)
To plugin developers
You're free to fork the project and continue under a new name, or use this project page to release an update, just contact me and I'll add you as an author. If you do want to pick up development I'd be happy to give some pointers via PM or irc (#bukkitdev) to help you get familiarized with the code.
The source code is available on the repository under the machinacraft4 branch.
Just one thing i keep coming up against snow formation on the "machine" seems to stop it grrrr guess i need to add some antifreeze :)
@Lyneira
This is such a great plugin, I have a lot of players begging me to get this fixed and I can't see how to fix it :OS
@Lyneira
Hmm see we're not getting permissions errors when trying. I removed all nodes then tried those commands and it's still the same. No message for non-ops and no activity, but it works fine for ops.
@stevevbrewer
Using a fresh install of the latest group manager and only the machinacraft plugins, I ran these commands on the console:
Edit: I should add that I was not opped and the drill gave a permissions error before running this.
Drill worked fine afterward. The fact you're not getting a permissions message from my plugin when you try to activate it indicates there's no permissions problem with activating the drill. But a drill works on behalf of the player who activates it, so when it moves or breaks a block, it will fire a blockbreak event so that plugins like WorldGuard can stop it. You might have a plugin that keeps your players from building or breaking blocks in that area.
@stevevbrewer
me too
Does this work with GroupManager? I've tried putting all the permissions I can think of (machinabuilder.all, .*, .activate, .all: true) and still only ops can switch machines on.
Players aren't getting a permission message, it just doesn't switch on, the furnace doesn't fire up, but when I or another op come along and switch it on, it works fine.
Having this & LWC with protected chests and furnaces creates a blank protection where the chest/furnace initially was. I can provide a proper ticket if you want, but emulating the chest break and furnace break would easily fix it.
will ping u later. Busy atm give me maybe a week
Nice start... that being said I have a few ideas: how about having a modular bot buulding system where it is individual pieces connected together that cause the machina to work? This way a builder would be a block placer and treads with an engine? This would allow for great user end customizability and the user could design their own machines for example: drill thru stone and place rails (only the design would be solely in-game) email me at [email protected]. If you need any help coding this (assuming you like the idea) I could and would help.
@Hyprafake
Actually I've already implemented both of your suggestions in the upcoming version, the builder will build inside water now, as well as crush wild grass when placing blocks. Though it can't move underwater or through grass.
The plugin thread on the old bukkit forums is easier to keep track of, although you can also find a MachinaCraft specific forum here on BukkitDev.
Hello!
I get what do you mean, but...hmmm..how to say it... it's not intuitive, in my way to see that. The builder build 6 block depth if there is "air" (if i correctly understand what i saw while running your machine). But grass is...like "non-opaque" block nearly looking as air block :D, and this is something bothering to remove. In my opinion, it should be destroyed in the process. For the water, same, i thinked that the water will be filled with blocks, don't ask me why. This is my very personnal feeling, don't be offended by this.
I'll post my future comments here (i had hard time to find this topic!), since i think it's the good place to do it.
THanks again for the mod, and see you soon !
Hypra
@Hyprafake
Hey there, glad you like the mod :)
While designing the mod I've tried to be cautious about making the builder too powerful in comparison to regular tools and building, so that's why those restrictions were there. Also, the way a builder places blocks had to make sense when compared to how a player does it.
After having tried it a bit more extensively, I do think that letting it build on wild grass or other such things should be okay, since a player can do those things as well. As for building on water: A player can't place blocks on top of water, but they can place them against another block "inside" water. Is this what you meant by letting the builder build on water?
Hello!
I just tryed the "builder" machina. Seem it doesn't detect water or wild grass, that's mean i cannot build on both of them, witch is decreasing the ergonomy of the mod. Another dissapointment was that we cannot place rails with this machine. I was dreaming about building a very long line and get rid of the rail placing :D Seems not possible.
I also had a bug while placing the last block of the machina (it was the chest). My client crashed, but the server was fine.
Gonna try the pump/fill and the drill in the next days, i'll give you my feeback, if you're interest. Thank you for the mod, cause even with this lil water/grass/rail problem, its working fine and really great!
Hypra
@srainsdon
Yes, it can place blocks :)
A Machina is just a bukkit plugin that interacts with MachinaCraft, so it can do anything a bukkit plugin can do!
Looks good i would love to help with this new to java but not programming so i would be willing to help out. will be downloading and trying to make a Machina to see how it works... also i have a test server as well as a production server if you need anything tested out..
Question: Can a new Machina place blocks and such i think it would be cool to make a 5X5 drill and have it place torches maybe from the top slot on the furnace just my two cents ill give it a shot and see how it goes.