Minecraft developer Mojang plans to make a handful of libraries from the Java build of the game open source, giving fellow game devs the ability to peruse, tweak, or use in their own projects (with credit).
The first two libraries getting the open-source treatment are Brigadier, or the command engine that Minecraft uses for its in-game developer console, and DataFixerUpper, a system that updates old in-game data into something that a current version of Minecraft can use.
As demonstrated in the blog post detailing the open-source plans, the Brigadier system deals with text commands keyed into Minecraft’s chat by suggesting possible commands as they’re being typed and translating the resulting command into an action in the game like giving a certain user an item or changing the game mode.
While Mojang says Brigadier is fairly straightforward and user-friendly, DataFixerUpper is more or less just the opposite.
“When we load up any world in Minecraft right now, you can have some data that has not been touched for six years, because that chunk was last played six years ago,” explains Minecraft Java dev Nathan Adams in the post. “So we need to know: ‘OK, this level actually looks really old. Now we’ve got to turn that old data into what it should look like now – in a way that the game can currently read.”
“We have one little unit which uses DataFixerUpper that just says to Minecraft: ‘this is how to turn anything into the data format that the game is going to use.’ And so the game is now only saying ‘This is how the data looks, so this is how I’m going to read it,” he explains. ”Basically, before Minecraft actually loads the chunks, it goes through DataFixerUpper and that turns it into what it should currently be now.”
Both Brigadier and DataFixerUpper can be downloaded right now from the company’s Github page and Mojang notes that it plans to update that original blog post when more systems are made open source as well.