strange formations

  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

Belone

New Member
Jul 29, 2019
417
0
0
It's certainly a strength of Java, but not the only strength. I think all these thread seems to be proving is that each language has such strengths and weaknesses. It ultimately comes down to what the programmer wants to achieve and what they are most comfortable with, for instance I am most comfortable with VB simply because when "I were a sprog" I learnt to program in QBasic, but I would by no means say it's the best language and know there are many situations it would be stupid to use it in (such as making games).
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
But I thought the strength of programming a game like Minecraft in java was it was pretty much instantly portable to any platform that Java will run on?

That's one of the strengths yes, but for games a pure C++ game that's build with portability in mind isn't that much harder to port really. OpenGL is very cross platform and there are plenty GUI / sound / whatever libraries that are cross platform.

even randomized seeds have a equation to follow (how else would it know how to handle different biomes) for the fact that it has a equation it means it's precaulculated, and basically you only have to input for X in this case the seed number.. i consider that precalculated..

This just proves there's no point in discussing this with you. And please let's not go swing computer science e-peens at each other, I've been a professional Java coder since '98. I also made a minecraft world viewer a few years back so I know how the engine works.

Chunks are generated based on a seed. That's it. Whenever something in that chunk changes (you remove a block) this block is removed in memory and then the engine has to translate that in-memory representation to the list of vertices,triangles, and texture coordinates the GPU uses to draw the world. This is a costly endevour because a single chunk can be about 16x16x256 blocks in size and pretty much each has to be visited. It can do some optimizations but generally when there's a lot of changes (such as lighting updates) it's simples just to redo the entire chunk.

This is why, unlike most other games, Minecraft is a CPU and memory intensive game. Unlike regular shooters where everything is 'fixed' and all just sits in GPU memory, in Minecraft everything can change at any time and that requires a lot of calculations translating stuff that's in regular memory to the representation the GPU understands.
 

NJM1564

New Member
Jul 29, 2019
2,348
-1
0
As I understand it Notch made the game in Java because it was easy to de-compile and program mods with. Not because of any advantage or even consideration to system performance.
Mojang has also stated quite clearly that they will not e changing the program format.
Think about it. It would require completely rewriting the hole game from the ground up. And the same for each and every mod.
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
As I understand it Notch made the game in Java because it was easy to de-compile and program mods with.

Please show me a source of that? Since they go through the effort of obfuscating the code it doesn't really make sense they want people to decompile it. Atleast not when they started.
 

Branndailor

New Member
Jul 29, 2019
26
0
0
it's true that java is really versatile and easy enough to code for that a large community could pump out mods.. it's what will keep the game alive for so long... but when you think it java has never been known for performance and that is what im trying to get at.. for example, if java was the performance champion like you're trying to make it out to be don't you think that the ios/androids would have been short lived instead of obsoleting the java cellphone platforms? sure those are cellphones... let's think about computers then. solaris, end of story and of an os. not trying to talk amack about java because i really do like it and do see it's uses, but for more complicated games java isnt the way to go. hence why pretty much every game in the market is in c++/c# imagine if bf3 was in java? holy systemblackhole!!!!

once again this is my point:
java is optimal for lightweight non intensive applications.
C (and variants) is for more optimized and heavier applications such as games..

java is easier and more versatile for a community to work with.
C (and variants) is a tiny bit harder and not as well spread as java but allows for more optimized software.

once again, not talking smack about java/mojang/programmers, just stating facts about the limitations of the language/technology...
imagine playing crysis 3 on a system with a gma, instead of a dedicated gpu... wouldn't work out too well, that doesnt mean gma doesnt have it's applications because it does BUT it's not intended for heavy gaming. hopefully that comparison is enough to explain what im trying to get at.
 

Branndailor

New Member
Jul 29, 2019
26
0
0
As I understand it Notch made the game in Java because it was easy to de-compile and program mods with. Not because of any advantage or even consideration to system performance.
Mojang has also stated quite clearly that they will not e changing the program format.
Think about it. It would require completely rewriting the hole game from the ground up. And the same for each and every mod.
as for this, yeah im not expecting them to do so... the very reason why MC is still relevant today is because of community interactions with the actual game... if they change the language they will severely hinder and damage what made their game popular in the first place... but as for rewriting it in a different language, since they already have the code written it wouldn't be hard to convert it.. hell if jeb emailed me today and told me to convert it i would do it for free and without asking for credit... it's like taking a book written in english and translating it to portuguese/german/french... i could do that in a heart beat because i already have the finished product and knowledge on the 3 languages i mentioned... the same goes for any programmer than understands how to program, know what i mean?

sure it's a pipe dream to want a MC in a different language, but why not dream? anyways let's change the subject because this is rather annoying having to state everything several times because a few members have tunnel vision and think they're always right.
not saying it's you njm, just not wanting to triple post lol
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
it's true that java is really versatile and easy enough to code for that a large community could pump out mods.. it's what will keep the game alive for so long... but when you think it java has never been known for performance and that is what im trying to get at.. for example, if java was the performance champion like you're trying to make it out to be don't you think that the ios/androids would have been short lived instead of obsoleting the java cellphone platforms? sure those are cellphones... let's think about computers then. solaris, end of story and of an os. not trying to talk amack about java because i really do like it and do see it's uses, but for more complicated games java isnt the way to go. hence why pretty much every game in the market is in c++/c# imagine if bf3 was in java? holy systemblackhole!!!!

Err, you do know that most Andriod software is basically googles version of Java right? Aside from that: Java is used a LOT in high-traffic enterprise applications. You know, thos big ass webapplications that get used by a LOT of users? I also don't understand how Solaris is relevant, it has nothing to do with Java other than that Sun made it.

once again, not talking smack about java/mojang/programmers, just stating facts about the limitations of the language/technology...
imagine playing crysis 3 on a system with a gma, instead of a dedicated gpu... wouldn't work out too well, that doesnt mean gma doesnt have it's applications because it does BUT it's not intended for heavy gaming. hopefully that comparison is enough to explain what im trying to get at.

The problem is that you simply don't know what you're talking about and are just pulling stuff out of thin air. I don't know what you mean with "GMA" but I really don't see how the presense of a GPU is relevant here. Minecraft uses the GPU, it uses OpenGL. Just like so many 3D engines do. The reason so many game engines use C++ is simply legacy.
 

Branndailor

New Member
Jul 29, 2019
26
0
0
Err, you do know that most Andriod software is basically googles version of Java right? Aside from that: Java is used a LOT in high-traffic enterprise applications. You know, thos big ass webapplications that get used by a LOT of users? I also don't understand how Solaris is relevant, it has nothing to do with Java other than that Sun made it.
The problem is that you simply don't know what you're talking about and are just pulling stuff out of thin air. I don't know what you mean with "GMA" but I really don't see how the presense of a GPU is relevant here. Minecraft uses the GPU, it uses OpenGL. Just like so many 3D engines do. The reason so many game engines use C++ is simply legacy.

mate, sure lets look at it, web players.. don't really require all that much resource to use. BUT A FREAKING GAME is another story ffs. like i already said java has it's uses but it's not a efficient game engine coding language.

gma (graphics media accelerator) is simply an integrated gpu. comparing a java to a integrated gpu and C variants to a gpu... compared the two, didnt literally say a gpu was related to the subject.
the comparison was to show the difference of the two in the gaming area... try playing a game on a integrated gpu you will notice that it's highly laggy/low fps because it's not meant for gaming, but try playing on a discreet gpu and you will notice it has a lot more horse power because it was meant for gaming once again im talking figuratively to compare the two languages... in case you didn't understand.

legacy, that's what im getting at, if it has legacy support it means older machines can run it, for a fact that older machines can run the damn thing it means it's a tad more efficient at what it's doing.. what was one of the things i said when i mentioned change the language of minecraft??? running it on slower/older machines. just because i can afford to own a pretty nice workstation desktop and a decent gaming machine doesnt mean that a 12 year old in god knows where is gonna be able to have the same system SO why should his gameplay suffer because of the language the game is made in, even though his system would be able to handle it just fine??
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
mate, sure lets look at it, web players.. don't really require all that much resource to use. BUT A FREAKING GAME is another story ffs. like i already said java has it's uses but it's not a efficient game engine coding language.

No matter how often you're going to repeat yourself you're not going to be less wrong.

http://benchmarksgame.alioth.debian.org/

This shows that C is only marginally faster in most benchmarks. It's hardly noticable. Add to that that Java is a more productive language and that most games actually rely on the GPU a lot more than the CPU (MC is an exception) Java is just as fine as a programming language as C, C++ or C#.

Your comparison between integrated graphics and a dedicated gaming GPU is completely rediculous. That's just a matter of sheer processing power. IT's like saying that a CPU from today is faster than a CPU from 10 years ago. No shit sherlock.

You're just grasping for straws and don't know what you're talking about. I'm done with you.
 

Abdiel

New Member
Jul 29, 2019
1,062
0
0
The whole "java is slow" argument is outdated by many years. It only survives as a joke among programmers, and as a trope on the internet for people to hate on something for no good reason, because hating on things for no good reason is "cool". With the advancements in compilers, CPU architectures, and the language itself, the relative speed of Java versus C++, or C#, or any modern widely-used programming language is at most academical, and almost always circumstantial. I wouldn't consider myself a Java expert, although I know enough about Java, C++ (and half a dozen other languages) to say that a program is as fast as its programmer, not as its language. There are applications which run faster in Java than an equivalent implementation in C. (mostly because of lack of pointer arithmetic and associated memory aliasing problems, also a little more compiler-friendly implementation of generics vs. templates)

You should choose a programming language based on its native features, expression power, ease of development, available libraries, other software you'll be interfacing with, etc., not because of "speed" - unless you really know what you're talking about - which means talking about a specific problem, having written an implementation in both languages, optimized the crap out of both, and measured profiling data.
 
  • Like
Reactions: Hydra

NJM1564

New Member
Jul 29, 2019
2,348
-1
0
Please show me a source of that? Since they go through the effort of obfuscating the code it doesn't really make sense they want people to decompile it. Atleast not when they started.

There actually planing on de-obfuscating the code at some point or at least aren't making much or any effort to keep up the obfuscation. But this info as well as the reasoning as to why they are keeping with java is buried under a few thousand of jebs twitter posts. And I'm not going to go threw all of them to prove this to you. Feel free to look for yourself.
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
There actually planing on de-obfuscating the code at some point or at least aren't making much or any effort to keep up the obfuscation.

That's the point. They might be planning that but they certainly did not plan on making it 'open' at the start. They obfuscated it for a reason.
 

Branndailor

New Member
Jul 29, 2019
26
0
0
The whole "java is slow" argument is outdated by many years. It only survives as a joke among programmers, and as a trope on the internet for people to hate on something for no good reason, because hating on things for no good reason is "cool". With the advancements in compilers, CPU architectures, and the language itself, the relative speed of Java versus C++, or C#, or any modern widely-used programming language is at most academical, and almost always circumstantial. I wouldn't consider myself a Java expert, although I know enough about Java, C++ (and half a dozen other languages) to say that a program is as fast as its programmer, not as its language. There are applications which run faster in Java than an equivalent implementation in C. (mostly because of lack of pointer arithmetic and associated memory aliasing problems, also a little more compiler-friendly implementation of generics vs. templates)

You should choose a programming language based on its native features, expression power, ease of development, available libraries, other software you'll be interfacing with, etc., not because of "speed" - unless you really know what you're talking about - which means talking about a specific problem, having written an implementation in both languages, optimized the crap out of both, and measured profiling data.

think about it though... don't you think that MC is on the wrong language? i've said several times during this whole post, i have nothing against java as it has its various uses... but one of them is not intensive gaming.
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
think about it though... don't you think that MC is on the wrong language? i've said several times during this whole post, i have nothing against java as it has its various uses... but one of them is not intensive gaming.

Repeating yourself is not going to make yourself less wrong.
 
  • Like
Reactions: Jinbobo

NJM1564

New Member
Jul 29, 2019
2,348
-1
0
That's the point. They might be planning that but they certainly did not plan on making it 'open' at the start. They obfuscated it for a reason.
Yah. To. Keep. People. From. Steeling. There. Multi. Million. Dollar. Code.
 

NJM1564

New Member
Jul 29, 2019
2,348
-1
0
Sigh I don't even care any more this thread has bin way off topic for way to long.
So congratulations Hydra you win by stubbornly refusing to consider anyone else's opinions.
And arguing with everybody until they are sick of trying to respond in any reasonable way.
Lets just have this post locked and be done with it.