--------------------------------------------------------------------------------
I am not an expert at MC modding but i am familiar (i believe) with how it is done in a general sense.tundragrass wrote:How do you update a mod to a new version? do you have to go into the coding and mess with some stuff? Iam not that great at coding. Infact i dont understand it at all mainly because iam not a xD
Just like when you build it from scratch, you will have a set of classes (both static and instantiable) that allow your code to run. This includes:
(1) A set of Code that ModLoader looks for.
(2) Code for particular Items, Entities, Blocks or other programmatic Classes to be included in the game.
(3) In some cases overrides (or outright replacements) of existing code to alter the functionality of existing components.
In all cases that use Modloader, (1) is essential. For games that add new items, mobs, blocks, etc, (2) is done. For things that alter the functionality of existing elements (i.e, the old Minecart mod that makes a minecart always move at full speed), (3) must be done.
When an Update occurs, the source code is regenerated and is now different from original ones. While a decompile is a straight forward process, it will be obfusicated (http://en.wikipedia.org/wiki/Obfuscation) and thus, unreadable. The Minecraft Coders pack serves to translate this back into something we can understand and thus, make the required changes.
There is also the problem of changes to how base elements work. i.e: If Mojang change how an Item works, and a Modder has made code that adds a new item, then their item will no longer work as it doesn't match the NEW item. If you want to udnerstand this concept more, read here: http://en.wikipedia.org/wiki/Inheritanc ... ogramming)
However, in the case of (3) where the Modder has altered existing functionality, the Modder will have to look at the new/altered Methods and Classes, and in some cases painstakingly go through each line finding out where they need to re-inject their changes. In some cases, the changes may be so radical that the original code they had will not work, and they will need to figure out a new way to make it work. It is all very situational and can be very difficult. So while from the players perspective, new lighting just seems like a simple visual thing, the actual implementation may have massive ramifications on the way the Modders have done their work.
This is why we all want Mojang to supply their Modding API: an officially supported method of Modding so that changes made by the company have a reduced impact on Mods.
Therefore, the amount of work required to update a Mod will be very dependant on how significant the change is.
I hope that answers your question.