Minecraft – Determining Minecraft mod abilities/effects

minecraft-java-editionmods

Background

A couple of weeks ago, I created a randomly-generated world that turned out to have a nice little island. I tried it out for a bit and liked it, and want to re-create it with some of the extras from some mods I have gotten since then. The problem is that I cannot seem to regenerate that same world anymore. Using the same seed creates a variety of worlds that range from almost the same (a more-or-less similarly-shaped island) to vastly different (a field of flat ice as far as the extreme-eye can see).

I tried regenerating it with vanilla, but that creates a tiny island in the middle of the ocean (which is amusing, but not what I want). Obviously some mod or other is responsible for creating the original island and some sort of interaction with other mods is responsible for messing it up.

Problem

The problem is that with a few dozen mods, testing each and every permutation would take at least two or three eternities (especially since start-up and world-generation get slower and slower with more than a few mods).

Question

A more practical solution is to narrow down the list of mods to test by determining which mods affect world-generation and test different combinations of just those.

The problem now is: how can the abilities/effects of mods be determined? That is, how can a group of mods be examined to determine which ones affect world-generation, or add mobs, or tweak enchantments, and so on?

Obviously, checking the web-pages of each mod is impractical and unlikely to return all the relevant information anyway.

(I’m not looking for specific information about which blocks or algorithms or what-have-you a mod creates or affects, just whether it does or not. A typical result might be a table of effects that mods can have along the top and a list of installed mods down the side with checks in the appropriate boxes in their rows.)

Research

Is there a way to examine the mods directly (ideally with a tool rather than by hand) to find out what they affect by examining the code? For example, can mods that tweak terrain-generation be determined by checking for overrides of some specific .class file or function?

Best Answer

Using a tool that is able to search inside of zip files, you could search your mod folder for worldgen-related terms (eg. biome/generator/...). This is not certain to find every relevant mod, although it might help you to narrow it down.

If you are really interested in the world, you could decompile the source files and then search them for worldgen event registrations: every mod that tries to modify world generation has to 'sign up' to get involved in that process, and this 'signing up' call should be very easy to detect (you can look up the specific event names in the minecraft forge forums).

Related Topic