ColinGBos / Hammerz

Minecraft Mod adding hammers to various other toolsets
MIT License
5 stars 4 forks source link

[1.8.9] Materials #6

Closed SwordKorn20 closed 8 years ago

SwordKorn20 commented 8 years ago

Hey there. Firstly I want to thank you for this great mod! I've been enjoying it a lot over the last few days! The hammers all work great and I feel for how long they last the material cost is fair!

I have noticed a couple of things though that I just wanted to bring to your attention more than anything else. Currently in 1.8.9 I'm using a mod called Fun Ores (developed by SilentChaos512) to add Copper, Tin, Nickel, Silver, Aluminium, Zinc and Lead to my worlds. However; despite the ingots being in the ore dictionary, Hammerz doesn't seem to recognise their block forms as valid materials for hammers. As such, I don't seem to have access to the additional hammers in-game.

I have gone through the configs for both mods and confirmed that everything is enabled and should be working, yet they do not.

The only other thing I've noticed (I'm not sure if this is a bug or it was intended but just thought I'd mention it) is that when my first stone hammer ran out of durability or it got really low; instead of breaking it simply disabled the 3x3 mining effect and only mined individual blocks akin to a stone pickaxe.

If this behaviour was intended then my suggestion is a way to repair the hammer using its base material. If it wasn't intended, then it's a bug.

Thank you for your time!

EDIT: Just thought I may have jumped the gun a bit on the repairing... I used your other tool mod in Horizons: Daybreaker (the name of it escapes me) and that required an anvil. I will try that before claiming that as a bug.

EDIT: Anvils worked for repairs. Ignore that.

ColinGBos commented 8 years ago

Sorry for taking a while to comment, I was away for the day. Because the recipes for a standard hammer are oredictionary recipes, they will be enabled if there is an instance of "blockMaterial" where material is the name (eg blockCopper). Many mods are really good at registering itemstacks for their ingots, but not as many do it for their blocks (including Botania and Thaumcraft), There are mods that add oredictionary entries to the tooltips of blocks, can you confirm that the storage blocks from Fun Ores are registered? As of the latest 1.8.9 version, repairing and enchanting should both be fully functional although I will need to have a look at the hammerz not breaking when they run out of durability.

Thanks for the report!

SwordKorn20 commented 8 years ago

Firstly thanks for replying! Don't worry about being away.

I have since tested that anvils can repair them (as in Magnanimous Tools) and it seems to be working fine. Due to my sheer lack of finding diamonds in my Survival world, I am yet to test enchanting :(

I have had a look at the blocks used by Silent in Fun Ores and it appears he's registering them as MetalBlock# and AlloyBlock#. Copper is registered as MetalBlock0 and Bronze as AlloyBlock0.

This explains why they aren't registering as usable materials. I think Silent needs to take a sit down and do some oreDictionary work for his blocks. His ingots are fine.

ColinGBos commented 8 years ago

I actually remembered that there is a config option in this mod for adding ore-dictionary entries to itemstacks, so if you come across a similar issue in the future you can use that. Silent (and all mod authors) should add entries for item stacks of their metal storage blocks just as forge does for vanilla, unfortunately fewer people depend on them to be registered than ingots, dusts or ores.

SwordKorn20 commented 8 years ago

Call me either blind or stupid, or both; but I guess you mean your config file.

Is it in the enabled oreDictionary hammers?

ColinGBos commented 8 years ago

It's in the random options in the config file, it doesn't add any content or change which hammers load, it just adds whatever strings an itemstack may be registered in the oredictionary to its tooltip. It's handy for seeing something like if a metal storage block is registered, if it isn't, it won't have an entry. All of the ingots and dusts have valid entries but the blocks don't.

SwordKorn20 commented 8 years ago

Ah that's useful! I know it isn't my mod, but I'd love to decompile Fun Ores and change the blocks to instances of blockMaterial.

I may ask Silent to look at that as a suggestion. Thank you very much for your help!

ColinGBos commented 8 years ago

It is important to point out that the oredictionary is completely separate from block or item instantiation. It's a registry added by forge which works on an opt-in basis which is why many authors don't bother. Anyone can find an itemstack and register it, regardless of if its their item or not, I do this with thaumcraft and botania blocks because they don't themselves and could do it for others but it isn't the best practice to do it for others... :P

SwordKorn20 commented 8 years ago

Well even if he simply adds it as a configuration option, it would help. As of the time of writing, his mod is one of the few adding these metals and alloys to the game.

ColinGBos commented 8 years ago

My latest repository may be of interest to you, its set for release hopefully at some point this week. But definitely encourage people to make full proper use of the oredictionary if you ever notice that they aren't.

SwordKorn20 commented 8 years ago

Well I'm an aspiring mod developer and I feel that use of the OreDictionary should be mandatory.

Not that I'm saying in any way that his way is wrong, but it makes mod integration a lot easier.

SwordKorn20 commented 8 years ago

I have to admit though; this has made me want to work on a ore mod with better integration for 1.8.9