Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Sad for the modding community. The entire ecosystem is based on recompiling and editing/inserting Java.


I sincerely hope the modding API isn't terrible. You can't do a lot worse than Forge--especially with LexManos running the show, his terrible decisions and demands for respect are killing the modding scene--but doing better would be great.


It's wonderful to see someone else who know's Lex for who he truly is. It's crazy, one of my friends to manages a large plugin is banned from the channel for mentioning "Lex" in the channel, not even attempting to talk to him/ping him.

I've got lots of things to say about the minecraft modding community from end to end having done some stuff in the background of both sides. From development, to server management, to being an end user of all this.

I think that the only hope for a good API is to actually have an API. Bukkit was the correct way to go from the start, forge is not an API.

If anyone want's to know funny stories about bukit, forge, minecraft modding, and all you can get in contact with me and I'd be glad to talk about it all.


My contact email is in my profile. Do you think there's any way for Minecraft modding to survive? I think it'd be a great loss for it to go away, even if it is an insane situation for 1-2 people to control the entire scene (Lex and cpw).

I tried MineTest but it really (!) wasn't as easy to get started modding it as with Forge-Gradle. You can see my little mod at https://github.com/voltagex/minecraft-rebridge. I want to go back to i, one day.


How in the hell did Minetest manage to out-terrible Forge? My experience with Forge has been nothing but pain.

Then again, part of that is that I'm a clumsy coder, and part of that is Forge's "support" channels.


It's not hard to see what the problem is. When the first rule of the IRC is "Lex is god, respect him or else", there's an issue. And that's not getting into the fit he threw over JSON models.


> I think that the only hope for a good API is to actually have an API. Bukkit was the correct way to go from the start, forge is not an API.

However, most of the more interesting mods still could not possibly exist for Bukkit, due to it's server side status, so I can't see any MS API faring any better than Bukkit


The current front runner in this niche is Sponge.

"Sponge is a combination of a new API (based off of Spout/Flow’s APIs) implemented on top of Forge, with assistance from other parts of Minecraft’s modding community (Glowstone, Cauldron, Spout, etc.).

It will be both a server and client API, and its target user base is pretty much anyone that wants to mod their game, including server owners. However, we may focus on the server-side portion first.

We invite any developer to help out."

https://www.spongepowered.org/

Development seems quite active on Github.


It might look nice from far away, but there is a vain of drama that runs through the body of the team. The team is indecisive and has that "ooh look, something shiny" mindset.

They are even making some of the VERY basic yet devastating problems that Bukkit made at the start. Again, there is more to go into than I can fit into the scope of this comment chain.


I think there are two things at play here. Firstly, I'd say that the reason Forge mods do such amazing things is because of the dedication of developers. Forge basically gives you an API to monkey patching and nothing else.

Bukkit failed because of copyright laws. Despite this, people still use bukkit. It was powerful, easy, and had an intuitive API. It made programming seem fun to me.


I guess my problem is similar to my problem with the new extensions model for Firefox. It might be much smoother for 95% of developers with the new API's. But the remaining 5% of cases go from "pretty hard" to totally impossible. With Bukkit's API, something like buildcraft's pipes with all its appeal would have been impossible. Or the only reason something like tree style tabs is going to be possible with the new fx extensions API is because it already exists so they know they need to make that possible. If Buildcraft or Tree tabs did not exist from the fully open ability for an add-on to modify their host app, I find it unlikely the APIs to support them would ever exist.


Well that is only due to the fact that there are limitations to a server-side only API.

A proper API done client side would look like bukkit, but have hooks into almost anything you could need. Look at GMod for example.


Y'know, they could add actual support for modding into the damned thing.


They have been, though, with command blocks.


Command blocks don't even come close to replicating the capabilities a mod has, and they are't portable across maps.


I've been thinking about MC's mod community as I recently picked Minecraft back up for a couple of days, and just how impossible any of it would've been if Microsoft had owned the property from the outset. MCP would've been C&D'd in a matter of weeks and that'd've been the end of it. Today, while MS has mostly left the existing mod community alone, I'm sure they wouldn't be friendly to someone who created an intermediary server that allowed the different MC platforms to interact, especially as they enabled this feature only for Windows 10 machines<->Mobile in June.

Let's hope this becomes Minetest's time to shine.


> Let's hope this becomes Minetest's time to shine.

Yes! I've been waiting for this forever. The first time I ran Minetest on a crappy laptop years ago it was as smooth as butter and I couldn't help but think, "Why is no one playing this?!"

I think the primary reason very few people play Minetest is because of marketing and piss poor default gameplay. If you just run Minetest without adding any of the (nearly built-in) mods you'll get an odd-looking Minecraft-like world stuck in "creative mode" (which is boring). If, however, you take the time (lots of time) to fiddle around with it and put together a collection of decent mods it becomes a good game!

The fact that it is written in C and has a proper modding API (in Lua!) should be drawing people in like crazy but for some reason it isn't.


I think the primary reason very few people play Minetest is because of marketing and piss poor default gameplay.

I agree. "Vanilla" Minetest needs monsters, villages, villagers, fortresses, more ores, more items, etc. in order to compete with "vanilla" Minecraft.

It's so very close to being a Minecraft killer...but there seems to be strong resistance to adding more to the base game.

Unfortunately, right now, every query about vanilla Minetest being a little "barren" results in replies like, "Install some mods." sigh


This is actually an opportunity. Minetest is free software (LGPL). Someone needs to fork it, put a little bit of polish into it, load some mods into the default distro, and publish it as "MinecraftKiller v1.0" in a mass-marketable, easy-to-install fashion. Console ports would also be ideal, as they were instrumental to Minecraft's success.


I think in theory this is Voxeland's selling point - it's meant to be Minetest but with an actual, out-the-box game experience that doesn't rely on mods.


Cool, I didn't know about Voxelands. It is, however, apparently still GPL licensed, whereas Minetest relicensed to LGPL a few years back. I also don't think a fork is really the right direction here; Minetest needs distros that come pre-bundled with all the fun stuff, not split communities and duplicated effort.


Honestly, if they don't add in enough modding support, the game may very well split, with the last Java editions never receiving official updates but with all modding continued to be done to them. It'll be odd since the source itself can't be split, but I don't see the modded experience dying.

Personally, modded minecraft is the only type I continue to pay. If I didn't have the choice of mods, I'd rather go with one of the better options among the infinite number of minecraft clones.


It'll be interesting to see what they do about modding, since they absolutely MUST support it. The power of modding the Java version was that you could relatively easily replace in any part of the game. With a modding API, you're restricted to whatever the API allows you to do.

I wonder if this going to create some bizarre fork situation, with an MS-approved-and-bound C++ version and a legally questionable, community-maintained legacy Java version.


Amazing for kids who will finally be able to play minecraft at school. The current version runs at less than 10fps on crappy school computers. It's so bad.


And for any platform that isn't windows.


Ah yes, the dread C++ lock-in to Windows.


The C++ version of Minecraft in question is literally called Windows 10 Edition, and as you might expect it and its derivatives like Minecraft Education Edition are Windows-only based on the announcements so far.


The Windows 10 version is based on the Pocket Edition. MCPE is written in C++, and is already cross-platform - it runs on smartphones, tablets and games consoles.

This doesn't mean the Education Edition will be cross-platform. It does mean that the fact that it's written in C++ doesn't prevent it from being cross-platform.


But considering it's Microsoft, do you trust them to make it cross-platform?


It depends if there's a demand. How many pupils will benefit if it does? (How many schools have access to Linux or Mac OS X and not to Windows 10?)

Against that, how many pupils would benefit from spending that development time -- a finite resource -- on incorporating mods into the C++ code base?

It's not a pseudo-religious issue.


I'm not talking about it not technically able to be cross platform (because it's obviously already in opengl on the mobile platforms), I'm just saying Carmack better hope that Microsoft doesn't want to come out with a competing VR solution, otherwise (going by their track record), they might lock down his "grail" of running Minecraft in VR to running Minecraft in Xbox One VR or Windows 10 VR, or whatever.


MS hasn't, to date, mentioned any VR products. Their focus seems to be on the AR Hololens, which doesn't really compete with Occulus.


Yep, here's hoping it stays that way. Although Occulus has already dropped support for Mac and Linux. They said it's just temporary. I really hope that's the case.


There might as well be if you don't have the source code.


People are already making mods to the C++ versions even without source code, doing the same thing that was done to make mods with the java version.

https://github.com/byteandahalf/MCPE-NativeMods/wiki/1:-Maki...


Disassembling and patching a binary is a completely different thing from porting software to a different OS without access to the source code.


Yes, it is very different. I'm not sure what that has to do with Minecraft though since it's source isn't freely available.


The Java binary can be run on any system for which a JVM exists. If Microsoft ports the entire thing to a native language like C++, we are at their mercy to provide binaries for non-windows systems.


Did they have access to the Java source code? No, I believe they were just decompiling bytecode.


Psst. It is ok to use compiler specific extensions and semantics, as long as it isn't MSVC++.


I didn't think it was acceptable to use MSVC++ at all.


But it is ok to use gcc or clang specific extensions and semantics, then.


I didn't say that either, I honestly couldn't give you an informed opinion on the subject. I just remember about 10-15 years ago when you'd be shot if even suggested using MSVC++, I wasn't aware that opinions had changed regarding it.


That was never the opinion on Windows, except when Borland C++ and C++ Builder were still an option.


Well, if this new one is going to be closed-source... Then yes, we are at the mercy of Microsoft. We're going to have to deal with the C++ version lock-in, because it's going to be release compiled (and hard to de-compile)


But Minecraft is closed-source. Since when did "written in Java" mean open-source?


It doesn't, but disassembling Java is peanuts compared to trying to make sense of disassembled C++.


So the argument is that they're making it harder for users to do something they don't support them doing?

Do you think Microsoft is actively trying to sabotage the modding community? Or is it just that they failed to take it into consideration?


My guess would be that they don't care about mods, and that their main motivation was to have an excuse to lock out other OSes.


Well, this is derived from the Windows 10 edition which is a version of the original C++ pocket edition code, and has cross platform multiplayer I believe, I'd be surprised if they don't come out with a Linux/Max version eventually.


One would hope they've had the good sense to build in a good API for mods, otherwise they have missed a key point and a large chunk of the audience will be somewhere between losing interest and becoming irate.

Of course even if the plugin/mod architecture is good getting existing mods converted will be a struggle, particularly where the original coder considered them complete and is now busy working on something else new & exciting.


The thing is, there is not really a "completed" mod in Minecraft, precisely because there is no standardized API. When you are patching bytecode, any change to the underlying copy means you need to at least review for conflicts. Modding right now is terrible, with basically unofficial APIs provided by groups like Minecraft Forge.


Minecraft modding has been getting better - the long 1.7.10 generation helped a lot.

> patching bytecode

There is a lot less patching bytecode going on now, and it is now handled by Forge.

> unofficial APIs ... like Minecraft Forge

Unofficial APIs are what happen when nobody else provides them. It's far too late for any "official" mod API that isn't Forge, because the massive[1] amount of modding that already exists is just not going to be re-written.

The best thing that could happen would be to bless Forge as "official".

[1] https://bot.notenoughmods.com/1.7.10.html


I gave up on modding around 1.7.8ish I think, so this is good information.

I also agree that, by default judgement, Forge basically is the modding API at this point. But I disagree that blessing Forge as official is the way forward, precisely because of how tightly bound it is with the existing structure. How well would Forge be able to integrate with this new C++ version? Who knows! So, yes, use Forge as a primary input or even a starting point for a true official API. But don't just blindly bless Forge.


Using Forge as a starting point is basically what I meant. That has to happen if there is every to be compatibility with the existing mod ecosystem. Where future development goes from that point is another question. Forge itself hasn't stopped developing either, and they've had a focus on "fewer mod updates" for a while now (i.e. Forge properly isolating changes in Vanilla).


that's unfair. Have you seen Thaumcraft? What exactly does a mod have to do for you to consider it completed? Stop development?


> What exactly does a mod have to do for you to consider it completed? Stop development?

... That's exactly what the word "completed" would mean in every other context. Things are typically not called "completed" unless there is no more pending work on them. I would maybe look at terms like "feature complete" as an alternative here, where the intent is that the only development will be in maintaining compatibility with future releases.


It's Microsoft - it is entirely against their culture and history as a business to allow anything they control to be cross platform. This is just the usual embrace-and-extend crap. Promise faster Minecraft now, and never get around to building the Linux and Mac versions. I suspect that "always get updates" promise I paid for years ago will be ignored.

> good sense to build in a good API for mods

LOL. That API already exists - it's called Forge. We gave up caring about an official "mod API" many years ago.

"Where's The Modding API?" - Yogscast, Dec 20, 2013

https://www.youtube.com/watch?v=G-zthYFjk6s


> It's Microsoft - it is entirely against their culture and history as a business to allow anything they control to be cross platform. This is just the usual embrace-and-extend crap.

This is such an antiquated view at this point in time. This is the same Microsoft that is taking .NET open-source and cross-platform, including ASP.Next. This is the same Microsoft that just open-sourced their JavaScript engine and integrated it with Node.js. This is the same Microsoft developing the open-source and cross-platform Visual Studio Code. This is the same Microsoft that writes more apps with better user experiences for iOS and Android than it does for Windows Mobile 8 and so far 10.


You're welcome to your opinion. What you see as "open-source and cross platform" offerings I see as a few cheap baubles being given out to buy developer good will. It seems to have worked in your case.

Node.js isn't particularly relevant to their primary business, nor is keeping Visual Studio proprietary. Opening them makes developers happy at a time when fewer non-MS developers are writing for their platform (they moved to the web and mobile).

Microsoft's bad behavior with Windows 10 (including the drama involving the back-ports and strong-arm upgrades in 7/8) suggest the company's behavior hasn't changed much.

But as I said, you're entitled to your opinion. I would love to be proven wrong here. Unfortunately, experience has taught me otherwise.

The real question - that you ignored - was this:

> I suspect that "always get updates" promise I paid for years ago will be ignored.

Given that Microsoft already restricted a C++ version of Minecraft to Windows 10, do you really think they will ever ship this new C++ version of Minecraft for Linux and Mac? At the same time, not years later? Or will they split the community?


> Given that Microsoft already restricted a C++ version of Minecraft to Windows 10, do you really think they will ever ship this new C++ version of Minecraft for Linux and Mac? At the same time, not years later? Or will they split the community?

Considering that this named and marketed as a separate product ("Minecraft - Education Edition"), I don't really see where you believe you have a standing here. It certainly wouldn't be the first time a company put out a new version of something in order to move on from previous commitments. For instance, "Minecraft - XBox Edition" and "Minecraft - Android Edition" are not in sync with "Minecraft - The Original PC Edition" either.

And I certainly won't pretend to know where they're going with this, and I also want and hope for this new version to be a cross-platform product. I was more addressing the general opening statement, which is exactly what I quoted in my response.


Let's wait a bit before praising MS as an open company. They properly changed just last year. If it only takes one management change to do that, we may end up with another reversal in a year or two. It would be really easy for them to just say "well, that experiment didn't work out; no more published code".


I can certainly praise their current movements to be a more open company. The worst thing we as technologists can do is to be reserved in providing positive feedback on movements that we see as positive ones.


Current movements - sure. Praise actions, not the company. Companies change.


I can see how my original statement could be interpreted as praising the company directly. Allow me to clarify. I did intend to praise their actions. And I did intend to suggest that the current Microsoft is not necessarily the same company as relayed by pdkl95, because of these actions. Specifically, it is no longer clear that, "it is entirely against [Microsoft's] culture and history as a business to allow anything they control to be cross platform". History, well that can't be changed, only diluted with time. But culture can be changed.


"This is the same Microsoft that writes more apps with better user experiences for iOS and Android than it does for Windows Mobile 8 and so far 10."

To be fair, that's where the users are, and that's how they make their money.


I wouldn't ever make the assertion that a company should do something for any reason other than to make profit. Helping society is what non-profits are for, and that's why they receive tax benefits.


This is the same Microsoft that just recently released DirectX 12.

They seem to have given up on the server market, but they're still trying as hard as ever to keep the desktops.


I'll keep that in mind when I'm left out of the cold for the next minecraft release.


If it were an antiquated view it wouldn't be so popular!

Even as open source .NET is still a huge pain to get running under Linux and development of .NET anything is extremely difficult without Visual Studio (which doesn't run on Linux). Not only that but most of the .NET libraries one would use for any given purpose only work on Windows. So even if the core of .NET is open source and cross platform any software written using that platform can only effectively run on Windows.

When Microsoft puts out a version of Visual Studio for Linux desktops ("Minecraft modding edition"!) then I might start believing that they're serious about cross-platform software. It'll also signify their complete lack of relevance because to have gotten to that point would mean a level of desperation that would indicate a sinking ship.

It's just not in Microsoft's nature to make a product that's truly independent of its operating system and/or office software.


This argument is basically argumentum ad populum, and your concluding sentence is nothing more than the very same statement that I originally refuted.

> Even as open source .NET is still a huge pain to get running under Linux and development of .NET anything is extremely difficult without Visual Studio (which doesn't run on Linux). Not only that but most of the .NET libraries one would use for any given purpose only work on Windows. So even if the core of .NET is open source and cross platform any software written using that platform can only effectively run on Windows.

https://github.com/dotnet/cli

The open-sourcing and cross-platform development of .NET is an ongoing process that's still in its infancy. Yes, of course it's a pain in the ass right now. Installing git on Windows was also a pain in the ass, and even now it's still basically a prepackaged Linux emulation environment wrapper.


> If it were an antiquated view it wouldn't be so popular!

I don't know: there's more than enough ignorance around for completely absurd views to be popular. Look at Trump ;-)

Microsoft is actually more cross-platform than either Apple or Google. It has stuff on everything from memory sticks to mainframe class servers, and it has a cloud business (which supports Linux, as well as Windows). It has dozens of apps on iOS and Android, not just on Windows.

Office runs on Windows and Mac OS X, in browsers, and there are apps for Android and iOS.

Visual Studio Code is free and available for Linux and Max OS X as well as Windows https://code.visualstudio.com/Download

It's not everything, but who does more?


They brought on the Bukkit team years ago to develop the API but that never came about. https://mojang.com/2012/02/minecraft-team-strengthened/


Certainly a huge concern, however, an opportunity to actually support the modding scene and possibly even get support for other languages, particularly a language like python which would make it easier for kids to create mods.


I had never considered this. Very interesting.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: