What Geekprank Minecraft Actually Is
Geekprank Minecraft is a suite of client-side modifications and server-side scripts built around the idea of harmless but disruptive pranks in Minecraft multiplayer. It is not a single mod. The name covers a whole ecosystem of tools that range from fake chat messages and particle effects to command-block prank sequences that run on any vanilla server without requiring anything on the host side. I spent about three months last winter managing a public SMP where someone had installed the full Geekprank package. Most people assume it is just novelty stuff like making a player float or spawn random particles. That is only the surface level. The real depth comes from how the command-based pranks interact with Minecraft's existing scoreboard and scoreboard trigger system, which means they can be triggered by specific conditions rather than just run on a loop.
Downloading Geekprank Minecraft
You can find the current build at geekprank.com/minecraft. There are two separate downloads: the client-side jar for Fabric and the datapack folder for server deployment. If you install both, you get cross-compatibility so client-side effects can sync between players who have it and those who do not. The site also has a Discord linked at the bottom where the dev posts updates. I recommend joining that before you start, because a lot of the edge-case behavior gets discussed there and the documentation is not always up to date. The core mechanic relies on Minecraft's own command system. Every prank is built as a sequence of /execute, /scoreboard, and /title commands wrapped in functions that you can edit. When a player triggers a prank, the script checks whether the target is within a certain range using a hidden scoreboard objective, then fires off a chain of effects. The cool part is that these run entirely on the client side when installed via Fabric, so the server does not even need to support datapacks. Here is the basic flow: you equip a prank item, right-click on yourself or another entity, and the script writes temporary scoreboard values to a hidden objective called geekprank_trigger. A repeated command block then reads that value, executes the associated function, and resets the objective. It is efficient enough that even on a laptop with low RAM you will not notice lag during normal pranking.
Setting It Up Without Breaking Your Server
If you are running a vanilla server and want to use the datapack version, drop the datapack folder into your world/datapacks directory and reload. The pack auto-registers its functions on load. You then give yourself the prank items using /give @s geekprank:kit_basic. The kit includes twelve different prank items covering chat spam, screen shake, fake boss bar spawns, and the occasional entity displacement prank. For Fabric clients, drop the jar into your mods folder and restart. The client version adds a new HUD overlay that shows active pranks currently queued. This is actually useful because pranks can stack if you trigger them fast enough, and without the HUD you would never know how many effects are sitting in your queue waiting to fire.
Get the Full Details

Geekprank Minecraft Setup Walkthrough
I ran into a specific issue during setup on a 1.20.4 server. The datapack failed to register properly because one of the function files had Windows line endings (CRLF) instead of Unix line endings (LF). Minecraft's command parser chokes on CRLF in .mcfunction files and silently skips the entire function tree. No error message. Nothing. The prank items appeared in my inventory but did absolutely nothing when I used them. I spent about forty minutes troubleshooting before I opened the folder in Notepad++ and ran a find-and-replace to convert every line ending to LF. After that, the pranks loaded correctly on the next /reload. If your pranks appear to do nothing, check your line endings first before going down any other rabbit hole. One thing that catches everyone off guard is that the client-side version does not require the server to have anything installed, but the reverse is not true. If you deploy the server-side datapack and a player joins with the client mod, they will see effects that non-modded players cannot perceive. This creates an asymmetry that can feel exploitative if you are running a moderated server. The workaround is to set the datapack to only activate pranks when the caster is verified through a custom authentication scoreboard, which effectively locks pranking to staff members unless you explicitly grant it. Another nuance is that several pranks interact poorly with resource packs that override the death screen or the boss bar renderer. I learned this the hard way when a server member had a custom death screen resource pack installed. The entity-displacement prank fired correctly, sent the target into the void, and then the game crashed on the client side because the custom death screen render path could not handle the sudden entity removal. The fix was adding a delay parameter to the function so the game has time to render the death event before the next command executes. You can set this by editing the prank function file and adding wait ticks between the entity move and the death trigger.
What It Does Not Do Well
Geekprank Minecraft will not integrate with most admin plugins like CoreProtect or LuckPerms. It logs nothing to external databases, and there is no audit trail for prank usage unless you enable the internal logging flag and keep the logs on your own machine. For a server that tracks griefing, this is a gap you need to plan around. I personally ran a secondary datapack that logged every prank trigger to a separate scoreboard objective, which let me reconstruct who used what and when by checking the score history. It is a bit manual but it works. The pranks also break in worlds with strong physics overrides, particularly ones using mods like WorldEdit or certain world border expansions. If a prank tries to displace an entity into a region that WorldEdit has locked down, the entity ends up stuck in the block geometry and sometimes requires a manual world file edit to recover. This has happened to me twice now, and both times it was because I forgot the server was running a WorldEdit lockdown on a restricted build zone.
Practical Tips That Actually Help
Keep your prank functions organized in a dedicated subfolder inside your datapack. When you update the mod, old function files get overwritten if they share the same filename. I lost about an hour of custom edits last time because I had dumped everything into the root functions folder instead of subdirectories. Also, test pranks in a local singleplayer world before deploying them to a live server. The timing on some effects assumes a stable 20 TPS environment, and if your server ticks slowly the pranks can desync and cause visual glitches that persist until the next chunk reload. The biggest time saver is using the config.json file in the datapack root. You can disable individual pranks, change cooldown defaults, and adjust the maximum range for entity-targeted pranks without editing any functions. This cuts configuration time from maybe twenty minutes of function hacking down to about three minutes of JSON editing. If you are looking for something more robust than pranks and want actual server utility mods with better admin integration, I usually point people toward simple command utilities or Fabric API addons depending on the mod count. But for pure multiplayer disruption that works on vanilla servers, Geekprank Minecraft is still one of the more complete packages available.
![10 Ways to Prank your Friends! [Minecraft] | Pranks, Minecraft, Download games](https://i.pinimg.com/originals/d3/6a/b1/d36ab151fb8a0ae2ff8fcc312aaa2dd3.jpg)