I'm a bit of a lurker on here, but I discovered something a while back that I thought I should share as it caused me a great deal of frustration and time until I figured it out. I run a linux based server for myself and my friends, who all use some version of Windows on the client side. Up until recently every time I updated my server I had to manually go into each config file on the client side and the server side, make them match, then make sure my players had the same exact files. What I discovered recently is that the files differ because the different operating systems order them in the mods folder differently, usually when special characters are involved. So where a parenthesis might come before A on Linux, it might come after Z on Windows or MacOS. It appears Forge loads these mods alphanumerically from the folder, assigning ID's based on their load order when it creates the config files.
The simple way to fix this problem? Make sure that you rename the files so that the alphanumeric order in the server folder is the same as the order in the client folder, taking special note to remove any special characters! Brackets and parentheses were my biggest culprit. This probably won't be a problem if everyone is running a recent version of windows or you're running a server on the same machine you're running a client, but it took me hours each time I updated to figure out all the item ids and change them to match. This will save me at least four hours every time an update comes out, and I hope that spreading the word helps a few of you out there too...especially those I see posting troubles about mismatched ID errors!
If you are hosting a server, you should always let the server assing the ids and then share the config files.
Never let the clients autoasign ids.
I've never seen anyone state that, although I did figure it out the hard way. Some mods that I use also differ in the server vs. client config files, so I tended to not just copy and paste them from the server to the client. Ordering the mods correctly eliminates that step, which was the point of the original post. If they load in the same order, they generate id's in the same order, so everything matches.
I'm a bit of a lurker on here, but I discovered something a while back that I thought I should share as it caused me a great deal of frustration and time until I figured it out. I run a linux based server for myself and my friends, who all use some version of Windows on the client side. Up until recently every time I updated my server I had to manually go into each config file on the client side and the server side, make them match, then make sure my players had the same exact files. What I discovered recently is that the files differ because the different operating systems order them in the mods folder differently, usually when special characters are involved. So where a parenthesis might come before A on Linux, it might come after Z on Windows or MacOS. It appears Forge loads these mods alphanumerically from the folder, assigning ID's based on their load order when it creates the config files.
The simple way to fix this problem? Make sure that you rename the files so that the alphanumeric order in the server folder is the same as the order in the client folder, taking special note to remove any special characters! Brackets and parentheses were my biggest culprit. This probably won't be a problem if everyone is running a recent version of windows or you're running a server on the same machine you're running a client, but it took me hours each time I updated to figure out all the item ids and change them to match. This will save me at least four hours every time an update comes out, and I hope that spreading the word helps a few of you out there too...especially those I see posting troubles about mismatched ID errors!
Never let the clients autoasign ids.
I've never seen anyone state that, although I did figure it out the hard way. Some mods that I use also differ in the server vs. client config files, so I tended to not just copy and paste them from the server to the client. Ordering the mods correctly eliminates that step, which was the point of the original post. If they load in the same order, they generate id's in the same order, so everything matches.