Skip 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. http://en.wikipedia.org/wiki/Procedural_generation
  2. To use Forge, download Forge from the Forge website. Double click the installer, let it run. When it finishes, you'll have decompiled source for the client. You'll have to manually add the server jar and decompile again (there's a nice executable called decompile.bat, you just have to run that--well, run cleanup.bat first).
  3. No it's not. chunkX is not premultiplied and it's certainly not being muliplied before it gets passed on WorldGenMinable. Oh, and if it's magically getting multiplied after you add the random value, you're still doing it wrong.
  4. You can find it by downloading it from Minecraft.net, it's right there under the client download. As for decompiling, modding, and recompiling: http://www.minecraftwiki.net/wiki/Mods/Creating_mods/Starting_your_First_Mod
  5. One thing: int randPosX = chunkX + rand.nextInt(16); int randPosY = rand.nextInt(250)+0; int randPosZ = chunkZ + rand.nextInt(16); ChunkX = 5 randPosX = 5 + [0-15] Gee, I wonder where it's going to end up. (You have to multiply your chunk X/Z by 16).
  6. It's probably in the renderer for it. I wouldn't be surprised if the texture is procedural.
  7. There's another function saying how many items should drop. Uh...ah, public int quantityDropped(Random par1Random)
  8. You need to force the calculation manually via updateTick.
  9. I've messed with NBT data, but only from within a TileEntity, I have no idea how to go about applying that information to the world. NBT reading/writing is pretty easy though.
  10. http://www.minecraftforge.net/wiki/Crafting_and_Smelting#With_Metadata
  11. You'd need to start by decompiling the server jar and finding the section where it handles new connections. I know that the server window does output what mods a new connection has installed. From there it would be a matter of using that information to decide if the client can connect or not, then either allowing it or forcibly disconnecting them. From there, you should be able to run the server through Eclipse, and then run your client normally, and connect to a server at the IP address 127.0.0.1 (aka Local Host).
  12. Some mods definitely are cheating of sorts. And not all of them are client side mods. Steve's Carts (which are amazingly useful) I've decided are cheating. As for your question...I believe it's possible. But I wouldn't know how to go about it.
  13. I think it's based on the mcmod.info text file. They can get pretty complicated, but here's a simple one. [ { "modid" : "UnderwaterBuildings", "name" : "Bathyspheres", "version" : "1.0.0", "url" : "", "credits" : "Dav Edward", "authors": [ "Draco18s" ], "description": "Adds a new block to aid underwater construction.", "logoFile" : "bathy-logo.png", "updateUrl" : "", "parent" : "", "screenshots": [ ], "dependancies": [ "Forge" ] } It's just a text file, with a .info extension. The file (and a logo if you want it) just go in the root of the zip.
  14. @Override public int getTextureFromSideAndMetadata(int side, int metadata) Just return a different value when metadata isn't zero.
  15. I haven't messed with rails, but this should be possible. Afterall, Railcraft did it.
  16. Try just returning a flat value, rather than a random one. In any case, the error is in that getItemByRarity function, not at the spawning it into the world part.
  17. 3) open /reobf/minecraft and zip up the folders in there.
  18. I tried it and it worked just fine. What's the error?
  19. Try this: world.spawnEntityInWorld(new EntityItem(world, x, y, z, new ItemStack(Item.bow))); Just replace Item.bow with the item you want to spawn. Make sure to check that the world isn't remote, or you'll end up with a phantom item as well.
  20. This helped me get solved too. We were in fact both making the same mistakes! http://s8.postimg.org/f4ybhigdh/2013_03_29_20_54_34.png[/img] Woo, mosaics!
  21. I'm too humble to do that. Thhhb.
  22. I've been modding for about two weeks. o..o; As for scrupulous...not sure. I just use the code hinting excessively. "Is there a function to do...?" and check the various objects I have access to. Also, I figured out I didn't need to save a reference to the World. World implements IBlockAccess, so you can pass it to your lighting function from within updateTick: public void updateTick(World world, int x, int y, int z, Random par5Random) { getLightValue(world, x, y, z); } And you do need to call that function in the update, or it won't be recalculated.
  23. Technically the code I use makes a call to getCelestialAngle. Just not directly: World.java public int calculateSkylightSubtracted(float par1) { float var2 = this.getCelestialAngle(par1); float var3 = 1.0F - (MathHelper.cos(var2 * (float)Math.PI * 2.0F) * 2.0F + 0.5F); if (var3 < 0.0F) { var3 = 0.0F; } if (var3 > 1.0F) { var3 = 1.0F; } var3 = 1.0F - var3; var3 = (float)((double)var3 * (1.0D - (double)(this.getRainStrength(par1) * 5.0F) / 16.0D)); var3 = (float)((double)var3 * (1.0D - (double)(this.getWeightedThunderStrength(par1) * 5.0F) / 16.0D)); var3 = 1.0F - var3; return (int)(var3 * 11.0F); }

Important Information

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

Account

Navigation

Search

Search

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.