AdvancedVClip

This commit is contained in:
radmanplays 2024-09-25 17:40:19 +03:30 committed by GitHub
parent 53a0a063ce
commit 96c52f4f10
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194

View File

@ -1,17 +1,79 @@
ModAPI.meta.title("Simple VClip Exploit");
ModAPI.meta.description("Use .vclip <offset> to vertically phase through blocks.");
ModAPI.meta.title("Advanced VClip Exploit");
ModAPI.meta.description("Use .vclip <offset> to vertically phase through blocks with custom packet handling.");
ModAPI.meta.credits("By ZXMushroom63");
// Custom syntax error function
function syntaxError() {
ModAPI.displayToChat("[AdvancedVClip] Syntax error: Usage is .vclip <offset>");
}
ModAPI.require("player");
ModAPI.addEventListener("sendchatmessage", (ev) => {
var msg = ev.message.toLowerCase();
if (msg.startsWith(".vclip")) {
ev.preventDefault();
var yOffset = 1;
if (msg.split(" ")[1]) {
yOffset = parseFloat(msg.split(" ")[1]) || 0;
var args = msg.split(" ");
if (args.length != 2) {
syntaxError();
return;
}
ModAPI.player.setPosition(ModAPI.player.posX, ModAPI.player.posY
+ yOffset, ModAPI.player.posZ);
ModAPI.displayToChat("[SimpleVClip] VClipped " + yOffset + " blocks.");
var offset = parseFloat(args[1]);
if (isNaN(offset)) {
syntaxError();
return;
}
var packetsRequired = Math.ceil(Math.abs(offset / 10));
if (packetsRequired > 20) {
packetsRequired = 1; // Limit to avoid server kicking for too many packets
}
var player = ModAPI.player;
var ridingEntity = player.ridingEntity;
if (ridingEntity != null) {
// Player is riding an entity
for (var packetNumber = 0; packetNumber < (packetsRequired - 1); packetNumber++) {
// Simulate entity movement
ridingEntity.posY += offset / packetsRequired; // Move a fraction of the total offset
player.sendQueue.addToSendQueue({
"action": "RIDING_JUMP", // Simulate a riding jump action
"entityId": ridingEntity.getEntityId(),
});
}
// Final move
ridingEntity.posY += offset / packetsRequired;
player.sendQueue.addToSendQueue({
"action": "RIDING_JUMP",
"entityId": ridingEntity.getEntityId(),
});
} else {
// Player is not riding any entity
for (var packetNumber = 0; packetNumber < (packetsRequired - 1); packetNumber++) {
player.getNetHandler().addToSendQueue({
"x": player.posX,
"y": player.posY,
"z": player.posZ,
"onGround": true
});
}
// Final move
player.getNetHandler().addToSendQueue({
"x": player.posX,
"y": player.posY + offset,
"z": player.posZ,
"onGround": true
});
// Set the players final position
player.setPosition(player.posX, player.posY + offset, player.posZ);
}
ModAPI.displayToChat("[AdvancedVClip] VClipped " + offset + " blocks.");
}
});
});