High Range Item ID Hell

  • Please make sure you are posting in the correct place. Server ads go here and modpack bugs go here
  • The FTB Forum is now read-only, and is here as an archive. To participate in our community discussions, please join our Discord! https://ftb.team/discord

PsionicArchon

New Member
Jul 29, 2019
147
0
0
Is there any way to dump high range item ids that stretch beyond 4096. I'm pulling my hair out here in trying to make sure no items are overwriting one another, which has proven to be next to impossible. Another issue I've run into stems from some nonsensical behavior from forge its self. Forge has seen fit to assign items in a high range (EX: 27727) their own ID, one that differs from the items config ID.

This means that I cannot search in game for already used IDs that actually match. Is there any way to turn this feature off, or to modify it in some way. Why is forge designed in such a way that two items can share the same ID. Instead of getting a magic map, I'm getting dark steel pants.. As there are thousands upon thousands of items to sift through, I doubt I'll ever figure this out.
 

gattsuru

Well-Known Member
May 25, 2013
364
103
68
NEI can dump a full ItemID map. If you're only getting a 0-4096 range, you've set it to only dump blockIDs (the default). Under the NEI Block/Item ID Settings menu, make sure that the second box on the right side is set to "Dump Item IDs".
 

PsionicArchon

New Member
Jul 29, 2019
147
0
0
Thank you very much. I had to hide all of the block ids and, tell NEI to dump only the item ids rather than attempt to dump everything at once. Seeing all of these unused ids makes me wonder... Is it some part of the human psyche that causes so many of the developers to share each others ranges? There's literally hundreds of unused ids with fifteen plus mods in conflict!
 

Pandemoneus

New Member
Jul 29, 2019
257
0
0
Thank you very much. I had to hide all of the block ids and, tell NEI to dump only the item ids rather than attempt to dump everything at once. Seeing all of these unused ids makes me wonder... Is it some part of the human psyche that causes so many of the developers to share each others ranges? There's literally hundreds of unused ids with fifteen plus mods in conflict!

There IS a topic in the forge forums in which developers can reserve IDs. But then again, there are developers who neither look at those forums nor at other mods and just assign IDs as they see fit. At least they are offering the ability to change IDs, you can't take that for granted for all mods.
 

PsionicArchon

New Member
Jul 29, 2019
147
0
0
I stumbled into that topic when I was nosing around for solutions. Oh trust me, I don't take anything for granted. Some mods make it highly difficult to alter any item ids by using an incremental system *cough* *cough* Mo'Creatures. It just struck me as strange, with so many available IDs to be used. What further boggles my mind stems from Forge its self. Why does it even allow for this to happen? If Block Id's are in conflict, it crashes. Forge is already capable of dynamically assigning ids, why ignore this massive rang?

This will literally take me days to sift through manually, even with the help of NEI. I can understand why people would rather use a pre-built pack and, shy away from adding mods to FTB themselves.
 

gattsuru

Well-Known Member
May 25, 2013
364
103
68
Why does it even allow for this to happen? If Block Id's are in conflict, it crashes. Forge is already capable of dynamically assigning ids, why ignore this massive rang?
There are programmatic tools in current versions of Forge to reduce the likelihood of BlockID and ItemID conflicts, but they're not intuitive and -- like most of Forge -- not well documented. Some mods do attempt to dynamically handle errors, but these fixes can cause problems of their own /and/ complicate certain server management tricks.

Looking through your ModLoader log for CONFLICT and SEVERE errors will likely help shine a light on which specific items and blocks are having issues, and often which mod they belong to. From that perspective, you only really need the ID Dumps in order to find free ranges.

((But, yes, adding all blocks and items to an array on the first time that mod is Registered, then using the array indexes to write a table for each world on creation or mod add/load probably would be a lot more elegant. Even that has potential problems, though))
 

PsionicArchon

New Member
Jul 29, 2019
147
0
0
I just use sed and grep. Generally easy.

This only seems applicable if you know the range of IDs before hand. The problem I'm running into comes into play when Forge's "solution" decides to dynamically shift a set if IDs it believes are in conflict. For example, I notice ID 27015 is conflicting with TwilightForest. I shift 27015 to 26147 (Unused ID). Forge decides to shift 26147 to 29861 which is being occupied by another mod and, I rip my hair out by the roots. Not to mention how long it takes for grep to complete a task, I'm still waiting on my first search.

((But, yes, adding all blocks and items to an array on the first time that mod is Registered, then using the array indexes to write a table for each world on creation or mod add/load probably would be a lot more elegant. Even that has potential problems, though))

My heart sings for the day this becomes true. Now, if forge could output these IDs into a custom config file upon initialization so that EVERY item id/entity id/enchantment id/biome id/block id were read from a single file/could be manipulated from a single file I'd explode from sheer glee. Add in a way to stream this file to the client as it loads into a server to avoid any potential mismatch errors and I'd have been done weeks ago.

On a side note.. It's a damn good thing I'm using the plugin I am. I have no idea why this occurs, but it's enough to deter me from using these forums as often as I'd like.. This entire post vanished after I'd typed it for no discernible reason. Luckily I cache everything I type...
 

KirinDave

New Member
Jul 29, 2019
3,086
0
0
This only seems applicable if you know the range of IDs before hand. The problem I'm running into comes into play when Forge's "solution" decides to dynamically shift a set if IDs it believes are in conflict. For example, I notice ID 27015 is conflicting with TwilightForest. I shift 27015 to 26147 (Unused ID). Forge decides to shift 26147 to 29861 which is being occupied by another mod and, I rip my hair out by the roots. Not to mention how long it takes for grep to complete a task, I'm still waiting on my first search.

I've personally never seen forge do what you're describing. I see Item ID conflicts and I move them. I've certainly never seen a reallocation as random as the one you're describing, and the modpack I maintain is... *cough*... it has high mod churn.

I do have Item ID ranges for my modpack, but they are not all contiguous. Some people argue it is very important for mods to have contiguous item ID ranges, but I've yet to hear a compelling reason why that is not ultimately rooted in outdated NEI behavior. So just split your ranges a bit.

By the way, one source of confusion for people new to this topic (I do not know if this is you, but since this is very likely to come up in forum search let's record it here). In game, item ids are shifted by +256. Not all configuration files agree on if they should show you what NEI will show you or what the base ID is.
 

PsionicArchon

New Member
Jul 29, 2019
147
0
0
I've heard something similar myself, though I can't remember where. Someone stated that ID sequences should not be broken however, it never seems to matter. I've broken a sequence with IDs that differed by hundreds without issue. Thankfully, as finding whole ranges for every conflict would have had me quitting days ago.

I currently have one hundred and thirty two active mods, we're probably pretty close I'd venture to guess. Some of these mods are unusual, certainly not mentioned here and, a couple I've never come across in any modpack. This strange ID shifting seems to happen more frequently when I install mods after I have initialized forge for the first time if that helps anyone else.

Further investigation leads me to believe it is actually a mod overriding another item. Where the original item would have been shifted by 256, the override shifts by 256 leading to what appears to be strange behavior. If I hadn't cooled my jets I'd have probably continued to over look this.

Once all of these headaches are resolved, the permissions list headache's begin. Then, it's off to post as a third party modpack provided I haven't broken any rules. Thanks for the posts, hope any other budding modpack makers see this thread and are able to derive something useful from it.
 

KirinDave

New Member
Jul 29, 2019
3,086
0
0
I've heard something similar myself, though I can't remember where. Someone stated that ID sequences should not be broken however, it never seems to matter. I've broken a sequence with IDs that differed by hundreds without issue. Thankfully, as finding whole ranges for every conflict would have had me quitting days ago.

I currently have one hundred and thirty two active mods, we're probably pretty close I'd venture to guess. Some of these mods are unusual, certainly not mentioned here and, a couple I've never come across in any modpack. This strange ID shifting seems to happen more frequently when I install mods after I have initialized forge for the first time if that helps anyone else.

Further investigation leads me to believe it is actually a mod overriding another item. Where the original item would have been shifted by 256, the override shifts by 256 leading to what appears to be strange behavior. If I hadn't cooled my jets I'd have probably continued to over look this.

Once all of these headaches are resolved, the permissions list headache's begin. Then, it's off to post as a third party modpack provided I haven't broken any rules. Thanks for the posts, hope any other budding modpack makers see this thread and are able to derive something useful from it.


Look at AT Launcher. We're basically finding a way to give players the experience they want while still paying lip service to shortsighted mod author's quasi-legal copyrights. The next version drops soon, and it's how I'll get Thaumcraft into Resonant rise.
 

PsionicArchon

New Member
Jul 29, 2019
147
0
0
I'm very interested in this AT Launcher. According to their about section, it downloads everything directly through each modders link. That's an interesting approach to a problem that shouldn't exist in the first place. If it works and, I can submit my mod pack to it I'd be a happy man. Hours of tedium will not have gone to waste..

How does one go about submitting anything to the AT Launcher team?