
Pool and Billiards
Immersive, fully playable single and multiplayer pool games built entirely in Vanilla Minecraft.
Pool and Billiards Datapack by YMS2001
About
This datapack is designed for Minecraft players who enjoy cue sports.
Here, pool broadly refers to cue sports including Snooker, 8-Ball, 9-Ball, and related variants.
The datapack supports single-player and two-player gameplay in Minecraft Java Edition 1.16+. It also fully supports players without OP permission or in survival mode since v1.2.0.
Supported game modes:
- Snooker
- UK 8-Ball
- Generic 8-Ball
- 9-Ball
- Rule-free practice mode
Dependencies
This datapack depends on the following components:
- Required — Pool and Billiards Resource Pack
Make sure all required components are installed and enabled before use.
Detailed README (GitHub)
中文版使用说明(GitHub)
Summary of Recent Changes
近期改动总结
Mod Version
Starting from v1.2.0, datapack is also available as a mod version
The mod version automatically loads the datapack, so you do not need to manually place the datapack into each world's datapacks folder every time. This can be more convenient if you frequently create new worlds or use a modded launcher/profile. You still need to make sure that the resourcepack is enabled, but Modrinth loader should automatically handle the downloading.
The regular datapack version is still fully supported.
Installation
1. Download the following for the correct game version
- Pool Datapack
- Pool and Billiards Resource Pack
2. Locate your Minecraft directory
On Windows this is usually:
C:/Users/YourUserName/AppData/Roaming/.minecraft
3. Install the resource pack
Move Pool Resource Pack into:
.minecraft/resourcepacks
4. Install the datapacks
Open the world folder where you want to install the datapacks:
.minecraft/saves/<your world>/datapacks
Move the file into this folder:
- Pool Datapack
Each world requires its own copy of the datapacks.
Alternative mod version, available since v1.2.0
You can download the mod version and place it into .minecraft/mods
The mod version automatically loads the datapack, so you do not need to place it into each world's datapacks folder every time.
5. Start Minecraft and open the world
6. Enable the resource pack
Esc -> Options -> Resource Packs
Move Pool Resource Pack to the enabled side.
7. Run the following command
/reload
8. Enjoy
Here are a few helpful commands.
- Open command window directly without clicking any buttons in chat.
/function app:help/pool/commandwindow
or/trigger swPool__trigger set 1if without permission - Run the loading function, in case you want to troubleshoot / check missing settings and don't want to run
reload.
/function pool:classes/main/load - Terminate a game without using command window.
/function pool:classes/lobby/terminate_helper - Remove a table without using command window.
/function pool:classes/table/clear
Included Mechanics
This datapack includes the following systems:
- Simplified Newtonian physics simulation for pool balls
- Neural network-based rack simulation during the break
- Simplified match setup and game rules
- Chat-based GUI for convenient interaction; most actions are done with the mouse
- Support for English and 简体中文
For performance and clarity, the simulation omits some real-world effects such as friction between pockets and balls, cushion deformation, and other minor physical complexities.
Additional Information
Full documentation, installation and usage guides, and source code are available here:
https://github.com/MingshiYangUIUC/Pool-Minecraft-Squid-Workshop-Project
Compatibility Note
For Minecraft versions before 1.21, you may need to edit pack.mcmeta to remove the compatibility warning.
The datapack content is mostly identical across supported versions, so adjusting this single file is usually easier than maintaining multiple nearly identical copies.
Please refer to the Pack Format documentation and update pack.mcmeta according to your Minecraft version:
