Jump to content
View in the app

A better way to browse. Learn more.

Forge Forums

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

61352151511

Forge Modder
  • Joined

  • Last visited

Everything posted by 61352151511

  1. If it is your minecraft server hosted from your computer, simply put the downloaded world into the folder the server is run from, and change the level-name in server.properties to the name of the world folder, then launch the server.
  2. Problem with Jurassicraft, if there's an update try updating it, if not then remove it.
  3. Except what he's appending to the list isn't just the ItemStack, he's putting NBTTagCompounds on the list, and the NBTTagCompounds store both the ItemStack and the slot the ItemStack is in. NBTTagCompound nbt1 = new NBTTagCompound(); nbt1.setByte("Slot", (byte)i); slots[i].writeToNBT(nbt1); list.appendTag(nbt1); Then when he's reading it he gets that byte value and sets that position in the array to the ItemStack NBTTagList list = nbt.getTagList("Items", 10); this.slots = new ItemStack[getSizeInventory()]; for (int i = 0; i < list.tagCount(); ++i) { NBTTagCompound nbt1 = (NBTTagCompound)list.getCompoundTagAt(i) ; byte b0 =nbt1.getByte("slot"); if (b0 >= 0 && b0 < slots.length) { this.slots[b0] = ItemStack.loadItemStackFromNBT(nbt1); } } If you read that code, he is saving and loading it correctly. What you say he's doing wrong, he isn't.
  4. Even though I can't spot the problem myself, I can say I don't believe elix is correct. You save a byte containing the slot number the item is in, and when you load them you load that byte and set that slot, so nothing should be "moved down" as elix said. I don't know what the issue could be though
  5. First update forge, the latest version for 1.8 (Not 1.8.7, there is no forge for 1.8.7) is 11.14.3.1486, you are far behind. If the problem persists disable the loading screen in .minecraft/config/splash.properties If the problem persists update optifine if an update is available, if no update is available try removing it.
  6. So I'm trying to make my item render as paper, and then on top of that it will render a half sized version of whatever item it was crafted with (Sugar if it's blank) However I can't figure out what to call to get it to render something there, whatever I try it messes up in one way or another, if someone can give an example or point me to a tutorial on how I could do something like that, that would be nice. public class FoodprintRenderer implements IItemRenderer { private ItemRenderer render; private ItemStack paper; public FoodprintRenderer(Minecraft mc) { render = new ItemRenderer(mc); paper = new ItemStack(Items.paper); } @Override public boolean handleRenderType(ItemStack item, ItemRenderType type) { return true; } @Override public boolean shouldUseRenderHelper(ItemRenderType type, ItemStack item, ItemRendererHelper helper) { return true; } @Override public void renderItem(ItemRenderType type, ItemStack item, Object... data) { // Paper // Small Sugar } }
  7. Almost nobody will help you if you are trying to use 1.6.4, if you want to make a modpack on that version you are on your own with it. If you really want a mod and it's not updated to 1.7.10, then don't include that mod, there are hundreds of mods for 1.7.10 and a few mods being 1.6.4 shouldn't keep you on a really old version. Seriously 1.6.4 came 1.75 years ago, 1.7.10 came out a year ago, and 1.8 came out 9 or 10 months ago.
  8. Well that appears to have fixed it, thanks!
  9. That's why when I cache the recipe and start the recipe scan loop I create a new ShapelessRecipes with what should be a copy recipescan: for (ShapelessRecipes reciperaw : cachedRecipes) { ShapelessRecipes recipe = new ShapelessRecipes(reciperaw.getRecipeOutput().copy(), Lists.newArrayList(reciperaw.recipeItems)); Shouldn't that be enough as long as I just use recipe everywhere and not reciperaw, or can you point out where I've messed it up
  10. So really this is a weird bug I'm having. I've tried and checked and just can't find what's wrong with it. Basically there's an inventory with 29 slots, 27 are storage slots, 1 is a "foodprint" (blueprint) slot, and the final is the output slot. When the entity updates it's supposed to check if the item in the foodprint can be crafted (So if the foodprint is bread it needs 3 wheat in the storage slots) and if it can, it will take 3 wheat, and put one bread in the output slot. However after the first time the item is crafted per game instance (So you restart and it works again) the recipe outputs stack size goes down to 0 for some reason and any bread put into the output slot is fake and upon trying to eat it, it disappears. Here's the code, any help would be nice @Override public void updateEntity() { if (this.worldObj.isRemote) return; if (ticksUntilCheck > 0) { ticksUntilCheck --; return; } else { if (!recipesCached) { if (getStackInSlot(27) != null) { ItemStack stack = getStackInSlot(27); if (stack.getItem() instanceof ItemFoodprint) { ItemStack stored = new ItemStack(((ItemFoodprint) stack.getItem()).getStoredItem(stack)); for (Object obj : CraftingManager.getInstance().getRecipeList()) { if (obj instanceof ShapedRecipes) { ShapedRecipes recipe = (ShapedRecipes) obj; if (recipe.getRecipeOutput().getItem().equals(stored.getItem())) { cachedRecipes.add(new ShapelessRecipes(recipe.getRecipeOutput().copy(), Lists.newArrayList(recipe.recipeItems))); } } else if (obj instanceof ShapelessRecipes) { ShapelessRecipes recipe = (ShapelessRecipes) obj; if (recipe.getRecipeOutput().getItem().equals(stored.getItem())) { cachedRecipes.add(new ShapelessRecipes(recipe.getRecipeOutput().copy(), Lists.newArrayList(recipe.recipeItems))); } } } recipesCached = true; } } } ticksUntilCheck = 10; if (getStackInSlot(27) == null) return; ItemStack stack = getStackInSlot(27); if (!(stack.getItem() instanceof ItemFoodprint)) return; ItemFoodprint print = (ItemFoodprint) stack.getItem(); if (print.isBlank(stack)) return; Item foodStored = print.getStoredItem(stack); if (getStackInSlot(28) != null) { if (getStackInSlot(28).getItem() != foodStored) return; } recipescan: for (ShapelessRecipes reciperaw : cachedRecipes) { ShapelessRecipes recipe = new ShapelessRecipes(reciperaw.getRecipeOutput().copy(), Lists.newArrayList(reciperaw.recipeItems)); if (getStackInSlot(28) != null) { if (getStackInSlot(28).stackSize + recipe.getRecipeOutput().stackSize > getStackInSlot(28).getMaxStackSize()) continue recipescan; } HashMap<Item, Integer> reqItems = new HashMap<Item, Integer>(); for (Object obj : recipe.recipeItems) { if (obj instanceof ItemStack) { ItemStack ing = (ItemStack) obj; if (reqItems.containsKey(ing.getItem())) { reqItems.put(ing.getItem(), reqItems.get(ing.getItem()) + 1); } else { reqItems.put(ing.getItem(), 1); } } } HashMap<Item, Integer> storedItems = new HashMap<Item, Integer>(); slotscan: for (int slot = 0; slot < 27; slot ++) { if (inventory[slot] == null) continue slotscan; Item storedItem = inventory[slot].getItem(); if (storedItems.containsKey(storedItem)) { storedItems.put(storedItem, storedItems.get(storedItem) + inventory[slot].stackSize); } else { storedItems.put(storedItem, inventory[slot].stackSize); } } for (Item item : reqItems.keySet()) { if (!storedItems.containsKey(item)) continue recipescan; if (storedItems.get(item) < reqItems.get(item)) continue recipescan; } slotscan: for (int slot = 0; slot < 27; slot ++) { if (this.inventory[slot] == null) continue slotscan; if (reqItems.containsKey(this.inventory[slot].getItem())) { int toTake = reqItems.get(this.inventory[slot].getItem()); if (toTake <= this.inventory[slot].stackSize) { reqItems.remove(this.inventory[slot].getItem()); this.inventory[slot].stackSize -= toTake; if (this.inventory[slot].stackSize == 0) this.inventory[slot] = null; } else { int newToTake = toTake - this.inventory[slot].stackSize; reqItems.put(this.inventory[slot].getItem(), newToTake); this.inventory[slot] = null; } } } if (this.inventory[28] == null) { this.inventory[28] = recipe.getRecipeOutput(); } else { this.inventory[28].stackSize = this.inventory[28].stackSize + recipe.getRecipeOutput().stackSize; } break recipescan; } } }
  11. Ummm I'd help but don't know what you're trying to do. It looks like you're trying to make two block variables based on a block at x, y, z. However var6 whatever you're trying to do there, would probably end up being the same as var5, if you explain it a bit I might be able to help.
  12. Thanks, surprised I didn't notice that, probably because MrTJPCore downloads itself via project red and so I didn't recognize it. Downgraded ProjectRed.
  13. "A Fatal Error has occured" could be anything, get logs
  14. http://files.minecraftforge.net/ Download the installer (Installer or Installer-Win) and run it. It's pretty simple to do.
  15. CodeChickenCore requires CodeChickenLib although it's supposed to download automatically. http://files.minecraftforge.net/CodeChickenLib/ As well as Morph will require iChunUtil
  16. iChunUtil{4.2.2} [iChunUtil] (iChunUtil-4.2.2.jar) Unloaded->Constructed->Errored From the FAQ page you linked: "4.X.X is for Minecraft 1.7.10" So if the error is actually the fact that he has a 1.8 version of the mod then he probably didn't download it from iChun's site and probably used 9minecraft or something and got the wrong version. Download iChunUtil 4.2.2 here http://ichun.us/mods/ichunutil/ and if the error still somehow happens report it to iChun
  17. http://minecraft.curseforge.com/mc-mods/223797-helpfixer
  18. Update iChunUtil, you do have a 1.8 version unlike diesieben said however it's outdated. Get 5.3.0 here http://ichun.us/mods/ichunutil/
  19. Don't use 1.7.2, Update to the latest 1.7.10 forge.
  20. Did you add CodeChickenCore then? You kind of need it.
  21. Don't use 1.7.2, update to 1.7.10. 1.7.2 has issues with java 8 that will probably not be fixed because there is no advantage to using 1.7.2 over 1.7.10
  22. Here's an idea, don't use the recommended link. Download the latest at files.minecraftforge.net it's right there beside the recommended one.
  23. Update forge, you're on 1334, the latest for 1.8 is 1405

Important Information

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

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.