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.

Draco18s

Members
  • Joined

  • Last visited

Everything posted by Draco18s

  1. >> 4 Because of negative coordinates. 15 >> 4 = 0 ✓ 15 / 16 = 0 ✓ -15 >> 4 = -1 ✓ -15 / 16 = 0 ✗
  2. By looking at BlockStairs and going "might this method be involved somehow?" I found: collisionRayTrace
  3. You misunderstand. The game cannot find that file. Its contents are irrelevant if the file doesn't exist (i.e. misnamed, in the wrong place, etc).
  4. Typically a chunk never has more than 2, and rarely 3, but yes. I've played a custom map where every achievement expanded the world border by 1 block (starting with it being 1 block in size). Yes, there was a way to visit every biome.
  5. Caused by: java.io.FileNotFoundException: esm:blockstates/bat_repeller_block.json
  6. What things are having problems? Are you getting anything in the log? (You should be, show it!) IHasModel is stupid. All items need models. This is stupid: https://github.com/lAimBotl/ElectroStatic-src/blob/master/main/java/com/lAimBotl/electrostatic/util/handlers/RegistryHandler.java#L36 All that method does is call Main.proxy.registerItemModel(...) with parameters that you have available, there is no reason to go to the item class for it. https://github.com/lAimBotl/ElectroStatic-src/blob/master/main/java/com/lAimBotl/electrostatic/util/handlers/RegistryHandler.java#L30 ModelRegistryEvent is client side only, this will crash the dedicated server.
  7. There's also getCollisionBoxes or something like that, that returns a list.
  8. The point is, in 1.13, because of The Flattening, integer IDs may not be used at all. Dirt and Coarse Dirt will be saved as separate blocks (!)
  9. You must use ItemStacks. Items are singletons, there is only one protypical stick and all stacks of sticks refer to it for functionality.
  10. It's because the HTML conversion fucked up: <span style="font-family: "courier new" , "courier" , monospace; font-size: x-small;"> private final Set<icriteriontrigger .listener="" ustomtrigger.instance="">> listeners = Sets.<icriteriontrigger .listener="" ustomtrigger.instance="">>newHashSet();</icriteriontrigger></icriteriontrigger> </span> You can see what bits were there to start with, but which got converted to HTML tags instead.
  11. The client never ever writes anything to disk. Your code will cause the server to crash, if your code is in fact running on the server. You need to perform this check a different way. And I'm pretty sure you want your code to run server side.
  12. When would this ever be false? You're doing this one the client, what? Why are you storing your runtime information in NBT? NBT is only for writing to disk.
  13. Bad modder, no cookie. Integer block IDs are not guaranteed to always be the same from save to save, you must iterate over Blocks.REGISTRY. Additionally, not all integer states are "valid" blocks. Here's how you can get all valid block states for a given block: BlockStateContainer bsc = block.getBlockState(); ImmutableList<IBlockState> values = bsc.getValidStates();
  14. What record is inserted is handled by the Jukebox TileEntity.
  15. http://mcforge.readthedocs.io/en/latest/gettingstarted/
  16. Lets suppose you have two stone blocks, two plank blocks, a stick, and some coal. What should get crafted?
  17. "Hey I have a problem that's [similar, but completely different than] this thread." Start a new thread. :V
  18. The fuck is this for? You never set it to true. https://github.com/IvanSteklow/TF2Mod/blob/master/src/main/java/ru/ivansteklow/tf2mod/network/PacketMetalRefinery.java#L18 Why is this empty? https://github.com/IvanSteklow/TF2Mod/blob/master/src/main/java/ru/ivansteklow/tf2mod/network/PacketMetalRefinery.java#L33 This should be public static class, or in another file entirely. https://github.com/IvanSteklow/TF2Mod/blob/master/src/main/java/ru/ivansteklow/tf2mod/network/PacketMetalRefinery.java#L47 As such, this will crash the server: https://github.com/IvanSteklow/TF2Mod/blob/master/src/main/java/ru/ivansteklow/tf2mod/network/PacketMetalRefinery.java#L53 As to the crash you have, it's trying to find an init method or a constructor on your handler, I'm not entirely sure.
  19. You can create models with multiple layers just fine: https://github.com/Draco18s/ReasonableRealism/blob/1.12.1/src/main/resources/assets/harderores/models/block/hardore.json It is also possible to read two (or more) textures off the disk and combine them during the texture sheet stitching process, but it's not documented and can be difficult to do right (and if it crashes the game, its very hard to diagnose). If you want to do items with layers, based on NBT, that's doable too. You need to define a Custom Mesh Definition: https://github.com/Draco18s/ReasonableRealism/blob/1.12.1/src/main/java/com/draco18s/industry/item/ItemCastingMold.java#L89 And register it: https://github.com/Draco18s/ReasonableRealism/blob/1.12.1/src/main/java/com/draco18s/hardlib/client/ClientEasyRegistry.java#L194
  20. world.setBlockState() ^--- The world is a single dimension Because the world you're setting the block state in is the world the player is in before they teleport.
  21. Advancement triggers are pretty simple. Thttps://github.com/Draco18s/ReasonableRealism/blob/1.12.1/src/main/java/com/draco18s/hardlib/api/advancement/FoundOreTrigger.javahat looks like a lot, but its 90% the same across all triggers. You pretty much start with the test() function and work backwards until all the errors are gone.
  22. https://mcforge.readthedocs.io/en/latest/networking/simpleimpl/

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.