
Boykisser
A whimsical little mod that brings the internet famous Boykisser meme into Minecraft! This mod adds a new neutral mob the Boykisser a fluffy, mischievous creature ready to roam your world, annoy you just a little, and maybe even become your friend.
Tags
Creators
Details
1.2.0-alpha
Compatibility
Required content
Changes
V1.2.0-alpha - Update

Changelog
Additions
- Added an in-game settings menu bound to J (rebindable in Controls)
- Added PiShock integration - every player enters their own username, API key, share code, and personal intensity cap in the menu, with Test Beep and Test Vibrate buttons
- Added an admin settings tab so operators can edit every server setting live in game without touching config files
- Added a full server config file covering cat health, stealing, daily events, shared health ratio, owner death link, teleport distance, shock damage, shock caps, world messages, and analytics
- Added a client config for PiShock credentials and the alpha warning toggle
- Added the shrine as a real world generation structure so it spawns naturally in plains, forests, meadows, savannas, cherry groves, and snowy plains
- Added
/locate structure boykisser:shrine,/locate boykisser, and/locateboykisserusing Minecraft's own locate system - Added the
/boykissercommand tree:locate,status,inventory,sit,stand,come,tp,revive,reset,shock,vibrate,config,analytics - Added a Silly Cat inventory - give the cat a chest to unlock 27 slots, then shift click it or press O to open
- Added an alpha warning screen when creating a world, with Proceed and Back buttons and a "do not show again" toggle
- Added an alpha notice in chat when players join
- Added an update checker that tells players when a newer version is on Modrinth
- Added optional anonymous analytics so we can see what people actually do with the mod (off by default, endpoint configurable)
- Added a developer API so other mods can build on top of ours:
BoykisserApi, aShockProviderhook, and cancelableCatEventevents for taming, stealing, death, revival, and shocks - Added a proper mod license covering reuploads, ports, modpacks, and commercial use
- Added a build task that produces an obfuscated jar
Changes
- The Silly Compass now looks and behaves like the vanilla compass, real needle and all, instead of a custom sprite
- Right click a player wearing the shock collar with the compass to track that player, shift right click to clear it
- Compass priority is now tracked player, then the live cat, then the shrine
- Shock collar and remote fully reworked: bind a remote to a collared player by right clicking them, shift use to cycle three power levels, use to fire
- Shocks now scale intensity and duration with the remote level and respect both the server cap and each player's personal client cap
- Shrine generation rewritten from a hand-placed blob into a proper structure with pillars, candles, lanterns, a gold pedestal, and a loot chest
- Almost every gameplay number is now config driven instead of hardcoded
- Key binds for the settings menu and cat inventory appear in the normal Controls screen
- Mod config is also reachable from the Mods menu config button
- Network protocol bumped, so all clients need the same mod version
Behavior
- The cat now teleports to its owner properly: it follows
/tp,/teleport, ender pearls, and dimension changes instead of getting left behind - Teleport distance is configurable, so the cat no longer wanders off and gets lost
- PiShock requests are sent by the wearer's own client, so usernames, API keys, and share codes never leave that player's machine
- Server setting changes made in game save immediately to the config file
- Admin controls require permission level 2, everyone else only sees their own PiShock tab
- Shrine placement falls back to a built shrine if world generation put none near spawn
Fixes
- Fixed the Silly Cat running away and never coming back after a teleport, which was a vanilla teleport limitation, not a pathfinding issue
- Fixed the cat failing to follow its owner between dimensions
- Fixed the
night_watcheradvancement failing to load because of an invalid trigger - Fixed the compass needle not animating like a real compass
- Fixed remotes staying bound to a player who removed their collar
- Fixed shock effects firing with no configurable limits
Server Compatibility
Multiplayer & Dedicated Servers
- Server compatible - install the mod on both the server and every player's client
- Requires NeoForge 1.21.1 and GeckoLib 4.8.4+ on server and clients
- Server settings live in the world's
serverconfig/boykisser-server.tomland can be edited in game by operators - PiShock settings are per player and stored client side, the server never sees them
- One Silly Cat per world - the entire server shares a single cat, not one per player
- One bonded owner at a time via the Amulet of Binding, ownership can transfer between players
- Shared health only mirrors while the owner is online and loaded in the world
- The shrine now generates through world generation, with a fallback build near spawn if none is close
- Revival ritual is overworld-only (night, no nearby hostiles, golden apple at shrine)
- Tested on singleplayer, LAN, and a dedicated development server
Technical
Requirements
- Minecraft 1.21.1
- NeoForge 21.1.233+
- GeckoLib 4.8.4+ (required - mod will not load without it)
- A PiShock account is only needed if you want real device integration, everything else works without one
Assets
Known Issues
- Most item textures are still placeholders
- Custom meow sound not bundled yet, uses vanilla cat ambient
- Analytics are off by default and the collection endpoint is not live yet
- Admin config changes do not refresh a settings menu another player already has open, reopen it to see updates
- Versions for other Minecraft releases are not out yet
Projects on Modrinth are automatically available through a Maven repository for use with JVM build tools such as Gradle. To learn more about the Modrinth Maven API, click here.
Note: When available, you should use the creator's maven repo instead as it will have transitive dependency information that the Modrinth Maven API does not. You may also end up with duplicate dependencies if you use a mix of Modrinth and non-Modrinth Maven repositories for your dependencies, because the group identifier will be different when served through the Modrinth Maven API.
Maven coordinates:
Version ID:
build.gradle:
repositories {
exclusiveContent {
forRepository {
maven {
name = "Modrinth"
url = "https://api.modrinth.com/maven"
}
}
// forRepositories(fg.repository) // Uncomment when using ForgeGradle
filter {
includeGroup "maven.modrinth"
}
}
}
// Standard Gradle dependency
dependencies {
implementation "maven.modrinth:isQSufOw:aUYbJgVC"
}
// Legacy Loom dependency
dependencies {
modImplementation "maven.modrinth:isQSufOw:aUYbJgVC"
}
