Equivalent Exchange 3

Equivalent Exchange 3

2M Downloads

Read in custom EmcValues from file

pahimar opened this issue ยท 12 comments

commented

Read in custom EmcValues from configuration file

commented

What format will this config file take? I could create a simple reader for you if you'd like.

commented

if you are open to suggestions

I would use the string array config type in the format

itemUnlocalizedname-EmcValue

with the reader being able to use the string.split function

commented

maybe a mod that would like to have custom EMCs would have a file named (modid).emc and EE would check for this file in the config folder, or maybe in a special config sub folder for custom EMCs. just some ideas!

commented

This: #495 created one file with all unassigned items. This is probably not the best way to do it. Keep in mind id's are out in 1.7, so you probably shouldn't use those, but unlocalizedNames. Metadata values didn't change, which is a problem. IC2 for example calls all it's machines blockMachine, the metadata is the thing that differentiates all machines, which is not user-friendly. I'm not sure if there is a user-friendly way doing this. The pro of letting EE3 make a list is the possibility to add the display name as a comment(as I did in #495).

commented

I have a few strategies in mind for this, some that could also leverage an idea I have to speed up DynEmc calculations after the first time it's run. Might have a chance to talk about those ideas with you later @Dynious

commented

@pahimar I'm always in for a talk! Just so you know, I'm usually in IRC from 3pm - 10pm CET.

commented

I don't know if using the block's unlocalised name is the best idea.
ID's are easy to get ahold of but unlocalised names aren't as simple (users would probably need to go look it up inside the lang files whilst IDs can be seen inside the game)

commented

ID's have been removed in 1.7 and so even though EE3 is currently in development for 1.6, when it gets ported to 1.7+ it will have to use unlocalized names.

commented

ids are easy to access, but mostly this feature would be used by modders, and once set, the user could probably figure out the item from the unlocalized name. It could be made so that ids could be used, but would be converted into unlocalized name. And in 1.7 IDs are gone so this would future-proof the code.

commented

They haven't been completely removed. The IDs from 1.6 should still work.
And gaining access to the unlocalised name on 1.7 will be much easier.

I'd suggest using IDs for now, and when the switch to 1.7 happens keep the ID support and add in unlocalised name support. So users can use both.

The unlocalised name of some items has changed between 1.6 and 1.7, so it's not like using it now would make the transition any smoother. Users will never be able to just load up the same file on 1.7 and it will simply work... unless it has support for both IDs and names.

@JohnHollowell The feature won't be used by modders. Modders will set their values using IMC. Setting values via config file is a feature targeted to modpack creators / users.

commented

@ganymedes01 IDs are really gone for mods in 1.7. Forge autoassigns id's when you connecties to a server. Unlocalized naming items/blocks has not changed, so I don't think a lot of names will change. But, I do agree unlocalized names are hard to find in 1.6.

commented

Custom values are specified in game via a command, and read from a serialized file on the filesystem. Should accomplish everything discussed here :)