I meant the original idea where people on pc and xbox 360/one could all play together
The original idea (or the idea in general) is for all platforms to play with each other, not just PC and Xbox (One and 360). I feel as if you're trying to insert your own suggestion into this.
Which, if you read the last 4 pages, you would notice that we've all been saying this isn't possible. The OP still hasn't overcome the one thing holding this back: how do all the games communicate together efficiently. PC edition is in Java and uses Netty, PE is in C++ and would use some networking library that works for both iOS and Android (and Win10 considering Win10 edition is literally just a port of PE to a Windows 10 store app), the console editions are in C++ and would use the proprietary networking libraries and APIs for the respective console. There's no efficient way to connect everything together, which is the reason why we're saying this suggestion (even PC / Xbox) is impossible or very, very difficult / inefficient. Win10 and PE is an exception due to the fact that under the bonnet / hood it's basically the same game.
Rollback Post to RevisionRollBack
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
This thread was intentionally general, it was something that could be modified to where it would be possible, and would be feasible. The reason why I didn't say for all platforms, was because I didn't know if it could be done. This thread had multiple purposes. The main purpose is to learn more about it, see what could be done, and couldn't be done. This far in the thread, I know that It can be done between Windows 10 computers, mobile edition, and Xbox One/360. What I do not know is whether or not it would be possible for Playstation and normal PC to be included. This idea matters, regardless of whether or not it can't supply two platforms, because ultimately, even the Xbox community has enough people to support such a server, completely excluding the people from Windows 10 and mobile. Now including those people, you have an even larger base of players. Frustration and confusion on this thread is inevitable, for critics, and for me. What I ultimately hope is to work through that confusion. Just a final note, these are the versions that I contend would be supported.
If more could be included, that would be great, but even this base of players is enough. People who want access to this feature enough, and have computers that can be upgraded to windows 10 and get the version, will do so. The people who don't want to, don't, and play normal PC Minecraft. I apologize if you assumed that I meant it would be very possible and practical for all versions of Minecraft. A mission of this was to figure out which could and couldn't. I did say that it would be a good thing if it was possible for all versions, but I can't contend that it would. You should not contend, though, that just because it can't be played on normal PC version, that it is completely irrelevant and should be disregarded. There should be improvements to Minecraft, even if those aren't attainable by all PCs. I believe improvements should be made to Minecraft wherever they may, and if they can't be included in one version, the others shouldn't be left out.
This thread was intentionally general, it was something that could be modified to where it would be possible, and would be feasible. The reason why I didn't say for all platforms, was because I didn't know if it could be done. This thread had multiple purposes. The main purpose is to learn more about it, see what could be done, and couldn't be done. This far in the thread, I know that It can be done between Windows 10 computers, mobile edition, and Xbox One/360. What I do not know is whether or not it would be possible for Playstation and normal PC to be included. This idea matters, regardless of whether or not it can't supply two platforms, because ultimately, even the Xbox community has enough people to support such a server, completely excluding the people from Windows 10 and mobile. Now including those people, you have an even larger base of players. Frustration and confusion on this thread is inevitable, for critics, and for me. What I ultimately hope is to work through that confusion. Just a final note, these are the versions that I contend would be supported.
Windows 10 Version
Xbox One
Xbox 360
Pocket Edition
If more could be included, that would be great, but even this base of players is enough. People who want access to this feature enough, and have computers that can be upgraded to windows 10 and get the version, will do so. The people who don't want to, don't, and play normal PC Minecraft. I apologize if you assumed that I meant it would be very possible and practical for all versions of Minecraft. A mission of this was to figure out which could and couldn't. I did say that it would be a good thing if it was possible for all versions, but I can't contend that it would. You should not contend, though, that just because it can't be played on normal PC version, that it is completely irrelevant and should be disregarded. There should be improvements to Minecraft, even if those aren't attainable by all PCs. I believe improvements should be made to Minecraft wherever they may, and if they can't be included in one version, the others shouldn't be left out.
I understand that Windows Edition and PC Edition are different things. I have to modify the idea as I acquire more information. Yet, I did not say that this would be available to all versions of Minecraft. The title suggested nothing about it being for all versions, as I have no idea if they could apply it to literally every edition of Minecraft. With the creation of large scale cross platform gaming, people would gain more and more incentive to switch to Windows 10 edition. Yeah, not going to happen. Windows 10 is having issues globally (the Australian release of Win10 was bugged, and I've been hearing issues all over the place, they'll fix it but for now everyone won't switch at the drop of a hat), switching everyone to Windows 10 edition won't happen because not everyone plays on Windows 10 or Windows even, there's a huge percentage of the community that plays on OSX and Linux, and there's even a decent percentage (or more even, I'm not sure) that refuse to upgrade to Windows 10. Windows 10 edition won't become the main edition, the PC edition will stay the main edition until it dies or Mojang officially makes Win10 a general version that works on all OS's. Jcm, it is unfair to tell me that something is about a thread I created, especially when I hadn't stated it would be for all versions. Look below, that line implies and refers to your suggestion branching across all versions I am constantly learning more and more as time goes by, and that often requires modification. When after a lot of research I found that they are already doing it with Windows 10, mobile, and Xbox, it was a gateway to show that cross-platform is being done for Minecraft. Except as we've already been through, this is an isolated exception due to the fact that (a) the game is the same across all 3, and (b) Xbox One will be using Windows 10. With new technology, new versions of things must come out. I will make sure to be clear here, I am not saying that people with PCs that aren't Windows 10 will be able to play, there is a slight possibility, but not likely.There isn't a possibility, it's definitive that anyone not using Windows 10 will not be able to play with someone on PE or Xbox One unless / until Mojang decides to move the Win10 edition out as a general edition that works on all OS's. It will be their choice to use Windows 10 minecraft, but within short time, it would become the only logical choice. Nope. I've argued this point before, the PC edition will remain the main edition. Only working on one operating system, limited modability, very difficult modability considering you'd be using DLL injection, limited features compared to the PC edition, likely going to remain with the same limitations of PE to keep them compatible, and more. All that adds up to Windows 10 basically being another Pocket Edition, a side edition for those who want them that won't ever keep up with or overtake the PC edition as the main edition unless Mojang does something out-of-the-blue such as implements a custom scripting language and modding API (which would still mean you won't see nearly the same mods as we have currently for the PC edition), or they branch Win10 out and keep it separated from PE to take advantage of the vast performance and capability improvements of a modern PC. Keep in mind, that PC to mobile comparison was simply because Jcm told me that Windows 10 computers wouldn't be able to play with androids or phones with iOS, which isn't true. I meantthat Windows 10 edition wouldn't be able to play with any other edition, that it can only play with itself, PE (any mobile devices that can run PE or Win10 edition) or Xbox One. I did accidentally state that iOS and Android wouldn't be able to play, and apologies for that. However, on the same token, I did say that they wouldn't be able to play the Win10 edition, not that they wouldn't be able to play with the Win10 edition, it was implied but it was never said directly.
"With the recent Microsoft purchase of Minecraft, and with the new consoles that have come out including the Xbox One and Play Station 4, I would imagine it would also be possible for this server to have at least 3 platforms, those being PC, Xbox One, and Play Station 4." That line there references a version of Minecraft that works across all platforms, ie reaching out to all versions of the game.
Otherwise, responses in bold.
Rollback Post to RevisionRollBack
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
This far in the thread, I know that It can be done between Windows 10 computers, mobile edition, and Xbox One/360. What I do not know is whether or not it would be possible for Playstation and normal PC to be included. PlayStation I find hard pressed for Sony to move to Windows 10, until it does or until Mojang releases a version of Minecraft compatible with both PS and the Win10 edition / PE "network" of sorts, my educated guess on PlayStation is not going to happen. Normal PC I'm almost certain will never happen. This idea matters, regardless of whether or not it can't supply two platforms, because ultimately, even the Xbox community has enough people to support such a server, completely excluding the people from Windows 10 and mobile. Now including those people, you have an even larger base of players. Frustration and confusion on this thread is inevitable, for critics, and for me. What I ultimately hope is to work through that confusion. Just a final note, these are the versions that I contend would be supported.
Windows 10 Version
Xbox One
Xbox 360I'd scratch this off the list, X360 far as I know isn't receiving the Win10 upgrade so it's not compatible with Win10 edition, hence won't work in this.
Just remember that this requires money to actually survive, even if there's a fair chunk of players on Xbox One alone, disregarding Win10 and PE, you need to add up how many players are required to at least turn a small profit from this for this idea to even be feasible, it doesn't matter whether or not this helps the community, this is business, if this is a money-drain and it's rapidly pulling money out of the business, MS / Mojang / 4J will pull the plug.
JCM, you are saying that the PC edition of Minecraft will be better forever, simply because the Windows 10 version is currently effy. It was released july 4th of 2015, which makes it basically 6 months. It took roughly 2 years from Minecraft to move from Pre-Classic to 1.0. You could say that Microsoft already had something to build off of, and they have, they already have it up to date with pocket edition. Some things are bound to be buggy, but so is your reasoning. "Because it is now, it always will," is your basic reasoning. Ever think that they may update pocket edition as well, you know, like they just did, as well as updating the console editions heavily. You contradicted yourself on it being impossible for play with Playstations, as you posted a scenario in which it could. That piece you have in quotation marks came from me, but I said, I would imagine. Learning more and more, it would just be easier to work it with the Windows 10 edition. Not only this, but since Microsoft promised compatibility with Xbox One and 360, they are either going to have to remove features from the Windows 10 edition, or add enough to be up to par with the Xbox versions. Guess which seems more logical. In truth, I had imagined that it would be possible for any minecraft capable PC, and consoles, to be able to do it. If I find a way for this to happen, but until then, there is a such thing as settling, for something that is almost as good.
JCM, you are saying that the PC edition of Minecraft will be better forever, simply because the Windows 10 version is currently effy. It was released july 4th of 2015, which makes it basically 6 months. It took roughly 2 years from Minecraft to move from Pre-Classic to 1.0. You could say that Microsoft already had something to build off of, and they have, they already have it up to date with pocket edition. Some things are bound to be buggy, but so is your reasoning. "Because it is now, it always will," is your basic reasoning. Ever think that they may update pocket edition as well, you know, like they just did, as well as updating the console editions heavily. You contradicted yourself on it being impossible for play with Playstations, as you posted a scenario in which it could. That piece you have in quotation marks came from me, but I said, I would imagine. Learning more and more, it would just be easier to work it with the Windows 10 edition. Not only this, but since Microsoft promised compatibility with Xbox One and 360, they are either going to have to remove features from the Windows 10 edition, or add enough to be up to par with the Xbox versions. Guess which seems more logical. In truth, I had imagined that it would be possible for any minecraft capable PC, and consoles, to be able to do it. If I find a way for this to happen, but until then, there is a such thing as settling, for something that is almost as good.
The issues that plague the Win10 edition will forever hold it back from the PC edition. Modability is perhaps the biggest IMO, second to being held back by the technical limitations of PE (of which it has to keep to remain compatible with PE). C++ isn't easy to mod, you have to rely on DLL injection which means high levels of instability and incompatibility between mods, it'll be beta with mods all over again where you can install only maybe 3 or 4 mods before you run into a conflict, if even TBH (I suspect maybe 1 mod installed at a time?). The only way around it is for Mojang or an author to expose the game to a scripting language like JS or Python, which limits things severely as you're now relying on what an API gives you access to. Where currently with the PC edition there virtually is no limits imposed. You have access to reference every single object the game uses, you have access to view the code of every single object and class the game uses, and you even have ASM and bytecode injection giving you the ability to practically rewrite the game with minimal incompatibilities (as long as you're not stupid with ASM). FML (ForgeModLoader) uses reflection which allows it to grab your mod's classes without needing to know the name of those classes (just annotate a class with @Mod(...) and FML can pick it up, no matter the name or location). C++ doesn't have any of these. With C++ you don't have ASM, you don't have reflection. If Mojang chooses to use a custom scripting language or use JS or Python you can't access or even view any of the game's source code to see how things work under the bonnet / hood. This alone is enough to give PC edition a very sizable advantage over Win10. Couple that with other issues (same code as PE, limits of PE, etc), then you can see why I hold PC above Win10 and will continue to.
I didn't contradict myself. Windows 10 won't come to the PlayStation, and Mojang probably won't release a version of Minecraft for PS that is compatible with Win10 edition. Or rather, can't. Because of that same libraries issue I explained before, along with the inefficiencies of trying to translate one standard to another.
And the speed advantages of C++ over Java really don't matter in gaming, or even more so for Minecraft. If a game had thousands of AI units with complex tasks having to be done, along with complex scene components having to be constructed, updated, lit and rendered in real-time, and maybe some complex particle effects, sure, the speed advantage will come in handy. Where the speed advantage shines is in simulations or complex algorithms that must perform as efficiently as possible down to the micro second. Minecraft doesn't require this, Java is fine for Minecraft. Minecraft's issue lies in it's downright inefficient and unoptimised code base. The code for the game currently is the same sloppy code that Mojang wrote for the game five years ago, and it's using a version of OpenGL that is nearing a decade old. Yes, it's using a fixed-function version of OpenGL which doesn't take advantage of the fact that modern hardware uses a programmable pipeline with shaders. If Mojang focused on moving the game to a more recent version of OpenGL, along with rewriting it, you'd see practically any computer fly with 60 FPS and beyond due to how simple the game is to render. CPU-wise it may still be a hog, but much less so than it is now.
Let me put it into perspective, games like GTA, Call of Duty, Crysis, League of Legends or really any modern game released at the time when the PS3 launched or later uses shaders for lighting. Lighting is handled by your graphics adapter and it can do millions of calculations within less than a sixtieth of a second. That's how powerful a GPU is. Minecraft, on the other hand, uses your CPU for lighting. Blocks have two properties assigned to them, a light value and a light opacity value. The light value is the amount that this block gives off and the light opacity value is the amount of light this block, well, blocks. Air has a light opacity of 1 IIRC, and glowstone has a light value of 15. Light propagates outwards and the light opacity is subtracted from the light intensity as it "enters" a block, this is the gist of how the lighting works in Minecraft. There's another side to this which is the sky light which is the amount of light the sky gives off, and it's virtually the same except the sky emits it, not blocks. Anyways, the code then takes the light values for both block lighting and sky lighting and uses these as look-up coordinates for a texture to work out how to colour a given side of a block based on the light value. Minecraft is using this hacky method on the CPU which is incredibly inefficient and slow, when they could be using a much better method on the GPU through cascading shadow maps (this is basically the standard for dynamic shadows in games) and inverse square falloff from point-based lights. This is why the game runs poorly, among other issues. It's not because of Java, it's because of the fact that Mojang uses the same sloppy code Notch wrote five years ago. PE and Win10 is just heavily optimised to run on a mobile device without lag, that's why it plays so well.
Rollback Post to RevisionRollBack
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
Yeah, I have read about the issue with modding, there will be a huge learning curve and slower in general, but if you care at all, It is a plus for me because I take C++ :). Other than that though, there still isn't much holding windows 10 edition back. Remember, they are going to make it and the Xbox versions compatible, which means, they will either have to add features to windows 10 and mobile, or remove them from Xbox One. Keep in mind that people would care a heck of a lot less about mods when they have this server to play on, if I haven't been egotistical enough. People are bound to find better ways to mod Minecraft, heck, Microsoft might even give out a modding tool, seeing as how they are allowing it on Fallout 4. The key word there is may though, but I don't think they will. Upgraded performance, and cross-platform server, sacrificed for easy modding. I never really used any mods anyway besides Pixelmon and Optifine, this would probably be the most controversial part. Then again, this issue exists without the Massive server, so might as well add some weight to the Windows 10 edition scale.
Yeah, I have read about the issue with modding, there will be a huge learning curve and slower in general, but if you care at all, It is a plus for me because I take C++ :). Other than that though, there still isn't much holding windows 10 edition back. Remember, they are going to make it and the Xbox versions compatible, which means, they will either have to add features to windows 10 and mobile, or remove them from Xbox One. Keep in mind that people would care a heck of a lot less about mods when they have this server to play on, if I haven't been egotistical enough. People are bound to find better ways to mod Minecraft, heck, Microsoft might even give out a modding tool, seeing as how they are allowing it on Fallout 4. The key word there is may though, but I don't think they will. Upgraded performance, and cross-platform server, sacrificed for easy modding. I never really used any mods anyway besides Pixelmon and Optifine, this would probably be the most controversial part. Then again, this issue exists without the Massive server, so might as well add some weight to the Windows 10 edition scale.
Fallout 4 and Minecraft are entirely different though. Fallout 4, and any Bethesda game since Morrowind (even earlier I'd say), are designed with modularity in mind. Content is stored in packages which you drop in a folder and the engine loads without you editing anything. You don't touch anything, just put some content in a package and drop it in the folder. This is why Fallout 4 can be modded on Xbox with no issues, because it's technically not breaking the ToS as you're not editing anything, just adding stuff. Minecraft cannot do this because it's not designed with modularity in mind. Minecraft is designed to be a closed system, to add a new block you have to edit the code of the game and add your own block to the blocks list and then register it, same goes with anything else you want to do. You're editing the code of the game itself, you have to overwrite the game's files, which means it breaks the ToS and is illegal. It can also compromise the security of the console if a developer was clever enough to find an exploit.
And it's not just easy modding that is sacrificed, modding as it is currently would be gone. Mods are the way they are now because of how much power Forge gives them, mods can rewrite and add custom code in. With DLL injection mods can technically still do this, but at the expense of it being harder on the user and virtually no compatibility with anything else. A mod adds a custom DLL file in that another mod relies on being modified, boom, conflict, game's screwed, have to redownload if the damage is that bad. And I think you grossly underestimate how much the game relies on modding for popularity. Several years back, maybe in 1.2.5 I would have said modding helped it gain traction and that was it. Now though? I'd be willing to bet if Mojang all of a sudden made modding illegal, the game would go under just because of how much it relies on modding. The largest servers are all modded, an incredibly large portion of the player base plays modded, even the game itself is staying alive due to mods (if Mojang collaborating with mod authors and adding modded content to the game is an indication, horses were inspired from Mo Creatures and even the Mo Creatures author helped out, they have Searge from the MCP dev team on-board Mojang, pistons are from mods, slime blocks are from mods, commands were originally modded even). Sure, vanilla Minecraft may survive but the game will be heavily damaged. That's why I say modding is the biggest reason why Windows 10 won't overtake the PC edition.
Performance improvements honestly aren't anything special in the grand scheme of things, Mojang has already confirmed that shaders are in the near future meaning we will see huge improvements in the order of tens of frames gained, more in some cases. In the same token though this does block out older computers that cannot support recent versions of OpenGL, unfortunately. Still. Then there's the problem of Windows 10, well, only working with Windows 10. This is the biggest issue too, on par with modding. I still hold my stance that the majority of the player base is on PC. If activity in the console edition's respective sections is an indicator, activity has slowed massively since inception, so I'd be willing to bet the console editions are falling off and will eventually remain stagnant within the shadow of even the Win10 edition.
Rollback Post to RevisionRollBack
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
The original idea (or the idea in general) is for all platforms to play with each other, not just PC and Xbox (One and 360). I feel as if you're trying to insert your own suggestion into this.
Which, if you read the last 4 pages, you would notice that we've all been saying this isn't possible. The OP still hasn't overcome the one thing holding this back: how do all the games communicate together efficiently. PC edition is in Java and uses Netty, PE is in C++ and would use some networking library that works for both iOS and Android (and Win10 considering Win10 edition is literally just a port of PE to a Windows 10 store app), the console editions are in C++ and would use the proprietary networking libraries and APIs for the respective console. There's no efficient way to connect everything together, which is the reason why we're saying this suggestion (even PC / Xbox) is impossible or very, very difficult / inefficient. Win10 and PE is an exception due to the fact that under the bonnet / hood it's basically the same game.
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
My Github page.
The entire Minecraft shader development community now has its own Discord server! Feel free to join and chat with all the developers!
This thread was intentionally general, it was something that could be modified to where it would be possible, and would be feasible. The reason why I didn't say for all platforms, was because I didn't know if it could be done. This thread had multiple purposes. The main purpose is to learn more about it, see what could be done, and couldn't be done. This far in the thread, I know that It can be done between Windows 10 computers, mobile edition, and Xbox One/360. What I do not know is whether or not it would be possible for Playstation and normal PC to be included. This idea matters, regardless of whether or not it can't supply two platforms, because ultimately, even the Xbox community has enough people to support such a server, completely excluding the people from Windows 10 and mobile. Now including those people, you have an even larger base of players. Frustration and confusion on this thread is inevitable, for critics, and for me. What I ultimately hope is to work through that confusion. Just a final note, these are the versions that I contend would be supported.
Windows 10 Version
Xbox One
Xbox 360
Pocket Edition
Jcm contends xbox is impossible/unlikely, so here is a source: http://www.ign.com/articles/2015/09/08/cross-platform-play-coming-to-minecraft-windows-10-edition-beta
If more could be included, that would be great, but even this base of players is enough. People who want access to this feature enough, and have computers that can be upgraded to windows 10 and get the version, will do so. The people who don't want to, don't, and play normal PC Minecraft. I apologize if you assumed that I meant it would be very possible and practical for all versions of Minecraft. A mission of this was to figure out which could and couldn't. I did say that it would be a good thing if it was possible for all versions, but I can't contend that it would. You should not contend, though, that just because it can't be played on normal PC version, that it is completely irrelevant and should be disregarded. There should be improvements to Minecraft, even if those aren't attainable by all PCs. I believe improvements should be made to Minecraft wherever they may, and if they can't be included in one version, the others shouldn't be left out.
Thats what i was trying to get at the whole time
"With the recent Microsoft purchase of Minecraft, and with the new consoles that have come out including the Xbox One and Play Station 4, I would imagine it would also be possible for this server to have at least 3 platforms, those being PC, Xbox One, and Play Station 4." That line there references a version of Minecraft that works across all platforms, ie reaching out to all versions of the game.
Otherwise, responses in bold.
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
My Github page.
The entire Minecraft shader development community now has its own Discord server! Feel free to join and chat with all the developers!
Just remember that this requires money to actually survive, even if there's a fair chunk of players on Xbox One alone, disregarding Win10 and PE, you need to add up how many players are required to at least turn a small profit from this for this idea to even be feasible, it doesn't matter whether or not this helps the community, this is business, if this is a money-drain and it's rapidly pulling money out of the business, MS / Mojang / 4J will pull the plug.
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
My Github page.
The entire Minecraft shader development community now has its own Discord server! Feel free to join and chat with all the developers!
JCM, you are saying that the PC edition of Minecraft will be better forever, simply because the Windows 10 version is currently effy. It was released july 4th of 2015, which makes it basically 6 months. It took roughly 2 years from Minecraft to move from Pre-Classic to 1.0. You could say that Microsoft already had something to build off of, and they have, they already have it up to date with pocket edition. Some things are bound to be buggy, but so is your reasoning. "Because it is now, it always will," is your basic reasoning. Ever think that they may update pocket edition as well, you know, like they just did, as well as updating the console editions heavily. You contradicted yourself on it being impossible for play with Playstations, as you posted a scenario in which it could. That piece you have in quotation marks came from me, but I said, I would imagine. Learning more and more, it would just be easier to work it with the Windows 10 edition. Not only this, but since Microsoft promised compatibility with Xbox One and 360, they are either going to have to remove features from the Windows 10 edition, or add enough to be up to par with the Xbox versions. Guess which seems more logical. In truth, I had imagined that it would be possible for any minecraft capable PC, and consoles, to be able to do it. If I find a way for this to happen, but until then, there is a such thing as settling, for something that is almost as good.
Not to mention C++ "Windows 10 edition" is faster than Java "PC edition" http://www.jelovic.com/articles/why_java_is_slow.htm
The issues that plague the Win10 edition will forever hold it back from the PC edition. Modability is perhaps the biggest IMO, second to being held back by the technical limitations of PE (of which it has to keep to remain compatible with PE). C++ isn't easy to mod, you have to rely on DLL injection which means high levels of instability and incompatibility between mods, it'll be beta with mods all over again where you can install only maybe 3 or 4 mods before you run into a conflict, if even TBH (I suspect maybe 1 mod installed at a time?). The only way around it is for Mojang or an author to expose the game to a scripting language like JS or Python, which limits things severely as you're now relying on what an API gives you access to. Where currently with the PC edition there virtually is no limits imposed. You have access to reference every single object the game uses, you have access to view the code of every single object and class the game uses, and you even have ASM and bytecode injection giving you the ability to practically rewrite the game with minimal incompatibilities (as long as you're not stupid with ASM). FML (ForgeModLoader) uses reflection which allows it to grab your mod's classes without needing to know the name of those classes (just annotate a class with @Mod(...) and FML can pick it up, no matter the name or location). C++ doesn't have any of these. With C++ you don't have ASM, you don't have reflection. If Mojang chooses to use a custom scripting language or use JS or Python you can't access or even view any of the game's source code to see how things work under the bonnet / hood. This alone is enough to give PC edition a very sizable advantage over Win10. Couple that with other issues (same code as PE, limits of PE, etc), then you can see why I hold PC above Win10 and will continue to.
I didn't contradict myself. Windows 10 won't come to the PlayStation, and Mojang probably won't release a version of Minecraft for PS that is compatible with Win10 edition. Or rather, can't. Because of that same libraries issue I explained before, along with the inefficiencies of trying to translate one standard to another.
And the speed advantages of C++ over Java really don't matter in gaming, or even more so for Minecraft. If a game had thousands of AI units with complex tasks having to be done, along with complex scene components having to be constructed, updated, lit and rendered in real-time, and maybe some complex particle effects, sure, the speed advantage will come in handy. Where the speed advantage shines is in simulations or complex algorithms that must perform as efficiently as possible down to the micro second. Minecraft doesn't require this, Java is fine for Minecraft. Minecraft's issue lies in it's downright inefficient and unoptimised code base. The code for the game currently is the same sloppy code that Mojang wrote for the game five years ago, and it's using a version of OpenGL that is nearing a decade old. Yes, it's using a fixed-function version of OpenGL which doesn't take advantage of the fact that modern hardware uses a programmable pipeline with shaders. If Mojang focused on moving the game to a more recent version of OpenGL, along with rewriting it, you'd see practically any computer fly with 60 FPS and beyond due to how simple the game is to render. CPU-wise it may still be a hog, but much less so than it is now.
Let me put it into perspective, games like GTA, Call of Duty, Crysis, League of Legends or really any modern game released at the time when the PS3 launched or later uses shaders for lighting. Lighting is handled by your graphics adapter and it can do millions of calculations within less than a sixtieth of a second. That's how powerful a GPU is. Minecraft, on the other hand, uses your CPU for lighting. Blocks have two properties assigned to them, a light value and a light opacity value. The light value is the amount that this block gives off and the light opacity value is the amount of light this block, well, blocks. Air has a light opacity of 1 IIRC, and glowstone has a light value of 15. Light propagates outwards and the light opacity is subtracted from the light intensity as it "enters" a block, this is the gist of how the lighting works in Minecraft. There's another side to this which is the sky light which is the amount of light the sky gives off, and it's virtually the same except the sky emits it, not blocks. Anyways, the code then takes the light values for both block lighting and sky lighting and uses these as look-up coordinates for a texture to work out how to colour a given side of a block based on the light value. Minecraft is using this hacky method on the CPU which is incredibly inefficient and slow, when they could be using a much better method on the GPU through cascading shadow maps (this is basically the standard for dynamic shadows in games) and inverse square falloff from point-based lights. This is why the game runs poorly, among other issues. It's not because of Java, it's because of the fact that Mojang uses the same sloppy code Notch wrote five years ago. PE and Win10 is just heavily optimised to run on a mobile device without lag, that's why it plays so well.
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
My Github page.
The entire Minecraft shader development community now has its own Discord server! Feel free to join and chat with all the developers!
Yeah, I have read about the issue with modding, there will be a huge learning curve and slower in general, but if you care at all, It is a plus for me because I take C++ :). Other than that though, there still isn't much holding windows 10 edition back. Remember, they are going to make it and the Xbox versions compatible, which means, they will either have to add features to windows 10 and mobile, or remove them from Xbox One. Keep in mind that people would care a heck of a lot less about mods when they have this server to play on, if I haven't been egotistical enough. People are bound to find better ways to mod Minecraft, heck, Microsoft might even give out a modding tool, seeing as how they are allowing it on Fallout 4. The key word there is may though, but I don't think they will. Upgraded performance, and cross-platform server, sacrificed for easy modding. I never really used any mods anyway besides Pixelmon and Optifine, this would probably be the most controversial part. Then again, this issue exists without the Massive server, so might as well add some weight to the Windows 10 edition scale.
Fallout 4 and Minecraft are entirely different though. Fallout 4, and any Bethesda game since Morrowind (even earlier I'd say), are designed with modularity in mind. Content is stored in packages which you drop in a folder and the engine loads without you editing anything. You don't touch anything, just put some content in a package and drop it in the folder. This is why Fallout 4 can be modded on Xbox with no issues, because it's technically not breaking the ToS as you're not editing anything, just adding stuff. Minecraft cannot do this because it's not designed with modularity in mind. Minecraft is designed to be a closed system, to add a new block you have to edit the code of the game and add your own block to the blocks list and then register it, same goes with anything else you want to do. You're editing the code of the game itself, you have to overwrite the game's files, which means it breaks the ToS and is illegal. It can also compromise the security of the console if a developer was clever enough to find an exploit.
And it's not just easy modding that is sacrificed, modding as it is currently would be gone. Mods are the way they are now because of how much power Forge gives them, mods can rewrite and add custom code in. With DLL injection mods can technically still do this, but at the expense of it being harder on the user and virtually no compatibility with anything else. A mod adds a custom DLL file in that another mod relies on being modified, boom, conflict, game's screwed, have to redownload if the damage is that bad. And I think you grossly underestimate how much the game relies on modding for popularity. Several years back, maybe in 1.2.5 I would have said modding helped it gain traction and that was it. Now though? I'd be willing to bet if Mojang all of a sudden made modding illegal, the game would go under just because of how much it relies on modding. The largest servers are all modded, an incredibly large portion of the player base plays modded, even the game itself is staying alive due to mods (if Mojang collaborating with mod authors and adding modded content to the game is an indication, horses were inspired from Mo Creatures and even the Mo Creatures author helped out, they have Searge from the MCP dev team on-board Mojang, pistons are from mods, slime blocks are from mods, commands were originally modded even). Sure, vanilla Minecraft may survive but the game will be heavily damaged. That's why I say modding is the biggest reason why Windows 10 won't overtake the PC edition.
Performance improvements honestly aren't anything special in the grand scheme of things, Mojang has already confirmed that shaders are in the near future meaning we will see huge improvements in the order of tens of frames gained, more in some cases. In the same token though this does block out older computers that cannot support recent versions of OpenGL, unfortunately. Still. Then there's the problem of Windows 10, well, only working with Windows 10. This is the biggest issue too, on par with modding. I still hold my stance that the majority of the player base is on PC. If activity in the console edition's respective sections is an indicator, activity has slowed massively since inception, so I'd be willing to bet the console editions are falling off and will eventually remain stagnant within the shadow of even the Win10 edition.
Author of the Clarity, Serenity, Sapphire & Halcyon shader packs for Minecraft: Java Edition.
My Github page.
The entire Minecraft shader development community now has its own Discord server! Feel free to join and chat with all the developers!