Bestopen-source"-ish mod to learn the basics of things? Minecraft. Seriously, a lot of things people ask about can be found here and there in Vanilla. Best open-source mod to learn about conventional coding? Forge. Best open-source mod to learn about how to do some specific things? Your brain and a bit of logic. Best open-source mod to learn something really specific from? Well, depends on the specifics.
Most mods nowdays are open-sourced, as there is literally no reason to hide your source code. Every mod does things it's own way though. Want something simple? Pick a simple mod then, Any advanced mod will have several layers of abstractions and by your definition will be 'non learner friendly'.
Thanks, Looks like some good stuff to learn from... Personally I like to learn by taking an existing project and seeing how it works. It's a lot more fun then watching videos or tutorials... I started this learning habbit from opening every electronic device I had when I was younger... I have no idea why I went all personally off topic...
The tutorials are outdated, at least the ones that cover the basics. I know a bit already, but I really wanted to do more. someday I want to do mobs with machines that use RF and consume fluids. maybe even multiblock structures. but I have to start learning.
I'm not a complete noob. I have an intermediate java (not good at advanced topics like remoting, parallelism, database management, or weird stuff like closures and nested classes). I fully understand OOP , data structures, and all that.
I know a bit about modding, mostly because I used to frequent this forum when I was little. I just want a good series of updated tutorials or good uncomplicated source codes to look at (ideally both tutorials and source codes). Any suggestions?
I started by the begining, with Jabelar's blog. So far I didn't have the chance to read much, but it seems to me the posts could have been organized in a more didatic order, from beginner to advanced, because that's how good knowledge is built: you lay out the foundations of basic knowledge upon which you stack layer after layer of come complex and advanced knowledge.
The other thing I noticed about his blog posts is that there's no way of knowing for sure when he's talking about 1.8 or 1.7.10. I'm interested only in 1.7.10. And that will make it a little harder, cause I will have to follow the tutorial only to find out it doesn't work, and then try and find another one elsewhere. but hey, finding out ways of how not to build a light bulb, right?
So, this is Gumball here. This is my very old account from when I was little. My "Gumball" got summarily banned cause I asked a question about Minecraft Forge on a forum about Minecraft Forge. Go figure... anyway, send any new PMs about this thread to this profile. Thank you.
I want to prevent mod developers from stealing code from other mod developers in my game. The best way that I know how is to only ever support mods that are open-source. I know about the SteamWorkshop but I can't seem to find anything about it that lets me do that.
I have a friend that is a mod developer for Minecraft. Recently his open-source work got privatized by another mod developer team without proper attribution. All through out the experience, he has suffered hate from the public. His mod was called a "cheap knock" off of the other mod.
He got even more hate when he tried raising the issue getting called out as a liar even though he has proof which he cant share to the public. The other mod devs accidentally set their Github repo to "public", giving him enough time to read thru the code and download a copy. He can't share any of it since they set their repo back to "private".
Refusing to escalate it to court (because nobody goes to court over Minecraft), he, his team, and people that used their mod publicly have been harassed. This has been going on for a few months now since the last time I checked.
TBH, I just want to provide a way for my community to know the truth first before they try chewing out the wrong people(if I can't stop them from chewing out anyone, at least). From what I saw, most of the hate thrown at my friends came from the same people they try to impress (yes, they're still working on the mod despite all of this). Most of the community believes that they're in the wrong without fully understanding the whole issue and mostly because they couldn't present any solid proof to the crowd without breaking the law.
As I see it it's all because of privatization. My friends can't properly speak about it to the public and neither the other side (without escalating it to court(and if this happens to my game I think it would ruin its experience)).
I don't have any problems with mods getting monetized. As I understand it, privatization is a viable choice for people planning to monetize their code but I do understand that people can still monetize open-source code.
It would make it easier if I could offset mod management to some other platform. Is there a mod-sharing platform out there that I can set to only allow mods for my game to be posted with links to their open-source repo or something?
What you can do is build an easy, in built way of installing mods, and have that install only from public git repos. You can even go so far as to have your code check for a standard OS licence, and refuse to install it otherwise. Obviously, document all this in however you display the docs for modding the game.
You could also add in stipulations to your game's licence about not creating mods that are not open source. This is only as powerful as your ability or will to enforce it. You can issue takedown requests for mods that breach it, have a law firm send cease and desist letters to people who create the mods, etc, etc.
Ultimately, this is going to be an extremely hard balance to strike. Too much enforcement and restrictions, and your game simply won't have a modding community, or at least veer more towards the "Aimbots and cheat mods" types of mods. Get the install mechanism wrong, and people will just build their own, without these restrictions. Get the community messaging wrong, and people will decide you're just a terrible person, and go build a different mechanism out of spite. Fail to respect the 4th point, and you'll burn out from playing whack a mole against mod authors.
Edit: If the goal is to prove creator priority, after some research, git might not be the best tool. Turns out you can modify git dates, and it works rather well, although a timestamp may be preserved on the server somewhere. I still think requiring pulling from git repos is a decent solution, however, I think at this point it's reasonable to include a clause insisting on unobsfucated source code in your licence agreement. I'd advise against trying to detect obsfucated code programatically, as a quick google got me into machine learning territory very quickly.
I find myself thinking about the development of the calculus. Newton invented it first but didn't publish, merely sharing his unpublished notes with a few hand-picked members of the Royal Society. Leibnitz, meanwhile, invented it on his own; later than Newton, but he published promptly. Newton accused him of plagiarism, and the issue developed into a full-court bunfight which ran for decades, if not centuries, to the benefit of nobody.
So for well over three hundred years we have known that the best way to establish primacy of discovery is to do your work in the public eye, and that if you choose not to, you may end up having a nasty fight about primacy later on. Your first paragraph indicates that you know this, so I urge you to go with your gut: doing your development in public, particularly if it's on someone else's servers, makes any argument about exact dates of this-and-that completely pointless.
So how do you, as the developer of the main system, assist in this (though I note in passing that it's not actually your job to do so)? The easiest way is to publish your code under GPL, and make it clear that your plugin interface is not available for use by proprietary code.
Even if you require mods to be distributed in sourcecode form only, there are tools that can be used to obfuscate sourcecode in a way that makes it hard to prove beyond doubt where it originally came from.
However, requiring mods to be distributed as sourcecode also has other advantages. It makes it easier for players to confirm what the mods actually do and that they don't contain anything malicious. A good way to do that is by adding a scripting language to your game with a powerful API that allows anything modders would probably want, and then add a mechanism for loading mods in scriptcode form at runtime. Together with your own system for managing mods that is built into the game and easy to use.
Assuming your scripting API is powerful enough and your interface convenient enough, there is no reason for the modding community to come up with launchers that use nasty binary code injection tricks like they have to use in games like Minecraft. Mods in form of script files will be the preferred way to mod your game, and there won't be a reason for anyone to build the technology that would be required for mods based on code injection.
Similar to what @Lupe suggests, I will make sure to include it in my game's user licensing that mods should make their source available to the public without obfuscation from wherever they decide to host their mod download and where people can read it easily (I'll try and consult with a lawyer to put it in proper clause).
As @Lupe pointed out, detecting obfuscation would be too complex of a task for its purpose of activating a notification. Instead, I think it would be best to just implement it as a reminder each time a user loads in the mods UI.
There are many rules in Open Source distribution (which Minecraft Mods, WoW Mods, Spring RTS Mods and other games which must abide to), one of them is to freely distribute, remain price free and say Yes to whomever wants to use it, no excuses, this includes Mod Packs.
3a8082e126