The Lost Cities

The Lost Cities

59M Downloads

Incompatibility with JustEnoughIDs

Bulldog83 opened this issue ยท 19 comments

commented

Reference to JEID github:
DimensionalDevelopment/JustEnoughIDs#4

commented

The problem is that we're writing to the internal private fields of the chunk primer, which don't have the same meaning with Just Enough IDs. We should use the vanilla methods for writing to the primer, and accept the tiny performance hit, and then this will be fixed.

Just curious from your comment about a potential solution. I couldn't tell from what you wrote if this would be an easy change to make, or if it would be difficult to make that kind of change. Trying to make the call on JEIDs vs NEIDs for a 1.12 pack, but Lost Cities compatibility is a priority for me =).

commented

The change is easy to make, but last I talked to @McJty about it, he didn't want it to be made, as the new way won't be as fast as it is now.

commented

The performance hit will not be light and Lost City worldgen is already slow compared to normal. But maybe we should allow for a dual system where the optimized version is still available by default but use the normal api in case either JEID or NEID is in the pack

commented

From my understanding, I think the bug only occurs with JEIDs? Lots of packs use NEIDs and don't seem to encounter this.

Depending on the difficulty of the workaround, it would be nice to either switch over to it with JEIDs present, or instead offer a config option if that's easier. JEIDs does have some benefits over NEIDs that it would be nice to be able to take advantage of if possible (more resilience to mod changes, expanded biome/potion/enchantment ID ranges, etc).

For what it's worth, in my pack I plan to include pre-configured chunk pregeneration, which would alleviate most of the performance concerns. I recognize that not every pack would do that though.

commented

The bug doesn't occur with NEID because we already special-cased that one

commented

Are you sure? I know we do in RFTools Dimensions, but I don't see any such code in this mod.

commented

Ah then why is it working with NEID then?

commented

Anyway, I think I have a plan on how to tackle this. I'm going to implement two modes. One which just use the normal API and one with my optimisation

commented

Thank you very much!

commented

I implemented a solution for this that will probably work. Has to be tested well though. I'll keep you posted

commented

Fixed now

commented

Hmm Lost Cities does already support Not Enough IDs mod. I wasn't even aware that JustEnoughIDs existed...

commented

This is a new mod. It appeared about three weeks ago.

commented

Hmm. Any reasons why it exists given that another alternative already exists? It is a bit hard for me to have to support more then one of these mods to be honest

commented

It implements ID system from minecraft 1.13 rather than simply expanding the range of id like it does NEID.

commented

JEID also increases the Biome ID Limit. It is compatible with NEID (you can use both), and will only increase biome IDs when used that way.

commented

I can confirm that this is unfortunately still an issue with the latest versions of both mods (LostCities 1.12-2.0.12 and JustEnoughIDs 1.0.2-16). While NEIDs and JEIDs more or less accomplish the same goal, I find JEID to be much cleaner in implementation, in addition to being able to remove mods without causing a world management nightmare. In addition, due to personal experience, I find NEIDs to be very buggy and incompatible with both other mods and changes in Forge, and I've never had such problems with JEIDs. It "just works."

I really wish Lost Cities supported JEIDs, it seems to be much more popular these days and is being picked up as the go-to mod for the problems it solves. I would like to use both simultaneously if I can.

commented

Just so people know, this is what you get:

2018-11-08_11 06 57

commented

The problem is that we're writing to the internal private fields of the chunk primer, which don't have the same meaning with Just Enough IDs. We should use the vanilla methods for writing to the primer, and accept the tiny performance hit, and then this will be fixed.