Is Java a gift to modders?

  • Please make sure you are posting in the correct place. Server ads go here and modpack bugs go here
  • 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

EternalDensity

New Member
Jul 29, 2019
1,428
2
0
I guess there would be some modding but there would probably be a much smaller community of modders. My reasoning is:
1. Many modders started programming when they started modding, and C++ isn't particularly newbie friendly.
2. Java mods work as-is on all Minecraft platforms, while C++ mods would require distribution of the source code and compiling for whatever OS you're using. (Or multiple versions, or just support for only one version which would fragment and diminish the community further.)
3. Aside from learning the language, the mods would be harder to write in the first place (unless there was an API) since it would require far more hackish methods of changing Minecraft's behaviour. And I think you couldn't do nifty stuff like reflection. On the other hand, it would probably end up with one modloader program which would then load mods in Java :p

For a comparison, look at Dwarf Fortress mods.
 
  • Like
Reactions: Whovian

EternalDensity

New Member
Jul 29, 2019
1,428
2
0
Depends. Compared to C++, yes. Compared to Lua or Python? No.
Good point :D
Now if Minecraft was written in C++ with a solid API so people could mod with Lua or Python, that could work pretty well. I think we'd lack some things though: we probably wouldn't have optifine or shaders... though on the other and those probably wouldn't need to be mods in the first place :p
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
I personally doubt that allowing the use of Python or Lua would give more modding potential. A lot of people are familiar with the syntax of C-like languages (like Java, C#, PHP to some extent) and for the rest it's just a matter of learning the API.

A proper modding API would be very helpful but I think forge is filling that void very well.
 

Greyed

New Member
Jul 29, 2019
445
0
0
I personally doubt that allowing the use of Python or Lua would give more modding potential. A lot of people are familiar with the syntax of C-like languages (like Java, C#, PHP to some extent) and for the rest it's just a matter of learning the API.

Wow, and you don't recognize the incongruity in that statement? I mean aside from the fact that syntax is probably one of the lesser problems that programmers run into, and that most of what makes "C-Like" syntax is also present in Lua and Python?
 

egor66

New Member
Jul 29, 2019
1,235
0
0
The short answer is yes, its not just the type of coding involved its the game in question, ie is there a large player base, are there limits to icons & graphic, is there an code walls that are hit at early stage that would limit the mod-ability, there have been many games over the years that have had a big to huge mod following one of note "for me" would be diablo 2 this one had a big big following at one time & is still being moded as far as I know, but blizz done all in the power to limit d2 modding, one of the newer ones that actively supports modding is Torchlight 2, the mods are coming think & fast for that game, not one I play my son does but some modes are really professional & add a lot of game play.

So mho is that its the player base first, if there is no community to use a mode etc, next the games mod-ability that matters, there are talented coders out there that can & do code on most any platform so thats not the limiting factor.

Just my 2 cents, some may say over priced at that..
 

Bigglesworth

New Member
Jul 29, 2019
1,072
0
1
No. java is a programming language.

A fucking official API is a gift to modders. If any programming language were to be a gift to modders it would be a Python (LUA is a second choice) centric API for minecraft. Mojang hasnt fully grasped that their game is popular because the community is making it popular through community creation. This includes mods. make modding easy and your game will increase in sales and popularity. Adding a horse to the official game wont do that nearly as well.
 

egor66

New Member
Jul 29, 2019
1,235
0
0
No. java is a programming language.

A fucking official API is a gift to modders. If any programming language were to be a gift to modders it would be a Python centric API for minecraft. Mojang hasnt fully grasped that their game is popular because the community is making it popular through community creation. This includes mods. make modding easy and your game will increase in sales and popularity. Adding a horse to the official game wont do that nearly as well.

Wow calm down son, take 2 deep breaths, inhale, exhale, inhale, exhale, now feel better ?.
 

xSINZx

New Member
Jul 29, 2019
305
0
0
Ok I'll have a go!

Java is a Cellphone language. Something to pop up and show a visual of what you want to click.

Personally I think Minecraft would do a lot better using C++ Not so much Bull...t behind the scenes.
 

Bigglesworth

New Member
Jul 29, 2019
1,072
0
1
Minecraft would not do well with C++ considering minecraft needs its creative users to keep it going and becoming more popular. People generally do not want to learn something like C++, and they would lose a large chunk of developers. We might get slightly better framerate, but thats about it.

If they really wanted to get rid of the fat, they would need to recode MC (this game isnt that complex for these people) from the ground up with the above in mind (in java) and we would see massive improvements across everything. Performance, stability, expandability, etc etc This game should run at 300FPS in the middle of the Mindcrack 'main town' area on moderate hardware with shaders. It being unable to is not the fault of the language they are using, as it is capable of it.
 

Sphinx2k

New Member
Jul 29, 2019
195
0
0
First i think the programming language has nothing todo with making a good or bad game.
I don't think it would have worked if it was not java. On big thing is that java is decompile-able + that notch did allow it to a certain degree. + the easy cross platform compatibility.

In contrast:
As an old gamer i am now i have seen many great mods for games written in C (with no mod support from the game devs).

So at last i would think it comes down to the people making the mod. Without Sarge making MCP so good. The Bukkit and now Forge Teams making a really good api. This plus the big userbase makes minecraft a great game for modding.
 

Hydra

New Member
Jul 29, 2019
1,869
0
0
Wow, and you don't recognize the incongruity in that statement? I mean aside from the fact that syntax is probably one of the lesser problems that programmers run into, and that most of what makes "C-Like" syntax is also present in Lua and Python?

Much less so than in Java IMHO. I've programmed in all those languages. For me switching between C# and Java for example is much easier than between C# and Lua. It's not a big hurdle at all, but since theres MUCH more work in C# and Java development than in Python there will also be more people that find it easy to start developing mods.[DOUBLEPOST=1366805766][/DOUBLEPOST]
Java is a Cellphone language.

If you have no clue what you're talking about, why comment? Seriously; I just don't get it.[DOUBLEPOST=1366805995][/DOUBLEPOST]
No. java is a programming language.

A fucking official API is a gift to modders. If any programming language were to be a gift to modders it would be a Python (LUA is a second choice) centric API for minecraft. Mojang hasnt fully grasped that their game is popular because the community is making it popular through community creation. This includes mods. make modding easy and your game will increase in sales and popularity. Adding a horse to the official game wont do that nearly as well.

A modding API would not benefit the community because we already have a very good one: Forge. If an official modding API comes out you suddenly have two competing standards; Forge and the MC API. This will make sure that either Forge gets ported to use the API (providing a layer around it) or the mods themselves get ported. For mod authors this will be a lot of work with very little benefit.

Sure in the long run there are benefits but don't even think that a modding API will be as complete as forge is now. You will have a LONG transition period with a lot of unhappy stakeholders.
 

Trond007

New Member
Jul 29, 2019
38
0
0
No. java is a programming language.

A fucking official API is a gift to modders. If any programming language were to be a gift to modders it would be a Python (LUA is a second choice) centric API for minecraft. Mojang hasnt fully grasped that their game is popular because the community is making it popular through community creation. This includes mods. make modding easy and your game will increase in sales and popularity. Adding a horse to the official game wont do that nearly as well.

I realise that, just like LUA (addons, not mods) made World of Warcraft more popular, and Counter-Strike Source with its mods, dunno about the programming though, I'm not an expert.
 

King Lemming

New Member
Jul 29, 2019
664
0
0
Depends. Compared to C++, yes. Compared to Lua or Python? No.

Can tell you one thing, if Minecraft were written in C++, you'd still have Thermal Expansion. :) Lua or Python? Absolutely not. They are scripting languages for a reason - the lack of braces is a deal-killer.

And I say that as somebody who has effectively written a baremetal embedded implementation of a bootloader and network stack in Python. I cannot stand it.