Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse

LiquidBounce Forum

qwq LiulihaocaiQ

qwq Liulihaocai

@qwq Liulihaocai
About
Posts
36
Topics
7
Shares
0
Groups
0
Followers
38
Following
0

Posts

Recent Best Controversial

  • Rise background
    qwq LiulihaocaiQ qwq Liulihaocai

    THIS IS NOT A BACKGROUND SHADER
    code

    /**
     * @author liulihaocai
     */
    class GuiRiseBackground : GuiScreen() {
        override fun initGui() {
            val bufferedImage = ImageIO.read(GuiRiseBackground::class.java.classLoader.getResourceAsStream("assets/minecraft/fdpclient/misc/bg.png"))
            mc.textureManager.loadTexture(ResourceLocation("NMSL"), DynamicTexture(bufferedImage))
        }
    
        override fun drawBackground(tint: Int) {
            GL11.glDisable(GL11.GL_DEPTH_TEST)
            GL11.glEnable(GL11.GL_BLEND)
            GL11.glDepthMask(false)
            OpenGlHelper.glBlendFunc(GL11.GL_SRC_ALPHA, GL11.GL_ONE_MINUS_SRC_ALPHA, GL11.GL_ONE, GL11.GL_ZERO)
            RenderUtils.glColor(hslRainbow(1))
            mc.textureManager.bindTexture(ResourceLocation("NMSL"))
            drawModalRectWithCustomSizedTexture(0, 0, 0f, 0f, width, height, width.toFloat(), height.toFloat())
            GL11.glDepthMask(true)
            GL11.glDisable(GL11.GL_BLEND)
            GL11.glEnable(GL11.GL_DEPTH_TEST)
        }
    
        override fun drawScreen(mouseX: Int, mouseY: Int, partialTicks: Float) {
            drawBackground(-1)
        }
    
        private val startTime=System.currentTimeMillis()
    
        fun hslRainbow(index: Int,lowest: Float=0.41f,bigest: Float=0.58f,indexOffset: Int=300,timeSplit: Int=5000): Color {
            return Color.getHSBColor((abs(((((System.currentTimeMillis()-startTime).toInt()+index*indexOffset)/timeSplit.toFloat())%2)-1) *(bigest-lowest))+lowest,0.7f,1f)
        }
    }
    

    and dont forgot to put the image
    1.png
    idk how 2 add a blur effect, plz add blur if u can :3

    Kotlin/Java

  • Rise Rainbow
    qwq LiulihaocaiQ qwq Liulihaocai

    @6sence lol

    Kotlin/Java

  • Rise Rainbow
    qwq LiulihaocaiQ qwq Liulihaocai

    @nxhxcklol net.ccbluex.liquidbounce.ui.client.hud.element.elements.Arraylist

    Kotlin/Java

  • Rise Rainbow
    qwq LiulihaocaiQ qwq Liulihaocai

    @_fengxiao Liuli NOT A LOLI

    Kotlin/Java

  • Rise Rainbow
    qwq LiulihaocaiQ qwq Liulihaocai

    rainbow code like rise client

    code

    ColorUtils.kt

        private val startTime=System.currentTimeMillis()
    
        fun hslRainbow(index: Int,lowest: Float=0.41f,bigest: Float=0.58f,indexOffset: Int=300,timeSplit: Int=3000):Color{
            return Color.getHSBColor((abs(((((System.currentTimeMillis()-startTime).toInt()+index*indexOffset)/timeSplit.toFloat())%2)-1)*(bigest-lowest))+lowest,0.7f,1f)
        }
    

    usage(Arraylist.kt)

    "riserainbow" -> ColorUtils.hslRainbow(index+1,indexOffset=100*rainbowSpeed.get()).rgb
    

    image

    b7796d67-4a5a-4fe9-ac7f-7795ab2d0172-image.png

    Kotlin/Java

  • [Kotlin] RedeSky New Auth Bypass
    qwq LiulihaocaiQ qwq Liulihaocai

    pic of redesky new auth
    d1b5a22d-f401-4eb1-ac98-c8dba9c49dd0-image.png
    video(made by my friend lol)
    https://www.youtube.com/watch?v=9PjhUemehHQ
    code

    package net.ccbluex.liquidbounce.features.module.modules.misc
    
    import com.google.gson.JsonParser
    import net.ccbluex.liquidbounce.LiquidBounce
    import net.ccbluex.liquidbounce.event.EventTarget
    import net.ccbluex.liquidbounce.event.PacketEvent
    import net.ccbluex.liquidbounce.event.UpdateEvent
    import net.ccbluex.liquidbounce.features.IntegerValue
    import net.ccbluex.liquidbounce.features.module.Module
    import net.ccbluex.liquidbounce.features.module.ModuleCategory
    import net.ccbluex.liquidbounce.features.module.ModuleInfo
    import net.ccbluex.liquidbounce.ui.client.hud.element.elements.Notification
    import net.ccbluex.liquidbounce.ui.client.hud.element.elements.NotifyType
    import net.ccbluex.liquidbounce.utils.misc.RandomUtils
    import net.ccbluex.liquidbounce.utils.timer.MSTimer
    import net.minecraft.item.*
    import net.minecraft.nbt.NBTTagCompound
    import net.minecraft.network.Packet
    import net.minecraft.network.play.INetHandlerPlayServer
    import net.minecraft.network.play.client.C0EPacketClickWindow
    import net.minecraft.network.play.server.S2DPacketOpenWindow
    import net.minecraft.network.play.server.S2FPacketSetSlot
    import org.apache.commons.io.IOUtils
    import java.util.*
    
    /***
     * @author liulihaocai
     * FILHO DA PUTA CLIENT
     */
    @ModuleInfo(name = "AuthBypass", description = "Bypass auth when join server.", category = ModuleCategory.MISC)
    class AuthBypass : Module(){
        private val delayValue=IntegerValue("Delay",1500,100,5000)
    
        private var skull:String?=null
        private var type="none"
        private val packets=ArrayList<Packet<INetHandlerPlayServer>>()
        private val clickedSlot=ArrayList<Int>()
        private val timer=MSTimer()
        private val jsonParser=JsonParser()
    
        private val brLangMap = HashMap<String, String>()
    
        @EventTarget
        fun onUpdate(event: UpdateEvent){
            if(packets.isNotEmpty()&&timer.hasTimePassed(delayValue.get().toLong())){
                for(packet in packets){
                    mc.netHandler.addToSendQueue(packet)
                }
                packets.clear()
                LiquidBounce.hud.addNotification(Notification(name,"Authenticate bypassed.", NotifyType.INFO))
            }
        }
    
        override fun onEnable() {
            skull=null
            type="none"
            packets.clear()
            clickedSlot.clear()
    
            //load locale async
            Thread {
                val localeJson=JsonParser().parse(IOUtils.toString(AuthBypass::class.java.classLoader.getResourceAsStream("br_items.json"),"utf-8")).asJsonObject
    
                brLangMap.clear()
                for((key,element) in localeJson.entrySet()){
                    brLangMap["item.$key"] = element.asString.toLowerCase()
                }
            }.start()
        }
    
        @EventTarget
        fun onPacket(event: PacketEvent){
            val packet=event.packet
            if(packet is S2FPacketSetSlot){
                val slot=packet.func_149173_d()
                val windowId=packet.func_149175_c()
                val item=packet.func_149174_e()
                if(windowId==0 || item==null || type=="none" || clickedSlot.contains(slot)){
                    return
                }
                val itemName=item.unlocalizedName
    
                when(type.toLowerCase()){
                    "skull" -> {
                        if(itemName.contains("item.skull.char",ignoreCase = true)){
                            val nbt=item.tagCompound ?: return
                            // val uuid=nbt.get<CompoundTag>("SkullOwner").get<CompoundTag>("Properties").get<ListTag>("textures").get<CompoundTag>(0).get<StringTag>("Value").value
                            val data=process(nbt.getCompoundTag("SkullOwner").getCompoundTag("Properties")
                                .getTagList("textures",NBTTagCompound.NBT_TYPES.indexOf("COMPOUND"))
                                .getCompoundTagAt(0).getString("Value"))
                            if(skull==null){
                                skull=data
                            }else if(skull!=data) {
                                skull = null
                                timer.reset()
                                click(windowId,slot,item)
                            }
                        }
                    }
    
                    // special rules lol
                    "enchada" -> { // select all
                        click(windowId,slot,item)
                    }
    
                    "cabeça" -> { // skulls
                        if(item.item is ItemSkull){
                            click(windowId,slot,item)
                        }
                    }
    
                    "ferramenta" -> { // tools
                        if(item.item is ItemTool){
                            click(windowId,slot,item)
                        }
                    }
    
                    "comida" -> { // foods
                        if(item.item is ItemFood){
                            click(windowId,slot,item)
                        }
                    }
    
                    // the new item check in redesky
                    else -> {
                        if(getItemLocalName(item).contains(type)){
                            click(windowId,slot,item)
                        }
                    }
                }
            }
            //silent auth xd
            if(packet is S2DPacketOpenWindow){
                val windowName=packet.windowTitle.unformattedText
                if(packet.slotCount==27 && packet.guiId.contains("container",ignoreCase = true)
                    && windowName.startsWith("Clique",ignoreCase = true)){
                    type = when{
                        windowName.contains("bloco",ignoreCase = true) -> "skull"
                        else -> {
                            val splited=windowName.split(" ")
                            var str=splited[splited.size-1].replace(".","").toLowerCase()
                            if(str.endsWith("s")){
                                str=str.substring(0,str.length-1)
                            }
                            str
                        }
                    }
                    packets.clear()
                    clickedSlot.clear()
                    event.cancelEvent()
                }else{
                    type="none"
                }
            }
        }
    
        private fun click(windowId: Int,slot: Int,item: ItemStack){
            clickedSlot.add(slot)
            packets.add(C0EPacketClickWindow(windowId,slot,0,0,item, RandomUtils.nextInt(114,514).toShort()))
        }
    
        private fun getItemLocalName(item: ItemStack):String {
            return brLangMap[item.unlocalizedName] ?: "null"
        }
    
        private fun process(data: String):String{
            val jsonObject=jsonParser.parse(String(Base64.getDecoder().decode(data))).asJsonObject
            return jsonObject
                .getAsJsonObject("textures")
                .getAsJsonObject("SKIN")
                .get("url").asString
        }
    }
    

    dict for item names,put it in resources folder

    {"apple":"Maçã","appleGold":"Maçã Dourada","armorStand":"Suporte de Armaduras","arrow":"Flecha","banner.black":"Estandarte Preto","banner.blue":"Estandarte Azul","banner.brown":"Estandarte Marrom","banner.cyan":"Estandarte Ciano","banner.gray":"Estandarte Cinza","banner.green":"Estandarte Verde","banner.lightBlue":"Estandarte Azul Claro","banner.lime":"Estandarte Verde Limão","banner.magenta":"Estandarte Magenta","banner.orange":"Estandarte Laranja","banner.pink":"Estandarte Rosa","banner.purple":"Estandarte Lilás","banner.red":"Estandarte Vermelho","banner.silver":"Estandarte Cinza Claro","banner.white":"Estandarte Branco","banner.yellow":"Estandarte Amarelo","bed":"Cama","beefCooked":"Filé","beefRaw":"Bife Cru","blazePowder":"Pó de Blaze","blazeRod":"Vara Incandescente","boat":"Bote","bone":"Osso","book":"Livro","bootsChain":"Botas de Cota de Malha","bootsCloth":"Botas de Couro","bootsDiamond":"Botas de Diamante","bootsGold":"Botas de Ouro","bootsIron":"Botas de Ferro","bow":"Arco","bowl":"Tigela","bread":"Pão","brewingStand":"Suporte de Poções","brick":"Tijolo","bucket":"Balde","bucketLava":"Balde de Lava","bucketWater":"Balde de Água","cake":"Bolo","carrotGolden":"Cenoura Dourada","carrotOnAStick":"Cenoura no Palito","carrots":"Cenoura","cauldron":"Caldeirão","charcoal":"Carvão Vegetal","chestplateChain":"Peitoral de Cota de Malha","chestplateCloth":"Túnica de Couro","chestplateDiamond":"Peitoral de Diamante","chestplateGold":"Peitoral de Ouro","chestplateIron":"Peitoral de Ferro","chickenCooked":"Frango Assado","chickenRaw":"Frango Cru","clay":"Argila","clock":"Relógio","coal":"Carvão","comparator":"Comparador de Redstone","compass":"Bússola","cookie":"Biscoito","diamond":"Diamante","diode":"Repetidor de Redstone","doorAcacia":"Porta de Acácia","doorBirch":"Porta de Eucalipto","doorDarkOak":"Porta de Carvalho Escuro","doorIron":"Porta de Ferro","doorJungle":"Porta de Madeira da Selva","doorOak":"Porta de Carvalho","doorSpruce":"Porta de Pinheiro","dyePowder.black":"Bolsa de Tinta","dyePowder.blue":"Lápis-Lazúli","dyePowder.brown":"Sementes de Cacau","dyePowder.cyan":"Corante Ciano","dyePowder.gray":"Corante Cinza","dyePowder.green":"Verde do Cacto","dyePowder.lightBlue":"Corante Azul Claro","dyePowder.lime":"Corante Verde Limão","dyePowder.magenta":"Corante Magenta","dyePowder.orange":"Corante Laranja","dyePowder.pink":"Corante Rosa","dyePowder.purple":"Corante Lilás","dyePowder.red":"Vermelho da Rosa","dyePowder.silver":"Corante Cinza Claro","dyePowder.white":"Farinha de Osso","dyePowder.yellow":"Amarelo do Dente-de-Leão","egg":"Ovo","emerald":"Esmeralda","emptyMap":"Mapa em Branco","emptyPotion":"Frasco com Água","enchantedBook":"Livro Encantado","enderPearl":"Pérola do Fim","expBottle":"Frasco de Encantamentos","eyeOfEnder":"Olho do Fim","feather":"Pena","fermentedSpiderEye":"Olho de Aranha Fermentado","fireball":"Bola de Fogo","fireworks":"Fogos de Artifício","fireworksCharge":"Estrela de Fogos de Artifício","fish.clownfish.raw":"Peixe-Palhaço","fish.cod.cooked":"Peixe Assado","fish.cod.raw":"Peixe Cru","fish.pufferfish.raw":"Baiacu","fish.salmon.cooked":"Salmão Assado","fish.salmon.raw":"Salmão Cru","fishingRod":"Vara de Pescar","flint":"Pederneira","flintAndSteel":"Isqueiro","flowerPot":"Vaso de Flor","frame":"Moldura","ghastTear":"Lágrima de Ghast","glassBottle":"Frasco de Vidro","goldNugget":"Pepita de Ouro","hatchetDiamond":"Machado de Diamante","hatchetGold":"Machado de Ouro","hatchetIron":"Machado de Ferro","hatchetStone":"Machado de Pedra","hatchetWood":"Machado de Madeira","helmetChain":"Coifa de Cota de Malha","helmetCloth":"Capuz de Couro","helmetDiamond":"Elmo de Diamante","helmetGold":"Elmo de Ouro","helmetIron":"Elmo de Ferro","hoeDiamond":"Enxada de Diamante","hoeGold":"Enxada de Ouro","hoeIron":"Enxada de Ferro","hoeStone":"Enxada de Pedra","hoeWood":"Enxada de Madeira","horsearmordiamond":"Armadura de Diamante para Cavalo","horsearmorgold":"Armadura de Ouro para Cavalo","horsearmormetal":"Armadura de Ferro para Cavalo","ingotGold":"Barra de Ouro","ingotIron":"Barra de Ferro","leash":"Laço","leather":"Couro","leaves":"Folhas","leggingsChain":"Calça de Cota de Malha","leggingsCloth":"Calças de Couro","leggingsDiamond":"Calças de Diamante","leggingsGold":"Calças de Ouro","leggingsIron":"Calças de Ferro","magmaCream":"Creme de Magma","map":"Mapa","melon":"Melancia","milk":"Leite","minecart":"Carrinho","minecartChest":"Carrinho com Baú","minecartCommandBlock":"Carrinho com Bloco de Comando","minecartFurnace":"Carrinho com Fornalha","minecartHopper":"Carrinho com Funil","minecartTnt":"Carrinho com Dinamite","monsterPlacer":"Invocar","mushroomStew":"Ensopado de Cogumelos","muttonCooked":"Carneiro Assado","muttonRaw":"Carneiro Cru","nameTag":"Etiqueta","netherStalkSeeds":"Fungo do Nether","netherStar":"Estrela do Nether","netherbrick":"Tijolo do Nether","netherquartz":"Quartzo do Nether","painting":"Pintura","paper":"Papel","pickaxeDiamond":"Picareta de Diamante","pickaxeGold":"Picareta de Ouro","pickaxeIron":"Picareta de Ferro","pickaxeStone":"Picareta de Pedra","pickaxeWood":"Picareta de Madeira","porkchopCooked":"Carne de Porco Assada","porkchopRaw":"Carne de Porco Crua","potato":"Batata","potatoBaked":"Batata Assada","potatoPoisonous":"Batata Venenosa","potion":"Poção","prismarineCrystals":"Cristais de Prismarinho","prismarineShard":"Fragmento de Prismarinho","pumpkinPie":"Torta de Abóbora","rabbitCooked":"Coelho Assado","rabbitFoot":"Pé de Coelho","rabbitHide":"Pele de Coelho","rabbitRaw":"Coelho Cru","rabbitStew":"Ensopado de Coelho","record":"Disco de Música","redstone":"Redstone","reeds":"Canas-de-Açúcar","rottenFlesh":"Carne Podre","ruby":"Rubi","saddle":"Sela","seeds":"Sementes","seeds_melon":"Sementes de Melancia","seeds_pumpkin":"Sementes de Abóbora","shears":"Tesoura","shovelDiamond":"Pá de Diamante","shovelGold":"Pá de Ouro","shovelIron":"Pá de Ferro","shovelStone":"Pá de Pedra","shovelWood":"Pá de Madeira","sign":"Placa","skull.char":"Cabeça","skull.creeper":"Cabeça de Creeper","skull.player":"Cabeça de %s","skull.skeleton":"Crânio de Esqueleto","skull.wither":"Crânio de Esqueleto Wither","skull.zombie":"Cabeça de Zumbi","slimeball":"Gosma de Slime","snowball":"Bola de Neve","speckledMelon":"Melancia Reluzente","spiderEye":"Olho de Aranha","stick":"Graveto","string":"Linha","sugar":"Açúcar","sulphur":"Pólvora","swordDiamond":"Espada de Diamante","swordGold":"Espada de Ouro","swordIron":"Espada de Ferro","swordStone":"Espada de Pedra","swordWood":"Espada de Madeira","wheat":"Trigo","writingBook":"Pena e Livro","writtenBook":"Livro Escrito","yellowDust":"Pó de Pedra Luminosa"}
    
    Kotlin/Java

  • KillAura Mark like Sigma5
    qwq LiulihaocaiQ qwq Liulihaocai

    @itz_pander if u cant find it,it proofs u dont know how 2 modify it

    Kotlin/Java

  • aac 4.4.2 fly
    qwq LiulihaocaiQ qwq Liulihaocai

    try use redesky config on it

    Suggestions

  • A question about building a LiquidBounce
    qwq LiulihaocaiQ qwq Liulihaocai

    use this forgegradle https://github.com/asbyth/ForgeGradle dont use the offical one
    this version is compatible with mixingradle f6500bf402380f36b913d442648a5534515f70de in FG-2.1 branch
    newest version is on gradle6 and dont works with mixingradle

    Kotlin/Java

  • [Kotlin] HackerDetector
    qwq LiulihaocaiQ qwq Liulihaocai

    DETECT SIGMA HATARS

    code below...

    package net.ccbluex.liquidbounce.features.module.modules.player
    
    import net.ccbluex.liquidbounce.event.EventTarget
    import net.ccbluex.liquidbounce.event.PacketEvent
    import net.ccbluex.liquidbounce.event.WorldEvent
    import net.ccbluex.liquidbounce.features.module.Module
    import net.ccbluex.liquidbounce.features.module.ModuleCategory
    import net.ccbluex.liquidbounce.features.module.ModuleInfo
    import net.ccbluex.liquidbounce.utils.EntityUtils
    import net.ccbluex.liquidbounce.utils.timer.MSTimer
    import net.ccbluex.liquidbounce.value.BoolValue
    import net.ccbluex.liquidbounce.value.IntegerValue
    import net.minecraft.client.Minecraft
    import net.minecraft.entity.Entity
    import net.minecraft.entity.EntityLivingBase
    import net.minecraft.entity.player.EntityPlayer
    import net.minecraft.network.play.server.S0BPacketAnimation
    import net.minecraft.network.play.server.S14PacketEntity
    import net.minecraft.network.play.server.S18PacketEntityTeleport
    import net.minecraft.network.play.server.S19PacketEntityStatus
    import net.minecraft.potion.Potion
    import net.minecraft.util.AxisAlignedBB
    import kotlin.math.abs
    import kotlin.math.atan2
    import kotlin.math.pow
    import kotlin.math.sqrt
    
    
    @ModuleInfo(name = "HackerDetector", description = "Detect SIGMA Hackers.", category = ModuleCategory.PLAYER)
    class HackerDetector : Module() {
        private val GRAVITY_FRICTION = 0.9800000190734863
    
        private val combatCheck=BoolValue("Combat",true)
        private val movementCheck=BoolValue("Movement",true)
        private val debugMode=BoolValue("Debug",false)
        private val report=BoolValue("AutoReport",true)
        private val vlValue=IntegerValue("VL",300,100,500)
    
        private val datas=HashMap<EntityPlayer,HackerData>()
        private val hackers=ArrayList<String>()
    
    //    @EventTarget
    //    fun onUpdate(event: UpdateEvent){
    //        //this takes a bit time so we do it async
    //        if(movementCheck.get()) {
    //            Thread { checkMove() }.start()
    //        }
    //    }
    
        @EventTarget
        fun onPacket(event: PacketEvent){
            if(event.packet is S19PacketEntityStatus){
                val packet=event.packet
                if(combatCheck.get()&&packet.opCode.toInt()==2){
                    Thread { checkCombatHurt(packet.getEntity(mc.theWorld)) }.start()
                }
            }else if(event.packet is S0BPacketAnimation){
                val packet=event.packet
                val entity=mc.theWorld.getEntityByID(packet.entityID)
                if(entity !is EntityPlayer||packet.animationType!=0) return
                val data=datas[entity] ?: return
                data.tempAps++
            }else if(movementCheck.get()){
                if(event.packet is S18PacketEntityTeleport){
                    val packet=event.packet
                    val entity=mc.theWorld.getEntityByID(packet.entityId)
                    if(entity !is EntityPlayer) return
                    Thread{ checkPlayer(entity) }.start()
                }else if(event.packet is S14PacketEntity){
                    val packet=event.packet
                    val entity=packet.getEntity(mc.theWorld)
                    if(entity !is EntityPlayer) return
                    Thread{ checkPlayer(entity) }.start()
                }
            }
        }
    
        override fun onEnable() {
            datas.clear()
            hackers.clear()
        }
    
        @EventTarget
        fun onWorld(event: WorldEvent){
            datas.clear()
        }
    
        fun isHacker(entity: EntityLivingBase):Boolean{
            if(entity !is EntityPlayer) return false
            return hackers.contains(entity.name)
        }
    
        //onupdate
    //    private fun checkMove(){
    //        for(entity in mc.theWorld.loadedEntityList){
    //            if(entity !is EntityPlayer) continue
    //            checkPlayer(entity)
    //        }
    //    }
    
        private fun checkPlayer(player: EntityPlayer){
            if(player.equals(mc.thePlayer)||EntityUtils.isFriend(player)) return
            if(datas[player]==null) datas[player] = HackerData(player)
            val data=datas[player] ?: return
            data.update()
            if(data.aliveTicks<20) return
    
            //settings
            var minAirTicks = 10
            if(player.isPotionActive(Potion.jump)){
                minAirTicks+=player.getActivePotionEffect(Potion.jump).amplifier*3
            }
            val maxMotionY = 0.47 //for strict check u can change this to 0.42
            val maxOffset = 0.07
            var passed=true
            
            if(player.hurtTime>0){
                //velocity
                if (player.hurtResistantTime in 7..11
                    && player.prevPosX == player.posX && player.posZ == player.lastTickPosZ
                    && !mc.theWorld.checkBlockCollision(player.entityBoundingBox.expand(0.05, 0.0, 0.05))) {
                    flag("velocity",50,data,"NO KNOCKBACK")
                }
                if (player.hurtResistantTime in 7..11
                    && player.lastTickPosY == player.posY) {
                    flag("velocity",50,data,"NO KNOCKBACK")
                }
                return
            }
    
            //phase
    //        if(mc.theWorld.checkBlockCollision(player.entityBoundingBox)){
    //            flag("phase",50,data,"COLLIDE")
    //            passed=false
    //        }
    
            //killaura from jigsaw
            if (data.aps >= 10) {
                flag("killaura",30,data,"HIGH APS(aps=${data.aps})")
                passed=false
            }
            if (data.aps > 2 && data.aps == data.preAps && data.aps != 0) {
                flag("killaura",30,data,"STRANGE APS(aps=${data.aps})")
                passed=false
            }
            if (abs(player.rotationYaw - player.prevRotationYaw) > 50 && player.swingProgress != 0F
                && data.aps >= 3) {
                flag("killaura",30,data,"YAW RATE(aps=${data.aps},yawRot=${abs(player.rotationYaw - player.prevRotationYaw)})")
                passed=false
            }
    
            //flight
            if(player.ridingEntity==null&&data.airTicks>(minAirTicks/2)){
                if (abs(data.motionY - data.lastMotionY) < (if(data.airTicks >= 115){1E-3}else{5E-3})){
                    flag("fly",20,data,"GLIDE(diff=${abs(data.motionY - data.lastMotionY)})")
                    passed=false
                }
                if(data.motionY > maxMotionY){
                    flag("fly",20,data,"YAXIS(motY=${data.motionY})")
                    passed=false
                }
                if(data.airTicks > minAirTicks&&data.motionY>0){
                    flag("fly",30,data,"YAXIS(motY=${data.motionY})")
                    passed=false
                }
                //gravity check from ACR
    //            val gravitatedY = (data.lastMotionY - 0.08) * GRAVITY_FRICTION
    //            val offset = abs(gravitatedY - data.motionY)
    //            if (offset > maxOffset) {
    //                flag("fly",15,data,"GRAVITY(offset=$offset)")
    //                passed=false
    //            }
            }
    
            //speed
            val distanceXZ=abs(data.motionXZ)
            if(data.airTicks==0){ //onGround
                var limit = 0.37
                if(data.groundTicks < 5) limit += 0.1
                if(player.isBlocking) limit *= 0.45
                if(player.isSneaking) limit *= 0.68
                if(player.isPotionActive(Potion.moveSpeed)){ //server will send real player potionData?i hope that
                    limit += player.getActivePotionEffect(Potion.moveSpeed).amplifier
                    limit *= 1.5
                }
                if (distanceXZ > limit) {
                    flag("speed",20,data,"GROUND SPEED(speed=$distanceXZ,limit=$limit)")
                }
            }else{
                val multiplier = 0.985
                var predict = 0.36 * multiplier.pow(data.airTicks + 1)
                if (data.airTicks >= 115)
                    predict = 0.08.coerceAtLeast(predict);
                var limit=0.05
                if(player.isPotionActive(Potion.moveSpeed)){
                    predict += player.getActivePotionEffect(Potion.moveSpeed).amplifier * 0.05
                    limit *= 1.2
                }
                if(player.isPotionActive(Potion.jump)) {
                    predict += player.getActivePotionEffect(Potion.jump).amplifier * 0.05
                }
                if(player.isBlocking)
                    predict *= 0.7
    
                if (distanceXZ - predict > limit) {
                    flag("speed",20,data,"AIR SPEED(speed=$distanceXZ,limit=$limit,predict=$predict)")
                }
            }
    //        if (abs(data.motionX) > 0.42
    //            || abs(data.motionZ) > 0.42){
    //            flag("speed",30,data,"HIGH SPEED")
    //            passed=false
    //        }
    //        if (player.isBlocking && (abs(data.motionX) > 0.2 || abs(data.motionZ) > 0.2)) {
    //            flag("speed",30,data,"HIGH SPEED(BLOCKING)") //blocking is just noslow lol
    //            passed=false
    //        }
    
            //reduce vl
            if(passed){
                data.vl-=1
            }
        }
    
        private fun flag(type: String,vl: Int,data: HackerData,msg: String){
            if(!data.useHacks.contains(type)) data.useHacks.add(type)
            //display debug message
            if(debugMode.get()){
                chat("§f${data.player.name} §euse §2$type §7$msg §c${data.vl}+${vl}")
            }
            data.vl+=vl
    
            if(data.vl>vlValue.get()){
                var use=""
                for(typ in data.useHacks){
                    use+="§a$typ§2,"
                }
                use=use.substring(0,use.length-3)
                chat("§f${data.player.name} §eusing hack $use")
                data.vl=-vlValue.get()
    
                //autoreport only redesky
                val name=data.player.name
                if(report.get()&&!hackers.contains(name)){
                    mc.thePlayer.sendChatMessage("/reportar $name")
                    hackers.add(name)
                }
            }
        }
    
        private fun checkCombatHurt(entity: Entity){
            if(entity !is EntityLivingBase) return
            var attacker:EntityPlayer?=null
            var attackerCount=0
    
            for(worldEntity in mc.theWorld.loadedEntityList){
                if(worldEntity !is EntityPlayer||worldEntity.getDistanceToEntity(entity)>7||worldEntity.equals(entity)) continue
                attackerCount++
                attacker=worldEntity
            }
    
            //multi attacker may cause false result
            if(attackerCount!=1) return
            if(attacker!! == entity||EntityUtils.isFriend(attacker)) return //i and my friend is hacker lol
            val data=datas[attacker] ?: return
    
            //reach check
            val reach=attacker.getDistanceToEntity(entity)
            if(reach>3.7){
                flag("killaura",70,data,"(reach=$reach)")
            }
    
            //aim check
            val yawDiff=calculateYawDifference(attacker,entity)
            if(yawDiff>50){
                flag("killaura",100,data,"(yawDiff=$yawDiff)")
            }
        }
    
        private fun calculateYawDifference(from: EntityLivingBase, to: EntityLivingBase): Double {
            val x = to.posX - from.posX
            val z = to.posZ - from.posZ
            return if (x == 0.0 && z == 0.0) {
                from.rotationYaw.toDouble()
            } else {
                val theta = atan2(-x, z)
                val yaw=Math.toDegrees((theta + 6.283185307179586) % 6.283185307179586)
                abs(180 - abs(abs(yaw - from.rotationYaw) - 180));
            }
        }
    }
    
    class HackerData(val player:EntityPlayer){
        var aliveTicks=0
        // Ticks in air
        var airTicks = 0
    
        // Ticks on ground
        var groundTicks = 0
    
        // motion of the movement
        var motionX = 0.0
        var motionY = 0.0
        var motionZ = 0.0
        var motionXZ = 0.0
    
        // Previous motion of the movement
        var lastMotionX = 0.0
        var lastMotionY = 0.0
        var lastMotionZ = 0.0
        var lastMotionXZ = 0.0
    
        // combat check
        var aps = 0
        var preAps = 0
        var tempAps = 0
        private val apsTimer=MSTimer()
    
        var vl=0
        var useHacks=ArrayList<String>()
    
        fun update(){
            aliveTicks++
            if (apsTimer.hasTimePassed(1000)) {
                preAps = aps;
                aps = tempAps;
                tempAps = 0;
            }
    
            if(calculateGround()){
                groundTicks++
                airTicks=0
            }else{
                airTicks++
                groundTicks=0
            }
    
            this.lastMotionX = this.motionX
            this.lastMotionY = this.motionY
            this.lastMotionZ = this.motionZ
            this.lastMotionXZ = this.motionXZ
            this.motionX = player.posX-player.prevPosX
            this.motionY = player.posY-player.prevPosY
            this.motionZ = player.posZ-player.prevPosZ
            this.motionXZ = sqrt(motionX*motionX + motionZ*motionZ)
        }
    
        private fun calculateGround(): Boolean {
            val playerBoundingBox = player.entityBoundingBox
            val blockHeight = 1
            val customBox = AxisAlignedBB(playerBoundingBox.maxX, player.posY-blockHeight, playerBoundingBox.maxZ, playerBoundingBox.minX, player.posY, playerBoundingBox.minZ)
            return Minecraft.getMinecraft().theWorld.checkBlockCollision(customBox)
        }
    }
    
    
    Kotlin/Java

  • Guys, how???????????
    qwq LiulihaocaiQ qwq Liulihaocai

    @antivacer you can just remove this depend
    itz useless if you dont use thealtening

    General

  • [Kotlin] KeyStrokes
    qwq LiulihaocaiQ qwq Liulihaocai

    @mateusz modify liquidbounce code

    Kotlin/Java

  • [Kotlin] KeyStrokes
    qwq LiulihaocaiQ qwq Liulihaocai

    @idkmyname look new stuff in my post xd

    Kotlin/Java

  • [Kotlin] KeyStrokes
    qwq LiulihaocaiQ qwq Liulihaocai

    @idkmyname sorry i forget to send my funcs in my custom liquidbounce

    Kotlin/Java

  • [Kotlin] KeyStrokes
    qwq LiulihaocaiQ qwq Liulihaocai

    a simple keystrokes
    animation like skidma
    pic
    keys.png

    package net.ccbluex.liquidbounce.ui.client.hud.element.elements
    
    import net.ccbluex.liquidbounce.ui.client.hud.element.Border
    import net.ccbluex.liquidbounce.ui.client.hud.element.Element
    import net.ccbluex.liquidbounce.ui.client.hud.element.ElementInfo
    import net.ccbluex.liquidbounce.ui.client.hud.element.Side
    import net.ccbluex.liquidbounce.ui.font.Fonts
    import net.ccbluex.liquidbounce.utils.render.ColorUtils
    import net.ccbluex.liquidbounce.utils.render.RenderUtils
    import net.ccbluex.liquidbounce.value.BoolValue
    import net.ccbluex.liquidbounce.value.FloatValue
    import net.ccbluex.liquidbounce.value.FontValue
    import net.ccbluex.liquidbounce.value.IntegerValue
    import net.minecraft.client.gui.FontRenderer
    import net.minecraft.client.settings.KeyBinding
    import org.lwjgl.input.Keyboard
    import java.awt.Color
    
    @ElementInfo(name = "KeyStrokes")
    class KeyStrokes : Element(5.0,25.0,1.25F, Side.default()) {
        private val keys=ArrayList<KeyStroke>()
    
        private val backGroundRedValue = IntegerValue("BackGroundRed", 0, 0, 255)
        private val backGroundGreenValue = IntegerValue("BackGroundGreen", 0, 0, 255)
        private val backGroundBlueValue = IntegerValue("BackGroundBlue", 0, 0, 255)
        private val backGroundAlphaValue = IntegerValue("BackGroundAlpha", 170, 0, 255)
        private val textRedValue = IntegerValue("TextRed", 255, 0, 255)
        private val textGreenValue = IntegerValue("TextGreen", 255, 0, 255)
        private val textBlueValue = IntegerValue("TextBlue", 255, 0, 255)
        private val textAlphaValue = IntegerValue("TextAlpha", 255, 0, 255)
        private val highLightPercent = FloatValue("HighLightPercent",0.5F,0F,1F)
        private val animSpeedValue = IntegerValue("AnimationSpeed", 300, 0, 700)
        private val outline = BoolValue("Outline", false)
        private val outlineBoldValue = IntegerValue("OutlineBold", 1,0,5)
        private val outlineRainbow = BoolValue("OutLineRainbow", false)
        private val fontValue = FontValue("Font", Fonts.font35)
    
        init {
            keys.add(KeyStroke(mc.gameSettings.keyBindForward,16,0,15,15).initKeyName())
            keys.add(KeyStroke(mc.gameSettings.keyBindLeft,0,16,15,15).initKeyName())
            keys.add(KeyStroke(mc.gameSettings.keyBindBack,16,16,15,15).initKeyName())
            keys.add(KeyStroke(mc.gameSettings.keyBindRight,32,16,15,15).initKeyName())
            keys.add(KeyStroke(mc.gameSettings.keyBindAttack,0,32,23,15).initKeyName("L"))
            keys.add(KeyStroke(mc.gameSettings.keyBindUseItem,24,32,23,15).initKeyName("R"))
        }
    
        override fun drawElement(partialTicks: Float): Border {
            val backGroundColor=Color(backGroundRedValue.get(),backGroundGreenValue.get(),backGroundBlueValue.get(),backGroundAlphaValue.get())
            val textColor=if(outlineRainbow.get()){
                ColorUtils.rainbow(textAlphaValue.get())
            }else{
                Color(textRedValue.get(),textGreenValue.get(),textBlueValue.get(),textAlphaValue.get())
            }
    
            for(keyStroke in keys){
                keyStroke.render(animSpeedValue.get(), backGroundColor, textColor, highLightPercent.get(), outline.get(), outlineBoldValue.get(), fontValue.get())
            }
    
            return Border(0F,0F,47F,47F)
        }
    }
    
    class KeyStroke(val key:KeyBinding,val posX:Int,val posY:Int, val width:Int, val height:Int){
        var keyName="KEY"
    
        private var lastClick=false
        private val animations=ArrayList<Long>()
    
        fun render(speed: Int, bgColor: Color, textColor: Color, highLightPct: Float, outline: Boolean, outlineBold: Int, font: FontRenderer){
            val highLightColor=Color(255-((255-bgColor.red)*highLightPct).toInt(),255-((255-bgColor.blue)*highLightPct).toInt(),255-((255-bgColor.green)*highLightPct).toInt())
            val clickAlpha=255-(255-bgColor.alpha)*highLightPct
            val centerX=posX+(width/2)
            val centerY=posY+(height/2)
            val nowTime=System.currentTimeMillis()
    
            val rectColor=if(lastClick&&animations.isEmpty()){ ColorUtils.reAlpha(highLightColor,clickAlpha.toInt()) }else{ bgColor }
            RenderUtils.drawRect(posX.toFloat(),posY.toFloat(),(posX+width).toFloat(),(posY+height).toFloat()
                ,rectColor)
    
            val removeAble=ArrayList<Long>()
            for(time in animations){
                val pct=(nowTime-time)/(speed.toFloat())
                if(pct>1){
                    removeAble.add(time)
                    continue
                }
                RenderUtils.drawLimitedCircle(posX.toFloat(),posY.toFloat(),(posX+width).toFloat(),(posY+height).toFloat(),
                    centerX,centerY,(width*0.7F)*pct
                    ,Color(255-((255-highLightColor.red)*pct).toInt(),255-((255-highLightColor.green)*pct).toInt(),255-((255-highLightColor.blue)*pct).toInt(),255-((255-clickAlpha)*pct).toInt()))
            }
            for(time in removeAble){
                animations.remove(time)
            }
            if(!lastClick && key.isKeyDown){
                animations.add(nowTime)
            }
            lastClick=key.isKeyDown
    
            font.drawString(keyName,centerX-(font.getStringWidth(keyName)/2),centerY-(font.FONT_HEIGHT/2)
                ,textColor.rgb)
            if(outline){
                RenderUtils.drawRect(posX.toFloat(),posY.toFloat(),(posX+outlineBold).toFloat(),(posY+height).toFloat(),textColor.rgb)
                RenderUtils.drawRect((posX+width-outlineBold).toFloat(),posY.toFloat(),(posX+width).toFloat(),(posY+height).toFloat(),textColor.rgb)
                RenderUtils.drawRect((posX+outlineBold).toFloat(),posY.toFloat(),(posX+width-outlineBold).toFloat(),(posY+outlineBold).toFloat(),textColor.rgb)
                RenderUtils.drawRect((posX+outlineBold).toFloat(),(posY+height-outlineBold).toFloat(),(posX+width-outlineBold).toFloat(),(posY+height).toFloat(),textColor.rgb)
            }
        }
    
        fun initKeyName():KeyStroke{
            keyName=Keyboard.getKeyName(key.keyCode)
            return this
        }
    
        fun initKeyName(name:String):KeyStroke{
            keyName=name
            return this
        }
    }
    

    depends
    ColorUtils

        @JvmStatic
        fun reAlpha(color: Color,alpha: Int): Color{
            return Color(color.red,color.green,color.blue,alpha)
        }
    

    RenderUtils

        public static void drawLimitedCircle(final float lx, final float ly, final float x2, final float y2,final int xx, final int yy, final float radius, final Color color) {
            int sections = 50;
            double dAngle = 2 * Math.PI / sections;
            float x, y;
    
            glPushAttrib(GL_ENABLE_BIT);
    
            glEnable(GL_BLEND);
            glDisable(GL_TEXTURE_2D);
            glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
            glEnable(GL_LINE_SMOOTH);
            glBegin(GL_TRIANGLE_FAN);
    
            for (int i = 0; i < sections; i++) {
                x = (float) (radius * Math.sin((i * dAngle)));
                y = (float) (radius * Math.cos((i * dAngle)));
    
                glColor4f(color.getRed() / 255F, color.getGreen() / 255F, color.getBlue() / 255F, color.getAlpha() / 255F);
                glVertex2f(Math.min(x2,Math.max(xx + x,lx)), Math.min(y2,Math.max(yy + y,ly)));
            }
    
            GlStateManager.color(0, 0, 0);
    
            glEnd();
    
            glPopAttrib();
        }
    
    Kotlin/Java

  • idk broken script
    qwq LiulihaocaiQ qwq Liulihaocai

    @gabriel said in idk broken script:

    Você é gay %name%.",
    

    u need a "

    Off-Topic

  • Will this script work on redesky?
    qwq LiulihaocaiQ qwq Liulihaocai

    @gabriel just use IDE in console like nano/vim
    extremely less mem cost xd

    ScriptAPI

  • BlockAnimation(also can make sword float)
    qwq LiulihaocaiQ qwq Liulihaocai

    @wangtian297 判断下手里的东西是不是空的就行

    Kotlin/Java

  • 主播们问个写端的问题
    qwq LiulihaocaiQ qwq Liulihaocai

    建议主播先学java基础并且给出报错

    Chinese
  • Login

  • Login or register to search.
  • First post
    Last post
0
  • Categories
  • Recent
  • Tags
  • Popular
  • Users
  • Groups