1.14.4 Can you break bedrock with big enough explosion?

Discussion in 'Spigot Plugin Development' started by KingUmbreon56, Mar 26, 2020.

  1. So the wiki says that bedrock has a blast resistance of 3,600,000. Can you change the power of a TNT entity to have a power above this? SetYield just says it changes the radius, not the power of a TNT, which is by default 4. How would I go about coding TNT entities to have a power of 3,600,001?

  2. Forget it) You can't modify power
    • Agree Agree x 2
  3. But you can try just breaking blocks by bukkit methods if their resistance is lower than N(your value)
  4. Yield = Power
    • Like Like x 1
  5. Based on the wiki TNT has a power of 4 and the java docs also confirm that:
    Also based on the wiki the required power level to break bedrock is ~1542860, feel free to try it out World#createExplosion
    #5 Dexuby, Mar 26, 2020
    Last edited: Mar 26, 2020
    • Agree Agree x 1
  6. Strahan


    I was curious so I tried that; the explosion processing was such that my 5.1ghz i7, 32GB RAM based server shit itself :)
    • Funny Funny x 3
    • Like Like x 1
  7. Kinda expected that haha the blast radius scales with the power level and based on the wiki this means:
  8. You can try to surround the explode location with 2 or 3 layers of bedrock. If I'm remembering right how mc calculate explosions, the server shouldn't crash as the explosion would be kept inside the bedrock cage.
  9. Strahan


    Doesn't seem to make any difference. Generated a solid bedrock cube 255 x 255 x 255 blocks. Made a 2 block high space in the center then TP'd there and generated the explosion. Server still proceeded to go tits up lol
    • Funny Funny x 2
  10. I suppose the explosion is too big to be contained :unsure:
  11. Sadly, processing power does not make Minecraft run like a rocket and the JVM less RAM intensive :)
    It is still hard to handle big amount of objects (talking 10 billion+ here) with Java and I'm assuming the explosion forces the server to at least temporarily fetch a lot of blocks into RAM to "destroy" them ... and that's all kind of running on one thread :ROFLMAO:
    If we keep in mind that on Java 64-bit an object header can have as much as 16 Bytes ... well then 1 Billion objects already take ~ 16GB of RAM only for existing.

    @KingUmbreon56 Instead of trying the impossible, just create a visual explosion (no power), take the location and make an own "explosion" algorithm that can also "break" bedrock.
    • Agree Agree x 1