Today, we have a special treat - an interview with Jens "Jeb" Bergensten, lead developer of Minecraft! We touch on a number of topics, including the future of Minecraft, possible AI updates and - the moment everyone has been waiting for - the introduction of a fully supported mod API! Take a look!
________
This week, David & Toby tackle a number of interesting topics, including Pocket Edition updates, updates on the recent "Scrolls" lawsuit, and more - take a look!
If your going to be the person that represents Mojang then your should really be more assertive.
I don't think so. The issue is that coming up with an efficient API is not an easy task, and it is something that can can be worse than no API at all if poorly implemented. For anybody who has used the Win32API for developing applications in Microsoft Windows, you should be familiar with at least more than a few API interfaces that are not just horrible but downright scary. Don't even get me started on the DirectX API.
Some of what is going to go into the API is trying to figure out what mod developers even want to be working with. There are (now) some obvious things that people like to make mods for, such as new recipes for existing blocks (including making a recipe for things like a Sponge, Netherbricks, or the new circular stone brick that don't have a recipe at the moment), new kinds of blocks ore and new kinds of armor. It seems likely that much of the early API features will be plug-ins to this kind of mod development... something already enabled by things like ModLoader very easily.
Then you get into things that go beyond what Mojang might even consider as an API by its very nature has some restrictions on what can and can't be done. For those who have suggested as such, MCP isn't really an API. It certainly is a useful tool and I love the work that the MCP guys have been doing, but for those who think you are going to get something like MCP as a modding environment are blowing something up their behind and I don't know what that might be.
What you are going to get is something more like ModLoader+MP & Forge, where the mods are going to be loaded into memory and you simply can't touch the base class behavior except where the hooks have been provided. Writing inherited classes (of hopefully non-obfuscated methods, members, and parameters) may be possible, but you can't do something like Optifine using the API or put in a behavior like re-writing a Nether generator to be linked to an Overworld generator... unless that hook has been put into the API as well.
Once the API comes out, there will be people complaining about features it is lacking and things they want to get access into the API. No matter how through and complete the Mojang development team thinks they will make the API, there will always be *something* missing. The telling thing will be to see how many mod developers even use the official API when it comes out, or if they still will require you to put things into the minecraft.jar file even after the official API comes out. I promise that changing the minecraft.jar file will continue well after the official API is released... at least for the more advanced mods that truly are ground breaking and doing useful things.
In terms of the development lifecycle of Minecraft, this is about the perfect time to be introducing a proper API. Enough is known about the game now and the overall philosophy of how the game should be organized is developed to the point that a rational decision on the part of Mojang can be made in terms of what things they wouldn't mind seeing made as community developed add-ons and what things they would rather keep restricted from the modding community. The official API is going to split the modding community into those who are pushing the envelope and doing really new things, and those who are staying within the constraints of whatever Mojang has published in the API.
The only way that you are going to "weed out" the "poorly coded mods" is to have somebody go through each mod and review it, putting it through some sort of testing process. Either that or do something like what Nintendo or the other console manufacturers do and require some very expensive developer license merely to have permission to make a "mod" or develop anything using the API. If somebody is paying $10k for a developer license, they won't waste their money putting out crap. That would also kill the modding community if it happened and I believe it is something that will ultimately kill the console games in the long run as well as it stifles creativity.
Face it.... 90% of everything written is junk, and that includes mods. Even if it is well written, it may not be something you necessarily will like.
Sadly though, I think a proper API is actually going to increase the amount of "junk" in the mod world rather than culling it out. Recipes which make a full 64 stack of diamond out of a single block of cobblestone are still going to be very common for awhile, as will bedrock extractors and bedrock armor that allows you to go into a room full of exploding Creepers and not take damage.
A clean API might be able to protect you from crashing Minecraft if you have installed a poorly designed mod (even that I have my doubts), but I seriously doubt it is going to increase the quality of the mods you will see.
the META-INF folder is there to make sure minecraft works! The only reason we delete it is because modloader has a main() method(i think) if you deleted that folder without modloader then minecraft wouldn't know which class to start at.
Indeed I do approve.
It's not an AI at all. It's an API. and AI is artificial intelegence. this is used for things like mobs and/or opponents. An API however, is an Application Programming Interface, meaning an ingame GUI for installing mods, updating them, and things like that.
While I do hope that there will be an "in-game GUI for installing mods" along with some other things Mojang might do to help support the modding community, that is not what an API actually accomplishes.
The purpose of the API is to provide a consistent set of "interfaces" between the Mod and some piece of software you are use that allows multiple groups of programmers a way to communicate with each other. The operating system on your computer is an example of a kind of API. For example, Microsoft Windows uses an API called Win32API (and something comparable for 64 bit programming) that has been in place for nearly two decades and how almost all current Microsoft Windows applications are written.
From the user side, however, the current plan for mods suggest that there might even be something like an app store where you can "purchase" or at least obtain some mods to put into the game that have gone through some sort of review process. Rather than going to random locations or digging through forums to find some cool mods, there is going to be a central place to find well made mods and perhaps even a way to "donate" to the mod development. If you have to pay $1 for a good mod, I think it might be worth the effort... and it will help support the modding community in a big way as well.
Just wait until version 1.3. Mojang has some big plans, and that is when you will see the new developers that were just hired to really kick in and make a difference.