@CzechHek thanks! that worked
but why is the scriptapi incorrect? couldn't it be fixed?
@CzechHek thanks! that worked
but why is the scriptapi incorrect? couldn't it be fixed?
LiquidBounce's ScriptApi JavaDoc (https://scriptapi.liquidbounce.net/net/minecraft/network/play/server/S38PacketPlayerListItem.html) tells me that func_179768_b() is defined on S38PacketPlayerListItem and returns some S38PacketPlayerListItem.Action
but when i call it, it throws an error.. any ideas?
var tablistItem = Java.type('net.minecraft.network.play.server.S38PacketPlayerListItem')
script.registerModule({
name: 'Example',
category: 'Misc',
description: ''
}, function (module) {
module.on('packet', function(e) {
var packet = e.getPacket()
if (packet instanceof tablistItem) {
var action = packet.func_179768_b()
// throws TypeError: packet.func_179768_b is not a function
}
})
})
maybe define netHandler
var netHandler = mc.thePlayer.sendQueue
edit: you may also define player
var player = mc.thePlayer
i also highly encourage you to get familiar with the basics of javascript and the LiquidBounce scripting environment
@ibook no problem.
you should select an answer as the solution, to mark the thread as solved. you may do that to keep the forums organized.
@aftery
i think this person has read docs, i once too made the mistakes i see in this thread.
i just answering the peoples question will benefit everyone, as these people also "level-up" their knowledge they may publish scripts, help other people and so on.
as to the scriptAPI in general, it may not be the best implementation but it certainly works and is useful. i think many people are willing to sacrifice a few frames to modify their game.
you could argue that forge mods achieve the same but they are for beginners more difficult to create.
i think the scriptAPI is an awesome tool that makes LiquidBounce the 1.8 client for eternity. it may not get updated anymore but the ability to, to some extend, just do that yourself is unique among the vast landscape of clients.
@aftery Almost any support question asked here can be solved with enough research and knowledge. You don't have to tell him what he's doing wrong but if you are here, know the answer - which i assume is true - then why not help him out?
I can only speak for myself and in my experience it was not as obvious to just "rtfm" because there is no good "How to LiquidBounce script".
The ressources exist and do solve your question but learning where they are, how to use them and what they mean was difficult and took time for me and probably other people too.
LiquidBounce.moduleManager.getModule(Teams.class).isInYourTeam(player)
seems to be causing issues and should probably be written as
moduleManager.getModule('Teams').isInYourTeam(player)
also you should in
chat.print(" C1"+c1+" S1"+s1)
write "chat" with a capital C because "Chat" is not defined, to know what is defined see:
https://liquidbounce.net/docs/ScriptAPI/Global Classes, https://liquidbounce.net/docs/ScriptAPI/Global Instances and maybe https://github.com/CCBlueX/LiquidBounce/blob/1cb655a179cb6fb4d3423e28b37348fe7c814963/shared/main/java/net/ccbluex/liquidbounce/script/Script.kt#L45
@commandblock2
Thanks for your lengthy response and the effort put into it.
I will try your recommendations.
I've been using LiquidBounce b72 for some time now and was really ok with that, but it does not get updated, and i wondered: What does?
I checked the GitHub repo and it seems pretty inactive, also the last stable version (b72) is now more than a year old and it starts to show.
The recent Mojang account migration enforces to migrate to a microsoft account until a certain date, but how to get your accounts into the alt manager?
For this reason i searched for an alternative and found FDPClient, but is it legit?
Or should i get the 1.16 Fabric version of LiquidBounce which seemingly can connect to 1.8 servers? Is it better or does it lack major features? Is it just an update of 1.8.9 to newer version or an entirely different product?
Please tell me your experience with altenatives and what you are using for version 1.8.9
/// api_version=2
var srvcustom = Java.type('net.minecraft.network.play.server.S3FPacketCustomPayload')
var script = registerScript({
name: 'Example',
version: '0',
authors: ['Example']
})
script.registerModule({
name: 'example',
category: 'Misc',
description: 'example'
}, function(module) {
module.on('packet', function (data) {
var packet = data.getPacket()
if (packet instanceof srvcustom) Chat.print(1)
})
})
this script worked well in b72 but know that i upgraded to b73 it doesn't anymore
@FaaatPotato
yeah, your example works on b73, previously played with b72. sorry about that
seems to be fixed in b73, sorry to bother you all
@faaatpotato gives me the same error as if i would type it in the chat manually.
".scriptapimodule setting 123"
gives
"[LiquidBounce] Syntax: .scriptapimodule <setting>"
but doesn't change anything
@faaatpotato it wasn't meant as a challange or something but as a way to get you to understand my problem, it doesn't work if you would replace spammer with a module created with the ScriptAPI and that's my problem, nor can you change these values via ingame chat.
I want to know how to fix this.
@faaatpotato Spammer was just an example module to demonstrate where it would work, now make a module with a script and try to do the same
@faaatpotato i want to set the setting of a script-created module via a chat command, like this: ".examplemodule text asd"
this works fine with native modules but doesn't with script-created ones and i wonder how to fix this or another way to change a string setting ingame
moduleManager.getModule("Spammer").getValue('message').set('123')
Chat.print(moduleManager.getModule("Spammer").getValue('message').get()) // prints "123"
yeah, this works, but if swapping this out with a script-created module it doesn't work anymore
@mems can you give more details? i don't really get what that page should tell me
do i need to register the module to the commandManager?
and if how to do that?
commandManager.registerCommand(moduleManager.getModule('Example'))
that is what i tried but it doesn't seem to work
@the_shadow_emp can you more clearly describe what i did wrong?
or can you do it right with the help of your enlightning ressource
If the title is a bit confusing, look at this example:
In the LiquidBounce native Spammer module the message setting can be changed like this via chat:
".spammer message asdasd"
But if i create a module via script and want to do the same thing with a string setting:
".scriptmodule message asdasd"
I get a syntax usage in the chat instead of changing the value.
Can this issue be fixed by me or is it caused by LiquidBounce?
example script:
/// api_version=2
var script = registerScript({
name: 'example',
version: '1',
authors: ['example']
})
script.registerModule({
name: 'Example',
category: 'Misc',
description: 'example',
settings: {
text: Setting.text({
name: "text",
default: 'sssss'
}),
int: Setting.integer({
name: "int",
default: 1000,
min: 50,
max: 5000
})
}
}, function() {})