Aparently that Windows version is totally different. Aparently MineCrafts modding scene is so strong BECAUSE it's a Java game. I keep hearing from coders that Java is much simpler to code for despite it's inefficiencies in performance and that C based languages are a pain.
Therefore not many folks will mod a C game unless a really robust API is present.
Sent from my GT-I9100 using Tapatalk
Clarification: There's several reasons why Java is so easy to mod.
For one, jar files are not single, indivisible executables like what most languages compile to. Jar files are simple zip files containing a bunch of .class files. If you create another .class file that contains a bunch of methods with all the same names and type signatures as one in a jar file, you can just swap them out and the jar will work fine. This is exactly what old-school jar mods do: they simply replace .class files in minecraft.jar with their own, modified versions. Naturally, there's no way to do this with .exe programs. To mess with them, you'd have to go into the machine code and replace chunks of it with your own machine code. There tools that can do this, but none are nearly as simple as unzip -> replace files -> rezip.
Second, Java bytecode (the stuff in those .class files) is very easy to decompile. There is really only one compiler to worry about, and only one system that the code is compiled to: the Java Virtual Machine. As such, there's something close to a 1-to-1 correspondence between source code and bydecode. For languages like C, on the other hand, there are many different compilers that each take their own spin on how to turn source code into an executable, and each can be configured in a multitude of different ways, and there are many different systems they can all target. If I write a C program and then compile it on my Macbook, I'll get an executable file. If I send my sourcecode over to my university's file server and compile it there, I'll get another executable. If I then compare the two executable files to each other- both generated from the exact same sourcecode using the exact same compiler (gcc, in this case) configured in a fairly similar way- I'll find (and, indeed, have found) that they're different. The bytes stored in them just don't match up.
A program trying to turn a compiled executable back into the human-readable sourcecode that created it would have to account for every single one of these variables. A program trying to turn a Java .jar or .class file into the sourcecode that generated it need account for almost none.
As such, Minecraft modders are a bit spoiled. We can download a bunch of files from the Internet, plug in a copy of minecraft.jar, hit run, and bam, the entire partially deobfuscated source code appears on your hard drive. Literally everything is right there, ready for modification. And once you're done, just type in a few more commands, and bam, out pops a package that can be installed using nothing more than a utility for unpacking zip files.
Sure, non-Java games have mods. Dwarf Fortress, for instance, has a vibrant modding community. But every single mod and utility for that game relies on one of two things: editing the plaintext "raws" that interface with the game's built-in API, or hacking into the memory used by the program at runtime. That's it. Nobody touches df.exe.