Compatibility
Minecraft: Java Edition
Platforms
Supported environments
Links
Tags
Creators
Details


SinglePlayer Library is a lightweight utility library for datapacks and mods that helps developers support singleplayer environments without creating separate versions of their projects. It provides a simple way to detect and enable singleplayer-specific features or settings, allowing projects that normally require manual setup or commands to work smoothly for singleplayer users.


- Ultra Lightweight : Minimal overhead designed for maximum performance.
- Easy Integration : Add singleplayer support to datapacks and mods without complex setup.
- Blazing Fast : Optimized to run efficiently with minimal impact.
- Developer Friendly : Built as a reusable foundation for other projects.
- Singleplayer Ready : Provides singleplayer support without requiring manual permission setup.
- Multi Version Support : Supports multiple Minecraft versions while keeping the same simple integration.


SinglePlayer Library uses tags to provide a simple way for projects to detect and handle singleplayer environments. The library checks players at a 1-second interval to keep performance impact as low as possible. Unlike normal Minecraft tick functions that run 20 times per second, SinglePlayer Library only performs its check once per second, providing a lightweight and stable system.
-
splib_active
Indicates that the player has been detected by SinglePlayer Library and is running in a supported singleplayer environment. Projects can use this tag to enable singleplayer-specific features or settings. -
splib_ignore
This tag is intended for developers and server owners. Players with this tag will be excluded from SinglePlayer Library handling, preventingsplib_activefrom being automatically added.


Use splib_active to run features or settings that should only apply in singleplayer worlds.
Keep in mind that the code below does not run until the function is executed. The namespace my_pack is not automatically created by a datapack or mod you must implement and structure it yourself.
check.mcfunction
execute unless entity @s[tag=splib_active] run function my_pack:tellraw_missing_library
execute if entity @s[tag=splib_active] run function my_pack:singleplayer_settings
use_feature.mcfunction
execute if entity @s[tag=splib_active] run function my_pack:feature/run
execute unless entity @s[tag=splib_active] run function my_pack:feature/blocked
other.mcfunction
execute unless entity @s[tag=splib_active] run function my_pack:performance/low_mode


What Minecraft versions are supported?
SinglePlayer Library supports Minecraft Java Edition versions from **1.17 to 1.21+**.Does this add any gameplay features?
No. SinglePlayer Library is a developer utility and does not add gameplay features by itself. It provides a foundation that other projects can use for singleplayer-specific features and settings.Can I use it in monetized projects?
Yes. Developers are allowed to use this library in projects that generate revenue. However, the library itself must remain free and cannot be sold, paywalled, or redistributed as a paid product.Is it required for players to install?
Only if a project using it requires the library. Otherwise, it has no effect on its own.Can I modify or redistribute the library?
You may use it as a dependency in your projects, but you may not reupload, sell, redistribute it as a standalone product, or claim it as your own.

Datapack (Singleplayer / Server)
- Download the datapack.
- Place it in your world's datapacks folder.
- Exit and rejoin the world. Search on youtube how to install datapack ↗
- Tip: Use
/datapack listandtag <targets> listto verify that it is installed correctly.

Mod Version (Client / Server)
- Install the mod file into your
modsfolder. - Launch the game or server with a compatible mod loader.
- No additional setup required. Search on youtube how to install mod ↗
- Tip: It will appear in the mod menu if installed correctly.






