90% of ad revenue goes to creators. Go ad-free while supporting creators with Modrinth Plus. Subscribe today!
Changelog
If you’re thinking hey, this changelog looks awfully familiar… you’re not wrong.
This is essentially the same feature set as 3.1.0 — but with one critical difference: these jars are ACTUALLY BUILT CORRECTLY.
Version 3.1.0’s jars (especially for 1.20.1) were missing a bunch of generated data files, because I had just finished implementing a new CI (Continuous Integration; i.e. 'automated workflow that publishes my jar files for me') configuration, and it had a slight but not so slight oversight. I’ve removed that release from Modrinth and CurseForge so nobody new grabs the broken jars. This is the fixed re-release, under a new version number, so everyone’s launcher will properly prompt for an update.
Added
- Sunflower De-Modding Station
- Added a simple shapeless crafting recipe to convert one custom, harvestable sunflower back into one vanilla sunflower. For when you need the original for... reasons.
- Advanced Dismount Engineering
- To prevent accidental hamster ejections when dismounting a horse or building a bridge in the nether (don't ask), the shoulder dismount mechanic is now highly configurable.
- Players can now choose between using the
SNEAK
key or a new, separateCUSTOM_KEYBIND
for dismounting. - Additionally, the action can be set to trigger on a
SINGLE_PRESS
or a quickDOUBLE-TAP
, preventing conflicts with toggle-sneak or bridge-building. For the double-tap setting, the delay is also configurable. Find the new settings in the "Shoulder Hamster Settings" config group.
Changed
- Internal Hamster Wiring Overhaul
- The hamster's entire internal state-tracking system has been refactored. I've packed seventeen separate on/off switches (booleans) into one glorious, hyper-efficient integer using bit-masking. This change is purely under-the-hood but drastically reduces the chances of mod conflicts and crashes related to entity data. This was specifically to address a mod conflict on 1.20.1 with the Sortilege mod. Apparently it's trying to track a lot of data on Entities, and my mod is also doing that, so they had a conflict on slot #41. But even just in general, your hamsters are now more stable and less likely to have an existential crisis when another mod is present.
Fixed
- Publishing Mishap Autopsy
- In 3.1.0, my CI pipeline built jars without running the data generators, so critical JSON assets never made it into the finished files. This slipped by on 1.21.1 because those generated files happened to be present from earlier work, but 1.20.1 exposed the issue immediately with crashes. However, I did not notice these crashes myself because I test with manually built jar files, not the ones that the CI pipeline automatically creates. This has now been fixed at the Gradle level so the problem cannot recur —
runDatagen
is now a build dependency for all relevant jar tasks.
- In 3.1.0, my CI pipeline built jars without running the data generators, so critical JSON assets never made it into the finished files. This slipped by on 1.21.1 because those generated files happened to be present from earlier work, but 1.20.1 exposed the issue immediately with crashes. However, I did not notice these crashes myself because I test with manually built jar files, not the ones that the CI pipeline automatically creates. This has now been fixed at the Gradle level so the problem cannot recur —
- Corrected Overly-Trusting Hamsters
- Hamsters will no longer beg for food from any random player waving a cucumber slice. They will now only perform their adorable begging routine for their rightful owner, as intended. And for that matter, I also fixed a similar issue with the Diamond Stealing, Knocked Out, Diamond Sniff Celebration/Sulking, & Pink Petal Application/Cycling/Removal interactions, all of which were in the wrong spot in my interactMob method, which meant they were sneaking past the "is player the owner?" check.
- NeoForge Composting and Key-bind Registration
- Fixed an issue where compostable items (seeds, crops) were not functional on the NeoForge version of the mod. They now correctly register as compostable.
- The "Throw Hamster" keybind, previously missing on NeoForge, now correctly appears in the Controls menu.
- Resolved Critical Mod Incompatibility Crash
- Fixed a hard crash caused by a
DataTracker
ID collision when running alongside certain other mods (like Sortilege on 1.20.1). The internal wiring overhaul (see "Changed") resolves this issue by significantly reducing the number of data slots the hamster entity occupies.
- Fixed a hard crash caused by a
B.T.S.
Here's how the superbly juicy magnificent and fantastic publish.yml
file works:
- Automatically builds both Fabric/Quilt and NeoForge versions in a single workflow
- Publishes each build to both Modrinth and CurseForge with correct, consistent file names
- Attaches a specific snippet of my changelog content directly from the separate public repository for each release
- Includes explicit dependency listings for both Modrinth and CurseForge to ensure proper mod loading
- Supports multiple Minecraft versions with separate version strings for each loader
- Allows manual or tag-based triggering for flexible release management
- Keeps build and publish logic in one place for easier maintenance and fewer manual steps
Anyway IT'S AWESOME
Dependencies
Files
adorablehamsterpets-3.1.2-1.21.1+neoforge.jar(1.54 MiB) Primary Download