Skip to content

Commit

Permalink
feat(legacy): invalidspeed antibot & fixed duplicateInTab/Name (CCBlu…
Browse files Browse the repository at this point in the history
  • Loading branch information
EclipsesDev authored Nov 1, 2024
1 parent d3a7e6c commit 3072e16
Show file tree
Hide file tree
Showing 72 changed files with 200 additions and 197 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@ import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.modules.player.Blink
import net.ccbluex.liquidbounce.features.module.modules.world.scaffolds.Scaffold
import net.ccbluex.liquidbounce.injection.implementations.IMixinEntity
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.extensions.*
import net.ccbluex.liquidbounce.utils.render.ColorUtils.rainbow
Expand Down Expand Up @@ -104,7 +103,7 @@ object FakeLag : Module("FakeLag", Category.COMBAT, gameDetecting = false, hideM
if (ignoreWholeTick)
return

if (pauseOnNoMove && !isMoving) {
if (pauseOnNoMove && !player.isMoving) {
blink()
return
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ import net.ccbluex.liquidbounce.utils.CooldownHelper.getAttackCooldownProgress
import net.ccbluex.liquidbounce.utils.CooldownHelper.resetLastAttackedTicks
import net.ccbluex.liquidbounce.utils.EntityUtils.isLookingOnEntities
import net.ccbluex.liquidbounce.utils.EntityUtils.isSelected
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPackets
import net.ccbluex.liquidbounce.utils.RaycastUtils.raycastEntity
Expand Down Expand Up @@ -1201,7 +1200,7 @@ object KillAura : Module("KillAura", Category.COMBAT, Keyboard.KEY_R, hideModule
get() {
if (target != null && mc.thePlayer?.heldItem?.item is ItemSword) {
if (smartAutoBlock) {
if (!isMoving && forceBlock) return true
if (!mc.thePlayer.isMoving && forceBlock) return true

if (checkWeapon && (target!!.heldItem?.item !is ItemSword && target!!.heldItem?.item !is ItemAxe))
return false
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ package net.ccbluex.liquidbounce.features.module.modules.combat
import net.ccbluex.liquidbounce.event.*
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPackets
import net.ccbluex.liquidbounce.utils.RotationUtils.angleDifference
Expand Down Expand Up @@ -115,7 +114,7 @@ object SuperKnockback : Module("SuperKnockback", Category.COMBAT, hideModule = f
endExclusive = 100
) > chance) return

if (onlyMove && (!isMoving || onlyMoveForward && player.movementInput.moveStrafe != 0f)) return
if (onlyMove && (!player.isMoving || onlyMoveForward && player.movementInput.moveStrafe != 0f)) return

// Is the enemy facing his back on us?
if (angleDifferenceToPlayer > minEnemyRotDiffToIgnore && !target.hitBox.isVecInside(player.eyes)) return
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ import net.ccbluex.liquidbounce.features.module.modules.exploit.Disabler
import net.ccbluex.liquidbounce.features.module.modules.movement.Speed
import net.ccbluex.liquidbounce.utils.EntityUtils.isLookingOnEntities
import net.ccbluex.liquidbounce.utils.EntityUtils.isSelected
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.MovementUtils.isOnGround
import net.ccbluex.liquidbounce.utils.MovementUtils.speed
import net.ccbluex.liquidbounce.utils.PacketUtils.queuedPackets
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPackets
import net.ccbluex.liquidbounce.utils.extensions.getDistanceToEntityBox
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.extensions.toDegrees
import net.ccbluex.liquidbounce.utils.extensions.tryJump
import net.ccbluex.liquidbounce.utils.misc.RandomUtils.nextInt
Expand Down Expand Up @@ -474,7 +474,7 @@ object Velocity : Module("Velocity", Category.COMBAT, hideModule = false) {

"grimc03" -> {
// Checks to prevent from getting flagged (BadPacketsE)
if (isMoving) {
if (thePlayer.isMoving) {
hasReceivedVelocity = true
event.cancelEvent()
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,8 @@ import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.value.BoolValue
import net.ccbluex.liquidbounce.value.IntegerValue
import net.ccbluex.liquidbounce.utils.ClientUtils.displayChatMessage
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.extensions.tryJump
import net.ccbluex.liquidbounce.utils.inventory.InventoryUtils
import net.ccbluex.liquidbounce.value.TextValue
Expand Down Expand Up @@ -195,7 +195,7 @@ object Disabler : Module("Disabler", Category.EXPLOIT, hideModule = false) {

if (vulcanScaffold) {
if (!(player.isInWater || player.isInLava || player.isDead || player.isOnLadder)) {
if (isMoving && player.ticksExisted % vulcanPacketTick == 0) {
if (player.isMoving && player.ticksExisted % vulcanPacketTick == 0) {
sendPacket(C0BPacketEntityAction(player, C0BPacketEntityAction.Action.START_SNEAKING))
sendPacket(C0BPacketEntityAction(player, C0BPacketEntityAction.Action.STOP_SNEAKING))
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,10 @@ import net.ccbluex.liquidbounce.event.*
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.utils.MovementUtils.direction
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPackets
import net.ccbluex.liquidbounce.utils.block.BlockUtils.collideBlockIntersects
import net.ccbluex.liquidbounce.utils.extensions.getBlock
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.extensions.step
import net.ccbluex.liquidbounce.utils.timing.TickTimer
import net.ccbluex.liquidbounce.value.ListValue
Expand Down Expand Up @@ -212,7 +212,7 @@ object Phase : Module("Phase", Category.EXPLOIT) {

for (i in 0.025..2.0 step 0.025) {
shouldContinue = false
if (!isMoving || mc.theWorld.getCollidingBoundingBoxes(
if (!mc.thePlayer.isMoving || mc.theWorld.getCollidingBoundingBoxes(
mc.thePlayer,
mc.thePlayer.entityBoundingBox
.offset(
Expand Down Expand Up @@ -245,7 +245,7 @@ object Phase : Module("Phase", Category.EXPLOIT) {
}

2 -> {
val value = if (isMoving) value else -0.06
val value = if (mc.thePlayer.isMoving) value else -0.06
mc.thePlayer.setPositionAndUpdate(
mc.thePlayer.posX - (sin(yaw) * value),
mc.thePlayer.posY,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@ import net.ccbluex.liquidbounce.utils.RotationUtils.toRotation
import net.ccbluex.liquidbounce.utils.extensions.center
import net.ccbluex.liquidbounce.utils.extensions.getFullName
import net.ccbluex.liquidbounce.utils.extensions.hitBox
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.render.ColorUtils.stripColor
import net.ccbluex.liquidbounce.value.BoolValue
import net.ccbluex.liquidbounce.value.FloatValue
Expand All @@ -28,7 +29,9 @@ import net.minecraft.network.play.server.S0BPacketAnimation
import net.minecraft.network.play.server.S13PacketDestroyEntities
import net.minecraft.network.play.server.S14PacketEntity
import net.minecraft.network.play.server.S20PacketEntityProperties
import net.minecraft.potion.Potion
import kotlin.math.abs
import kotlin.math.sqrt

object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {

Expand All @@ -46,6 +49,7 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
private val ground by BoolValue("Ground", true)
private val air by BoolValue("Air", false)
private val invalidGround by BoolValue("InvalidGround", true)
private val invalidSpeed by BoolValue("InvalidSpeed", false)
private val swing by BoolValue("Swing", false)
private val health by BoolValue("Health", false)
private val derp by BoolValue("Derp", true)
Expand Down Expand Up @@ -73,6 +77,7 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
private val groundList = mutableSetOf<Int>()
private val airList = mutableSetOf<Int>()
private val invalidGroundList = mutableMapOf<Int, Int>()
private val invalidSpeedList = mutableSetOf<Int>()
private val swingList = mutableSetOf<Int>()
private val invisibleList = mutableListOf<Int>()
private val propertiesList = mutableSetOf<Int>()
Expand Down Expand Up @@ -145,6 +150,9 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
|| entity.capabilities.disableDamage || entity.capabilities.isCreativeMode))
return true

if (invalidSpeed && entity.entityId in invalidSpeedList)
return true

if (needHit && entity.entityId !in hitList)
return true

Expand All @@ -156,21 +164,6 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
&& it.gameProfile.id != entity.gameProfile.id } == 1
}

if (tab) {
val equals = tabMode == "Equals"
val targetName = stripColor(entity.displayName.formattedText)

val shouldReturn = mc.netHandler.playerInfoMap.any { networkPlayerInfo ->
val networkName = stripColor(networkPlayerInfo.getFullName())
if (equals) {
targetName == networkName
} else {
networkName in targetName
}
}
return !shouldReturn
}

if (duplicateInWorld) {
for (player in mc.theWorld.playerEntities.filterNotNull()) {
val playerName = player.name
Expand All @@ -183,9 +176,7 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
}

if (worldDuplicateNames.isNotEmpty()) {
val duplicateCount = worldDuplicateNames.size

return mc.theWorld.playerEntities.count { it.name in worldDuplicateNames } > duplicateCount
return mc.theWorld.playerEntities.count { it.name in worldDuplicateNames } > 1
}
}

Expand All @@ -201,12 +192,25 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
}

if (tabDuplicateNames.isNotEmpty()) {
val duplicateCount = tabDuplicateNames.size

return mc.netHandler.playerInfoMap.count { stripColor(it.getFullName()) in tabDuplicateNames } > duplicateCount
return mc.netHandler.playerInfoMap.count { stripColor(it.getFullName()) in tabDuplicateNames } > 1
}
}

if (tab) {
val equals = tabMode == "Equals"
val targetName = stripColor(entity.displayName.formattedText)

val shouldReturn = mc.netHandler.playerInfoMap.any { networkPlayerInfo ->
val networkName = stripColor(networkPlayerInfo.getFullName())
if (equals) {
targetName == networkName
} else {
networkName in targetName
}
}
return !shouldReturn
}

if (alwaysInRadius && entity.entityId !in notAlwaysInRadiusList)
return true

Expand Down Expand Up @@ -235,7 +239,8 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {

if (entity.onGround) {
if (entity.fallDistance > 0.0 || entity.posY == entity.prevPosY || !entity.isCollidedVertically) {
invalidGroundList.putIfAbsent(entity.entityId,
invalidGroundList.putIfAbsent(
entity.entityId,
invalidGroundList.getOrDefault(entity.entityId, 0) + 1
)
}
Expand Down Expand Up @@ -284,6 +289,19 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
}
}
}

if (invalidSpeed) {
val deltaX = entity.posX - entity.prevPosX
val deltaZ = entity.posZ - entity.prevPosZ
val speed = sqrt(deltaX * deltaX + deltaZ * deltaZ)


if (speed in 0.45..0.46 && (!entity.isSprinting || !entity.isMoving ||
entity.getActivePotionEffect(Potion.moveSpeed) == null))
{
invalidSpeedList += entity.entityId
}
}
}
}

Expand Down Expand Up @@ -331,6 +349,7 @@ object AntiBot : Module("AntiBot", Category.MISC, hideModule = false) {
swingList.clear()
groundList.clear()
invalidGroundList.clear()
invalidSpeedList.clear()
invisibleList.clear()
notAlwaysInRadiusList.clear()
worldPlayerNames.clear()
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -294,7 +294,7 @@ object FlagCheck : Module("FlagCheck", Category.MISC, gameDetecting = true, hide
val fontRenderer = font

// Scale
val scale = ((player.getDistanceSq(pos.xCoord, pos.yCoord, pos.zCoord) / 8F).coerceAtLeast(1.5) / 100F) * scale
val scale = (((player.getDistanceSq(pos.xCoord, pos.yCoord, pos.zCoord) / 8F).coerceIn(1.5, 5.0) / 100F) * scale)
glScaled(-scale, -scale, scale)

// Draw text
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ import net.ccbluex.liquidbounce.event.UpdateEvent
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.utils.MovementUtils
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.MovementUtils.strafe
import net.ccbluex.liquidbounce.utils.block.BlockUtils.getBlock
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.extensions.tryJump
import net.ccbluex.liquidbounce.value.BoolValue
import net.ccbluex.liquidbounce.value.FloatValue
Expand Down Expand Up @@ -89,7 +89,7 @@ object BufferSpeed : Module("BufferSpeed", Category.MOVEMENT, hideModule = false
hadFastHop = false
}

if (!isMoving || thePlayer.isSneaking || thePlayer.isInWater || mc.gameSettings.keyBindJump.isKeyDown) {
if (!thePlayer.isMoving || thePlayer.isSneaking || thePlayer.isInWater || mc.gameSettings.keyBindJump.isKeyDown) {
reset()
return
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ import net.ccbluex.liquidbounce.event.EventTarget
import net.ccbluex.liquidbounce.event.UpdateEvent
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.block.BlockUtils.getBlock
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.extensions.tryJump
import net.ccbluex.liquidbounce.value.BoolValue
import net.ccbluex.liquidbounce.value.ListValue
Expand All @@ -30,7 +30,7 @@ object FastStairs : Module("FastStairs", Category.MOVEMENT) {
fun onUpdate(event: UpdateEvent) {
val thePlayer = mc.thePlayer ?: return

if (!isMoving || Speed.handleEvents())
if (!thePlayer.isMoving || Speed.handleEvents())
return

if (thePlayer.fallDistance > 0 && !walkingDown)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,9 @@ import net.ccbluex.liquidbounce.event.EventTarget
import net.ccbluex.liquidbounce.event.UpdateEvent
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.block.BlockUtils.getBlock
import net.ccbluex.liquidbounce.utils.block.BlockUtils.getMaterial
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.value.ListValue
import net.minecraft.init.Blocks
import net.minecraft.util.BlockPos
Expand Down Expand Up @@ -39,7 +39,7 @@ object IceSpeed : Module("IceSpeed", Category.MOVEMENT) {

val thePlayer = mc.thePlayer ?: return

if (thePlayer.onGround && !thePlayer.isOnLadder && !thePlayer.isSneaking && thePlayer.isSprinting && isMoving) {
if (thePlayer.onGround && !thePlayer.isOnLadder && !thePlayer.isSneaking && thePlayer.isSprinting && thePlayer.isMoving) {
if (mode == "AAC") {
getMaterial(thePlayer.position.down()).let {
if (it == Blocks.ice || it == Blocks.packed_ice) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,8 @@ import net.ccbluex.liquidbounce.features.module.modules.movement.longjumpmodes.o
import net.ccbluex.liquidbounce.features.module.modules.movement.longjumpmodes.other.Buzz
import net.ccbluex.liquidbounce.features.module.modules.movement.longjumpmodes.other.VerusDamage
import net.ccbluex.liquidbounce.features.module.modules.movement.longjumpmodes.other.VerusDamage.damaged
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.MovementUtils.speed
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.extensions.tryJump
import net.ccbluex.liquidbounce.value.BoolValue
import net.ccbluex.liquidbounce.value.FloatValue
Expand Down Expand Up @@ -72,7 +72,7 @@ object LongJump : Module("LongJump", Category.MOVEMENT) {

modeModule.onUpdate()
}
if (autoJump && mc.thePlayer.onGround && isMoving) {
if (autoJump && mc.thePlayer.onGround && mc.thePlayer.isMoving) {
if (autoDisable && !damaged) {
return
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,8 @@ import net.ccbluex.liquidbounce.event.EventTarget
import net.ccbluex.liquidbounce.event.MoveEvent
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.utils.MovementUtils.direction
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.MovementUtils.strafe
import net.ccbluex.liquidbounce.utils.extensions.stopXZ
import net.ccbluex.liquidbounce.value.FloatValue
import kotlin.math.cos
import kotlin.math.sin

object NoClip : Module("NoClip", Category.MOVEMENT, hideModule = false) {
val speed by FloatValue("Speed", 0.5f, 0f..10f)
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@ import net.ccbluex.liquidbounce.features.module.Category
import net.ccbluex.liquidbounce.features.module.Module
import net.ccbluex.liquidbounce.features.module.modules.combat.KillAura
import net.ccbluex.liquidbounce.utils.BlinkUtils
import net.ccbluex.liquidbounce.utils.MovementUtils.isMoving
import net.ccbluex.liquidbounce.utils.PacketUtils.sendPacket
import net.ccbluex.liquidbounce.utils.SilentHotbar
import net.ccbluex.liquidbounce.utils.extensions.isMoving
import net.ccbluex.liquidbounce.utils.inventory.InventoryUtils
import net.ccbluex.liquidbounce.utils.timing.TickTimer
import net.ccbluex.liquidbounce.value.BoolValue
Expand Down Expand Up @@ -250,7 +250,7 @@ object NoSlow : Module("NoSlow", Category.MOVEMENT, gameDetecting = false, hideM

is C03PacketPlayer -> {
if (swordMode == "Blink") {
if (isMoving) {
if (player.isMoving) {
if (player.heldItem?.item is ItemSword && usingItemFunc()) {
if (shouldBlink)
BlinkUtils.blink(packet, event)
Expand Down
Loading

0 comments on commit 3072e16

Please sign in to comment.