Skip to content
This repository has been archived by the owner on Sep 24, 2024. It is now read-only.

Commit

Permalink
Beta Vulcan 2.8.6 Speed
Browse files Browse the repository at this point in the history
  • Loading branch information
Nekiplay committed Mar 30, 2024
1 parent a6c4b9a commit 9d96657
Show file tree
Hide file tree
Showing 12 changed files with 154 additions and 19 deletions.
9 changes: 4 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@
| **Jesus+** | **Jesus for Anti-Cheats** | **Matrix, Vulcan** |
| **No Slow+** | **No Slow for Anti-Cheats** | **Matrix, Vulcan, Grim, NCP** |
| **Fast Ladder** | **Fast Ladder for Anti-Cheats** | **Spartan** |
| **Gui Move Plus** | **Gui Move for Anti-Cheats** | **Matrix, NCP** |
| **Gui Move+** | **Gui Move for Anti-Cheats** | **Matrix, NCP** |
| **Timer+** | **Timer for Anti-Cheats** | **NCP, Intave, Vulcan** |
| **Safe mine** | **Prevents player from lava** | **Matrix** |
| **X-Ray bruteforce** | **Xray protection bypass for servers 1.12.2** | **Ore Obfuscator** |
Expand Down Expand Up @@ -76,10 +76,9 @@
# Installation Guide
1. Install [minecraft](https://www.minecraft.net)
2. Install [fabric](https://fabricmc.net) and [fabric api](https://www.curseforge.com/minecraft/mc-mods/fabric-api) for your version of minecraft
3. For 1.20.4 Download [baritone api fabric](https://github.com/cabaletta/baritone/actions/workflows/gradle_build.yml?query=branch%3A1.20.4)
4. Download [meteor client](https://meteorclient.com) for your version of minecraft
5. Download [meteor plus](https://github.com/Nekiplay/MeteorPlus/releases) for your version of minecraft
6. Place the meteor client and meteor plus and baritone in your mods folder
3. Download [meteor client](https://meteorclient.com) for your version of minecraft
4. Download [meteor plus](https://github.com/Nekiplay/MeteorPlus/releases) for your version of minecraft
5. Place the meteor client and meteor plus and baritone in your mods folder

A: Make Commit we welcome anyone who makes a useful contribution to our free open source product

Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
package nekiplay.meteorplus.features.modules.combat.criticals;

public enum CriticalsModes {
Smart,
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
package nekiplay.meteorplus.features.modules.combat.criticals;

import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;
import net.minecraft.entity.Entity;
import net.minecraft.entity.player.PlayerEntity;

/*
Not done
*/

public class CriticalsPlus extends Module {
public CriticalsPlus() {
super(Categories.Combat, "Criticals+", "Better criticals module");
}

public boolean shouldWaitForCrit(Entity target, boolean ignoreState) {
if (!isActive() && !ignoreState) {
return false;
}

if (!canCrit(false) || mc.player.getVelocity().y < -0.08) {
return false;
}

float nextPossibleCrit =
calculateTicksUntilNextCrit();

double gravity = 0.08;

double ticksTillFall = (mc.player.getVelocity().y / gravity);

double ticksTillCrit = Math.min(nextPossibleCrit, ticksTillFall);

float hitProbability = 0.75f;

float damageOnCrit = 0.5f * hitProbability;

float damageLostWaiting = getCooldownDamageFactor(mc.player, (float)ticksTillCrit);

return false;
}

public boolean canCrit(boolean ignoreOnGround) {
return mc.player.isOnGround() && !ignoreOnGround;
}

private float calculateTicksUntilNextCrit() {
float durationToWait = mc.player.getAttackCooldownProgressPerTick() * 0.9F - 0.5F;
float waitedDuration = mc.player.getLastAttackedTime();

return Math.min((durationToWait - waitedDuration), 0f);
}

private float getCooldownDamageFactor(PlayerEntity player, float tickDelta) {
float base = ((tickDelta + 0.5f) / player.getAttackCooldownProgressPerTick());

return Math.min((0.2f + base * base * 0.8f), 1.0f);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,9 @@
import meteordevelopment.meteorclient.systems.modules.Categories;
import meteordevelopment.meteorclient.systems.modules.Module;

/*
Not done
*/
public class ScaffoldPlus extends Module {
public ScaffoldPlus() {
super(Categories.Movement, "Scaffold+", "Better scaffold module");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package nekiplay.meteorplus.features.modules.movement.speed;

import meteordevelopment.meteorclient.events.entity.player.JumpVelocityMultiplierEvent;
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
Expand All @@ -26,6 +27,8 @@ public void onPlayerMoveEvent(PlayerMoveEvent event) {}
public void onTickEventPre(TickEvent.Pre event) {}
public void onTickEventPost(TickEvent.Post event) {}

public void onJump(JumpVelocityMultiplierEvent event) {}

public void onActivate() {}
public void onDeactivate() {}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -4,20 +4,15 @@ public enum SpeedModes {
NCP_Hop,
Matrix_Exploit,
Matrix_Exploit_2,
Matrix_6_7_0,
Matrix_6dot7dot0,
Matrix,
Vulcan,
AAC_Hop_4_3_8;
Vulcan_2dot8dot6,
AAC_Hop_4dot3dot8;

@Override
public String toString() {
String name = name();
if (name.equals("Matrix_6_7_0")) {
return "Matrix 6.7.0";
}
if (name.equals("AAC_Hop_4_3_8")) {
return "AAC Hop 4.3.8";
}
return super.toString().replace('_', ' ');
return super.toString().replace('_', ' ').replaceAll("dot", ".");
}
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
package nekiplay.meteorplus.features.modules.movement.speed;

import meteordevelopment.meteorclient.events.entity.player.JumpVelocityMultiplierEvent;
import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.events.packets.PacketEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
Expand All @@ -12,6 +13,8 @@
import nekiplay.meteorplus.features.modules.movement.speed.modes.matrix.Matrix6_7_0;
import nekiplay.meteorplus.features.modules.movement.speed.modes.matrix.MatrixExploit;
import nekiplay.meteorplus.features.modules.movement.speed.modes.matrix.MatrixExploit2;
import nekiplay.meteorplus.features.modules.movement.speed.modes.vulcan.Vulcan;
import nekiplay.meteorplus.features.modules.movement.speed.modes.vulcan.Vulcan_2_8_6;

public class SpeedPlus extends Module {
public SpeedPlus() {
Expand Down Expand Up @@ -112,15 +115,19 @@ private void onPlayerMoveEvent(PlayerMoveEvent event) {
currentMode.onPlayerMoveEvent(event);
}

@EventHandler
public void onJump(JumpVelocityMultiplierEvent event) { currentMode.onJump(event); }


private void onSpeedModeChanged(SpeedModes mode) {
switch (mode) {
case Matrix_Exploit_2 -> currentMode = new MatrixExploit2();
case Matrix_Exploit -> currentMode = new MatrixExploit();
case Matrix_6_7_0 -> currentMode = new Matrix6_7_0();
case Matrix_6dot7dot0 -> currentMode = new Matrix6_7_0();
case Matrix -> currentMode = new Matrix();
case AAC_Hop_4_3_8 -> currentMode = new AACHop438();
case AAC_Hop_4dot3dot8 -> currentMode = new AACHop438();
case Vulcan -> currentMode = new Vulcan();
case Vulcan_2dot8dot6 -> currentMode = new Vulcan_2_8_6();
case NCP_Hop -> currentMode = new NCPHop();
}
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@

public class AACHop438 extends SpeedMode {
public AACHop438() {
super(SpeedModes.AAC_Hop_4_3_8);
super(SpeedModes.AAC_Hop_4dot3dot8);
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

public class Matrix6_7_0 extends SpeedMode {
public Matrix6_7_0() {
super(SpeedModes.Matrix_6_7_0);
super(SpeedModes.Matrix_6dot7dot0);
}

private int noVelocityY = 0;
Expand Down
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
package nekiplay.meteorplus.features.modules.movement.speed.modes;
package nekiplay.meteorplus.features.modules.movement.speed.modes.vulcan;

import meteordevelopment.meteorclient.events.entity.player.PlayerMoveEvent;
import meteordevelopment.meteorclient.utils.player.FindItemResult;
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
package nekiplay.meteorplus.features.modules.movement.speed.modes.vulcan;

import meteordevelopment.meteorclient.events.entity.player.JumpVelocityMultiplierEvent;
import meteordevelopment.meteorclient.events.world.TickEvent;
import meteordevelopment.meteorclient.utils.player.PlayerUtils;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedMode;
import nekiplay.meteorplus.features.modules.movement.speed.SpeedModes;
import nekiplay.meteorplus.utils.MovementUtils;
import net.minecraft.entity.effect.StatusEffect;
import net.minecraft.entity.effect.StatusEffects;
import net.minecraft.util.math.Vec3d;

public class Vulcan_2_8_6 extends SpeedMode {
public Vulcan_2_8_6() {
super(SpeedModes.Vulcan_2dot8dot6);
}

private int ticks = 0;
private int speedLevel = 0;
private boolean jumped = false;

@Override
public void onJump(JumpVelocityMultiplierEvent event) {
ticks = 0;
speedLevel = 0;
jumped = true;
if (mc.player.hasStatusEffect(StatusEffects.SPEED)) {
speedLevel = mc.player.getStatusEffect(StatusEffects.SPEED).getAmplifier();
}
}

@Override
public void onTickEventPre(TickEvent.Pre event) {
if (jumped) {
ticks++;
if (ticks == 1) {
MovementUtils.strafe(0.3355 * (1 + speedLevel * 0.3819));
}
if (ticks == 2) {
if (mc.player.isSprinting()) {
MovementUtils.strafe(0.3284 * (1 + speedLevel * 0.355));
}
}
if (ticks == 4) {
Vec3d vel = mc.player.getPos();
mc.player.setPos(vel.x, vel.y - 0.376, vel.z);
}

if (ticks == 6) {
if (mc.player.speed > 0.298) {
MovementUtils.strafe(0.298);
}
jumped = false;
}
}
}
}
6 changes: 6 additions & 0 deletions src/main/java/nekiplay/meteorplus/items/ModItems.java
Original file line number Diff line number Diff line change
Expand Up @@ -14,5 +14,11 @@ public class ModItems {
public static void Initialize() {
Registry.register(Registries.ITEM, new Identifier("meteorplus", "logo"), LOGO_ITEM);
Registry.register(Registries.ITEM, new Identifier("meteorplus", "logo_mods"), LOGO_MODS_ITEM);

ItemGroupEvents.modifyEntriesEvent(ItemGroups.OPERATOR).register(content -> {
content.add(LOGO_ITEM);
content.add(LOGO_MODS_ITEM);
});
}

}

0 comments on commit 9d96657

Please sign in to comment.