SchelMinecraft
- SchelMinecraftLp
- schelminecraftlp
- Europe/Stockholm
- Yes
- No
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Happens only when you swing your sword and face up or down on a ladder without an other block in range to hit. So you hit theoretically air.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Happens only when you swing your sword and face up or down on a ladder without an other block in range to hit. So you hit theoretically air.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
*Ladders
*Vines
*Iron bars
*Glas panes
*Portal blocks
*...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one./** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
*Ladders
*Vines
*Iron bars
*Glas panes
*Portal blocks
*...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one./** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
*Ladders
*Vines
*Iron bars
*Glas panes
*Portal blocks
*...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one./** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
*Ladders
*Vines
*Iron bars
*Glas panes
*Portal blocks
*...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one./** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one./** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one./** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
How to reproduce:
- Gamemode Creative or Survival (at least I can confirm it for these both)
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for
- All Versions from 1.7.2 until 15w50a
How to reproduce:
- Gamemode Creative or Survival (at least I can confirm it for these both)
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w50a
How to reproduce:
- Gamemode Creative or Survival (at least I can confirm it for these both)
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w50a
How to reproduce:
- Gamemode Creative or Survival (at least I can confirm it for these both)
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w50a
How to reproduce:
- Gamemode Creative
orSurvival(at least I can confirm it for these both)- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w50a
How to reproduce:
- Gamemode Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
The reason might be partwise a faulty implementation of the floor(double) }} method. The method {{floor_double(double p_76128_0_) (and all other floor methods) which are supposed to do this in the /Client/src/net/minecraft/util/MathHelper.java (MCP 1.8 names) class return the smaller integer even if the integer value is the same as the double one.
/** * Returns the greatest integer less than or equal to the double argument */ public static int floor_double(double p_76128_0_) { int var2 = (int)p_76128_0_; // Changed this //return p_76128_0_ < (double)var2 ? var2 - 1 : var2; return p_76128_0_ <= (double)var2 ? var2 - 1 : var2; }However disabling this makes you unable to move and rotate.
The main bug might be in the collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) method of the /Client/src/net/minecraft/block/Block.java class. If all collision checks fail null is returned, however it should maybe rather be returned that the player missed. I added that however the EnumFacing needs to be adjusted and the other arguments might be wrong as well./** * Ray traces through the blocks collision from start vector to end vector returning a ray trace hit. * * @param start The start vector * @param end The end vector */ public MovingObjectPosition collisionRayTrace(World worldIn, BlockPos pos, Vec3 start, Vec3 end) { this.setBlockBoundsBasedOnState(worldIn, pos); start = start.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); end = end.addVector((double)(-pos.getX()), (double)(-pos.getY()), (double)(-pos.getZ())); Vec3 var5 = start.getIntermediateWithXValue(end, this.minX); Vec3 var6 = start.getIntermediateWithXValue(end, this.maxX); Vec3 var7 = start.getIntermediateWithYValue(end, this.minY); Vec3 var8 = start.getIntermediateWithYValue(end, this.maxY); Vec3 var9 = start.getIntermediateWithZValue(end, this.minZ); Vec3 var10 = start.getIntermediateWithZValue(end, this.maxZ); //... Collision tests, var11 is null if none succeeded if (var11 == null) { //return null; // EnumFacing.DOWN is probably wrong return new MovingObjectPosition(MovingObjectPosition.MovingObjectType.MISS, start, EnumFacing.DOWN, pos); } else { //... } }Please keep in mind that this is only based on partwise obfuscated code so this might not be the actual fix needed.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w5
0aHow to reproduce:
- Gamemode Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
Suggested code fix in this comment.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w51b
How to reproduce:
- Gamemode Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
Suggested code fix in this comment.
Windows
8.1, 64-bit
Java 1.8.0_31
Intel(R) Core(TM) i7-4510 CPU
NVIDIA GeForce GTX 850MWindows 10, 64-bit
Java 1.8.0_66
Intel(R) Core(TM) i7-4510 CPU
NVIDIA GeForce GTX 850M
hitResult Null(Trival)
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 15w51b
How to reproduce:
- Gamemode Spectator, Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
Suggested code fix in this comment.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 1
5w51bHow to reproduce:
- Gamemode Spectator, Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
Suggested code fix in this comment.
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 1.9-pre4
How to reproduce:
- Gamemode Spectator, Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
Suggested code fix in this comment.
Windows 10, 64-bit
Java 1.8.0_66
Intel(R) Core(TM) i7-4510 CPU
NVIDIA GeForce GTX 850MAll
Game Output:
[16:57:52] [Client thread/ERROR]: Null returned as 'hitResult', this shouldn't happen!
[16:57:52] [Client thread/WARN]: Null returned as 'hitResult', this shouldn't happen!Confirmed for:
- All Versions from 1.7.2 until 1.9
-pre4How to reproduce:
- Gamemode Spectator, Creative, Survival or Adventure
- Go to a wall which has at least 6 (+1 where you should stand) ladders below or above you and punch down respectively up
Affects all blocks that allow you to stand in them and punch without hitting them, like:
- Ladders
- Vines
- Iron bars
- Glas panes
- Portal blocks
- ...
Suggested code fix in this comment.


You might need to press F3 + FN + C