Jump to content

lehjr

Members
  • Posts

    57
  • Joined

  • Last visited

Everything posted by lehjr

  1. Looking at the version of Guide-API that BloodMagic is built against, I would update that, especially since you're using an old alpha of it.
  2. Sorry, but 1.6.4 is far too old to get help here. You'll need to try www.minecraftforum.net
  3. Keep in mind that there are different versions of Forge for different versions of Minecraft, with the latest supported version being 1.12.2
  4. Keep in mind that if you are booting with UEFI you will have issues. That said, there's a ppa for the proprietary graphics drivers: https://launchpad.net/~graphics-drivers/+archive/ubuntu/ppa Edit: that should say "... if you are booting with UEFI you will have issues with proprietary drivers due to signature requirements".
  5. The Whois lookup on that shows a hosting company (World4You) in Austria.
  6. Linux Mint uses it by default. Other than that, it's not as well known as some names like Bing, Google. Incidentally, not that anyone remembers it, but I'd stay away from Ask.com since they're owned by the notorious IAC (Interactive Corp) known for pushing malware/spyware (MyWebsearch toolbar, Zwinky, FunBuddyIcons, rootkits, auto-downloaders/reinstallers, and so on.) .
  7. The issue was already fixed in Thaumcraft Beta 26, you just need to update. In fact, you'll probably want to go through all of your mods and update just in case. Updates in Forge can break things on occasion, so it's not really good to mix older mod versions with newer versions of Forge.
  8. This is a blockstate file I was using for a testblock. Note the scale and transform can all be set using a the blockstate file as well as different models for different states if that's what you want. That should be enough for most things. This probably isn't the best example, but it should be enough to get you pointed in the right direction. https://github.com/MachineMuse/MachineMusePowersuits/blob/1.12.2-experimental/src/main/resources/assets/powersuits/blockstates/tile.testBlock.json
  9. I'll probably just copy/edit one of the existing recipe setups, maybe something like ShapedRecipes Edit: ... because that has a builtin parser. It's not perfect and will need some work, but it doesn't need much.
  10. 0b without quotes won't pass Json validation. Edit: failing Json validation fails loading as a recipe.
  11. Except that method is called by other methods that parse the ingredients. So you have to implement that code as well, which results in implementing your own parser. Remember, I'm not trying to limit functionality or catch special edge cases, but rather make the code work as it was intended to so that those edge case work as they were supposed to.
  12. Wait, since the problem IS the existing parser, specifically the JsonToNBT parser called by CraftingHelper.getItemStack, doesn't that make the existing parser useless? That's what I'm already working around with the IRecipeFactory because JsonToNBT cannot properly parse NBT values from Json.
  13. That looks simpler than what I was looking at. Thanks everyone. I appreciate the help.
  14. Basically this, which is already there in vanilla code, but broken. So it would be pretty much recreating that. The only difference between doing it there vs doing in an IIngredient factory is that both input and output could be handled, which probably isn't so awful.
  15. Yes, which is the point that I am making, that another recipe with another edge case requiring another hard coded work around is more than likely.
  16. Again, I was trying to avoid that, mainly because I don't want to write a Json parser as a hard coded work around to handle a soft coded edge case that may change and be replaced with another soft coded edge case.
  17. Yes, it fails silently, meaning the recipe passes as valid and shows up as valid, but upon trying to use it on a crafting table, it shows a blank output. Using a custom IIngredient factory and changing the tags to bytes fixes it, but it's a hard coded work around for a soft coded issue that may change depending on the user, being the point of Json recipes is to allow them to be overridden. Strangely, Industrialcraft doesn't even use Jsons, they have some type if INI system. But I have seen the question asked before, but without an answer. I could use true/false to work around this (since it produces a byte tag instead of boolean) , except one of the cables actually uses a byte value of 2 for it's insulation.
  18. Can you elaborate? Remember, this is a crafting recipe being loaded from a Json. And while I do have a condition factory for which recipes are loaded, I was trying to not use workarounds like a custom IIngredientFactory because these recipes are intended to be allowed to be overridden, which means accounting for additional edge cases that do not yet exist.
  19. So basically, from what I can see, this is an issue in Minecraft's JsonToNBT, specifically in readTypedValue(); The way it's currently written requires illegal characters to pass the "if clause" checking for quotes, since the Json standard does not allow for alpha numeric strings, such as 0b or 1f without quotes. protected NBTBase readTypedValue() throws NBTException { this.skipWhitespace(); if (this.peek() == '"') { return new NBTTagString(this.readQuotedString()); } else { String s = this.readString(); if (s.isEmpty()) { throw this.exception("Expected value"); } else { return this.type(s); } } } It could have been written something like this and it would have worked (actually tested before posting), since type() actually defaults to a string anyway. This would have opened up more data types available to recipes: protected NBTBase readTypedValue() throws NBTException { this.skipWhitespace(); String s; if (this.peek() == '"') { s = this.readQuotedString(); } else { s = this.readString(); } if (s.isEmpty()) { throw this.exception("Expected value"); } else { return this.type(s); } }
  20. I have a couple of Json recipes that use Industrialcraft cables as ingredients. The cables nbt values use bytes instead of integers. JsonToNBT (net.minecraft.nbt.JsonToNBT) has a regex for byte values, but I can't get the values to show up as a byte. Setting the values to 0 sets them as integers, but "0b" sets them as strings. I confirmed this with an IIngredientFactory where I was able to check the data types on the tags produced, and changed them to bytes and was able to get a working recipe instead of one with a blank output when trying to craft the item. While this is a possible workaround, I'd like to see if it's possible to do this without resorting to such a method. Example recipe: (values in question are "type" and "insulation") https://github.com/MachineMuse/MachineMusePowersuits/blob/1.12.2-experimental/src/main/resources/assets/powersuits/recipes/ic2/components/component_computer_chip.json
  21. Depends on what you want to do vs what your skill level is. Applied Energistics is a good example of a mod that has multiple API's for the same Minecraft version, but a better example would be something that more closely resembles the mod you want to create.
  22. Often, the dependencies are handled by Forge Gradle, if they're set up in the mod's config files, otherwise you would have to add them yourself. Applied Energistics is a very sophisticated mod. I'm not sure I would pick that as a starting point.
×
×
  • Create New...

Important Information

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