Jump to content

Recommended Posts

Posted

Basically, there are still modders who doesnt follow the standard convention for oredictionary names, registering items/blocks "improperly" causing compatibility issues.

GregTech, since 4.04d (Sep 24th) included a special code to detect those "invalid" entries and suggests fixes for them, although since it is only a particular mod, its range is severely limited, therefore I would like if forge included that feature of GregTech.

Example :

2013-10-19 17:42:23 [iNFO] [sTDERR] WARNING: 'diamondNugget' is an invalid OreDictionary Name. The Name doesn't fit to the Type of Item and/or doesn't follow a proper OreDictionary Convention. If you are the Owner of the Mod who adds this Item, please do the following: 
2013-10-19 17:42:23 [iNFO] [sTDERR] Put the 'Nugget' in the beginning of the Name to get 'nuggetDiamond'
2013-10-19 17:42:23 [iNFO] [sTDERR] Private Prefixes could also be a solution if the first Suggestion doesn't apply. In that case the suggestion for the name is 'Translocator:diamondNugget' don't forget to insert the ':' inbetween the Mod ID and OreDict Name, that is the most important part.
2013-10-19 17:42:23 [iNFO] [sTDERR] If you are not the Owner then report it to the Owner of the Mod, which the Item belongs to.
2013-10-19 17:42:23 [iNFO] [sTDERR] WARNING: 'obsidianRod' is an invalid OreDictionary Name. The Name doesn't fit to the Type of Item and/or doesn't follow a proper OreDictionary Convention. If you are the Owner of the Mod who adds this Item, please do the following: 
2013-10-19 17:42:23 [iNFO] [sTDERR] Put the 'Rod' in the beginning of the Name to get 'rodObsidian'
2013-10-19 17:42:23 [iNFO] [sTDERR] Private Prefixes could also be a solution if the first Suggestion doesn't apply. In that case the suggestion for the name is 'WR-CBE|Core:obsidianRod' don't forget to insert the ':' inbetween the Mod ID and OreDict Name, that is the most important part.
2013-10-19 17:42:23 [iNFO] [sTDERR] If you are not the Owner then report it to the Owner of the Mod, which the Item belongs to.

Posted

[iNFO] [sTDERR] WARNING: 'obsidianRod' is an invalid OreDictionary Name. The Name doesn't fit to the Type of Item and/or doesn't follow a proper OreDictionary Convention. If you are the Owner of the Mod who adds this Item, please do the following:  Put the 'Rod' in the beginning of the Name to get 'rodObsidian'
[sTDERR] If you are not the Owner then report it to the Owner of the Mod, which the Item belongs to. (Not a bug, just a suggestion)

would be shorter and Less spammy.

Posted

This is unnecessary.  There is no good reason to spam users about a non-issue.

Of course there is, to automatically warn modders (via users, because there is no other way) about improperly registered items, that causes incompatibility issues.

 

@Whoever wants to read another drama regarding GT and TiC: Go to GT thread on IC² forum and grab some popcorn.

Posted

I would agree with this being added, so many people don't use the dictionary properly and you get childish people who break other people's code to make there wrongly defined ores work. *Cough* Tinkers. If normal users don't want to see the "spam" then a config option could be added to not show it. Otherwise people should deal with it, and who even watches there console when loading/playing minecraft?

 

If not then something should be added for developers to see when adding to the dictionary to check whether they are using the correct name structure for the item/block/ore they are trying to register simple.

Posted

Are you fucking kidding me? Keep this in the Drecktech/IC^2 forums.  ::)

I didn't even mention TiC here, by the way.

Also, you just raged (ran out of arguments) there and got banned for insulting people.

No further comments are needed.

 

With this suggestion, i'm trying to help the whole modding community, by enforcing the standard convention, so we can have less problems regarding compatibility issues.

Posted

The whole "private prefix" notion is completely contrary to the point of the ore dictionary in the first place (which is to allow mods to specify interchangeable items).  My counter-proposal, therefore would be to print an opt-in list after all of the mods have loaded of the strings registered in the ore dictionary and the number of items registered to those strings.

 

Anyone interested in compatibility would have done research into the strings that were already in use.

Posted

The whole "private prefix" notion is completely contrary to the point of the ore dictionary in the first place (which is to allow mods to specify interchangeable items).  My counter-proposal, therefore would be to print an opt-in list after all of the mods have loaded of the strings registered in the ore dictionary and the number of items registered to those strings.

 

Anyone interested in compatibility would have done research into the strings that were already in use.

The private things are special cases, when the standard can't be applied and then must be registered that way to avoid unintended compatibility (Different items with same or close names). Example : GT gears and BC gears.

A standardization is required because nobody uses all mods at once, so there is kinda no way to get all registered things to be displayed to a modder for compatibility. Not to mention that it would bring extra work if everyone register the same stuff differently. Example "rodIron", "ironRod", and "rodFe" [Fe is the iron element]registered by three different mods for an iron stick (rod shape, 1/2 iron ingot of material).

Posted
A standardization is required because nobody uses all mods at once, so there is kinda no way to get all registered things to be displayed to a modder for compatibility.

 

If the modder cares about compatibility, load all the mods he or she cares to be compatible with and call OreDictionary.getOreNames(), and if they want to go even further, iterate over the string array that it returns to call OreDictionary.getOres(oreName) and get a List of ItemStacks.

Posted

A standardization is required because nobody uses all mods at once, so there is kinda no way to get all registered things to be displayed to a modder for compatibility.

 

If the modder cares about compatibility, load all the mods he or she cares to be compatible with and call OreDictionary.getOreNames(), and if they want to go even further, iterate over the string array that it returns to call OreDictionary.getOres(oreName) and get a List of ItemStacks.

Mod compatibility is meant to be global, not something restricted to certain mods. Guess what forge does, by allowing several different mods to run together, without any problems?

Standardization of oredict names allow cross-mod compatibility between mods even if they don't know the existance of each other, so the end user will never find incompatibility issues of items of the same type if both mods follow the standard.

 

So, this is not something unnecessary and not making mods follow the convention will eventually cause item incompatibility issues between mods, like GT and TiC rods are incompatible because of different oredictnames for same item.

Posted

A standardization is required because nobody uses all mods at once, so there is kinda no way to get all registered things to be displayed to a modder for compatibility.

 

If the modder cares about compatibility, load all the mods he or she cares to be compatible with and call OreDictionary.getOreNames(), and if they want to go even further, iterate over the string array that it returns to call OreDictionary.getOres(oreName) and get a List of ItemStacks.

Mod compatibility is meant to be global, not something restricted to certain mods. Guess what forge does, by allowing several different mods to run together, without any problems?

Standardization of oredict names allow cross-mod compatibility between mods even if they don't know the existance of each other, so the end user will never find incompatibility issues of items of the same type if both mods follow the standard.

 

So, this is not something unnecessary and not making mods follow the convention will eventually cause item incompatibility issues between mods, like GT and TiC rods are incompatible because of different oredictnames for same item.

In the example you list, GregTech chose to not use the names that were already in use.  Also, the code that GT uses specifically ignores a large number of entries that do not follow the guideline, such as bronzeTube, ironTube, obbyTube, leatherSeal, and stoneBowl

 

Bonus fact:  one of the entries in the list of specifically invalid names is in fact appropriate according to the guideline:  woodRod.  According to the guideline: "- For anything wooden, please use "wood", then the type"

Posted

No, Forge doesn't have a standard naming policy, aside from the things that we name. It is up to the modders to agree on the naming policy themselves.

I understand the debate as it sits, however, this is purely a debate between modders, Especially in the manor that GT has decided to go.

The wiki is created by the communitty not us. But ya, the answer is no, unless I get a large group of modders who aproach me with a actual standard they ALL have agreed on.

 

When it comes to the oredict, either you use the names that other people use, or your shit wont be found.

I do Forge for free, however the servers to run it arn't free, so anything is appreciated.
Consider supporting the team on Patreon

Guest
This topic is now closed to further replies.

Announcements



  • Recently Browsing

    • No registered users viewing this page.
  • Posts

    • The game crashed whilst unexpected error Error: net.minecraftforge.fml.ModLoadingException: Advanced Mining Dimension (mining_dimension) encountered an error during the done event phase
    • Here is the end of the log. it was way too big to put in pastebin, but I started from when I was online and everything was fine. Error should be in here: https://pastebin.com/Sdhdq593
    • Update: I stand corrected as I was able to dig up a relevant log from my earlier testing which highlights the overall issue but does not explain how to solve it. See, Diagnostic Logs for pack.mcmeta not found: https://pastebin.com/LXS8Rtna
    • Which mod was this? What are all the mods that were in use? It will help if enough information to replicate the problem is available.
    • I have been attempting to create a supplementary resource pack with Patchouli in order to add back the guidebook for Better End but unfortunately in every prototype I have made pack.mcmeta and my resource pack are not recognized. I have tested both zipped and unzipped and either way curseforge does not recognize my resource pack as existing. For testing I stripped my pack down to just the pack.mcmeta file and two empty folders labelled data and assets and I know the data folder is not the problem as firstly my first attempts just had an assets folder following Patchouli instructions and data came later in my flailing attempts to make anything in my pack work. The mcmeta file is not recognized whether or not I use this:  { "pack": { "pack_format": 15, "description": "A replacement for the BetterEnd Guide Book." } "language": { "en_US": { "name": "English", "region": "United States" } } } ,or this:  { "pack": { "pack_format": 15, "description": "A replacement for the BetterEnd Guide Book." } } I have made sure to only use lowercase and the pack folder is named better-end-guide. Is this some magic nonsense from me doing this manually instead of using an IDE or similar tool? Could it be because my files are by default in UTF-8 even though ANSI gives the same results? Is there a specific community secret tool I am supposed to use for zipping or specific settings? I am pulling my hair in distress. Unfortunately as there are no errors involved I lack logs to offer, if that disqualifies this thread please do not be harsh and instead if you can then please direct me to a forum with different rules and sufficiently respectful but knowledgeable as to be of assistance. Most of my experience with the programming community has been poor and so naturally I find myself wary.
  • Topics

×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.