Team-RTG / Realistic-Terrain-Generation

The Realistic Terrain Generation mod for Minecraft.
GNU General Public License v3.0
245 stars 118 forks source link

Added support for more than 256 biome ids #1357

Closed Matthewacon closed 4 years ago

Matthewacon commented 4 years ago

A small set of changes to work with JustEnoughIDs which, among other things, increases the total range of biome ids from the width of a byte to that of an integer.

srs-bsns commented 4 years ago

No. Just no.

  1. This does not address the extention of the biome ID limit at all.
  2. There are other classes that need changes (eg: rtg.api.util.storage.BiomeMap --> BiomeMap.java#L45)
  3. You are incurring a performance penalty by converting fast indexed array lookups to slow HashMaps.
  4. You did not discuss these changes on Discord prior to opening this PR.

I've already been looking into addressing compatibility with JEID.

Matthewacon commented 4 years ago

Ah, I did miss quite a few other classes in the initial set of changes, my bad. I've finished up with the changes on my branch and have tested them to be working in a cleanroom and with JEID. Note that these changes do not add support for more biomes, rather, it prevents RTG from crashing in a scenario where there are more than 256 biomes.

Whats more, after a round of AB testing, the latest set of changes on my branch perform near identically to the 1.12.2-dev branch as of 57629b5ee94beda8035d7de41dd8cea2d69823cb.

I will not be opening a new PR as I have no interest in conforming these changes to your contribution guidelines, nor do I have any intention to "discuss changes" in the discord channel. I simply made the changes for personal use. That being said, feel free to use these changes however you so please, or not at all.

I give explicit permission to modify and/or redistribute the changes between 57629b5ee94beda8035d7de41dd8cea2d69823cb, of 1.12.2-dev, and 472fc312f2ad555ba6f2f0e2102cab0eef9001d8, of just-enough-ids-compat, WITHOUT any additional attribution, insofar as the terms of the original license, found here, are upheld. Furthermore, these changes are provided with NO WARRANTY whatsoever, express or implied and claim no liability of any kind for damages or misuse, incurred by or relating to, the aforementioned changes.