-
Notifications
You must be signed in to change notification settings - Fork 0
26.1.2 Vacuum and Phase Shifting
📌 Repository Source Disclaimer: The documentation in this Wiki reflects the current source code state in the repository, which may include recent unreleased commits or developmental features ahead of public release builds on CurseForge and Modrinth.
| Feature Infobox | Technical Parameters |
|---|---|
| System Class | net.instantgratification.magnet.MagnetMovement |
| Trigger Event | Server Player Tick (PlayerMixin MagnetManager.tick) |
| Default Pull Range |
12 blocks (ig:magnet_range) |
| Default Terminal Speed |
80% ( |
| Default Acceleration |
10% ( |
| Phase Shifting (NoClip) | Enabled (ig:magnet_noclip = true) |
| Target Vector | Player Eye Position (player.getEyePosition()) |
| Ground Offset Boost |
entity.onGround()
|
In Minecraft 26.1.2, the vacuum engine continuously tracks valid ItemEntity instances within the player's spherical radius and pulls them directly toward eye level using lerp interpolation.
With Phase Shifting (NoClip) active, items phase smoothly through solid walls and blocks, preventing drops from becoming trapped behind obstacles during mining or combat.
+-------------+ Line-of-Sight OK +----------------------+ Lerp Velocity Applied +------------------+
| Item Entity | -------------------------> | Set NoClip (2 Ticks) | ------------------------------> | Player Eye Pos |
+-------------+ +----------------------+ +------------------+
|
v
[Cancel Wall Pushout]
[Bypass Block Collide]
[Cancel In-Wall Grav]
if (entity.onGround()) {
entity.setOnGround(false);
entity.setPos(entity.position().add(0, 0.05, 0));
}-
State Activation:
((IMagnetEntity) entity).ig$setMagnetNoClip()activates a 2-tick countdown. -
Physics Override (
MixinEntity.java):-
move(MoverType, Vec3):@Inject(at = @At("HEAD"))cachesoriginalNoPhysicsand setsentity.noPhysics = true. -
move(MoverType, Vec3):@Inject(at = @At("RETURN"))restoresentity.noPhysics = originalNoPhysics.
-
-
Pushout Prevention:
@Inject(method = "moveTowardsClosestSpace", at = @At("HEAD"), cancellable = true)blocks vanilla wall ejection forces. -
In-Wall Gravity Cancellation:
@Inject(method = "applyGravity", at = @At("HEAD"), cancellable = true)cancels gravity only when the item is physically inside a block voxel.
| GameRule | Type | Default | Description |
|---|---|---|---|
ig:magnet_enabled |
Boolean | true |
Master toggle for vacuum mechanics. |
ig:magnet_range |
Integer | 12 |
Vacuum radius in blocks (1 to 64). |
ig:magnet_speed |
Integer | 80 |
Terminal velocity percentage ( |
ig:magnet_acceleration |
Integer | 10 |
Acceleration factor percentage ( |
ig:magnet_noclip |
Boolean | true |
Enables block phase shifting during pull. |
Magnet, Let me get that! • Developed by Dasik (Rifaditya) • Licensed under GNU GPLv3
Documentation reflects active repository source code. Features may precede public releases on CurseForge/Modrinth.
- 📖 26.2 Overview
- Gameplay Mechanics
- Administration & Config
- Technical & Development
- 📖 26.1.2 Overview
- Gameplay Mechanics
- Administration & Config
- Technical & Development