@@ -50,6 +50,7 @@
|
||||
- BlockIn
|
||||
- BoatGlitch & BoatPhase (Taken from an [unmerged PR](https://github.com/MeteorDevelopment/meteor-client/pull/814))
|
||||
- Boost (Ported from [Cornos](https://github.com/cornos/Cornos/blob/master/src/main/java/me/zeroX150/cornos/features/module/impl/movement/Boost.java))
|
||||
- BungeeCordSpoof (Ported from [LiquidBounce](https://github.com/CCBlueX/LiquidBounce))
|
||||
- ChatBot
|
||||
- ChestAura
|
||||
- ChorusExploit (Taken from an [unmerged PR](https://github.com/MeteorDevelopment/meteor-client/pull/1727))
|
||||
|
||||
@@ -49,6 +49,7 @@ public class MeteorRejectsAddon extends MeteorAddon {
|
||||
modules.add(new BlockIn());
|
||||
modules.add(new BoatPhase());
|
||||
modules.add(new Boost());
|
||||
modules.add(new BungeeCordSpoof());
|
||||
modules.add(new ChatBot());
|
||||
modules.add(new ChestAura());
|
||||
modules.add(new ChorusExploit());
|
||||
|
||||
@@ -50,7 +50,7 @@ public class ServerFinderScreen extends WindowScreen implements IServerFinderDon
|
||||
this.multiplayerScreen = multiplayerScreen;
|
||||
this.parent = parent;
|
||||
ipBox = theme.textBox("127.0.0.1");
|
||||
versionBox = theme.textBox("1.19; 1.18; 1.17; 1.16; 1.15; 1.14; 1.13; 1.12; 1.11; 1.10; 1.9; 1.8");
|
||||
versionBox = theme.textBox("1.20; 1.19; 1.18; 1.17; 1.16; 1.15; 1.14; 1.13; 1.12; 1.11; 1.10; 1.9; 1.8");
|
||||
maxThreadsBox = theme.intEdit(128, 1, 1024, 1, 1024);
|
||||
stateLabel = theme.label("");
|
||||
checkedLabel = theme.label("");
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
package anticope.rejects.mixin;
|
||||
|
||||
import net.minecraft.network.packet.c2s.handshake.HandshakeC2SPacket;
|
||||
import org.spongepowered.asm.mixin.Mixin;
|
||||
import org.spongepowered.asm.mixin.Mutable;
|
||||
import org.spongepowered.asm.mixin.gen.Accessor;
|
||||
|
||||
@Mixin(HandshakeC2SPacket.class)
|
||||
public interface HandshakeC2SPacketAccessor {
|
||||
@Mutable
|
||||
@Accessor
|
||||
void setAddress(String address);
|
||||
}
|
||||
69
src/main/java/anticope/rejects/modules/BungeeCordSpoof.java
Normal file
69
src/main/java/anticope/rejects/modules/BungeeCordSpoof.java
Normal file
@@ -0,0 +1,69 @@
|
||||
package anticope.rejects.modules;
|
||||
|
||||
import anticope.rejects.MeteorRejectsAddon;
|
||||
import anticope.rejects.mixin.HandshakeC2SPacketAccessor;
|
||||
import com.google.gson.Gson;
|
||||
import com.mojang.authlib.properties.PropertyMap;
|
||||
import meteordevelopment.meteorclient.events.packets.PacketEvent;
|
||||
import meteordevelopment.meteorclient.settings.*;
|
||||
import meteordevelopment.meteorclient.systems.modules.Module;
|
||||
import meteordevelopment.meteorclient.utils.Utils;
|
||||
import meteordevelopment.orbit.EventHandler;
|
||||
import net.minecraft.network.NetworkState;
|
||||
import net.minecraft.network.packet.c2s.handshake.HandshakeC2SPacket;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class BungeeCordSpoof extends Module {
|
||||
private final SettingGroup sgGeneral = settings.getDefaultGroup();
|
||||
|
||||
private static final Gson GSON = new Gson();
|
||||
|
||||
private final Setting<Boolean> whitelist = sgGeneral.add(new BoolSetting.Builder()
|
||||
.name("whitelist")
|
||||
.description("Use whitelist.")
|
||||
.defaultValue(false)
|
||||
.build()
|
||||
);
|
||||
|
||||
private final Setting<List<String>> whitelistedServers = sgGeneral.add(new StringListSetting.Builder()
|
||||
.name("whitelisted-servers")
|
||||
.description("Will only work if you joined the servers above.")
|
||||
.visible(whitelist::get)
|
||||
.build()
|
||||
);
|
||||
|
||||
private final Setting<Boolean> spoofProfile = sgGeneral.add(new BoolSetting.Builder()
|
||||
.name("spoof-profile")
|
||||
.description("Spoof account profile.")
|
||||
.defaultValue(false)
|
||||
.build()
|
||||
);
|
||||
|
||||
private final Setting<String> forwardedIP = sgGeneral.add(new StringSetting.Builder()
|
||||
.name("forwarded-IP")
|
||||
.description("The forwarded IP address.")
|
||||
.defaultValue("127.0.0.1")
|
||||
.build()
|
||||
);
|
||||
|
||||
public BungeeCordSpoof() {
|
||||
super(MeteorRejectsAddon.CATEGORY, "bungeeCord-spoof", "Let you join BungeeCord servers, useful when bypassing proxies.");
|
||||
runInMainMenu = true;
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
private void onPacketSend(PacketEvent.Send event) {
|
||||
if (event.packet instanceof HandshakeC2SPacket packet && packet.getIntendedState() == NetworkState.LOGIN) {
|
||||
if (whitelist.get() && !whitelistedServers.get().contains(Utils.getWorldName())) return;
|
||||
String address = packet.getAddress() + "\0" + forwardedIP + "\0" + mc.getSession().getUuid().replace("-", "")
|
||||
+ (spoofProfile.get() ? getProperty() : "");
|
||||
((HandshakeC2SPacketAccessor) packet).setAddress(address);
|
||||
}
|
||||
}
|
||||
|
||||
private String getProperty() {
|
||||
PropertyMap propertyMap = mc.getSession().getProfile().getProperties();
|
||||
return "\0" + GSON.toJson(propertyMap.values().toArray());
|
||||
}
|
||||
}
|
||||
@@ -9,6 +9,7 @@
|
||||
"Deadmau5FeatureRendererMixin",
|
||||
"EntityAccessor",
|
||||
"GameRendererMixin",
|
||||
"HandshakeC2SPacketAccessor",
|
||||
"LivingEntityMixin",
|
||||
"LivingEntityRendererMixin",
|
||||
"MultiplayerScreenAccessor",
|
||||
|
||||
Reference in New Issue
Block a user